.travis.yml 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817
  1. ##############################################################################
  2. # Project specific settings
  3. ##############################################################################
  4. language: c
  5. cache:
  6. directories:
  7. - $HOME/third-party
  8. osx_image: xcode8
  9. addons:
  10. apt:
  11. packages:
  12. - cmake
  13. - openssl
  14. - libssl-dev
  15. sources:
  16. - kubuntu-backports
  17. before_install:
  18. - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
  19. mkdir $HOME/usr;
  20. export PATH="$HOME/usr/bin:$PATH";
  21. wget https://cmake.org/files/v3.7/cmake-3.7.2-Linux-x86_64.sh --no-check-certificate;
  22. chmod +x cmake-3.7.2-Linux-x86_64.sh;
  23. ./cmake-3.7.2-Linux-x86_64.sh --prefix=$HOME/usr --exclude-subdir --skip-license;
  24. fi
  25. - cmake --version
  26. install:
  27. - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
  28. PATH=~/.local/bin:${PATH};
  29. pip install --user --upgrade pip;
  30. pip install --user cpp-coveralls;
  31. fi
  32. before_script:
  33. # Add an IPv6 config - see the corresponding Travis issue
  34. # https://github.com/travis-ci/travis-ci/issues/8361
  35. - if [ "${ENABLE_IPV6}" == "YES" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
  36. echo "Activating IPv6 on Travis";
  37. sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6';
  38. fi
  39. # Check some settings of the build server (operating system, IPv6 availability, directory)
  40. - uname -a
  41. - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
  42. lsb_release -a;
  43. cat /etc/network/interfaces;
  44. fi
  45. - ifconfig
  46. - pwd
  47. - ls -la
  48. - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
  49. apt-cache search gcc | grep "GNU C compiler";
  50. apt-cache search clang | grep compiler;
  51. fi
  52. - if [[ "${BUILD_TYPE}" == "OSX_OPENSSL_1_1" ]]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install openssl@1.1 ;fi
  53. # Generate the build scripts with CMake
  54. - mkdir output
  55. - gcc unittest/cgi_test.c -o output/cgi_test.cgi
  56. - cd output
  57. - cmake --version
  58. - cmake
  59. -G "Unix Makefiles"
  60. -DCMAKE_BUILD_TYPE=${BUILD_TYPE}
  61. -DBUILD_SHARED_LIBS=${BUILD_SHARED}
  62. "-DCIVETWEB_THIRD_PARTY_DIR=${HOME}/third-party"
  63. -DCIVETWEB_ENABLE_THIRD_PARTY_OUTPUT=YES
  64. -DCIVETWEB_ENABLE_SSL=${ENABLE_SSL}
  65. -DCIVETWEB_DISABLE_CGI=${NO_CGI}
  66. -DCIVETWEB_SERVE_NO_FILES=${NO_FILES}
  67. -DCIVETWEB_ENABLE_SSL_DYNAMIC_LOADING=${ENABLE_SSL_DYNAMIC_LOADING}
  68. -DCIVETWEB_SSL_OPENSSL_API_1_1=${OPENSSL_1_1}
  69. -DCIVETWEB_ENABLE_WEBSOCKETS=${ENABLE_WEBSOCKETS}
  70. -DCIVETWEB_ENABLE_CXX=${ENABLE_CXX}
  71. -DCIVETWEB_ENABLE_SERVER_STATS=${ENABLE_SERVER_STATS}
  72. -DCIVETWEB_ENABLE_LUA=${ENABLE_LUA}
  73. -DCIVETWEB_ENABLE_LUA_SHARED=${ENABLE_LUA_SHARED}
  74. -DCIVETWEB_ENABLE_DUKTAPE=${ENABLE_DUKTAPE}
  75. -DCIVETWEB_DISABLE_CACHING=${NO_CACHING}
  76. -DCIVETWEB_C_STANDARD=${C_STANDARD}
  77. -DCIVETWEB_CXX_STANDARD=${CXX_STANDARD}
  78. -DCIVETWEB_ALLOW_WARNINGS=${ALLOW_WARNINGS}
  79. -DCIVETWEB_ENABLE_IPV6=${ENABLE_IPV6}
  80. ${ADDITIONAL_CMAKE_ARGS}
  81. ..
  82. - ls -la
  83. # Modifications due to Travis IPv6 issues:
  84. # https://github.com/travis-ci/travis-ci/issues/8711
  85. # https://github.com/travis-ci/travis-ci/issues/8361
  86. # DCIVETWEB_ENABLE_IPV6=${ENABLE_IPV6} or =NO
  87. script:
  88. - if [ "${MACOSX_PACKAGE}" == "1" ]; then
  89. cd "${TRAVIS_BUILD_DIR}";
  90. make -f Makefile.osx package;
  91. else
  92. CTEST_OUTPUT_ON_FAILURE=1 make all test;
  93. fi
  94. - pwd
  95. - ls -la unittest
  96. - echo "Show all test logs:"
  97. - if [ "${MACOSX_PACKAGE}" != "1" ]; then
  98. for f in unittest/test-*.log; do printf "\n$f:\n"; cat $f; done;
  99. for f in unittest/test-*.xml; do printf "\n$f:\n"; cat $f; done;
  100. fi
  101. - echo "Build and test script DONE"
  102. # Coveralls options: https://github.com/eddyxu/cpp-coveralls/blob/master/README.md
  103. after_success:
  104. - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
  105. coveralls --include src --exclude src/main.c --exclude src/third_party --include include --gcov-options '\-lp' --root .. --build-root .;
  106. bash <(curl -s https://codecov.io/bash);
  107. fi
  108. conan-linux: &conan-linux
  109. os: linux
  110. dist: xenial
  111. language: python
  112. python: "3.7"
  113. services:
  114. - docker
  115. if: tag IS present
  116. before_install:
  117. - true
  118. install:
  119. - ./conan/travis/install.sh
  120. before_script:
  121. - true
  122. script:
  123. - ./conan/travis/build.sh
  124. after_success:
  125. - true
  126. conan-osx: &conan-osx
  127. os: osx
  128. language: generic
  129. if: tag IS present
  130. before_install:
  131. - true
  132. install:
  133. - ./conan/travis/install.sh
  134. before_script:
  135. - true
  136. script:
  137. - ./conan/travis/build.sh
  138. after_success:
  139. - true
  140. ##############################################################################
  141. # build matrix
  142. ##############################################################################
  143. matrix:
  144. fast_finish: false
  145. include:
  146. - dist: trusty
  147. sudo: false
  148. os: linux
  149. compiler: clang
  150. addons:
  151. apt:
  152. sources:
  153. - ubuntu-toolchain-r-test
  154. - llvm-toolchain-precise-3.8
  155. packages:
  156. - clang-3.8
  157. env:
  158. idx=1
  159. N=Clang3.8-Linux-Minimal-Debug
  160. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  161. BUILD_TYPE=Debug
  162. ENABLE_SSL_DYNAMIC_LOADING=YES
  163. OPENSSL_1_1=NO
  164. ENABLE_CXX=NO
  165. ENABLE_LUA_SHARED=NO
  166. C_STANDARD=auto
  167. CXX_STANDARD=auto
  168. FEATURES=0
  169. BUILD_SHARED=NO
  170. NO_FILES=YES
  171. ENABLE_SSL=NO
  172. NO_CGI=YES
  173. ENABLE_IPV6=NO
  174. ENABLE_WEBSOCKETS=NO
  175. ENABLE_SERVER_STATS=NO
  176. ENABLE_LUA=NO
  177. ENABLE_DUKTAPE=NO
  178. NO_CACHING=NO
  179. ALLOW_WARNINGS=YES
  180. - dist: trusty
  181. sudo: false
  182. os: linux
  183. compiler: clang
  184. addons:
  185. apt:
  186. sources:
  187. - ubuntu-toolchain-r-test
  188. - llvm-toolchain-precise-3.8
  189. packages:
  190. - clang-3.8
  191. env:
  192. idx=2
  193. N=Clang3.8-Linux-Default-Release
  194. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  195. BUILD_TYPE=Release
  196. ENABLE_SSL_DYNAMIC_LOADING=YES
  197. OPENSSL_1_1=NO
  198. ENABLE_CXX=NO
  199. ENABLE_LUA_SHARED=NO
  200. C_STANDARD=auto
  201. CXX_STANDARD=auto
  202. FEATURES=7
  203. BUILD_SHARED=NO
  204. NO_FILES=NO
  205. ENABLE_SSL=YES
  206. NO_CGI=NO
  207. ENABLE_IPV6=NO
  208. ENABLE_WEBSOCKETS=NO
  209. ENABLE_SERVER_STATS=NO
  210. ENABLE_LUA=NO
  211. ENABLE_DUKTAPE=NO
  212. NO_CACHING=NO
  213. NO_CACHING=NO
  214. ALLOW_WARNINGS=YES
  215. - dist: trusty
  216. sudo: false
  217. os: linux
  218. compiler: clang
  219. addons:
  220. apt:
  221. sources:
  222. - ubuntu-toolchain-r-test
  223. - llvm-toolchain-precise-3.8
  224. packages:
  225. - clang-3.8
  226. env:
  227. idx=3
  228. N=Clang3.8-Linux-Default-Release
  229. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  230. BUILD_TYPE=Release
  231. ENABLE_SSL_DYNAMIC_LOADING=YES
  232. OPENSSL_1_1=NO
  233. ENABLE_CXX=NO
  234. ENABLE_LUA_SHARED=NO
  235. C_STANDARD=auto
  236. CXX_STANDARD=auto
  237. FEATURES=7
  238. BUILD_SHARED=NO
  239. NO_FILES=NO
  240. ENABLE_SSL=YES
  241. NO_CGI=NO
  242. ENABLE_IPV6=NO
  243. ENABLE_WEBSOCKETS=NO
  244. ENABLE_SERVER_STATS=NO
  245. ENABLE_LUA=NO
  246. ENABLE_DUKTAPE=NO
  247. NO_CACHING=NO
  248. ALLOW_WARNINGS=YES
  249. - dist: trusty
  250. sudo: required
  251. os: linux
  252. compiler: clang
  253. addons:
  254. apt:
  255. sources:
  256. - ubuntu-toolchain-r-test
  257. - llvm-toolchain-precise-3.8
  258. packages:
  259. - clang-3.8
  260. env:
  261. idx=4
  262. N=Clang3.8-Linux-Complete-NoLua-Release
  263. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  264. BUILD_TYPE=Release
  265. ENABLE_SSL_DYNAMIC_LOADING=YES
  266. OPENSSL_1_1=NO
  267. ENABLE_CXX=NO
  268. ENABLE_LUA_SHARED=NO
  269. C_STANDARD=auto
  270. CXX_STANDARD=auto
  271. FEATURES=31
  272. BUILD_SHARED=NO
  273. NO_FILES=NO
  274. ENABLE_SSL=YES
  275. NO_CGI=NO
  276. ENABLE_IPV6=YES
  277. ENABLE_WEBSOCKETS=YES
  278. ENABLE_SERVER_STATS=YES
  279. ENABLE_LUA=NO
  280. ENABLE_DUKTAPE=NO
  281. NO_CACHING=YES
  282. ALLOW_WARNINGS=YES
  283. - dist: trusty
  284. sudo: required
  285. os: linux
  286. compiler: gcc
  287. addons:
  288. apt:
  289. sources:
  290. - ubuntu-toolchain-r-test
  291. packages:
  292. - g++-5
  293. env:
  294. idx=5
  295. N=GCC5-Linux-Complete-NoLua-Release
  296. MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
  297. BUILD_TYPE=Release
  298. ENABLE_SSL_DYNAMIC_LOADING=YES
  299. OPENSSL_1_1=NO
  300. ENABLE_CXX=NO
  301. ENABLE_LUA_SHARED=NO
  302. C_STANDARD=auto
  303. CXX_STANDARD=auto
  304. FEATURES=31
  305. BUILD_SHARED=NO
  306. NO_FILES=NO
  307. ENABLE_SSL=YES
  308. NO_CGI=NO
  309. ENABLE_IPV6=YES
  310. ENABLE_WEBSOCKETS=YES
  311. ENABLE_SERVER_STATS=YES
  312. ENABLE_LUA=NO
  313. ENABLE_DUKTAPE=NO
  314. NO_CACHING=YES
  315. ALLOW_WARNINGS=YES
  316. - os: linux
  317. sudo: required
  318. compiler: gcc
  319. env:
  320. idx=6
  321. N=GCCAnyVersion-Linux-Coverage
  322. BUILD_TYPE=Coverage
  323. ENABLE_SSL_DYNAMIC_LOADING=YES
  324. OPENSSL_1_1=NO
  325. ENABLE_CXX=NO
  326. ENABLE_LUA_SHARED=NO
  327. C_STANDARD=auto
  328. CXX_STANDARD=auto
  329. FEATURES=31
  330. BUILD_SHARED=NO
  331. NO_FILES=NO
  332. ENABLE_SSL=YES
  333. NO_CGI=NO
  334. ENABLE_IPV6=YES
  335. ENABLE_WEBSOCKETS=YES
  336. ENABLE_SERVER_STATS=YES
  337. ENABLE_LUA=NO
  338. ENABLE_DUKTAPE=NO
  339. NO_CACHING=NO
  340. ALLOW_WARNINGS=YES
  341. - os: osx
  342. sudo: required
  343. compiler: clang
  344. env:
  345. idx=7
  346. N=Clang-OSX-Complete-NoLua-Release
  347. BUILD_TYPE=Release
  348. ENABLE_SSL_DYNAMIC_LOADING=YES
  349. OPENSSL_1_1=NO
  350. ENABLE_CXX=NO
  351. ENABLE_LUA_SHARED=NO
  352. C_STANDARD=auto
  353. CXX_STANDARD=auto
  354. FEATURES=31
  355. BUILD_SHARED=NO
  356. NO_FILES=NO
  357. ENABLE_SSL=YES
  358. NO_CGI=NO
  359. ENABLE_IPV6=YES
  360. ENABLE_WEBSOCKETS=YES
  361. ENABLE_SERVER_STATS=YES
  362. ENABLE_LUA=NO
  363. ENABLE_DUKTAPE=NO
  364. NO_CACHING=YES
  365. ALLOW_WARNINGS=YES
  366. -
  367. os: osx
  368. sudo: required
  369. compiler: clang
  370. env:
  371. idx=8
  372. N=Clang-OSX-Complete-NoLua-Release-OpenSSL_1_1_NoDynLoad
  373. BUILD_TYPE=OSX_OPENSSL_1_1
  374. ENABLE_SSL_DYNAMIC_LOADING=NO
  375. OPENSSL_1_1=YES
  376. ENABLE_CXX=NO
  377. ENABLE_LUA_SHARED=NO
  378. C_STANDARD=auto
  379. CXX_STANDARD=auto
  380. FEATURES=31
  381. BUILD_SHARED=NO
  382. NO_FILES=NO
  383. ENABLE_SSL=YES
  384. NO_CGI=NO
  385. ENABLE_IPV6=YES
  386. ENABLE_WEBSOCKETS=YES
  387. ENABLE_SERVER_STATS=YES
  388. ENABLE_LUA=NO
  389. ENABLE_DUKTAPE=NO
  390. NO_CACHING=YES
  391. ALLOW_WARNINGS=YES
  392. OPENSSL_ROOT_DIR="/usr/local/opt/openssl@1.1"
  393. LDFLAGS="-L${OPENSSL_ROOT_DIR}/lib"
  394. CFLAGS="-I${OPENSSL_ROOT_DIR}/include"
  395. ADDITIONAL_CMAKE_ARGS="-DCMAKE_SHARED_LINKER_FLAGS=${LDFLAGS} -DCMAKE_C_FLAGS=${CFLAGS}"
  396. PATH="${OPENSSL_ROOT_DIR}/bin:$PATH"
  397. DYLD_LIBRARY_PATH="${OPENSSL_ROOT_DIR}/lib:${DYLD_LIBRARY_PATH}"
  398. - dist: trusty
  399. sudo: false
  400. os: linux
  401. compiler: clang
  402. addons:
  403. apt:
  404. sources:
  405. - ubuntu-toolchain-r-test
  406. - llvm-toolchain-trusty-5.0
  407. packages:
  408. - clang-5.0
  409. env:
  410. idx=9
  411. N=Clang50-Linux-Default-Shared
  412. BUILD_TYPE=Debug
  413. ENABLE_SSL_DYNAMIC_LOADING=YES
  414. OPENSSL_1_1=NO
  415. ENABLE_CXX=NO
  416. ENABLE_LUA_SHARED=NO
  417. C_STANDARD=auto
  418. CXX_STANDARD=auto
  419. FEATURES=7
  420. BUILD_SHARED=YES
  421. NO_FILES=NO
  422. ENABLE_SSL=YES
  423. NO_CGI=NO
  424. ENABLE_IPV6=NO
  425. ENABLE_WEBSOCKETS=NO
  426. ENABLE_SERVER_STATS=NO
  427. ENABLE_LUA=NO
  428. ENABLE_DUKTAPE=NO
  429. NO_CACHING=NO
  430. ALLOW_WARNINGS=YES
  431. MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
  432. -
  433. os: linux
  434. dist: precise
  435. sudo: required
  436. compiler: clang
  437. env:
  438. idx=10
  439. N=Precise-Clang-Linux-Default
  440. BUILD_TYPE=Debug
  441. ENABLE_SSL_DYNAMIC_LOADING=YES
  442. OPENSSL_1_1=NO
  443. ENABLE_CXX=NO
  444. ENABLE_LUA_SHARED=NO
  445. C_STANDARD=auto
  446. CXX_STANDARD=auto
  447. FEATURES=7
  448. BUILD_SHARED=NO
  449. NO_FILES=NO
  450. ENABLE_SSL=YES
  451. NO_CGI=NO
  452. ENABLE_IPV6=NO
  453. ENABLE_WEBSOCKETS=NO
  454. ENABLE_SERVER_STATS=NO
  455. ENABLE_LUA=NO
  456. ENABLE_DUKTAPE=NO
  457. NO_CACHING=NO
  458. ALLOW_WARNINGS=YES
  459. -
  460. os: osx
  461. sudo: required
  462. compiler: clang
  463. env:
  464. idx=11
  465. N=OSX-Package
  466. BUILD_TYPE=Release
  467. ENABLE_SSL_DYNAMIC_LOADING=YES
  468. OPENSSL_1_1=NO
  469. ENABLE_CXX=NO
  470. ENABLE_LUA_SHARED=NO
  471. C_STANDARD=auto
  472. CXX_STANDARD=auto
  473. FEATURES=31
  474. BUILD_SHARED=NO
  475. NO_FILES=NO
  476. ENABLE_SSL=YES
  477. NO_CGI=NO
  478. ENABLE_IPV6=YES
  479. ENABLE_WEBSOCKETS=YES
  480. ENABLE_SERVER_STATS=NO
  481. ENABLE_LUA=NO
  482. ENABLE_DUKTAPE=NO
  483. NO_CACHING=NO
  484. ALLOW_WARNINGS=YES
  485. MACOSX_PACKAGE=1
  486. - dist: trusty
  487. sudo: required
  488. os: linux
  489. compiler: clang
  490. addons:
  491. apt:
  492. sources:
  493. - ubuntu-toolchain-r-test
  494. - llvm-toolchain-trusty-3.8
  495. packages:
  496. - clang-3.8
  497. env:
  498. idx=12
  499. N=Clang-Linux-32bit-Complete-NoLua-Release
  500. ARCH=x86
  501. BUILD_TYPE=Release
  502. ENABLE_SSL_DYNAMIC_LOADING=YES
  503. OPENSSL_1_1=NO
  504. ENABLE_CXX=NO
  505. ENABLE_LUA_SHARED=NO
  506. C_STANDARD=auto
  507. CXX_STANDARD=auto
  508. FEATURES=31
  509. BUILD_SHARED=NO
  510. NO_FILES=NO
  511. ENABLE_SSL=YES
  512. NO_CGI=NO
  513. ENABLE_IPV6=YES
  514. ENABLE_WEBSOCKETS=YES
  515. ENABLE_SERVER_STATS=YES
  516. ENABLE_LUA=NO
  517. ENABLE_DUKTAPE=NO
  518. NO_CACHING=YES
  519. ALLOW_WARNINGS=YES
  520. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  521. ### Test all build types:
  522. # According to CMakeLists, options are:
  523. # None Debug Release RelWithDebInfo MinSizeRel Coverage
  524. -
  525. os: linux
  526. sudo: required
  527. compiler: clang
  528. env:
  529. idx=13
  530. N=NoSslDynamicLoading
  531. BUILD_TYPE=Release
  532. ENABLE_SSL_DYNAMIC_LOADING=NO
  533. OPENSSL_1_1=NO
  534. ENABLE_CXX=NO
  535. C_STANDARD=auto
  536. CXX_STANDARD=auto
  537. ENABLE_LUA_SHARED=NO
  538. FEATURES=31
  539. BUILD_SHARED=NO
  540. NO_FILES=NO
  541. ENABLE_SSL=YES
  542. NO_CGI=NO
  543. ENABLE_IPV6=YES
  544. ENABLE_WEBSOCKETS=YES
  545. ENABLE_LUA=NO
  546. ENABLE_DUKTAPE=NO
  547. NO_CACHING=NO
  548. ALLOW_WARNINGS=YES
  549. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  550. -
  551. os: linux
  552. compiler: gcc
  553. env:
  554. idx=14
  555. N=GCCLinuxDefault_Debug
  556. BUILD_TYPE=Debug
  557. ENABLE_SSL_DYNAMIC_LOADING=YES
  558. OPENSSL_1_1=NO
  559. ENABLE_CXX=NO
  560. ENABLE_LUA_SHARED=NO
  561. C_STANDARD=auto
  562. CXX_STANDARD=auto
  563. FEATURES=7
  564. BUILD_SHARED=NO
  565. NO_FILES=NO
  566. ENABLE_SSL=YES
  567. NO_CGI=NO
  568. ENABLE_IPV6=NO
  569. ENABLE_WEBSOCKETS=NO
  570. ENABLE_LUA=NO
  571. ENABLE_DUKTAPE=NO
  572. NO_CACHING=NO
  573. ALLOW_WARNINGS=YES
  574. -
  575. os: linux
  576. compiler: gcc
  577. env:
  578. idx=15
  579. N=GCCLinuxDefault_RelWithDebInfo
  580. BUILD_TYPE=RelWithDebInfo
  581. ENABLE_SSL_DYNAMIC_LOADING=YES
  582. OPENSSL_1_1=NO
  583. ENABLE_CXX=NO
  584. ENABLE_LUA_SHARED=NO
  585. C_STANDARD=auto
  586. CXX_STANDARD=auto
  587. FEATURES=7
  588. BUILD_SHARED=NO
  589. NO_FILES=NO
  590. ENABLE_SSL=YES
  591. NO_CGI=NO
  592. ENABLE_IPV6=NO
  593. ENABLE_WEBSOCKETS=NO
  594. ENABLE_LUA=NO
  595. ENABLE_DUKTAPE=NO
  596. NO_CACHING=NO
  597. ALLOW_WARNINGS=YES
  598. -
  599. os: linux
  600. compiler: gcc
  601. env:
  602. idx=16
  603. N=GCCLinuxDefault_MinSizeRel
  604. BUILD_TYPE=MinSizeRel
  605. ENABLE_SSL_DYNAMIC_LOADING=YES
  606. OPENSSL_1_1=NO
  607. ENABLE_CXX=NO
  608. ENABLE_LUA_SHARED=NO
  609. C_STANDARD=auto
  610. CXX_STANDARD=auto
  611. FEATURES=7
  612. BUILD_SHARED=NO
  613. NO_FILES=NO
  614. ENABLE_SSL=YES
  615. NO_CGI=NO
  616. ENABLE_IPV6=NO
  617. ENABLE_WEBSOCKETS=NO
  618. ENABLE_LUA=NO
  619. ENABLE_DUKTAPE=NO
  620. NO_CACHING=NO
  621. ALLOW_WARNINGS=YES
  622. -
  623. os: linux
  624. compiler: gcc
  625. env:
  626. idx=17
  627. N=GCCLinuxDefault_None
  628. BUILD_TYPE=None
  629. ENABLE_SSL_DYNAMIC_LOADING=YES
  630. OPENSSL_1_1=NO
  631. ENABLE_CXX=NO
  632. ENABLE_LUA_SHARED=NO
  633. C_STANDARD=auto
  634. CXX_STANDARD=auto
  635. FEATURES=7
  636. BUILD_SHARED=NO
  637. NO_FILES=NO
  638. ENABLE_SSL=YES
  639. NO_CGI=NO
  640. ENABLE_IPV6=NO
  641. ENABLE_WEBSOCKETS=NO
  642. ENABLE_LUA=NO
  643. ENABLE_DUKTAPE=NO
  644. NO_CACHING=NO
  645. ALLOW_WARNINGS=YES
  646. -
  647. os: linux
  648. compiler: clang
  649. env:
  650. idx=18
  651. N=Clang3.8-Linux-Complete-NoLua-Debug
  652. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  653. BUILD_TYPE=Debug
  654. ENABLE_SSL_DYNAMIC_LOADING=YES
  655. OPENSSL_1_1=NO
  656. ENABLE_CXX=NO
  657. ENABLE_LUA_SHARED=YES
  658. C_STANDARD=auto
  659. CXX_STANDARD=auto
  660. FEATURES=31
  661. BUILD_SHARED=NO
  662. NO_FILES=NO
  663. ENABLE_SSL=YES
  664. NO_CGI=NO
  665. ENABLE_IPV6=YES
  666. ENABLE_WEBSOCKETS=YES
  667. ENABLE_SERVER_STATS=YES
  668. ENABLE_LUA=NO
  669. ENABLE_DUKTAPE=NO
  670. NO_CACHING=YES
  671. ALLOW_WARNINGS=YES
  672. - dist: trusty
  673. sudo: false
  674. os: linux
  675. compiler: clang
  676. addons:
  677. apt:
  678. sources:
  679. - ubuntu-toolchain-r-test
  680. - llvm-toolchain-trusty-5.0
  681. packages:
  682. - clang-5.0
  683. env:
  684. idx=19
  685. N=Clang5.0-Linux-Complete-CXX-NoLua-Release
  686. MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
  687. BUILD_TYPE=Release
  688. ENABLE_SSL_DYNAMIC_LOADING=YES
  689. OPENSSL_1_1=YES
  690. ENABLE_CXX=YES
  691. ENABLE_LUA_SHARED=YES
  692. C_STANDARD=auto
  693. CXX_STANDARD=auto
  694. FEATURES=31
  695. BUILD_SHARED=NO
  696. NO_FILES=NO
  697. ENABLE_SSL=YES
  698. NO_CGI=NO
  699. ENABLE_IPV6=YES
  700. ENABLE_WEBSOCKETS=YES
  701. ENABLE_SERVER_STATS=YES
  702. ENABLE_LUA=NO
  703. ENABLE_DUKTAPE=NO
  704. NO_CACHING=NO
  705. ALLOW_WARNINGS=YES
  706. - <<: *conan-linux
  707. env: CONAN_GCC_VERSIONS=4.9 CONAN_DOCKER_IMAGE=conanio/gcc49 CONAN_DOCKER_32_IMAGES=1
  708. - <<: *conan-linux
  709. env: CONAN_GCC_VERSIONS=5 CONAN_DOCKER_IMAGE=conanio/gcc5 CONAN_DOCKER_32_IMAGES=1
  710. - <<: *conan-linux
  711. env: CONAN_GCC_VERSIONS=6 CONAN_DOCKER_IMAGE=conanio/gcc6 CONAN_DOCKER_32_IMAGES=1
  712. - <<: *conan-linux
  713. env: CONAN_GCC_VERSIONS=7 CONAN_DOCKER_IMAGE=conanio/gcc7 CONAN_DOCKER_32_IMAGES=1
  714. - <<: *conan-linux
  715. env: CONAN_GCC_VERSIONS=8 CONAN_DOCKER_IMAGE=conanio/gcc8 CONAN_DOCKER_32_IMAGES=1
  716. - <<: *conan-linux
  717. env: CONAN_CLANG_VERSIONS=3.9 CONAN_DOCKER_IMAGE=conanio/clang39 CONAN_DOCKER_32_IMAGES=1
  718. - <<: *conan-linux
  719. env: CONAN_CLANG_VERSIONS=4.0 CONAN_DOCKER_IMAGE=conanio/clang40 CONAN_DOCKER_32_IMAGES=1
  720. - <<: *conan-linux
  721. env: CONAN_CLANG_VERSIONS=5.0 CONAN_DOCKER_IMAGE=conanio/clang50 CONAN_DOCKER_32_IMAGES=1
  722. - <<: *conan-linux
  723. env: CONAN_CLANG_VERSIONS=6.0 CONAN_DOCKER_IMAGE=conanio/clang60 CONAN_DOCKER_32_IMAGES=1
  724. - <<: *conan-osx
  725. osx_image: xcode8.3
  726. env: CONAN_APPLE_CLANG_VERSIONS=8.1
  727. - <<: *conan-osx
  728. osx_image: xcode9
  729. env: CONAN_APPLE_CLANG_VERSIONS=9.0
  730. - <<: *conan-osx
  731. osx_image: xcode9.4
  732. env: CONAN_APPLE_CLANG_VERSIONS=9.1
  733. - <<: *conan-osx
  734. osx_image: xcode10.1
  735. env: CONAN_APPLE_CLANG_VERSIONS=10.0
  736. # Remove Lua build, until someone knows how to fix the CMake files
  737. #
  738. # - dist: trusty
  739. # sudo: required
  740. # os: linux
  741. # compiler: clang
  742. # addons:
  743. # apt:
  744. # sources:
  745. # - ubuntu-toolchain-r-test
  746. # - llvm-toolchain-precise-3.8
  747. # packages:
  748. # - clang-3.8
  749. # - lua5.2
  750. # env:
  751. # idx=20
  752. # N=Clang3.8-Linux-Complete-WithLua-Debug
  753. # MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  754. # BUILD_TYPE=Debug
  755. # ENABLE_SSL_DYNAMIC_LOADING=YES
  756. # OPENSSL_1_1=NO
  757. # ENABLE_CXX=NO
  758. # ENABLE_LUA_SHARED=YES
  759. # C_STANDARD=auto
  760. # CXX_STANDARD=auto
  761. # FEATURES=63
  762. # BUILD_SHARED=NO
  763. # NO_FILES=NO
  764. # ENABLE_SSL=YES
  765. # NO_CGI=NO
  766. # ENABLE_IPV6=YES
  767. # ENABLE_WEBSOCKETS=YES
  768. # ENABLE_SERVER_STATS=YES
  769. # ENABLE_LUA=YES
  770. # ENABLE_DUKTAPE=NO
  771. # NO_CACHING=YES
  772. # ALLOW_WARNINGS=YES