1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2025-07-24 10:42:31 +03:00

Tweaks to travis configuration and cmake

Travis:
* Don't install all g++ versions on all build targets.
* Install addons per target to have finer control on what is needed
* Use WSREP_STRICT_BUILD_FLAGS on other targets than GCC 4.8

cmake:
* Fixed CMakeLists.txt to check only boost libraries which are
  actually needed
This commit is contained in:
Teemu Ollakka
2018-10-24 16:05:39 +03:00
parent b322a3a45c
commit 4ee624cfbc
2 changed files with 92 additions and 31 deletions

View File

@ -5,60 +5,116 @@ compiler:
- gcc
# - clang - does not compile yet
# Build type and option combinations
# env:
# - TYPE=Debug ASAN=ON
# - TYPE=RelWithDebInfo ASAN=ON
# - CC=gcc-5 CXX=g++-5 TYPE=Debug ASAN=ON
# - CC=gcc-5 CXX=g++-5 TYPE=RelWithDebInfo ASAN=ON
matrix:
include:
- os: linux
name: "GCC 4.8 Debug"
env: MATRIX_EVAL="TYPE=Debug ASAN=ON DBSIM=OFF"
addons:
apt:
packages:
- cmake
- libboost-test-dev
env: MATRIX_EVAL="TYPE=Debug STRICT=OFF ASAN=ON DBSIM=OFF"
- os: linux
name: "GCC 4.8 RelWithDebInfo"
env: MATRIX_EVAL="TYPE=RelWithDebInfo ASAN=ON DBSIM=OFF"
addons:
apt:
packages:
- cmake
- libboost-test-dev
env: MATRIX_EVAL="TYPE=RelWithDebInfo STRICT=OFF ASAN=ON DBSIM=OFF"
- os: linux
name: "GCC 5 Debug"
env: MATRIX_EVAL="CC=gcc-5 CXX=g++-5 TYPE=Debug ASAN=OFF DBSIM=ON"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- cmake
- libboost-test-dev
- libboost-program-options-dev
- libboost-filesystem-dev
- libboost-thread-dev
env: MATRIX_EVAL="CC=gcc-5 CXX=g++-5 TYPE=Debug STRICT=ON ASAN=OFF DBSIM=ON"
- os: linux
name: "GCC 5 RelWithDebInfo"
env: MATRIX_EVAL="CC=gcc-5 CXX=g++-5 TYPE=RelWithDebInfo ASAN=OFF DBSIM=ON"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- cmake
- libboost-test-dev
- libboost-program-options-dev
- libboost-filesystem-dev
- libboost-thread-dev
env: MATRIX_EVAL="CC=gcc-5 CXX=g++-5 TYPE=RelWithDebInfo STRICT=ON ASAN=OFF DBSIM=ON"
- os: linux
name: "GCC 6 Debug"
env: MATRIX_EVAL="CC=gcc-6 CXX=g++-6 TYPE=Debug ASAN=OFF DBSIM=ON"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
- cmake
- libboost-test-dev
- libboost-program-options-dev
- libboost-filesystem-dev
- libboost-thread-dev
env: MATRIX_EVAL="CC=gcc-6 CXX=g++-6 TYPE=Debug STRICT=ON ASAN=OFF DBSIM=ON"
- os: linux
name: "GCC 6 RelWithDebInfo"
env: MATRIX_EVAL="CC=gcc-6 CXX=g++-6 TYPE=RelWithDebInfo ASAN=OFF DBSIM=ON"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
- cmake
- libboost-test-dev
- libboost-program-options-dev
- libboost-filesystem-dev
- libboost-thread-dev
env: MATRIX_EVAL="CC=gcc-6 CXX=g++-6 TYPE=RelWithDebInfo STRICT=ON ASAN=OFF DBSIM=ON"
- os: linux
name: "GCC 7 Debug"
env: MATRIX_EVAL="CC=gcc-7 CXX=g++-7 TYPE=Debug ASAN=OFF DBSIM=ON"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-7
- cmake
- libboost-test-dev
- libboost-program-options-dev
- libboost-filesystem-dev
- libboost-thread-dev
env: MATRIX_EVAL="CC=gcc-7 CXX=g++-7 TYPE=Debug STRICT=ON ASAN=OFF DBSIM=ON"
- os: linux
name: "GCC 7 RelWithDebInfo"
env: MATRIX_EVAL="CC=gcc-7 CXX=g++-7 TYPE=RelWithDebInfo ASAN=OFF DBSIM=ON"
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- cmake
- g++-5
- g++-6
- g++-7
- libboost-test-dev
- libboost-program-options-dev
- libboost-filesystem-dev
- libboost-thread-dev
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-7
- cmake
- libboost-test-dev
- libboost-program-options-dev
- libboost-filesystem-dev
- libboost-thread-dev
env: MATRIX_EVAL="CC=gcc-7 CXX=g++-7 TYPE=RelWithDebInfo STRICT=ON ASAN=OFF DBSIM=ON"
before_install:
- eval ${MATRIX_EVAL}
script:
- echo CC=${CC} CXX=${CXX} TYPE=${TYPE} ASAN=${ASAN} DBSIM=${DBSIM}
- echo CC=${CC} CXX=${CXX} TYPE=${TYPE} STRICT=${STRICT} ASAN=${ASAN} DBSIM=${DBSIM}
- cmake . -DCMAKE_BUILD_TYPE=${TYPE}
-DWSREP_LIB_STRICT_BUILD_FLAGS:BOOL=${STRICT}
-DWSREP_LIB_WITH_UNIT_TESTS:BOOL=ON
-DWSREP_LIB_WITH_DBSIM:BOOL=${DBSIM}
-DWSREP_LIB_WITH_ASAN:BOOL=${ASAN}

View File

@ -38,9 +38,14 @@ include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/wsrep-API/v26")
link_directories("${CMAKE_CURRENT_SOURCE_DIR}/wsrep")
if (WSREP_LIB_WITH_UNIT_TESTS OR WSREP_LIB_WITH_DBSIM)
if (WSREP_LIB_WITH_UNIT_TESTS)
find_package(Boost 1.54.0 REQUIRED
unit_test_framework
)
endif()
if (WSREP_LIB_WITH_DBSIM)
find_package(Boost 1.54.0 REQUIRED
program_options
filesystem
thread