Cleanup .travis.yml a bit
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
This commit is contained in:
parent
b9c2553a7b
commit
8445394e2a
2 changed files with 78 additions and 71 deletions
124
.travis.yml
124
.travis.yml
|
@ -37,54 +37,61 @@ submit_to_coverity_scan: &submit_to_coverity_scan
|
||||||
"https://scan.coverity.com/builds";
|
"https://scan.coverity.com/builds";
|
||||||
fi
|
fi
|
||||||
|
|
||||||
linux_gcc8: &linux_gcc8
|
ubuntu1804_gcc10: &ubuntu1804_gcc10
|
||||||
os: linux
|
os: linux
|
||||||
dist: xenial
|
dist: bionic
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
update: true
|
update: true
|
||||||
sources: [ ubuntu-toolchain-r-test ]
|
sources:
|
||||||
packages: [ gcc-8, g++-8 ]
|
- sourceline: 'ppa:ubuntu-toolchain-r/test'
|
||||||
|
packages: [ gcc-10 g++-10 ]
|
||||||
before_install:
|
before_install:
|
||||||
- eval "export CC=gcc-8"
|
- eval "export CC=gcc-10 CXX=g++-10"
|
||||||
- eval "export CXX=g++-8"
|
|
||||||
- eval "export COV_COMPTYPE=gcc COV_PLATFORM=linux64"
|
- eval "export COV_COMPTYPE=gcc COV_PLATFORM=linux64"
|
||||||
|
- eval "export BUILD_TOOL_OPTIONS='-j 4'"
|
||||||
|
- eval "export GENERATOR='Unix Makefiles'"
|
||||||
install:
|
install:
|
||||||
- *install_coverity
|
- *install_coverity
|
||||||
- pip install conan --upgrade --user
|
- pip install conan --upgrade --user
|
||||||
|
|
||||||
linux_clang: &linux_clang
|
ubuntu1804_clang10: &ubuntu1804_clang10
|
||||||
os: linux
|
os: linux
|
||||||
dist: xenial
|
dist: bionic
|
||||||
compiler: clang
|
compiler: clang
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
update: true
|
update: true
|
||||||
packages: [ ]
|
sources:
|
||||||
|
- sourceline: 'deb https://apt.llvm.org/bionic llvm-toolchain-bionic-10 main'
|
||||||
|
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
|
||||||
|
packages: [ clang-10 clang++-10 ]
|
||||||
before_install:
|
before_install:
|
||||||
- eval "export CC=clang"
|
- eval "export CC=clang-10 CXX=clang++-10"
|
||||||
- eval "export CXX=clang++"
|
|
||||||
- eval "export COV_COMPTYPE=clang COV_PLATFORM=linux64"
|
- eval "export COV_COMPTYPE=clang COV_PLATFORM=linux64"
|
||||||
|
- eval "export BUILD_TOOL_OPTIONS='-j 4'"
|
||||||
|
- eval "export GENERATOR='Unix Makefiles'"
|
||||||
install:
|
install:
|
||||||
- pip install conan --upgrade --user
|
- pip install conan --upgrade --user
|
||||||
|
|
||||||
osx_xcode: &osx_xcode
|
macos1015_xcode11_6: &macos1015_xcode11_6
|
||||||
os: osx
|
os: osx
|
||||||
osx_image: xcode11.1
|
osx_image: xcode11.6
|
||||||
compiler: clang
|
compiler: clang
|
||||||
addons:
|
addons:
|
||||||
homebrew:
|
homebrew:
|
||||||
packages: [ python3 ]
|
packages: [ python3 ]
|
||||||
before_install:
|
before_install:
|
||||||
- eval "export CC=clang"
|
- eval "export CC=clang CXX=clang++"
|
||||||
- eval "export CXX=clang++"
|
|
||||||
- eval "export COV_COMPTYPE=clang COV_PLATFORM=macOSX"
|
- eval "export COV_COMPTYPE=clang COV_PLATFORM=macOSX"
|
||||||
|
- eval "export BUILD_TOOL_OPTIONS='-j 4'"
|
||||||
|
- eval "export GENERATOR='Unix Makefiles'"
|
||||||
- eval "export PATH=\"${PATH}:$(python3 -m site --user-base)/bin\""
|
- eval "export PATH=\"${PATH}:$(python3 -m site --user-base)/bin\""
|
||||||
install:
|
install:
|
||||||
- python3 -m pip install conan --upgrade --user
|
- python3 -m pip install conan --upgrade --user
|
||||||
|
|
||||||
windows_vs2017: &windows_vs2017
|
windows1809_vs2017: &windows1809_vs2017
|
||||||
os: windows
|
os: windows
|
||||||
# Conan will automatically determine the best compiler for a given platform
|
# Conan will automatically determine the best compiler for a given platform
|
||||||
# based on educated guesses. The first check is based on the CC and CXX
|
# based on educated guesses. The first check is based on the CC and CXX
|
||||||
|
@ -109,9 +116,15 @@ windows_vs2017: &windows_vs2017
|
||||||
before_install:
|
before_install:
|
||||||
- eval "unset COVERITY_SCAN_TOKEN"
|
- eval "unset COVERITY_SCAN_TOKEN"
|
||||||
- eval "unset COVERITY_SCAN_EMAIL"
|
- eval "unset COVERITY_SCAN_EMAIL"
|
||||||
- eval "unset CC"
|
- eval "unset CC CXX"
|
||||||
- eval "unset CXX"
|
|
||||||
- eval "export COV_COMPTYPE=msvc COV_PLATFORM=win64"
|
- eval "export COV_COMPTYPE=msvc COV_PLATFORM=win64"
|
||||||
|
- eval "export BUILD_TOOL_OPTIONS='-nologo -verbosity:minimal -maxcpucount -p:CL_MPCount=2'"
|
||||||
|
- |
|
||||||
|
if [ "${ARCH}" = "x86_64" ]; then
|
||||||
|
eval "export GENERATOR='Visual Studio 15 2017 Win64'"
|
||||||
|
else
|
||||||
|
eval "export GENERATOR='Visual Studio 15 2017'"
|
||||||
|
fi
|
||||||
- JAVA_HOME=$(find "/c/Program Files/Android/jdk/" -name "*openjdk*" | sort | head -n 1)
|
- JAVA_HOME=$(find "/c/Program Files/Android/jdk/" -name "*openjdk*" | sort | head -n 1)
|
||||||
- export JAVA_HOME
|
- export JAVA_HOME
|
||||||
- export PATH="${PATH}:${JAVA_HOME}/bin"
|
- export PATH="${PATH}:${JAVA_HOME}/bin"
|
||||||
|
@ -129,35 +142,35 @@ windows_vs2017: &windows_vs2017
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
include:
|
include:
|
||||||
- <<: *linux_gcc8
|
- <<: *ubuntu1804_gcc10
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles", COVERITY_SCAN=true ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, COVERITY_SCAN=true ]
|
||||||
if: type = cron
|
if: type = cron
|
||||||
- <<: *linux_gcc8
|
- <<: *ubuntu1804_gcc10
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *linux_gcc8
|
- <<: *ubuntu1804_gcc10
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles", CONANFILE=conanfile102.txt ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, CONANFILE=conanfile102.txt ]
|
||||||
- <<: *linux_gcc8
|
- <<: *ubuntu1804_gcc10
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *linux_gcc8
|
- <<: *ubuntu1804_gcc10
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Debug, SSL=NO, SECURITY=YES, LIFESPAN=NO, DEADLINE=NO, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Debug, SSL=NO, SECURITY=YES, LIFESPAN=NO, DEADLINE=NO ]
|
||||||
- <<: *linux_clang
|
- <<: *ubuntu1804_clang10
|
||||||
env: [ ARCH=x86_64, ASAN=address, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, SANITIZER=address, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *linux_clang
|
- <<: *ubuntu1804_clang10
|
||||||
env: [ ARCH=x86_64, ASAN=address, BUILD_TYPE=Debug, SSL=YES, SECURITY=NO, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, SANITIZER=address, BUILD_TYPE=Debug, SSL=YES, SECURITY=NO, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *linux_clang
|
- <<: *ubuntu1804_clang10
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *osx_xcode
|
- <<: *macos1015_xcode11_6
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Release, SSL=NO, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles", MACOSX_DEPLOYMENT_TARGET=10.12 ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Release, SSL=NO, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, MACOSX_DEPLOYMENT_TARGET=10.12 ]
|
||||||
- <<: *osx_xcode
|
- <<: *macos1015_xcode11_6
|
||||||
env: [ ARCH=x86_64, ASAN=address, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, SANITIZER=address, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *osx_xcode
|
- <<: *macos1015_xcode11_6
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Unix Makefiles" ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *windows_vs2017
|
- <<: *windows1809_vs2017
|
||||||
env: [ ARCH=x86, ASAN=none, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Visual Studio 15 2017", CONANFILE=conanfile102.txt ]
|
env: [ ARCH=x86, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, CONANFILE=conanfile102.txt ]
|
||||||
- <<: *windows_vs2017
|
- <<: *windows1809_vs2017
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Visual Studio 15 2017 Win64" ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Debug, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
- <<: *windows_vs2017
|
- <<: *windows1809_vs2017
|
||||||
env: [ ARCH=x86_64, ASAN=none, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES, GENERATOR="Visual Studio 15 2017 Win64" ]
|
env: [ ARCH=x86_64, BUILD_TYPE=Release, SSL=YES, SECURITY=YES, LIFESPAN=YES, DEADLINE=YES ]
|
||||||
|
|
||||||
before_script:
|
before_script:
|
||||||
- conan profile new default --detect
|
- conan profile new default --detect
|
||||||
|
@ -186,7 +199,7 @@ script:
|
||||||
- conan install -b missing -s arch=${ARCH} -s build_type=${BUILD_TYPE} ../${CONANFILE:-conanfile.txt}
|
- conan install -b missing -s arch=${ARCH} -s build_type=${BUILD_TYPE} ../${CONANFILE:-conanfile.txt}
|
||||||
- cmake -DCMAKE_BUILD_TYPE=${BUILD_TYPE}
|
- cmake -DCMAKE_BUILD_TYPE=${BUILD_TYPE}
|
||||||
-DCMAKE_INSTALL_PREFIX=${INSTALLPREFIX}
|
-DCMAKE_INSTALL_PREFIX=${INSTALLPREFIX}
|
||||||
-DUSE_SANITIZER=${ASAN}
|
-DUSE_SANITIZER=${SANITIZER}
|
||||||
-DENABLE_SSL=${SSL}
|
-DENABLE_SSL=${SSL}
|
||||||
-DENABLE_SECURITY=${SECURITY}
|
-DENABLE_SECURITY=${SECURITY}
|
||||||
-DENABLE_LIFESPAN=${LIFESPAN}
|
-DENABLE_LIFESPAN=${LIFESPAN}
|
||||||
|
@ -194,25 +207,14 @@ script:
|
||||||
-DBUILD_TESTING=on
|
-DBUILD_TESTING=on
|
||||||
-DWERROR=on
|
-DWERROR=on
|
||||||
-G "${GENERATOR}" ..
|
-G "${GENERATOR}" ..
|
||||||
- |
|
- ${SCAN_BUILD} cmake --build . --config ${BUILD_TYPE} --target install -- ${BUILD_TOOL_OPTIONS}
|
||||||
case "${GENERATOR}" in
|
|
||||||
"Unix Makefiles")
|
|
||||||
${SCAN_BUILD} cmake --build . --config ${BUILD_TYPE} --target install -- -j 4
|
|
||||||
;;
|
|
||||||
"Visual Studio "*)
|
|
||||||
${SCAN_BUILD} cmake --build . --config ${BUILD_TYPE} --target install -- -nologo -verbosity:minimal -maxcpucount -p:CL_MPCount=2
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
${SCAN_BUILD} cmake --build . --config ${BUILD_TYPE} --target install
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
- CYCLONEDDS_URI='<CycloneDDS><Domain><Internal><EnableExpensiveChecks>all</EnableExpensiveChecks><LivelinessMonitoring>true</LivelinessMonitoring></Internal><Tracing><Verbosity>config</Verbosity><OutputFile>stderr</OutputFile></Tracing></Domain></CycloneDDS>' ctest -j 4 --output-on-failure -T test -E '^CUnit_ddsrt_random_default_random$' -C ${BUILD_TYPE}
|
- CYCLONEDDS_URI='<CycloneDDS><Domain><Internal><EnableExpensiveChecks>all</EnableExpensiveChecks><LivelinessMonitoring>true</LivelinessMonitoring></Internal><Tracing><Verbosity>config</Verbosity><OutputFile>stderr</OutputFile></Tracing></Domain></CycloneDDS>' ctest -j 4 --output-on-failure -T test -E '^CUnit_ddsrt_random_default_random$' -C ${BUILD_TYPE}
|
||||||
- |
|
- |
|
||||||
if [ "${ASAN}" = "none" ]; then
|
if [ -z "${SANITIZER}" ]; then
|
||||||
${SHELL} ../src/tools/ddsperf/sanity.bash;
|
${SHELL} ../src/tools/ddsperf/sanity.bash;
|
||||||
fi
|
fi
|
||||||
- |
|
- |
|
||||||
if [ "${ASAN}" != "none" ]; then
|
if [ -n "${SANITIZER}" ]; then
|
||||||
CMAKE_LINKER_FLAGS="-DCMAKE_LINKER_FLAGS=-fsanitize=${USE_SANITIZER}";
|
CMAKE_LINKER_FLAGS="-DCMAKE_LINKER_FLAGS=-fsanitize=${USE_SANITIZER}";
|
||||||
CMAKE_C_FLAGS="-DCMAKE_C_FLAGS=-fsanitize=${USE_SANITIZER}";
|
CMAKE_C_FLAGS="-DCMAKE_C_FLAGS=-fsanitize=${USE_SANITIZER}";
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -174,21 +174,26 @@ if(${CMAKE_GENERATOR} STREQUAL "Xcode")
|
||||||
set (CMAKE_XCODE_ATTRIBUTE_GCC_WARN_ABOUT_MISSING_PROTOTYPES YES)
|
set (CMAKE_XCODE_ATTRIBUTE_GCC_WARN_ABOUT_MISSING_PROTOTYPES YES)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(CMAKE_VERSION VERSION_LESS 3.13)
|
||||||
|
macro(add_link_options)
|
||||||
|
link_libraries(${ARGV})
|
||||||
|
endmacro()
|
||||||
|
endif()
|
||||||
|
|
||||||
# Make it easy to enable Clang's/gcc's analyzers
|
# Make it easy to enable Clang's/gcc's analyzers
|
||||||
set(USE_SANITIZER "" CACHE STRING "Sanitizers to enable on the build.")
|
set(USE_SANITIZER "" CACHE STRING "Sanitizers to enable on the build.")
|
||||||
if(NOT("${USE_SANITIZER}" STREQUAL ""))
|
if(USE_SANITIZER)
|
||||||
foreach(san "${USE_SANITIZER}")
|
string(REGEX REPLACE " " "" USE_SANITIZER "${USE_SANITIZER}")
|
||||||
message(STATUS "Enabling sanitizer: '${san}'")
|
string(REGEX REPLACE "[,;]+" ";" USE_SANITIZER "${USE_SANITIZER}")
|
||||||
|
foreach(san ${USE_SANITIZER})
|
||||||
if("${san}" STREQUAL address)
|
if(san STREQUAL "address")
|
||||||
add_compile_options(-fno-omit-frame-pointer)
|
add_compile_options("-fno-omit-frame-pointer")
|
||||||
link_libraries(-fno-omit-frame-pointer)
|
add_link_options("-fno-omit-frame-pointer")
|
||||||
endif()
|
endif()
|
||||||
|
if(san AND NOT san STREQUAL "none")
|
||||||
if(NOT("${san}" STREQUAL "none"))
|
message(STATUS "Enabling sanitizer: ${san}")
|
||||||
add_compile_options("-fsanitize=${san}")
|
add_compile_options("-fsanitize=${san}")
|
||||||
link_libraries("-fsanitize=${san}")
|
add_link_options("-fsanitize=${san}")
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue