forked from boostorg/beast
Build coverage and usan Travis CI targets with CMake
This commit is contained in:
29
.travis.yml
29
.travis.yml
@@ -30,32 +30,19 @@ packages: &gcc5_pkgs
|
|||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
# GCC/Coverage
|
# GCC/Coverage/Autobahn
|
||||||
- compiler: gcc
|
- compiler: gcc
|
||||||
env: GCC_VER=5 VARIANT=coverage ADDRESS_MODEL=64
|
env:
|
||||||
|
- GCC_VER=5
|
||||||
|
- VARIANT=coverage
|
||||||
|
- ADDRESS_MODEL=64
|
||||||
|
- BUILD_SYSTEM=cmake
|
||||||
|
- PATH=$PWD/cmake/bin:$PATH
|
||||||
addons: &ao_gcc5
|
addons: &ao_gcc5
|
||||||
apt:
|
apt:
|
||||||
sources: ['ubuntu-toolchain-r-test']
|
sources: ['ubuntu-toolchain-r-test']
|
||||||
packages: *gcc5_pkgs
|
packages: *gcc5_pkgs
|
||||||
|
|
||||||
# GCC/Debug/CMake
|
|
||||||
- compiler: gcc
|
|
||||||
env:
|
|
||||||
- GCC_VER=5
|
|
||||||
- VARIANT=debug
|
|
||||||
- ADDRESS_MODEL=64
|
|
||||||
- BUILD_SYSTEM=cmake
|
|
||||||
- PATH=$PWD/cmake/bin:$PATH
|
|
||||||
addons: *ao_gcc5
|
|
||||||
|
|
||||||
# # GCC/Debug
|
|
||||||
# - compiler: gcc
|
|
||||||
# env: GCC_VER=5 VARIANT=debug ADDRESS_MODEL=64
|
|
||||||
# addons: *ao_gcc5
|
|
||||||
# branches: # NOTE: this does NOT work, though it SHOULD
|
|
||||||
# - master
|
|
||||||
# - develop
|
|
||||||
|
|
||||||
# Clang/UndefinedBehaviourSanitizer
|
# Clang/UndefinedBehaviourSanitizer
|
||||||
- compiler: clang
|
- compiler: clang
|
||||||
env:
|
env:
|
||||||
@@ -64,6 +51,8 @@ matrix:
|
|||||||
- CLANG_VER=3.8
|
- CLANG_VER=3.8
|
||||||
- ADDRESS_MODEL=64
|
- ADDRESS_MODEL=64
|
||||||
- UBSAN_OPTIONS='print_stacktrace=1'
|
- UBSAN_OPTIONS='print_stacktrace=1'
|
||||||
|
- BUILD_SYSTEM=cmake
|
||||||
|
- PATH=$PWD/cmake/bin:$PATH
|
||||||
- PATH=$PWD/llvm-$LLVM_VERSION/bin:$PATH
|
- PATH=$PWD/llvm-$LLVM_VERSION/bin:$PATH
|
||||||
addons: *ao_gcc5
|
addons: *ao_gcc5
|
||||||
|
|
||||||
|
@@ -20,10 +20,29 @@ else()
|
|||||||
find_package(Threads)
|
find_package(Threads)
|
||||||
|
|
||||||
set(CMAKE_CXX_FLAGS
|
set(CMAKE_CXX_FLAGS
|
||||||
"${CMAKE_CXX_FLAGS} -g -std=c++11 -Wall -Wpedantic")
|
"${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wpedantic")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
message ("cxx Flags: " ${CMAKE_CXX_FLAGS})
|
if (${VARIANT} STREQUAL "coverage")
|
||||||
|
set(CMAKE_CXX_FLAGS
|
||||||
|
"${CMAKE_CXX_FLAGS} -fprofile-arcs -ftest-coverage")
|
||||||
|
set(CMAKE_BUILD_TYPE RELWITHDEBINFO)
|
||||||
|
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lgcov")
|
||||||
|
elseif (${VARIANT} STREQUAL "asan")
|
||||||
|
set(CMAKE_CXX_FLAGS
|
||||||
|
"${CMAKE_CXX_FLAGS} -fsanitize=address -fno-omit-frame-pointer")
|
||||||
|
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=address")
|
||||||
|
set(CMAKE_BUILD_TYPE RELWITHDEBINFO)
|
||||||
|
elseif (${VARIANT} STREQUAL "usan")
|
||||||
|
set(CMAKE_CXX_FLAGS
|
||||||
|
"${CMAKE_CXX_FLAGS} -fsanitize=undefined -fno-omit-frame-pointer")
|
||||||
|
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=undefined")
|
||||||
|
set(CMAKE_BUILD_TYPE RELWITHDEBINFO)
|
||||||
|
elseif (${VARIANT} STREQUAL "debug")
|
||||||
|
set(CMAKE_BUILD_TYPE DEBUG)
|
||||||
|
elseif (${VARIANT} STREQUAL "release")
|
||||||
|
set(CMAKE_BUILD_TYPE RELEASE)
|
||||||
|
endif()
|
||||||
|
|
||||||
function(DoGroupSources curdir rootdir folder)
|
function(DoGroupSources curdir rootdir folder)
|
||||||
file(GLOB children RELATIVE ${PROJECT_SOURCE_DIR}/${curdir} ${PROJECT_SOURCE_DIR}/${curdir}/*)
|
file(GLOB children RELATIVE ${PROJECT_SOURCE_DIR}/${curdir} ${PROJECT_SOURCE_DIR}/${curdir}/*)
|
||||||
|
@@ -85,7 +85,7 @@ function build_beast {
|
|||||||
function build_beast_cmake {
|
function build_beast_cmake {
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
pushd build > /dev/null
|
pushd build > /dev/null
|
||||||
cmake -DCMAKE_BUILD_TYPE=${VARIANT^} ..
|
cmake -DVARIANT=${VARIANT} ..
|
||||||
make -j${num_jobs}
|
make -j${num_jobs}
|
||||||
mkdir -p ../bin/$VARIANT
|
mkdir -p ../bin/$VARIANT
|
||||||
find . -executable -type f -exec cp {} ../bin/$VARIANT/. \;
|
find . -executable -type f -exec cp {} ../bin/$VARIANT/. \;
|
||||||
@@ -137,6 +137,7 @@ if [[ $VARIANT == "coverage" ]]; then
|
|||||||
run_tests_with_valgrind
|
run_tests_with_valgrind
|
||||||
run_autobahn_test_suite
|
run_autobahn_test_suite
|
||||||
else
|
else
|
||||||
|
echo "skipping autobahn tests for feature branch build"
|
||||||
run_tests
|
run_tests
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user