1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
|
#! /bin/sh
#SILENT="--disable-silent-rules"
if test "x$TESTS" = "xyes" -o "x$TESTS" = "xtrue" ; then
WITH_TESTS="`scripts/fix-cunit.sh` --enable-tests"
test -f `pwd`/cunit.pc && echo cat `pwd`/cunit.pc
fi
TEST_LD_LIBRARY_PATH=
case "x${TLS}" in
xno) WITH_TLS="--disable-dtls"
;;
xopenssl) WITH_TLS="--with-openssl"
;;
xgnutls) WITH_TLS="--with-gnutls"
;;
xmbedtls) WITH_TLS="--with-mbedtls"
;;
xwolfssl) WITH_TLS="--with-wolfssl"
;;
xtinydtls) WITH_TLS="--with-tinydtls"
# Need this as libtinydtls.so has not been installed
# as a part of the travis build
TEST_LD_LIBRARY_PATH="ext/tinydtls"
;;
*) WITH_TLS="--with-gnutls"
;;
esac
case "x${DOCS}" in
xyes) WITH_DOCS="--enable-documentation"
;;
*) WITH_DOCS="--disable-documentation"
;;
esac
# Building with epoll support can be disabled by setting EPOLL=no.
# Otherwise, it is enabled by default and used if available.
if test "x$EPOLL" = "xno" ; then
OTHER_OPTS="$OTHER_OPTS --without-epoll"
fi
# Enable constrained stack build when SMALL_STACK is set to yes.
if test "x$SMALL_STACK" = "xyes" ; then
OTHER_OPTS="$OTHER_OPTS --enable-small-stack"
fi
config() {
echo "./configure $SILENT $*"
./configure $SILENT $* || cat config.log
}
case "${PLATFORM}" in
contiki) config "--disable-tests $WITH_DOCS --disable-examples $WITH_TLS" && \
make -C examples/contiki
;;
lwip) config "--disable-tests $WITH_DOCS --disable-examples $WITH_TLS" && \
make -C examples/lwip
;;
posix|*) config "$WITH_TESTS $WITH_DOCS --enable-examples $WITH_TLS $OTHER_OPTS" && \
make && make check
;;
esac
err=$?
if test $err = 0 -a -n "$WITH_TESTS" ; then
EXEC_FILE=tests/testdriver
# then run valgrind on the actual executable
LD_LIBRARY_PATH=$TEST_LD_LIBRARY_PATH libtool --mode=execute valgrind --track-origins=yes --leak-check=yes --show-reachable=yes --error-exitcode=123 --quiet --suppressions=tests/valgrind_suppression $EXEC_FILE
err=$?
fi
# invoke OSS-Fuzz syntax checks
if test $err = 0 -a -n "$WITH_TESTS" ; then
make -C tests/oss-fuzz -f Makefile.ci check clean
err=$?
fi
# invoke man page examples code compiles checks
if test $err = 0 -a -n "$WITH_TESTS" ; then
make -C man
EXEC_FILE=man/examples-code-check
$EXEC_FILE man
err=$?
fi
exit $err
|