123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216 |
- language: c
- sudo: false
- compiler:
- - gcc
- - clang
- os:
- - linux
- - osx
- env:
- global:
- - BUILD_TYPE=Coverage
- - ENABLE_SSL_DYNAMIC_LOADING=YES
- - ENABLE_CXX=NO
- - ENABLE_LUA=NO
- - ENABLE_LUA_SHARED=NO
- - C_STANDARD=auto
- - CXX_STANDARD=auto
- matrix:
- # Start with a minimal build
- - BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- - BUILD_SHARED=YES
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- # Run the default build (no "NO_*" options, no "USE_*"/"WITH_*" options)
- - BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- - BUILD_SHARED=YES
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- # Full featured build
- - BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=YES
- - BUILD_SHARED=YES
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=YES
- # One selected feature (files)
- - BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- - BUILD_SHARED=YES
- NO_FILES=NO
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- # One selected feature (SSL)
- - BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=YES
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- - BUILD_SHARED=YES
- NO_FILES=YES
- ENABLE_SSL=YES
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- # One selected feature (CGI)
- - BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- - BUILD_SHARED=YES
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- # One selected feature (IPv6)
- - BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=NO
- - BUILD_SHARED=YES
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=NO
- # One selected feature (WebSockets)
- - BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=YES
- - BUILD_SHARED=YES
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=YES
- # Selecteded combination (SSL + websocket)
- - BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=YES
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=YES
- - BUILD_SHARED=YES
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=YES
- # Selecteded combination (SSL + CGI + files + websocket)
- - BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=YES
- - BUILD_SHARED=YES
- NO_FILES=NO
- ENABLE_SSL=NO
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=YES
- addons:
- apt:
- packages:
- - cmake
- - openssl
- - libssl-dev
- sources:
- - kubuntu-backports
- before_install:
- - cmake --version
- install:
- - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
- PATH=~/.local/bin:${PATH};
- pip install --user --upgrade pip;
- pip install --user cpp-coveralls;
- fi
- before_script:
- # Check some settings of the build server
- - uname -a
- - pwd
- - ls -l
- - /sbin/ip addr show
- # Generate the build scripts with CMake
- - mkdir output
- - cd output
- - cmake --version
- - cmake
- -G "Unix Makefiles"
- -DCMAKE_BUILD_TYPE=${BUILD_TYPE}
- -DBUILD_SHARED_LIBS=${BUILD_SHARED}
- "-DCIVETWEB_THIRD_PARTY_DIR=${HOME}/third-party"
- -DCIVETWEB_ENABLE_THIRD_PARTY_OUTPUT=YES
- -DCIVETWEB_ENABLE_SSL=${ENABLE_SSL}
- -DCIVETWEB_DISABLE_CGI=${NO_CGI}
- -DCIVETWEB_SERVE_NO_FILES=${NO_FILES}
- -DCIVETWEB_ENABLE_SSL_DYNAMIC_LOADING=${ENABLE_SSL_DYNAMIC_LOADING}
- -DCIVETWEB_ENABLE_WEBSOCKETS=${ENABLE_WEBSOCKETS}
- -DCIVETWEB_ENABLE_CXX=${ENABLE_CXX}
- -DCIVETWEB_ENABLE_IPV6=${ENABLE_IPV6}
- -DCIVETWEB_ENABLE_LUA=${ENABLE_LUA}
- -DCIVETWEB_ENABLE_LUA_SHARED=${ENABLE_LUA_SHARED}
- -DCIVETWEB_C_STANDARD=${C_STANDARD}
- -DCIVETWEB_CXX_STANDARD=${CXX_STANDARD}
- ..
- cache:
- directories:
- - $HOME/third-party
- matrix:
- - fast_finish: true
- script:
- - CTEST_OUTPUT_ON_FAILURE=1 make all test
- after_success:
- - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
- coveralls --include src --include include --gcov-options '\-lp' --root .. --build-root .;
- fi
|