diff options
author | Anna Gringauze <annagrin@microsoft.com> | 2018-06-15 10:13:11 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-15 10:13:11 -0700 |
commit | 21cb6bb8b0fbfb06c30ef273cd0a59f8a6b06a39 (patch) | |
tree | 984180b435a8308a020edc595405d8afe0a2617d /.travis.yml | |
parent | a9ef39f14ac2b0e732b22122e5fabb8dae8284db (diff) | |
download | platform_external_Microsoft-GSL-21cb6bb8b0fbfb06c30ef273cd0a59f8a6b06a39.tar.gz platform_external_Microsoft-GSL-21cb6bb8b0fbfb06c30ef273cd0a59f8a6b06a39.tar.bz2 platform_external_Microsoft-GSL-21cb6bb8b0fbfb06c30ef273cd0a59f8a6b06a39.zip |
Added testing for c++17 to latest compilers with test with (#692)
* Added testing with std=c++17 for latest compilers
Added running latest compilers with -std=c++17 option to CI the test matrix,
Updated cmake configuration to allow passing c++ standard on the command line.
* attempt to fix appveyor break
* added clang6.0, removed c++17 tests for clang 5.0
* commented out tests for clang with c++17 die to issue #695
* Addresed comments
Diffstat (limited to '.travis.yml')
-rw-r--r-- | .travis.yml | 78 |
1 files changed, 54 insertions, 24 deletions
diff --git a/.travis.yml b/.travis.yml index c373da2..bb32890 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,23 +23,23 @@ matrix: ########################################################################## # XCode 8.3 - - env: COMPILER=clang++ BUILD_TYPE=Debug + - env: COMPILER=clang++ BUILD_TYPE=Debug GSL_CXX_STANDARD=14 os: osx osx_image: xcode8.3 compiler: clang - - env: COMPILER=clang++ BUILD_TYPE=Release + - env: COMPILER=clang++ BUILD_TYPE=Release GSL_CXX_STANDARD=14 os: osx osx_image: xcode8.3 compiler: clang # XCode 9.1 - - env: COMPILER=clang++ BUILD_TYPE=Debug + - env: COMPILER=clang++ BUILD_TYPE=Debug GSL_CXX_STANDARD=14 os: osx osx_image: xcode9.1 compiler: clang - - env: COMPILER=clang++ BUILD_TYPE=Release + - env: COMPILER=clang++ BUILD_TYPE=Release GSL_CXX_STANDARD=14 os: osx osx_image: xcode9.1 compiler: clang @@ -49,7 +49,7 @@ matrix: ########################################################################## # Clang 3.6 - - env: COMPILER=clang++-3.6 BUILD_TYPE=Debug + - env: COMPILER=clang++-3.6 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &clang36 apt: packages: @@ -59,11 +59,11 @@ matrix: - ubuntu-toolchain-r-test - llvm-toolchain-precise-3.6 - - env: COMPILER=clang++-3.6 BUILD_TYPE=Release + - env: COMPILER=clang++-3.6 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *clang36 # Clang 3.7 - - env: COMPILER=clang++-3.7 BUILD_TYPE=Debug + - env: COMPILER=clang++-3.7 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &clang37 apt: packages: @@ -73,11 +73,11 @@ matrix: - ubuntu-toolchain-r-test - llvm-toolchain-precise-3.7 - - env: COMPILER=clang++-3.7 BUILD_TYPE=Release + - env: COMPILER=clang++-3.7 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *clang37 # Clang 3.8 - - env: COMPILER=clang++-3.8 BUILD_TYPE=Debug + - env: COMPILER=clang++-3.8 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &clang38 apt: packages: @@ -87,11 +87,11 @@ matrix: - ubuntu-toolchain-r-test - llvm-toolchain-precise-3.8 - - env: COMPILER=clang++-3.8 BUILD_TYPE=Release + - env: COMPILER=clang++-3.8 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *clang38 # Clang 3.9 - - env: COMPILER=clang++-3.9 BUILD_TYPE=Debug + - env: COMPILER=clang++-3.9 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &clang39 apt: packages: @@ -101,11 +101,11 @@ matrix: - ubuntu-toolchain-r-test - llvm-toolchain-precise-3.9 - - env: COMPILER=clang++-3.9 BUILD_TYPE=Release + - env: COMPILER=clang++-3.9 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *clang39 # Clang 4.0 - - env: COMPILER=clang++-4.0 BUILD_TYPE=Debug + - env: COMPILER=clang++-4.0 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &clang40 apt: packages: @@ -115,11 +115,11 @@ matrix: - ubuntu-toolchain-r-test - llvm-toolchain-trusty-4.0 - - env: COMPILER=clang++-4.0 BUILD_TYPE=Release + - env: COMPILER=clang++-4.0 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *clang40 # Clang 5.0 - - env: COMPILER=clang++-5.0 BUILD_TYPE=Debug + - env: COMPILER=clang++-5.0 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &clang50 apt: packages: @@ -131,46 +131,76 @@ matrix: - sourceline: 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main' key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - - env: COMPILER=clang++-5.0 BUILD_TYPE=Release - addons: *clang50 + - env: COMPILER=clang++-5.0 BUILD_TYPE=Release GSL_CXX_STANDARD=14 + addons: *clang50 + + # Clang 6.0 + - env: COMPILER=clang++-6.0 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 + addons: &clang60 + apt: + packages: + - clang-6.0 + - g++-6 + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-trusty-6.0 + - sourceline: 'deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-6.0 main' + key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' + + - env: COMPILER=clang++-6.0 BUILD_TYPE=Release GSL_CXX_STANDARD=14 + addons: *clang60 + + # Does not work due to #695 + # Clang 6.0 c++17 + #- env: COMPILER=clang++-6.0 BUILD_TYPE=Debug GSL_CXX_STANDARD=17 + # addons: *clang60 + + #- env: COMPILER=clang++-6.0 BUILD_TYPE=Release GSL_CXX_STANDARD=17 + # addons: *clang60 ########################################################################## # GCC on Linux ########################################################################## # GCC 5 - - env: COMPILER=g++-5 BUILD_TYPE=Debug + - env: COMPILER=g++-5 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &gcc5 apt: packages: g++-5 sources: - ubuntu-toolchain-r-test - - env: COMPILER=g++-5 BUILD_TYPE=Release + - env: COMPILER=g++-5 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *gcc5 # GCC 6 - - env: COMPILER=g++-6 BUILD_TYPE=Debug + - env: COMPILER=g++-6 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &gcc6 apt: packages: g++-6 sources: - ubuntu-toolchain-r-test - - env: COMPILER=g++-6 BUILD_TYPE=Release + - env: COMPILER=g++-6 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *gcc6 # GCC 7 - - env: COMPILER=g++-7 BUILD_TYPE=Debug + - env: COMPILER=g++-7 BUILD_TYPE=Debug GSL_CXX_STANDARD=14 addons: &gcc7 apt: packages: g++-7 sources: - ubuntu-toolchain-r-test - - env: COMPILER=g++-7 BUILD_TYPE=Release + - env: COMPILER=g++-7 BUILD_TYPE=Release GSL_CXX_STANDARD=14 addons: *gcc7 + # GCC 7 c++17 + - env: COMPILER=g++-7 BUILD_TYPE=Debug GSL_CXX_STANDARD=17 + addons: *gcc7 + + - env: COMPILER=g++-7 BUILD_TYPE=Release GSL_CXX_STANDARD=17 + addons: *gcc7 install: # Set the ${CXX} variable properly @@ -230,7 +260,7 @@ before_script: # have CMake to generate build files - cd "${TRAVIS_BUILD_DIR}" - mkdir build && cd build - - cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE + - cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DGSL_CXX_STANDARD=$GSL_CXX_STANDARD script: # build and run tests |