123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454 |
- language: c
- sudo: false
- cache:
- directories:
- - $HOME/third-party
- osx_image: xcode8
- 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
- # Generate the build scripts with CMake
- - mkdir output
- - gcc test/cgi_test.c -o output/cgi_test.cgi
- - 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_ENABLE_DUKTAPE=${ENABLE_DUKTAPE}
- -DCIVETWEB_DISABLE_CACHING=${NO_CACHING}
- -DCIVETWEB_C_STANDARD=${C_STANDARD}
- -DCIVETWEB_CXX_STANDARD=${CXX_STANDARD}
- ..
- - ls -la
- script:
- - if [ "${MACOSX_PACKAGE}" == "1" ]; then
- cd "${TRAVIS_BUILD_DIR}";
- make -f Makefile.osx package;
- else
- CTEST_OUTPUT_ON_FAILURE=1 make all test;
- fi
- # Coveralls options: https://github.com/eddyxu/cpp-coveralls/blob/master/README.md
- after_success:
- - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
- coveralls --include src --exclude src/main.c --exclude src/third_party --include include --gcov-options '\-lp' --root .. --build-root .;
- fi
- ###################################
- matrix:
- fast_finish: false
- allow_failures:
- # Allow OSX to fail until #364 is solved
- - os: osx
- include:
- -
- os: linux
- compiler: clang
- env:
- N=ClangLinuxMinimal
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=0
- BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: linux
- compiler: gcc
- env:
- N=GCCLinuxMinimal
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=0
- BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: osx
- compiler: clang
- env:
- N=ClangOSXMinimal
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=0
- BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: linux
- compiler: clang
- env:
- N=ClangLinuxMinNoCache
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=0
- BUILD_SHARED=NO
- NO_FILES=YES
- ENABLE_SSL=NO
- NO_CGI=YES
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=YES
- -
- os: linux
- compiler: clang
- env:
- N=ClangLinuxMax
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=31
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=YES
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=YES
- -
- os: linux
- compiler: gcc
- env:
- N=GCCLinuxMax
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=31
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=YES
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=YES
- -
- os: osx
- compiler: clang
- env:
- N=ClangOSXMax
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=31
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=YES
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=YES
- -
- os: linux
- compiler: clang
- env:
- N=ClangLinuxDefault
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=7
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: linux
- compiler: gcc
- env:
- N=GCCLinuxDefault
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=7
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: osx
- compiler: clang
- env:
- N=ClangOSXDefault
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=7
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: linux
- compiler: clang
- env:
- N=ClangLinuxDefaultShared
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=7
- BUILD_SHARED=YES
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: linux
- compiler: gcc
- env:
- N=GCCLinuxDefaultShared
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=7
- BUILD_SHARED=YES
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: osx
- compiler: clang
- env:
- N=ClangOSXDefaultShared
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=7
- BUILD_SHARED=YES
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- -
- os: osx
- compiler: clang
- env:
- N=OSX_Package
- BUILD_TYPE=Coverage
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- ENABLE_LUA_SHARED=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- FEATURES=31
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=YES
- NO_CGI=NO
- ENABLE_IPV6=YES
- ENABLE_WEBSOCKETS=YES
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
- MACOSX_PACKAGE=1
- #### Now all define combinations, but only for Linux clang
- ##### Generated with Lua:
- #
- # function YN(i,b)
- # if (math.mod(i, b) >= (b/2)) then
- # return "YES"
- # end
- # return "NO"
- # end
- # for i=0,31 do
- # if true then -- (i~=0) and (i~=7) and (i~=31) then
- # print(" -")
- # print(" os: linux")
- # print(" compiler: clang")
- # print(" env:")
- # print(" N=Combination" .. tostring(i))
- # print(" BUILD_TYPE=Release")
- # print(" ENABLE_SSL_DYNAMIC_LOADING=YES")
- # print(" ENABLE_CXX=NO")
- # print(" C_STANDARD=auto")
- # print(" CXX_STANDARD=auto")
- # print(" ENABLE_LUA_SHARED=NO")
- # print(" FEATURES=" .. tostring(i))
- # print(" BUILD_SHARED=NO")
- # print(" NO_FILES=" .. YN(i, 1))
- # print(" ENABLE_SSL=" .. YN(i, 2))
- # print(" NO_CGI=" .. YN(i, 4))
- # print(" ENABLE_IPV6=" .. YN(i, 8))
- # print(" ENABLE_WEBSOCKETS=" .. YN(i, 16))
- # print(" ENABLE_LUA=" .. YN(i, 32))
- # print(" ENABLE_DUKTAPE=" .. YN(i, 64))
- # print(" NO_CACHING=NO")
- # print("")
- # end
- # end
- #
- -
- os: linux
- compiler: clang
- env:
- N=Combination0
- BUILD_TYPE=Release
- ENABLE_SSL_DYNAMIC_LOADING=YES
- ENABLE_CXX=NO
- C_STANDARD=auto
- CXX_STANDARD=auto
- ENABLE_LUA_SHARED=NO
- FEATURES=0
- BUILD_SHARED=NO
- NO_FILES=NO
- ENABLE_SSL=NO
- NO_CGI=NO
- ENABLE_IPV6=NO
- ENABLE_WEBSOCKETS=NO
- ENABLE_LUA=NO
- ENABLE_DUKTAPE=NO
- NO_CACHING=NO
|