.travis.yml 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653
  1. ##############################################################################
  2. # Project specific settings
  3. ##############################################################################
  4. language: c
  5. cache:
  6. directories:
  7. - $HOME/third-party
  8. osx_image: xcode9
  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. pip install --user codecov;
  32. pip install --user coverage;
  33. fi
  34. before_script:
  35. # Add an IPv6 config - see the corresponding Travis issue
  36. # https://github.com/travis-ci/travis-ci/issues/8361
  37. - if [ "${ENABLE_IPV6}" == "YES" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
  38. echo "Activating IPv6 on Travis";
  39. sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6';
  40. fi
  41. # Check some settings of the build server (operating system, IPv6 availability, directory)
  42. - uname -a
  43. - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
  44. lsb_release -a;
  45. cat /etc/network/interfaces || true;
  46. fi
  47. - ifconfig
  48. - pwd
  49. - ls -la
  50. - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then
  51. apt-cache search gcc | grep "GNU C compiler";
  52. apt-cache search clang | grep compiler;
  53. fi
  54. - if [[ "${BUILD_TYPE}" == "OSX_OPENSSL_1_1" ]]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install openssl@1.1 ;fi
  55. # Generate the build scripts with CMake
  56. - mkdir output
  57. - openssl version
  58. - gcc --version
  59. - cmake --version
  60. - gcc unittest/cgi_test.c -o output/cgi_test.cgi
  61. - cd output
  62. - echo cmake
  63. -G "Unix Makefiles"
  64. -DCMAKE_BUILD_TYPE=${BUILD_TYPE}
  65. -DBUILD_SHARED_LIBS=${BUILD_SHARED}
  66. "-DCIVETWEB_THIRD_PARTY_DIR=${HOME}/third-party"
  67. -DCIVETWEB_ENABLE_THIRD_PARTY_OUTPUT=YES
  68. -DCIVETWEB_ENABLE_SSL=${ENABLE_SSL}
  69. -DCIVETWEB_DISABLE_CGI=${NO_CGI}
  70. -DCIVETWEB_SERVE_NO_FILES=${NO_FILES}
  71. -DCIVETWEB_ENABLE_SSL_DYNAMIC_LOADING=${ENABLE_SSL_DYNAMIC_LOADING}
  72. -DCIVETWEB_SSL_OPENSSL_API_1_0=${OPENSSL_1_0}
  73. -DCIVETWEB_SSL_OPENSSL_API_1_1=${OPENSSL_1_1}
  74. -DCIVETWEB_ENABLE_WEBSOCKETS=${ENABLE_WEBSOCKETS}
  75. -DCIVETWEB_ENABLE_CXX=${ENABLE_CXX}
  76. -DCIVETWEB_ENABLE_SERVER_STATS=${ENABLE_SERVER_STATS}
  77. -DCIVETWEB_ENABLE_LUA=${ENABLE_LUA}
  78. -DCIVETWEB_ENABLE_LUA_SHARED=${ENABLE_LUA_SHARED}
  79. -DCIVETWEB_ENABLE_DUKTAPE=${ENABLE_DUKTAPE}
  80. -DCIVETWEB_DISABLE_CACHING=${NO_CACHING}
  81. -DCIVETWEB_C_STANDARD=${C_STANDARD}
  82. -DCIVETWEB_CXX_STANDARD=${CXX_STANDARD}
  83. -DCIVETWEB_ALLOW_WARNINGS=${ALLOW_WARNINGS}
  84. -DCIVETWEB_ENABLE_IPV6=${ENABLE_IPV6}
  85. ${ADDITIONAL_CMAKE_ARGS}
  86. ..
  87. - cmake
  88. -G "Unix Makefiles"
  89. -DCMAKE_BUILD_TYPE=${BUILD_TYPE}
  90. -DBUILD_SHARED_LIBS=${BUILD_SHARED}
  91. "-DCIVETWEB_THIRD_PARTY_DIR=${HOME}/third-party"
  92. -DCIVETWEB_ENABLE_THIRD_PARTY_OUTPUT=YES
  93. -DCIVETWEB_ENABLE_SSL=${ENABLE_SSL}
  94. -DCIVETWEB_DISABLE_CGI=${NO_CGI}
  95. -DCIVETWEB_SERVE_NO_FILES=${NO_FILES}
  96. -DCIVETWEB_ENABLE_SSL_DYNAMIC_LOADING=${ENABLE_SSL_DYNAMIC_LOADING}
  97. -DCIVETWEB_SSL_OPENSSL_API_1_0=${OPENSSL_1_0}
  98. -DCIVETWEB_SSL_OPENSSL_API_1_1=${OPENSSL_1_1}
  99. -DCIVETWEB_ENABLE_WEBSOCKETS=${ENABLE_WEBSOCKETS}
  100. -DCIVETWEB_ENABLE_CXX=${ENABLE_CXX}
  101. -DCIVETWEB_ENABLE_SERVER_STATS=${ENABLE_SERVER_STATS}
  102. -DCIVETWEB_ENABLE_LUA=${ENABLE_LUA}
  103. -DCIVETWEB_ENABLE_LUA_SHARED=${ENABLE_LUA_SHARED}
  104. -DCIVETWEB_ENABLE_DUKTAPE=${ENABLE_DUKTAPE}
  105. -DCIVETWEB_DISABLE_CACHING=${NO_CACHING}
  106. -DCIVETWEB_C_STANDARD=${C_STANDARD}
  107. -DCIVETWEB_CXX_STANDARD=${CXX_STANDARD}
  108. -DCIVETWEB_ALLOW_WARNINGS=${ALLOW_WARNINGS}
  109. -DCIVETWEB_ENABLE_IPV6=${ENABLE_IPV6}
  110. ${ADDITIONAL_CMAKE_ARGS}
  111. ..
  112. - ls -la
  113. # Modifications due to Travis IPv6 issues:
  114. # https://github.com/travis-ci/travis-ci/issues/8711
  115. # https://github.com/travis-ci/travis-ci/issues/8361
  116. # DCIVETWEB_ENABLE_IPV6=${ENABLE_IPV6} or =NO
  117. script:
  118. - if [ "${MACOSX_PACKAGE}" == "1" ]; then
  119. cd "${TRAVIS_BUILD_DIR}";
  120. make -f Makefile.osx package;
  121. fi
  122. - if [ "${RUN_UNITTEST}" == "1" ]; then
  123. CTEST_OUTPUT_ON_FAILURE=1 make all test;
  124. fi
  125. - pwd
  126. - ls -la unittest
  127. - echo "Show all test logs:"
  128. - if [ "${RUN_UNITTEST}" == "1" ]; then
  129. for f in unittest/test-*.log; do printf "\n$f:\n"; cat $f; done;
  130. for f in unittest/test-*.xml; do printf "\n$f:\n"; cat $f; done;
  131. fi
  132. - echo "Build and test script DONE"
  133. # Coveralls options: https://github.com/eddyxu/cpp-coveralls/blob/master/README.md
  134. after_success:
  135. - if [ "${BUILD_TYPE}" == "Coverage" -a "${TRAVIS_OS_NAME}" == "linux" ]; then
  136. echo "Preparing coverage tests";
  137. echo "Creating coveralls coverage report";
  138. coveralls --include src --exclude src/main.c --exclude src/third_party --include include --gcov-options '\-lp' --root .. --build-root .;
  139. echo "Creating codecov coverage report";
  140. bash <(curl -s https://codecov.io/bash);
  141. echo "All coverage reports created";
  142. fi
  143. #########################################################################################
  144. #########################################################################################
  145. ##### START OF BUILD MATRIX #########################################################
  146. #########################################################################################
  147. #########################################################################################
  148. matrix:
  149. fast_finish: true
  150. include:
  151. #########################################################################################
  152. ##### TRUSTY ########################################################################
  153. #########################################################################################
  154. - dist: trusty
  155. sudo: false
  156. os: linux
  157. compiler: clang
  158. addons:
  159. apt:
  160. sources:
  161. - ubuntu-toolchain-r-test
  162. - llvm-toolchain-precise-3.8
  163. packages:
  164. - clang-3.8
  165. env:
  166. idx=1
  167. N=Clang3.8-Linux-Minimal-Debug
  168. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  169. BUILD_TYPE=Debug
  170. ENABLE_SSL_DYNAMIC_LOADING=YES
  171. OPENSSL_1_0=NO
  172. OPENSSL_1_1=NO
  173. ENABLE_CXX=NO
  174. ENABLE_LUA_SHARED=NO
  175. C_STANDARD=auto
  176. CXX_STANDARD=auto
  177. BUILD_SHARED=NO
  178. NO_FILES=YES
  179. ENABLE_SSL=NO
  180. NO_CGI=YES
  181. ENABLE_IPV6=NO
  182. ENABLE_WEBSOCKETS=NO
  183. ENABLE_SERVER_STATS=NO
  184. ENABLE_LUA=NO
  185. ENABLE_DUKTAPE=NO
  186. NO_CACHING=NO
  187. ALLOW_WARNINGS=YES
  188. - dist: trusty
  189. sudo: false
  190. os: linux
  191. compiler: clang
  192. addons:
  193. apt:
  194. sources:
  195. - ubuntu-toolchain-r-test
  196. - llvm-toolchain-precise-3.8
  197. packages:
  198. - clang-3.8
  199. env:
  200. idx=3
  201. N=Clang3.8-Linux-Default-Release
  202. MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  203. BUILD_TYPE=Release
  204. ENABLE_SSL_DYNAMIC_LOADING=YES
  205. OPENSSL_1_0=YES
  206. OPENSSL_1_1=NO
  207. ENABLE_CXX=NO
  208. ENABLE_LUA_SHARED=NO
  209. C_STANDARD=auto
  210. CXX_STANDARD=auto
  211. BUILD_SHARED=NO
  212. NO_FILES=NO
  213. ENABLE_SSL=YES
  214. NO_CGI=NO
  215. ENABLE_IPV6=NO
  216. ENABLE_WEBSOCKETS=NO
  217. ENABLE_SERVER_STATS=NO
  218. ENABLE_LUA=NO
  219. ENABLE_DUKTAPE=NO
  220. NO_CACHING=NO
  221. ALLOW_WARNINGS=YES
  222. - dist: trusty
  223. sudo: required
  224. os: linux
  225. compiler: gcc
  226. addons:
  227. apt:
  228. sources:
  229. - ubuntu-toolchain-r-test
  230. packages:
  231. - g++-5
  232. env:
  233. idx=5
  234. N=GCC5-Linux-Complete-NoLua-Release
  235. MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
  236. BUILD_TYPE=Release
  237. ENABLE_SSL_DYNAMIC_LOADING=YES
  238. OPENSSL_1_0=YES
  239. OPENSSL_1_1=NO
  240. ENABLE_CXX=NO
  241. ENABLE_LUA_SHARED=NO
  242. C_STANDARD=auto
  243. CXX_STANDARD=auto
  244. BUILD_SHARED=NO
  245. NO_FILES=NO
  246. ENABLE_SSL=YES
  247. NO_CGI=NO
  248. ENABLE_IPV6=YES
  249. ENABLE_WEBSOCKETS=YES
  250. ENABLE_SERVER_STATS=YES
  251. ENABLE_LUA=NO
  252. ENABLE_DUKTAPE=NO
  253. NO_CACHING=YES
  254. ALLOW_WARNINGS=YES
  255. RUN_UNITTEST=1
  256. #########################################################################################
  257. ##### COVERAGE ######################################################################
  258. #########################################################################################
  259. - os: linux
  260. sudo: required
  261. compiler: clang
  262. env:
  263. idx=6
  264. N=GCCAnyVersion-Linux-Coverage
  265. BUILD_TYPE=Coverage
  266. ENABLE_SSL_DYNAMIC_LOADING=YES
  267. OPENSSL_1_0=YES
  268. OPENSSL_1_1=NO
  269. ENABLE_CXX=NO
  270. ENABLE_LUA_SHARED=NO
  271. C_STANDARD=auto
  272. CXX_STANDARD=auto
  273. BUILD_SHARED=NO
  274. NO_FILES=NO
  275. ENABLE_SSL=YES
  276. NO_CGI=NO
  277. ENABLE_IPV6=YES
  278. ENABLE_WEBSOCKETS=YES
  279. ENABLE_SERVER_STATS=YES
  280. ENABLE_LUA=NO
  281. ENABLE_DUKTAPE=NO
  282. NO_CACHING=NO
  283. ALLOW_WARNINGS=YES
  284. RUN_UNITTEST=1
  285. #########################################################################################
  286. ##### SHARED ########################################################################
  287. #########################################################################################
  288. - sudo: false
  289. os: linux
  290. compiler: clang
  291. env:
  292. idx=9
  293. N=Clang-Linux-Default-Shared
  294. BUILD_TYPE=Debug
  295. ENABLE_SSL_DYNAMIC_LOADING=YES
  296. OPENSSL_1_0=NO
  297. OPENSSL_1_1=YES
  298. ENABLE_CXX=NO
  299. ENABLE_LUA_SHARED=NO
  300. C_STANDARD=auto
  301. CXX_STANDARD=auto
  302. BUILD_SHARED=YES
  303. NO_FILES=NO
  304. ENABLE_SSL=YES
  305. NO_CGI=NO
  306. ENABLE_IPV6=NO
  307. ENABLE_WEBSOCKETS=NO
  308. ENABLE_SERVER_STATS=NO
  309. ENABLE_LUA=NO
  310. ENABLE_DUKTAPE=NO
  311. NO_CACHING=NO
  312. ALLOW_WARNINGS=YES
  313. #########################################################################################
  314. ##### BUILD TYPES ###################################################################
  315. #########################################################################################
  316. # According to CMakeLists, options are:
  317. # None Debug Release RelWithDebInfo MinSizeRel Coverage
  318. -
  319. os: linux
  320. compiler: gcc
  321. env:
  322. idx=15
  323. N=GCCLinuxDefault_RelWithDebInfo
  324. BUILD_TYPE=RelWithDebInfo
  325. ENABLE_SSL_DYNAMIC_LOADING=YES
  326. OPENSSL_1_0=YES
  327. OPENSSL_1_1=NO
  328. ENABLE_CXX=NO
  329. ENABLE_LUA_SHARED=NO
  330. C_STANDARD=auto
  331. CXX_STANDARD=auto
  332. BUILD_SHARED=NO
  333. NO_FILES=NO
  334. ENABLE_SSL=YES
  335. NO_CGI=NO
  336. ENABLE_IPV6=NO
  337. ENABLE_WEBSOCKETS=NO
  338. ENABLE_LUA=NO
  339. ENABLE_DUKTAPE=NO
  340. NO_CACHING=NO
  341. ALLOW_WARNINGS=YES
  342. -
  343. os: linux
  344. compiler: gcc
  345. env:
  346. idx=16
  347. N=GCCLinuxDefault_MinSizeRel
  348. BUILD_TYPE=MinSizeRel
  349. ENABLE_SSL_DYNAMIC_LOADING=YES
  350. OPENSSL_1_0=YES
  351. OPENSSL_1_1=NO
  352. ENABLE_CXX=NO
  353. ENABLE_LUA_SHARED=NO
  354. C_STANDARD=auto
  355. CXX_STANDARD=auto
  356. BUILD_SHARED=NO
  357. NO_FILES=NO
  358. ENABLE_SSL=YES
  359. NO_CGI=NO
  360. ENABLE_IPV6=NO
  361. ENABLE_WEBSOCKETS=NO
  362. ENABLE_LUA=NO
  363. ENABLE_DUKTAPE=NO
  364. NO_CACHING=NO
  365. ALLOW_WARNINGS=YES
  366. -
  367. os: linux
  368. compiler: gcc
  369. env:
  370. idx=17
  371. N=GCCLinuxDefault_None
  372. BUILD_TYPE=None
  373. ENABLE_SSL_DYNAMIC_LOADING=YES
  374. OPENSSL_1_0=YES
  375. OPENSSL_1_1=NO
  376. ENABLE_CXX=NO
  377. ENABLE_LUA_SHARED=NO
  378. C_STANDARD=auto
  379. CXX_STANDARD=auto
  380. BUILD_SHARED=NO
  381. NO_FILES=NO
  382. ENABLE_SSL=YES
  383. NO_CGI=NO
  384. ENABLE_IPV6=NO
  385. ENABLE_WEBSOCKETS=NO
  386. ENABLE_LUA=NO
  387. ENABLE_DUKTAPE=NO
  388. NO_CACHING=NO
  389. ALLOW_WARNINGS=YES
  390. #########################################################################################
  391. ##### XENIAL, BIONIC, FOCAL #########################################################
  392. #########################################################################################
  393. -
  394. os: linux
  395. compiler: gcc
  396. dist: xenial
  397. env:
  398. idx=20
  399. N=GCCLinuxDefault_xenial
  400. BUILD_TYPE=Release
  401. ENABLE_SSL_DYNAMIC_LOADING=YES
  402. OPENSSL_1_0=YES
  403. OPENSSL_1_1=NO
  404. ENABLE_CXX=NO
  405. ENABLE_LUA_SHARED=NO
  406. C_STANDARD=auto
  407. CXX_STANDARD=auto
  408. BUILD_SHARED=NO
  409. NO_FILES=NO
  410. ENABLE_SSL=YES
  411. NO_CGI=NO
  412. ENABLE_IPV6=NO
  413. ENABLE_WEBSOCKETS=NO
  414. ENABLE_LUA=NO
  415. ENABLE_DUKTAPE=NO
  416. NO_CACHING=NO
  417. ALLOW_WARNINGS=YES
  418. -
  419. os: linux
  420. compiler: gcc
  421. dist: bionic
  422. env:
  423. idx=21
  424. N=GCCLinuxDefault_bionic
  425. BUILD_TYPE=Release
  426. ENABLE_SSL_DYNAMIC_LOADING=YES
  427. OPENSSL_1_0=NO
  428. OPENSSL_1_1=YES
  429. ENABLE_CXX=NO
  430. ENABLE_LUA_SHARED=NO
  431. C_STANDARD=auto
  432. CXX_STANDARD=auto
  433. BUILD_SHARED=NO
  434. NO_FILES=NO
  435. ENABLE_SSL=YES
  436. NO_CGI=NO
  437. ENABLE_IPV6=NO
  438. ENABLE_WEBSOCKETS=NO
  439. ENABLE_LUA=NO
  440. ENABLE_DUKTAPE=NO
  441. NO_CACHING=NO
  442. ALLOW_WARNINGS=YES
  443. -
  444. os: linux
  445. compiler: gcc
  446. dist: focal
  447. addons:
  448. apt:
  449. packages:
  450. - lsb-core
  451. env:
  452. idx=23
  453. N=GCCLinuxDefault_focal
  454. BUILD_TYPE=Release
  455. ENABLE_SSL_DYNAMIC_LOADING=YES
  456. OPENSSL_1_0=NO
  457. OPENSSL_1_1=YES
  458. ENABLE_CXX=NO
  459. ENABLE_LUA_SHARED=NO
  460. C_STANDARD=auto
  461. CXX_STANDARD=auto
  462. BUILD_SHARED=NO
  463. NO_FILES=NO
  464. ENABLE_SSL=YES
  465. NO_CGI=NO
  466. ENABLE_IPV6=NO
  467. ENABLE_WEBSOCKETS=NO
  468. ENABLE_LUA=NO
  469. ENABLE_DUKTAPE=NO
  470. NO_CACHING=NO
  471. ALLOW_WARNINGS=YES
  472. RUN_UNITTEST=1
  473. #########################################################################################
  474. ##### FREEBSD BUILD ###########=#####################################################
  475. #########################################################################################
  476. -
  477. os: freebsd
  478. sudo: required
  479. compiler: clang
  480. env:
  481. idx=20
  482. N=Clang-FREEBSD-Complete-NoLua-Release
  483. BUILD_TYPE=Release
  484. ENABLE_SSL_DYNAMIC_LOADING=YES
  485. OPENSSL_1_0=NO
  486. OPENSSL_1_1=YES
  487. ENABLE_CXX=NO
  488. ENABLE_LUA_SHARED=NO
  489. C_STANDARD=auto
  490. CXX_STANDARD=auto
  491. BUILD_SHARED=NO
  492. NO_FILES=NO
  493. ENABLE_SSL=YES
  494. NO_CGI=NO
  495. ENABLE_IPV6=YES
  496. ENABLE_WEBSOCKETS=YES
  497. ENABLE_SERVER_STATS=YES
  498. ENABLE_LUA=NO
  499. ENABLE_DUKTAPE=NO
  500. NO_CACHING=NO
  501. ALLOW_WARNINGS=YES
  502. RUN_UNITTEST=1
  503. #########################################################################################
  504. ##### OSX BUILD #####################################################################
  505. #########################################################################################
  506. -
  507. os: osx
  508. sudo: required
  509. compiler: clang
  510. env:
  511. idx=8
  512. N=Clang-OSX-Complete-NoLua-Release-OpenSSL_1_1_NoDynLoad
  513. BUILD_TYPE=Release
  514. ENABLE_SSL_DYNAMIC_LOADING=NO
  515. OPENSSL_1_0=NO
  516. OPENSSL_1_1=YES
  517. ENABLE_CXX=NO
  518. ENABLE_LUA_SHARED=NO
  519. C_STANDARD=auto
  520. CXX_STANDARD=auto
  521. BUILD_SHARED=NO
  522. NO_FILES=NO
  523. ENABLE_SSL=YES
  524. NO_CGI=NO
  525. ENABLE_IPV6=YES
  526. ENABLE_WEBSOCKETS=YES
  527. ENABLE_SERVER_STATS=YES
  528. ENABLE_LUA=NO
  529. ENABLE_DUKTAPE=NO
  530. NO_CACHING=YES
  531. ALLOW_WARNINGS=YES
  532. OPENSSL_ROOT_DIR="/usr/local/opt/openssl@1.1"
  533. LDFLAGS="-L${OPENSSL_ROOT_DIR}/lib"
  534. CFLAGS="-I${OPENSSL_ROOT_DIR}/include"
  535. ADDITIONAL_CMAKE_ARGS="-DCMAKE_SHARED_LINKER_FLAGS=${LDFLAGS} -DCMAKE_C_FLAGS=${CFLAGS}"
  536. PATH="${OPENSSL_ROOT_DIR}/bin:$PATH"
  537. DYLD_LIBRARY_PATH="${OPENSSL_ROOT_DIR}/lib:${DYLD_LIBRARY_PATH}"
  538. RUN_UNITTEST=1
  539. -
  540. os: osx
  541. sudo: required
  542. compiler: clang
  543. env:
  544. idx=11
  545. N=OSX-Package
  546. BUILD_TYPE=Release
  547. ENABLE_SSL_DYNAMIC_LOADING=YES
  548. OPENSSL_1_0=YES
  549. OPENSSL_1_1=NO
  550. ENABLE_CXX=NO
  551. ENABLE_LUA_SHARED=NO
  552. C_STANDARD=auto
  553. CXX_STANDARD=auto
  554. BUILD_SHARED=NO
  555. NO_FILES=NO
  556. ENABLE_SSL=YES
  557. NO_CGI=NO
  558. ENABLE_IPV6=YES
  559. ENABLE_WEBSOCKETS=YES
  560. ENABLE_SERVER_STATS=NO
  561. ENABLE_LUA=NO
  562. ENABLE_DUKTAPE=NO
  563. NO_CACHING=NO
  564. ALLOW_WARNINGS=YES
  565. MACOSX_PACKAGE=1
  566. #########################################################################################
  567. #########################################################################################
  568. ##### END OF BUILD MATRIX ###########################################################
  569. #########################################################################################
  570. #########################################################################################
  571. # Remove Lua build, until someone knows how to fix the CMake files
  572. #
  573. # - dist: trusty
  574. # sudo: required
  575. # os: linux
  576. # compiler: clang
  577. # addons:
  578. # apt:
  579. # sources:
  580. # - ubuntu-toolchain-r-test
  581. # - llvm-toolchain-precise-3.8
  582. # packages:
  583. # - clang-3.8
  584. # - lua5.2
  585. # env:
  586. # idx=99
  587. # N=Clang3.8-Linux-Complete-WithLua-Debug
  588. # MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
  589. # BUILD_TYPE=Debug
  590. # ENABLE_SSL_DYNAMIC_LOADING=YES
  591. # OPENSSL_1_0=NO
  592. # OPENSSL_1_1=YES
  593. # ENABLE_CXX=NO
  594. # ENABLE_LUA_SHARED=YES
  595. # C_STANDARD=auto
  596. # CXX_STANDARD=auto
  597. # BUILD_SHARED=NO
  598. # NO_FILES=NO
  599. # ENABLE_SSL=YES
  600. # NO_CGI=NO
  601. # ENABLE_IPV6=YES
  602. # ENABLE_WEBSOCKETS=YES
  603. # ENABLE_SERVER_STATS=YES
  604. # ENABLE_LUA=YES
  605. # ENABLE_LUA_SHARED=YES
  606. # ENABLE_DUKTAPE=NO
  607. # NO_CACHING=YES
  608. # ALLOW_WARNINGS=YES