- lintian
- pandoc
- python
+ - valgrind
compiler:
- clang
- gcc
- configure_args='--with-pam'
- configure_args='--with-openssl'
- configure_args='--without-openssl'
- - configure_args='--with-openssl --with-pam' use_efence=yes
+ - use_efence=yes configure_args='--with-openssl --with-pam'
+ - use_valgrind=yes configure_args='--without-openssl --with-pam'
script: |
set -e
PATH=/usr/lib/postgresql/9.5/bin:$PATH
export LD_PRELOAD=/usr/lib/libefence.so
export EF_ALLOW_MALLOC_0=1
fi
+ if [ x"$use_valgrind" = x"yes" ]; then
+ export BOUNCER_EXE_PREFIX="valgrind --quiet --track-origins=yes --read-var-info=yes --error-markers=VALGRIND-ERROR-BEGIN,VALGRIND-ERROR-END --log-file=$HOME/valgrind.%p.log"
+ fi
(cd test/ && ./test.sh)
if echo x"$configure_args" | grep -q with-openssl; then
(cd test/ssl/ && ./test.sh)
fi
+ if [ x"$use_valgrind" = x"yes" ]; then
+ if grep -q VALGRIND-ERROR $HOME/valgrind.*.log; then
+ cat $HOME/valgrind.*.log
+ exit 1
+ fi
+ fi
)
make install
make dist
BOUNCER_INI=test.ini
BOUNCER_PID=test.pid
BOUNCER_PORT=`sed -n '/^listen_port/s/listen_port.*=[^0-9]*//p' $BOUNCER_INI`
-BOUNCER_EXE="../../pgbouncer"
+BOUNCER_EXE="$BOUNCER_EXE_PREFIX ../../pgbouncer"
LOGDIR=log
PG_PORT=6666
BOUNCER_INI=test.ini
BOUNCER_PID=test.pid
BOUNCER_PORT=`sed -n '/^listen_port/s/listen_port.*=[^0-9]*//p' $BOUNCER_INI`
-BOUNCER_EXE="../pgbouncer"
+BOUNCER_EXE="$BOUNCER_EXE_PREFIX ../pgbouncer"
LOGDIR=log
PG_PORT=6666