Skip to content

Commit

Permalink
CMake refactor for easier subdirectory inclusion
Browse files Browse the repository at this point in the history
  • Loading branch information
mellery451 authored and HowardHinnant committed Oct 18, 2019
1 parent e3186e3 commit 48f1455
Show file tree
Hide file tree
Showing 4 changed files with 238 additions and 125 deletions.
64 changes: 50 additions & 14 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
language: cpp

env:
global:
- CMAKE_EXTRA_CONF="-DCOMPILE_WITH_C_LOCALE=ON"
- CTEST_OUTPUT_ON_FAILURE=1

matrix:
include:
- name: "Ubuntu 16.04 LTS (Xenial Xerus) GCC 7"

- name: "Ubuntu 16.04 LTS (Xenial Xerus) GCC 7"
os: linux
dist: xenial
addons:
Expand All @@ -15,7 +20,7 @@ matrix:
env:
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"

- name: "Ubuntu 16.04 LTS (Xenial Xerus) GCC 8"
- name: "Ubuntu 16.04 LTS (Xenial Xerus) GCC 8"
os: linux
dist: xenial
addons:
Expand All @@ -27,7 +32,7 @@ matrix:
env:
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"

- name: "Ubuntu 16.04 LTS (Xenial Xerus) GCC 9"
- name: "Ubuntu 16.04 LTS (Xenial Xerus) GCC 9"
os: linux
dist: xenial
addons:
Expand All @@ -39,7 +44,7 @@ matrix:
env:
- MATRIX_EVAL="CC=gcc-9 && CXX=g++-9"

- name: "Ubuntu 18.04 LTS (Bionic Beaver) GCC 7"
- name: "Ubuntu 18.04 LTS (Bionic Beaver) GCC 7"
os: linux
dist: bionic
addons:
Expand All @@ -51,7 +56,7 @@ matrix:
env:
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"

- name: "Ubuntu 18.04 LTS (Bionic Beaver) GCC 8"
- name: "Ubuntu 18.04 LTS (Bionic Beaver) GCC 8"
os: linux
dist: bionic
addons:
Expand All @@ -63,7 +68,7 @@ matrix:
env:
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"

- name: "Ubuntu 18.04 LTS (Bionic Beaver) Clang 6"
- name: "Ubuntu 18.04 LTS (Bionic Beaver) Clang 6"
os: linux
dist: bionic
addons:
Expand All @@ -75,7 +80,7 @@ matrix:
env:
- MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0"

- name: "Ubuntu 18.04 LTS (Bionic Beaver) Clang 7"
- name: "Ubuntu 18.04 LTS (Bionic Beaver) Clang 7"
os: linux
dist: bionic
addons:
Expand All @@ -87,7 +92,7 @@ matrix:
env:
- MATRIX_EVAL="CC=clang-7 && CXX=clang++-7"

- name: "Ubuntu 18.04 LTS (Bionic Beaver) Clang 8"
- name: "Ubuntu 18.04 LTS (Bionic Beaver) Clang 8"
os: linux
dist: bionic
addons:
Expand All @@ -99,13 +104,44 @@ matrix:
env:
- MATRIX_EVAL="CC=clang-8 && CXX=clang++-8"

- &macos
name: xcode10
os: osx
osx_image: xcode10.2
env:
- CMAKE_EXTRA_CONF=""
addons:
homebrew:
packages:
- bash
- ninja

- <<: *macos
name: xcode9
# xcode 9 only works if we tell it to use c++14 explicitly
env:
- CMAKE_EXTRA_CONF="-DCMAKE_CXX_STANDARD=14"
osx_image: xcode9.4

- <<: *macos
osx_image: xcode11
name: xcode11

before_install:
- eval "${MATRIX_EVAL}"
- eval "${MATRIX_EVAL}"
- ci/install_cmake.sh 3.15.2
- export OPENSSL_ROOT=$(brew --prefix openssl@1.1)
- if [ "$(uname)" = "Darwin" ] ; then export PATH="$HOME/cmake/CMake.app/Contents/bin:${PATH}"; fi
- if [ "$(uname)" = "Linux" ] ; then export PATH="$HOME/cmake/bin:${PATH}"; fi

script:
cache:
directories:
- $HOME/cmake

script:
- mkdir -p build
- cd build
- cmake -DENABLE_DATE_TESTING=ON -DBUILD_SHARED_LIBS=ON -DCOMPILE_WITH_C_LOCALE=ON ..
- make -j$(nproc)
- make testit -j$(nproc)
- eval cmake -DENABLE_DATE_TESTING=ON -DBUILD_SHARED_LIBS=ON ${CMAKE_EXTRA_CONF} ..
- cmake --build . --parallel
- cmake --build . --parallel --target testit

Loading

0 comments on commit 48f1455

Please sign in to comment.