- python-sphinx
- valgrind
- libevent-dev
+ - libsasl2-dev
dist: bionic
language: cpp
- 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:
- cd build
- - cmake -DCMAKE_BUILD_TYPE=${BUILD} ..
- - make
- - make test
+ - cmake -DBUILD_TESTING=ON -DCMAKE_BUILD_TYPE=${BUILD} -DENABLE_SASL=${SASL} -DENABLE_SANITIZERS=${SANITIZERS} -DMEMCACHED_BINARY=${PREFIX:-/usr}/bin/memcached ..
+ - make -j2
+ - make test VERBOSE=1
- make install DESTDIR=.
#before_cache: