directories:\r
- $HOME/third-party\r
\r
-osx_image: xcode9\r
-\r
-addons:\r
- apt:\r
- packages:\r
- - cmake\r
- - openssl\r
- - libssl-dev\r
- - gdb\r
- sources:\r
- - kubuntu-backports\r
-\r
-\r
before_install:\r
- - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then\r
- mkdir $HOME/usr;\r
- export PATH="$HOME/usr/bin:$PATH";\r
- wget https://cmake.org/files/v3.7/cmake-3.7.2-Linux-x86_64.sh --no-check-certificate;\r
- chmod +x cmake-3.7.2-Linux-x86_64.sh;\r
- ./cmake-3.7.2-Linux-x86_64.sh --prefix=$HOME/usr --exclude-subdir --skip-license;\r
- fi\r
- cmake --version\r
\r
-\r
install:\r
- - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then\r
- PATH=~/.local/bin:${PATH};\r
- pip install --user --upgrade pip;\r
- pip install --user cpp-coveralls;\r
- pip install --user codecov;\r
- pip install --user coverage;\r
- fi\r
\r
before_script:\r
- # Add an IPv6 config - see the corresponding Travis issue\r
- # https://github.com/travis-ci/travis-ci/issues/8361\r
- - if [ "${ENABLE_IPV6}" == "YES" -a "${TRAVIS_OS_NAME}" == "linux" ]; then\r
- echo "Activating IPv6 on Travis";\r
- sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6';\r
- fi\r
# Check some settings of the build server (operating system, IPv6 availability, directory)\r
- uname -a\r
- - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then\r
- lsb_release -a;\r
- cat /etc/network/interfaces || true;\r
- fi\r
- ifconfig\r
- pwd\r
- ls -la\r
- - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then\r
- apt-cache search gcc | grep "GNU C compiler";\r
- apt-cache search clang | grep compiler;\r
- fi\r
- - if [[ "${BUILD_TYPE}" == "OSX_OPENSSL_1_1" ]]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install openssl@1.1 ;fi\r
# Generate the build scripts with CMake\r
- mkdir output\r
- openssl version\r
- if [[ -f "$COREFILE" ]]; then gdb -c "$COREFILE" example -ex "thread apply all bt" -ex "set pagination 0" -batch; fi\r
\r
\r
-# Modifications due to Travis IPv6 issues:\r
-# https://github.com/travis-ci/travis-ci/issues/8711\r
-# https://github.com/travis-ci/travis-ci/issues/8361\r
-# DCIVETWEB_ENABLE_IPV6=${ENABLE_IPV6} or =NO\r
-\r
script:\r
- - if [ "${MACOSX_PACKAGE}" == "1" ]; then\r
- cd "${TRAVIS_BUILD_DIR}";\r
- make -f Makefile.osx package;\r
- fi\r
- if [ "${RUN_UNITTEST}" == "1" ]; then\r
CTEST_OUTPUT_ON_FAILURE=1 CK_FORK=yes make all test;\r
fi\r
fi\r
- echo "Build and test script DONE"\r
\r
-# Coveralls options: https://github.com/eddyxu/cpp-coveralls/blob/master/README.md\r
after_success:\r
- - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then\r
- echo "Preparing coverage tests";\r
- echo "Creating coveralls coverage report";\r
- coveralls --include src --exclude src/main.c --exclude src/third_party --include include --gcov-options '\-lp' --root .. --build-root .;\r
- echo "Creating codecov coverage report";\r
- bash <(curl -s https://codecov.io/bash);\r
- echo "All coverage reports created";\r
- fi\r
\r
\r
#########################################################################################\r
matrix:\r
fast_finish: true\r
include:\r
-\r
-\r
-#########################################################################################\r
-##### TRUSTY ########################################################################\r
-#########################################################################################\r
-\r
- - dist: trusty\r
- sudo: false\r
- os: linux\r
- compiler: clang\r
- addons:\r
- apt:\r
- sources:\r
- - ubuntu-toolchain-r-test\r
- - llvm-toolchain-precise-3.8\r
- packages:\r
- - clang-3.8\r
- env:\r
- idx=1\r
- N=Clang3.8-Linux-Minimal-Debug\r
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"\r
- BUILD_TYPE=Debug\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=NO\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=YES\r
- ENABLE_SSL=NO\r
- NO_CGI=YES\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_SERVER_STATS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
- - dist: trusty\r
- sudo: false\r
- os: linux\r
- compiler: clang\r
- addons:\r
- apt:\r
- sources:\r
- - ubuntu-toolchain-r-test\r
- - llvm-toolchain-precise-3.8\r
- packages:\r
- - clang-3.8\r
- env:\r
- idx=3\r
- N=Clang3.8-Linux-Default-Release\r
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"\r
- BUILD_TYPE=Release\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_SERVER_STATS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
- - dist: trusty\r
- sudo: required\r
- os: linux\r
- compiler: gcc\r
- addons:\r
- apt:\r
- sources:\r
- - ubuntu-toolchain-r-test\r
- packages:\r
- - g++-5\r
- env:\r
- idx=5\r
- N=GCC5-Linux-Complete-NoLua-Release\r
- MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"\r
- BUILD_TYPE=Release\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=YES\r
- ENABLE_WEBSOCKETS=YES\r
- ENABLE_SERVER_STATS=YES\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=YES\r
- ALLOW_WARNINGS=YES\r
- RUN_UNITTEST=1\r
-\r
-\r
-#########################################################################################\r
-##### COVERAGE ######################################################################\r
-#########################################################################################\r
-\r
- - os: linux\r
- sudo: required\r
- compiler: clang\r
- env:\r
- idx=6\r
- N=GCCAnyVersion-Linux-Coverage\r
- BUILD_TYPE=Coverage\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=YES\r
- ENABLE_WEBSOCKETS=YES\r
- ENABLE_SERVER_STATS=YES\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
- RUN_UNITTEST=1\r
-\r
-#########################################################################################\r
-##### SHARED ########################################################################\r
-#########################################################################################\r
-\r
- - sudo: false\r
- os: linux\r
- compiler: clang\r
- env:\r
- idx=9\r
- N=Clang-Linux-Default-Shared\r
- BUILD_TYPE=Debug\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=NO\r
- OPENSSL_1_1=YES\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=YES\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_SERVER_STATS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
-\r
-#########################################################################################\r
-##### BUILD TYPES ###################################################################\r
-#########################################################################################\r
-\r
-# According to CMakeLists, options are:\r
-# None Debug Release RelWithDebInfo MinSizeRel Coverage\r
-\r
- -\r
- os: linux\r
- compiler: gcc\r
- env:\r
- idx=15\r
- N=GCCLinuxDefault_RelWithDebInfo\r
- BUILD_TYPE=RelWithDebInfo\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
- -\r
- os: linux\r
- compiler: gcc\r
- env:\r
- idx=16\r
- N=GCCLinuxDefault_MinSizeRel\r
- BUILD_TYPE=MinSizeRel\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
- -\r
- os: linux\r
- compiler: gcc\r
- env:\r
- idx=17\r
- N=GCCLinuxDefault_None\r
- BUILD_TYPE=None\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
-#########################################################################################\r
-##### XENIAL, BIONIC, FOCAL #########################################################\r
-#########################################################################################\r
-\r
- -\r
- os: linux\r
- compiler: gcc\r
- dist: xenial\r
- env:\r
- idx=20\r
- N=GCCLinuxDefault_xenial\r
- BUILD_TYPE=Release\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
- -\r
- os: linux\r
- compiler: gcc\r
- dist: bionic\r
- env:\r
- idx=21\r
- N=GCCLinuxDefault_bionic\r
- BUILD_TYPE=Release\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=NO\r
- OPENSSL_1_1=YES\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
-\r
- -\r
- os: linux\r
- compiler: gcc\r
- dist: focal\r
- addons:\r
- apt:\r
- packages:\r
- - lsb-core\r
- env:\r
- idx=23\r
- N=GCCLinuxDefault_focal\r
- BUILD_TYPE=Release\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=NO\r
- OPENSSL_1_1=YES\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=NO\r
- ENABLE_WEBSOCKETS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
- RUN_UNITTEST=1\r
-\r
-\r
#########################################################################################\r
##### FREEBSD BUILD ###########=#####################################################\r
#########################################################################################\r
ENABLE_DUKTAPE=NO\r
NO_CACHING=NO\r
ALLOW_WARNINGS=YES\r
- RUN_UNITTEST=1\r
-\r
-\r
-#########################################################################################\r
-##### OSX BUILD #####################################################################\r
-#########################################################################################\r
-\r
- -\r
- os: osx\r
- sudo: required\r
- compiler: clang\r
- env:\r
- idx=8\r
- N=Clang-OSX-Complete-NoLua-Release-OpenSSL_1_1_NoDynLoad\r
- BUILD_TYPE=Release\r
- ENABLE_SSL_DYNAMIC_LOADING=NO\r
- OPENSSL_1_0=NO\r
- OPENSSL_1_1=YES\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=YES\r
- ENABLE_WEBSOCKETS=YES\r
- ENABLE_SERVER_STATS=YES\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=YES\r
- ALLOW_WARNINGS=YES\r
- OPENSSL_ROOT_DIR="/usr/local/opt/openssl@1.1"\r
- LDFLAGS="-L${OPENSSL_ROOT_DIR}/lib"\r
- CFLAGS="-I${OPENSSL_ROOT_DIR}/include"\r
- ADDITIONAL_CMAKE_ARGS="-DCMAKE_SHARED_LINKER_FLAGS=${LDFLAGS} -DCMAKE_C_FLAGS=${CFLAGS}"\r
- PATH="${OPENSSL_ROOT_DIR}/bin:$PATH"\r
- DYLD_LIBRARY_PATH="${OPENSSL_ROOT_DIR}/lib:${DYLD_LIBRARY_PATH}"\r
- RUN_UNITTEST=1\r
-\r
- -\r
- os: osx\r
- sudo: required\r
- compiler: clang\r
- env:\r
- idx=11\r
- N=OSX-Package\r
- BUILD_TYPE=Release\r
- ENABLE_SSL_DYNAMIC_LOADING=YES\r
- OPENSSL_1_0=YES\r
- OPENSSL_1_1=NO\r
- ENABLE_CXX=NO\r
- ENABLE_LUA_SHARED=NO\r
- C_STANDARD=auto\r
- CXX_STANDARD=auto\r
- BUILD_SHARED=NO\r
- NO_FILES=NO\r
- ENABLE_SSL=YES\r
- NO_CGI=NO\r
- ENABLE_IPV6=YES\r
- ENABLE_WEBSOCKETS=YES\r
- ENABLE_SERVER_STATS=NO\r
- ENABLE_LUA=NO\r
- ENABLE_DUKTAPE=NO\r
- NO_CACHING=NO\r
- ALLOW_WARNINGS=YES\r
- MACOSX_PACKAGE=1\r
-\r
-#########################################################################################\r
-#########################################################################################\r
-##### END OF BUILD MATRIX ###########################################################\r
-#########################################################################################\r
-#########################################################################################\r
-\r
-# Remove Lua build, until someone knows how to fix the CMake files\r
-#\r
-# - dist: trusty\r
-# sudo: required\r
-# os: linux\r
-# compiler: clang\r
-# addons:\r
-# apt:\r
-# sources:\r
-# - ubuntu-toolchain-r-test\r
-# - llvm-toolchain-precise-3.8\r
-# packages:\r
-# - clang-3.8\r
-# - lua5.2\r
-# env:\r
-# idx=99\r
-# N=Clang3.8-Linux-Complete-WithLua-Debug\r
-# MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"\r
-# BUILD_TYPE=Debug\r
-# ENABLE_SSL_DYNAMIC_LOADING=YES\r
-# OPENSSL_1_0=NO\r
-# OPENSSL_1_1=YES\r
-# ENABLE_CXX=NO\r
-# ENABLE_LUA_SHARED=YES\r
-# C_STANDARD=auto\r
-# CXX_STANDARD=auto\r
-# BUILD_SHARED=NO\r
-# NO_FILES=NO\r
-# ENABLE_SSL=YES\r
-# NO_CGI=NO\r
-# ENABLE_IPV6=YES\r
-# ENABLE_WEBSOCKETS=YES\r
-# ENABLE_SERVER_STATS=YES\r
-# ENABLE_LUA=YES\r
-# ENABLE_LUA_SHARED=YES\r
-# ENABLE_DUKTAPE=NO\r
-# NO_CACHING=YES\r
-# ALLOW_WARNINGS=YES\r
+ RUN_UNITTEST=1
\ No newline at end of file