BUILD: travis: add sanitizers to travis-ci builds
full list of changes:
use TARGET=osx instead of generic for osx builds,
add USE_PCRE_JIT=1, USE_GETADDRINFO=1 to build matrix,
enable address sanitizer for clang
enable device detection: WURFL, DEVICEATLAS
diff --git a/.travis.yml b/.travis.yml
index 530d168..e548c51 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,7 +5,7 @@
env:
global:
- - FLAGS="USE_ZLIB=1 USE_PCRE=1 USE_LUA=1 USE_OPENSSL=1"
+ - FLAGS="USE_ZLIB=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_LUA=1 USE_OPENSSL=1 USE_GETADDRINFO=1 USE_WURFL=1 WURFL_INC=contrib/wurfl WURFL_LIB=contrib/wurfl USE_DEVICEATLAS=1 DEVICEATLAS_SRC=contrib/deviceatlas"
- SSL_LIB=${HOME}/opt/lib
- SSL_INC=${HOME}/opt/include
- TMPDIR=/tmp
@@ -28,32 +28,32 @@
compiler: gcc
env: TARGET=linux2628 OPENSSL_VERSION=1.1.1b LABEL="linux-ppc64le"
- os: linux
- compiler: gcc
+ compiler: clang
env: TARGET=linux2628 OPENSSL_VERSION=1.1.1b
- os: linux
- compiler: gcc
+ compiler: clang
env: TARGET=linux2628 OPENSSL_VERSION=1.1.0j
- os: linux
- compiler: gcc
+ compiler: clang
env: TARGET=linux2628 OPENSSL_VERSION=1.0.2r
- os: linux
- compiler: gcc
+ compiler: clang
env: TARGET=linux2628 LIBRESSL_VERSION=2.9.1
- os: linux
- compiler: gcc
+ compiler: clang
env: TARGET=linux2628 LIBRESSL_VERSION=2.8.3
- os: linux
- compiler: gcc
+ compiler: clang
env: TARGET=linux2628 LIBRESSL_VERSION=2.7.5
- os: linux
- compiler: gcc
+ compiler: clang
env: TARGET=linux2628 BORINGSSL=yes
- os: linux
compiler: clang
env: TARGET=linux2628 FLAGS=
- os: osx
compiler: clang
- env: TARGET=generic FLAGS="USE_OPENSSL=1" OPENSSL_VERSION=1.1.1b
+ env: TARGET=osx FLAGS="USE_OPENSSL=1" OPENSSL_VERSION=1.1.1b
install:
- git clone https://github.com/VTest/VTest.git ../vtest
@@ -62,7 +62,9 @@
- scripts/build-ssl.sh > build-ssl.log 2>&1 || (cat build-ssl.log && exit 1)
script:
- - make CC=$CC V=1 TARGET=$TARGET $FLAGS
+ - if [ "${CC}" = "clang" ]; then export FLAGS="$FLAGS USE_OBSOLETE_LINKER=1" DEBUG_CFLAGS="-g -fsanitize=address" LDFLAGS="-fsanitize=address"; fi
+ - make -C contrib/wurfl
+ - make CC=$CC V=1 TARGET=$TARGET $FLAGS DEBUG_CFLAGS="$DEBUG_CFLAGS" LDFLAGS="$LDFLAGS"
- if [ "${TRAVIS_OS_NAME}" = "linux" ]; then export LD_LIBRARY_PATH="${HOME}/opt/lib:${LD_LIBRARY_PATH:-}"; fi
- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then export DYLD_LIBRARY_PATH="${HOME}/opt/lib:${DYLD_LIBRARY_PATH:-}"; fi
- ./haproxy -vv