From cfb07b3d5ba2fb8bc62673646141987c24797c56 Mon Sep 17 00:00:00 2001 From: Chocobo1 Date: Wed, 19 Apr 2017 17:23:50 +0800 Subject: [PATCH] TravisCI: Install latest zlib & cleanups Remove trailing semicolon, seems that isn't needed now Switch builds to container-based infrastructure Move similar code blocks together --- .travis.yml | 100 +++++++++++++++++++++++++--------------------------- 1 file changed, 48 insertions(+), 52 deletions(-) diff --git a/.travis.yml b/.travis.yml index 399682446..8d67208a2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -33,16 +33,15 @@ notifications: on_success: change on_failure: change -# container-based builds -#sudo: false cache: ccache: true directories: - $HOME/hombebrew_cache # opt-in Ubuntu Trusty -sudo: required dist: trusty +# container-based builds +sudo: false addons: coverity_scan: @@ -62,7 +61,7 @@ addons: - sourceline: 'ppa:beineri/opt-qt551-trusty' - sourceline: 'ppa:adrozdoff/cmake' packages: - # packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise + # packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise - autoconf - automake - cmake @@ -74,6 +73,7 @@ addons: # Qt 5.5.1 - qt55base - qt55tools + before_install: # only allow specific build for coverity scan, others will stop - if [ "$TRAVIS_BRANCH" = "$coverity_branch" ] && ! [ "$TRAVIS_OS_NAME" = "linux" -a "$lt_branch" = "RC_1_0" -a "$gui" = true ]; then exit ; fi @@ -102,54 +102,51 @@ before_install: - echo $build_system - echo $ltconf - echo $qbtconf + install: - - | - if [ "$TRAVIS_OS_NAME" = "linux" ]; then + #- | + #if [ "$TRAVIS_OS_NAME" = "linux" ]; then # build libtorrent from source #if [ "$lt_branch" != "dist" ]; then - #cd "$HOME" && pwd && git clone --depth 1 https://github.com/arvidn/libtorrent.git --branch $lt_branch ; - #cd libtorrent && ./autotool.sh && ./configure $ltconf && make install ; - #fi ; - - # ccache - if [ "$TRAVIS_BRANCH" != "$coverity_branch" ]; then - dpkg-query -L ccache && export use_ccache=true ; - ccache -V && ccache --show-stats && ccache --zero-stats ; - fi ; - fi + #cd "$HOME" && pwd && git clone --depth 1 https://github.com/arvidn/libtorrent.git --branch $lt_branch + #cd libtorrent && ./autotool.sh && ./configure $ltconf && make install + #fi + #fi - | if [ "$TRAVIS_OS_NAME" = "osx" ]; then - wget https://builds.shiki.hu/homebrew/version ; + # dependencies + brew update > /dev/null + brew install colormake ccache zlib + PATH="/usr/local/opt/ccache/libexec:$PATH" + brew link --force zlib + brew outdated "pkg-config" || brew upgrade "pkg-config" + + wget https://builds.shiki.hu/homebrew/version if ! cmp --quiet "version" "$HOME/hombebrew_cache/version" ; then - echo "Cached files are different from server. Downloading new ones." ; + echo "Cached files are different from server. Downloading new ones." # First delete old files - rm -r "$HOME/hombebrew_cache" ; - mkdir "$HOME/hombebrew_cache"; - cp "version" $HOME/hombebrew_cache ; - cd "$HOME/hombebrew_cache" ; - wget https://builds.shiki.hu/homebrew/libtorrent-rasterbar.rb ; - wget https://builds.shiki.hu/homebrew/libtorrent-rasterbar-1.0.10.el_capitan.bottle.tar.gz ; - wget https://builds.shiki.hu/homebrew/qt5.rb ; - wget https://builds.shiki.hu/homebrew/qt5-5.7.1_1.el_capitan.bottle.tar.gz ; + rm -r "$HOME/hombebrew_cache" + mkdir "$HOME/hombebrew_cache" + cp "version" $HOME/hombebrew_cache + cd "$HOME/hombebrew_cache" + wget https://builds.shiki.hu/homebrew/libtorrent-rasterbar.rb + wget https://builds.shiki.hu/homebrew/libtorrent-rasterbar-1.0.10.el_capitan.bottle.tar.gz + wget https://builds.shiki.hu/homebrew/qt5.rb + wget https://builds.shiki.hu/homebrew/qt5-5.7.1_1.el_capitan.bottle.tar.gz fi - # dependencies - brew update > /dev/null ; - brew install colormake ccache ; - if [ "$build_system" = "cmake" ]; then - brew unlink cmake - brew install cmake; - fi - brew outdated "pkg-config" || brew upgrade "pkg-config" ; # Copy custom libtorrent bottle to homebrew's cache so it can find and install it # Also install our custom libtorrent formula by passing the local path to it # These 2 files are restored from Travis' cache. - cp "$HOME/hombebrew_cache/libtorrent-rasterbar-1.0.10.el_capitan.bottle.tar.gz" "$(brew --cache)" ; - brew install "$HOME/hombebrew_cache/libtorrent-rasterbar.rb" ; + cp "$HOME/hombebrew_cache/libtorrent-rasterbar-1.0.10.el_capitan.bottle.tar.gz" "$(brew --cache)" + brew install "$HOME/hombebrew_cache/libtorrent-rasterbar.rb" if [ "$build_system" = "cmake" ]; then - brew install qt5 ; - brew link --force qt5 ; + brew unlink cmake + brew install cmake + + brew install qt5 + brew link --force qt5 ln -s /usr/local/opt/qt/mkspecs /usr/local/mkspecs ln -s /usr/local/opt/qt/plugins /usr/local/plugins else @@ -157,18 +154,17 @@ install: # Copy custom qt5 bottle to homebrew's cache so it can find and install it # Also install our custom qt5 formula by passing the local path to it # These 2 files are restored from Travis' cache. - cp "$HOME/hombebrew_cache/qt5-5.7.1_1.el_capitan.bottle.tar.gz" "$(brew --cache)" ; - brew install "$HOME/hombebrew_cache/qt5.rb" ; - brew link --force qt5 ; + cp "$HOME/hombebrew_cache/qt5-5.7.1_1.el_capitan.bottle.tar.gz" "$(brew --cache)" + brew install "$HOME/hombebrew_cache/qt5.rb" + brew link --force qt5 fi MY_CMAKE_OPENSSL_HINT="-DOPENSSL_ROOT_DIR=/usr/local/opt/openssl/" - - # ccache - if [ "$TRAVIS_BRANCH" != "$coverity_branch" ]; then - export PATH="/usr/local/opt/ccache/libexec:$PATH" && export use_ccache=true ; - ccache -V && ccache --show-stats && ccache --zero-stats ; - fi ; + fi + - | + if [ "$TRAVIS_BRANCH" != "$coverity_branch" ]; then + export use_ccache=true + ccache -V && ccache --show-stats && ccache --zero-stats fi script: @@ -184,9 +180,9 @@ script: if [ "$build_system" = "qmake" ]; then ./bootstrap.sh && ./configure $qbtconf if [ "$TRAVIS_OS_NAME" = "osx" ]; then - sed -i "" -e "s/^\(CC.*&&\).*$/\1 $CC/" src/Makefile ; # workaround for Qt & ccache: https://bugreports.qt.io/browse/QTBUG-31034 - sed -i "" -e "s/^\(CXX.*&&\).*$/\1 $CXX/" src/Makefile ; - sed -i "" -e 's/^\(CXXFLAGS.*\)$/\1 -Wno-unused-local-typedefs -Wno-inconsistent-missing-override/' src/Makefile ; + sed -i "" -e "s/^\(CC.*&&\).*$/\1 $CC/" src/Makefile # workaround for Qt & ccache: https://bugreports.qt.io/browse/QTBUG-31034 + sed -i "" -e "s/^\(CXX.*&&\).*$/\1 $CXX/" src/Makefile + sed -i "" -e 's/^\(CXXFLAGS.*\)$/\1 -Wno-unused-local-typedefs -Wno-inconsistent-missing-override/' src/Makefile fi fi - make && make install @@ -196,8 +192,8 @@ after_success: - if [ "$TRAVIS_OS_NAME" = "linux" ]; then cd "$qbt_path/bin" ; fi - | if [ "$TRAVIS_OS_NAME" = "osx" ]; then - macdeployqt "$TRAVIS_BUILD_DIR/src/$qbt_exe.app" ; - cd "$TRAVIS_BUILD_DIR/src/$qbt_exe.app/Contents/MacOS" ; + macdeployqt "$TRAVIS_BUILD_DIR/src/$qbt_exe.app" + cd "$TRAVIS_BUILD_DIR/src/$qbt_exe.app/Contents/MacOS" fi - ./$qbt_exe --version