travis: try to fix ubsan for clang-old, take 2
[m6w6/libmemcached] / .travis.yml
index f24bf6050670e9940dd56b191b62bbd7dc4e4b1c..5d96e69838d95b99345a8e5292946e9c080ca064 100644 (file)
@@ -7,34 +7,50 @@ addons:
    - python-sphinx
    - valgrind
    - libevent-dev
+   - libsasl2-dev
 
 dist: bionic
 language: cpp
 compiler:
- - gcc
+# - gcc
  - clang
 
 env:
-# prod
- - BUILD=Release
- - BUILD=Debug
+# - BUILD=Release SASL=false
+# - BUILD=Debug SASL=true PREFIX=/opt PORT=11212 MC_VERSION=1.5.22
+# - BUILD=Debug SASL=false PREFIX=/opt PORT=11212 MC_VERSION=1.6.6
+ - BUILD=Debug SASL=true PREFIX=/opt PORT=11212 SANITIZERS="address;undefined"
 
 #before_install:
-#install:
+install:
+ - |
+   if ${SASL} || test -n "$MC_VERSION";
+   then
+     git clone -b ${MC_VERSION:-1.5.22} https://github.com/memcached/memcached &&
+     cd memcached && ./autogen.sh &&
+     CFLAGS="-O2 -pipe" ./configure --prefix=${PREFIX} --disable-dependency-tracking --enable-sasl --enable-sasl-pwdb --disable-coverage --disable-docs &&
+     make -j2 && make install && cd ..;
+     ${PREFIX}/bin/memcached -l 127.0.0.1 -p ${PORT} -U ${PORT} -m 128 &
+   fi;
+
 
 before_script:
- - echo stats settings | nc -q 0 localhost 11211 | column -t
+ - echo stats settings | nc -q 0 localhost ${PORT:-11211} | column -t
+ - sudo systemctl stop memcached
+ - killall memcached || true
  - mkdir build
 
 script:
- - cmake -B build -S . -DCMAKE_BUILD_TYPE=${BUILD}
- - make -C build
- - make -C build test
+ - cd build
+ - cmake -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=${BUILD} -DENABLE_SASL=${SASL} -DENABLE_SANITIZERS=${SANITIZERS} -DMEMCACHED_BINARY=${PREFIX:-/usr}/bin/memcached ..
+ - make -j2 VERBOSE=1
+ - make test VERBOSE=1
+ - make install DESTDIR=.
 
 #before_cache:
 #after_success:
 
 after_failure:
- - cat build/Testing/Temporary/LastTest.log
+ - cat Testing/Temporary/LastTest.log
 
 #after_script: