From 2fa2227f2d732c425d309d4cde63bbd0ba8c45a1 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 18:45:29 +0100 Subject: [PATCH 01/15] [Travis] first pass at testing with local clang on osx --- .travis.yml | 12 ++++++++++++ .travis_scripts/setup_local_clang.sh | 12 ++++++++++++ 2 files changed, 24 insertions(+) create mode 100755 .travis_scripts/setup_local_clang.sh diff --git a/.travis.yml b/.travis.yml index 90c8bf1b..ad2fe05c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,6 +14,7 @@ env: - TEST_SUITE=nair_jablonowski_2008 - TEST_SUITE=UWLCM - TEST_SUITE=pbl + - TEST_SUITE=osx_local_clang matrix: exclude: @@ -25,6 +26,12 @@ matrix: - compiler: clang env: TEST_SUITE=UWLCM # UWLCM is not tested on clang yet + + # local clang tests on osx + - os: linux + env: TEST_SUITE=osx_local_clang + - compiler: gcc + env: TEST_SUITE=osx_local_clang addons: apt: packages: @@ -79,6 +86,8 @@ install: # redefine CXX to the actual version used - if [[ $TRAVIS_OS_NAME == 'linux' && $COMPILER == 'clang++' ]]; then export CXX=clang++-4.0; fi - if [[ $TRAVIS_OS_NAME == 'linux' && $COMPILER == 'g++' ]]; then export CXX=g++-6; fi + # downloads and setups local clang on osx + - if [[ $TEST_SUITE == 'osx_local_clang' ]]; then . ./.travis_scripts/setup_local_clang.sh; fi # boost - if [[ $TRAVIS_OS_NAME == 'linux' ]]; then sudo $apt_get_install libboost1.55-all-dev; fi @@ -142,3 +151,6 @@ script: # running pbl tests in Release mode - if [[ $TEST_SUITE == 'pbl' ]]; then . ./.travis_scripts/pbl.sh; fi + + # testing local clang on osx + - if [[ $TEST_SUITE == 'osx_local_clang' ]]; then . ./.travis_scripts/unit.sh; fi # with '.' to pass env vars diff --git a/.travis_scripts/setup_local_clang.sh b/.travis_scripts/setup_local_clang.sh new file mode 100755 index 00000000..22ee5ffc --- /dev/null +++ b/.travis_scripts/setup_local_clang.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env sh +set -ex +mkdir local_clang +cd local_clang +export CLANG_VER=clang+llvm-7.0.0-x86_64-apple-darwin +wget http://releases.llvm.org/7.0.0/$CLANG_VER.tar.xz +tar -xf $CLANG_VER.tar.xz +export LLVM_PATH=`pwd`/$CLANG_VER +export CXX=$LLVM_PATH/bin/clang++ +export LDFLAGS=$LDFLAGS" -L "$LLVM_PATH/lib" -Wl,-rpath,"$LLVM_PATH/lib +export CPPFLAGS=$CPPFLAGS" -I"$LLVM_PATH/include" -I"$LLVM_PATH/include/c++/v1/ +cd .. From 68b99ffa88276c215cf7d5943918262bd359d9fe Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 18:46:18 +0100 Subject: [PATCH 02/15] [Travis] temporarily allow only local clang tests for faster debugging --- .travis.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.travis.yml b/.travis.yml index ad2fe05c..b14d42bb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,13 +7,13 @@ compiler: - gcc - clang env: - - TEST_SUITE=unit - - TEST_SUITE=sandbox - - TEST_SUITE=paper - - TEST_SUITE=elliptic_drop - - TEST_SUITE=nair_jablonowski_2008 - - TEST_SUITE=UWLCM - - TEST_SUITE=pbl + # - TEST_SUITE=unit + # - TEST_SUITE=sandbox + # - TEST_SUITE=paper + # - TEST_SUITE=elliptic_drop + # - TEST_SUITE=nair_jablonowski_2008 + # - TEST_SUITE=UWLCM + # - TEST_SUITE=pbl - TEST_SUITE=osx_local_clang matrix: From ec4fc69767a25bec7f6d29bbfe3a86815fcd2d92 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 18:59:14 +0100 Subject: [PATCH 03/15] [Travis] wip --- .travis.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index b14d42bb..dabe2b2e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -55,7 +55,8 @@ before_install: - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew update; fi # Workaround for upgrading gcc, see https://github.com/travis-ci/travis-ci/issues/8826 - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi + # Seems like this is now done by Travis, but leaving it (commented out) for now + #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # https://github.com/travis-ci/travis-ci/issues/10165 - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi From 5c0615d9417da0a2a74c91ccc261c5c89a0989bb Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 19:13:22 +0100 Subject: [PATCH 04/15] [Travis] wip x2 --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index dabe2b2e..b2c98f60 100644 --- a/.travis.yml +++ b/.travis.yml @@ -59,6 +59,7 @@ before_install: #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # https://github.com/travis-ci/travis-ci/issues/10165 + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi # fixing broken OSX gzip tools From 8a0d0a3d924c763d2bf1f6a6f2df7aec2233a47b Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 19:22:54 +0100 Subject: [PATCH 05/15] [Travis] wip x3 --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index b2c98f60..165dad0b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -59,6 +59,7 @@ before_install: #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # https://github.com/travis-ci/travis-ci/issues/10165 + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew install gnupg2; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi From ded07a0497b18aff19ca7976a2d664c5d4e88e19 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 19:33:20 +0100 Subject: [PATCH 06/15] [Travis] wip x4 --- .travis.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 165dad0b..31d5fb67 100644 --- a/.travis.yml +++ b/.travis.yml @@ -59,8 +59,7 @@ before_install: #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # https://github.com/travis-ci/travis-ci/issues/10165 - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew install gnupg2; fi - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3; fi + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then command curl -sSL https://rvm.io/mpapis.asc | gpg --import -; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi # fixing broken OSX gzip tools From 3d462cfae41662a4c1d8a1fcd80ac4a06d4f4118 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 19:51:11 +0100 Subject: [PATCH 07/15] [Travis] wip ... --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 31d5fb67..cce63ef6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -59,7 +59,7 @@ before_install: #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # https://github.com/travis-ci/travis-ci/issues/10165 - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then command curl -sSL https://rvm.io/mpapis.asc | gpg --import -; fi + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi # fixing broken OSX gzip tools From ecf2ef2de13e2db97ac9d966821f589bbb09aa7f Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 20:03:36 +0100 Subject: [PATCH 08/15] [Travis] wip .... --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index cce63ef6..81e9a0d9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -59,7 +59,7 @@ before_install: #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # https://github.com/travis-ci/travis-ci/issues/10165 - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi # fixing broken OSX gzip tools From 19731c7d71d81a361b40bf9a08b7abcc687e64ec Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 21:00:52 +0100 Subject: [PATCH 09/15] [Travis] downgrade local clang version (to avoid Boost issues) --- .travis_scripts/setup_local_clang.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis_scripts/setup_local_clang.sh b/.travis_scripts/setup_local_clang.sh index 22ee5ffc..9627f170 100755 --- a/.travis_scripts/setup_local_clang.sh +++ b/.travis_scripts/setup_local_clang.sh @@ -2,8 +2,8 @@ set -ex mkdir local_clang cd local_clang -export CLANG_VER=clang+llvm-7.0.0-x86_64-apple-darwin -wget http://releases.llvm.org/7.0.0/$CLANG_VER.tar.xz +export CLANG_VER=clang+llvm-6.0.0-x86_64-apple-darwin.tar.xz +wget http://releases.llvm.org/6.0.0/$CLANG_VER.tar.xz tar -xf $CLANG_VER.tar.xz export LLVM_PATH=`pwd`/$CLANG_VER export CXX=$LLVM_PATH/bin/clang++ From 175ec5c2e7d7f8722bb5d5186e987a9af1473d94 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 21:02:35 +0100 Subject: [PATCH 10/15] [Travis] remove -x flag from scripts (too much noise) --- .travis_scripts/UWLCM.sh | 2 +- .travis_scripts/elliptic_drop.sh | 2 +- .travis_scripts/nair_jablonowski_2008.sh | 2 +- .travis_scripts/paper.sh | 2 +- .travis_scripts/pbl.sh | 2 +- .travis_scripts/sandbox.sh | 2 +- .travis_scripts/setup_local_clang.sh | 2 +- .travis_scripts/unit.sh | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.travis_scripts/UWLCM.sh b/.travis_scripts/UWLCM.sh index fcb572dd..6f6373df 100755 --- a/.travis_scripts/UWLCM.sh +++ b/.travis_scripts/UWLCM.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e # install libmpata++ cd libmpdata++/build diff --git a/.travis_scripts/elliptic_drop.sh b/.travis_scripts/elliptic_drop.sh index 315bf0aa..06623906 100755 --- a/.travis_scripts/elliptic_drop.sh +++ b/.travis_scripts/elliptic_drop.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e # installing cd libmpdata++/build sudo make install diff --git a/.travis_scripts/nair_jablonowski_2008.sh b/.travis_scripts/nair_jablonowski_2008.sh index d2c60b9d..08c8272e 100755 --- a/.travis_scripts/nair_jablonowski_2008.sh +++ b/.travis_scripts/nair_jablonowski_2008.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e cd tests/nair_jablonowski_2008 mkdir build cd build diff --git a/.travis_scripts/paper.sh b/.travis_scripts/paper.sh index e00eb4b7..816d6baf 100755 --- a/.travis_scripts/paper.sh +++ b/.travis_scripts/paper.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e cd tests/paper_2015_GMD mkdir build cd build diff --git a/.travis_scripts/pbl.sh b/.travis_scripts/pbl.sh index ecc10fd9..aca2f5eb 100755 --- a/.travis_scripts/pbl.sh +++ b/.travis_scripts/pbl.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e cd tests/sandbox mkdir build cd build diff --git a/.travis_scripts/sandbox.sh b/.travis_scripts/sandbox.sh index 1a81c09f..da2b09dc 100755 --- a/.travis_scripts/sandbox.sh +++ b/.travis_scripts/sandbox.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e cd tests/sandbox mkdir build cd build diff --git a/.travis_scripts/setup_local_clang.sh b/.travis_scripts/setup_local_clang.sh index 9627f170..94b9dfda 100755 --- a/.travis_scripts/setup_local_clang.sh +++ b/.travis_scripts/setup_local_clang.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e mkdir local_clang cd local_clang export CLANG_VER=clang+llvm-6.0.0-x86_64-apple-darwin.tar.xz diff --git a/.travis_scripts/unit.sh b/.travis_scripts/unit.sh index afaf0d7b..803f89bd 100755 --- a/.travis_scripts/unit.sh +++ b/.travis_scripts/unit.sh @@ -1,5 +1,5 @@ #!/usr/bin/env sh -set -ex +set -e cd tests/unit mkdir build cd build From 5aeb3e2ccea89c9e968a9bebe40c945cf9a120a5 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 21:13:41 +0100 Subject: [PATCH 11/15] [Travis] fix clang version name --- .travis_scripts/setup_local_clang.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis_scripts/setup_local_clang.sh b/.travis_scripts/setup_local_clang.sh index 94b9dfda..ef4e8b72 100755 --- a/.travis_scripts/setup_local_clang.sh +++ b/.travis_scripts/setup_local_clang.sh @@ -2,7 +2,7 @@ set -e mkdir local_clang cd local_clang -export CLANG_VER=clang+llvm-6.0.0-x86_64-apple-darwin.tar.xz +export CLANG_VER=clang+llvm-6.0.0-x86_64-apple-darwin wget http://releases.llvm.org/6.0.0/$CLANG_VER.tar.xz tar -xf $CLANG_VER.tar.xz export LLVM_PATH=`pwd`/$CLANG_VER From babd5de66b7c3c195fe411cc166a7011bd1e13c4 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Mon, 7 Jan 2019 21:30:19 +0100 Subject: [PATCH 12/15] Revert "[Travis] temporarily allow only local clang tests for faster debugging" This reverts commit 68b99ffa88276c215cf7d5943918262bd359d9fe. --- .travis.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.travis.yml b/.travis.yml index 81e9a0d9..16b9315f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,13 +7,13 @@ compiler: - gcc - clang env: - # - TEST_SUITE=unit - # - TEST_SUITE=sandbox - # - TEST_SUITE=paper - # - TEST_SUITE=elliptic_drop - # - TEST_SUITE=nair_jablonowski_2008 - # - TEST_SUITE=UWLCM - # - TEST_SUITE=pbl + - TEST_SUITE=unit + - TEST_SUITE=sandbox + - TEST_SUITE=paper + - TEST_SUITE=elliptic_drop + - TEST_SUITE=nair_jablonowski_2008 + - TEST_SUITE=UWLCM + - TEST_SUITE=pbl - TEST_SUITE=osx_local_clang matrix: From 5baa106ac5e60907df071ec8d9b4917f6666d3bb Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Tue, 8 Jan 2019 09:33:26 +0100 Subject: [PATCH 13/15] [Travis] trying to fix gpg keyserver issues --- .travis.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 16b9315f..8281ad5a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -58,8 +58,9 @@ before_install: # Seems like this is now done by Travis, but leaving it (commented out) for now #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi + # needed to get rvm, see below + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi # https://github.com/travis-ci/travis-ci/issues/10165 - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi # fixing broken OSX gzip tools From 3b6c2232c7a4acc512d442c42a0ad40f4548f5c7 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Tue, 8 Jan 2019 10:11:15 +0100 Subject: [PATCH 14/15] [Travis] try a different keyserver --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 8281ad5a..934afde2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -59,7 +59,7 @@ before_install: #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # needed to get rvm, see below - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi # https://github.com/travis-ci/travis-ci/issues/10165 - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi From 721dc8fa3731dd68ea8339ee299a1c56f982a8b2 Mon Sep 17 00:00:00 2001 From: Maciej Waruszewski Date: Tue, 8 Jan 2019 10:47:41 +0100 Subject: [PATCH 15/15] [Travis] try another way of getting the keys --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 934afde2..aa23be0c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -59,7 +59,7 @@ before_install: #- if [[ $TRAVIS_OS_NAME == 'osx' ]]; then brew cask uninstall oclint; fi # needed to get rvm, see below - - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB; fi + - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then curl -sSL https://rvm.io/pkuczynski.asc | gpg --import -; fi # https://github.com/travis-ci/travis-ci/issues/10165 - if [[ $TRAVIS_OS_NAME == 'osx' ]]; then rvm get stable; fi