CONFIG="--disable-defaults --enable-pki --enable-gcrypt --enable-pkcs1"
DEPS="libgcrypt11-dev"
;;
+botan)
+ CONFIG="--disable-defaults --enable-pki --enable-botan"
+ # we can't use the old package that comes with Ubuntu so we build from
+ # the current master until 2.8.0 is released and then probably switch to
+ # that unless we need newer features (at least 2.7.0 plus PKCS#1 patch is
+ # currently required)
+ DEPS=""
+ if test "$1" = "deps"; then
+ # if the leak detective is enabled we have to disable threading support
+ # (used for std::async) as that causes invalid frees somehow, the
+ # locking allocator causes a static leak via the first function that
+ # references it (e.g. crypter or hasher), so we disable that too
+ if test "$LEAK_DETECTIVE" = "yes"; then
+ BOTAN_CONFIG="--without-os-features=threads
+ --disable-modules=locking_allocator"
+ fi
+ # disable some larger modules we don't need for the tests
+ BOTAN_CONFIG="$BOTAN_CONFIG --disable-modules=pkcs11,tls,x509,xmss"
+ git clone --depth 1 https://github.com/randombit/botan.git botan &&
+ cd botan &&
+ python ./configure.py $BOTAN_CONFIG &&
+ make -j4 libs >/dev/null &&
+ sudo make install >/dev/null &&
+ sudo ldconfig || exit $?
+ fi
+ ;;
printf-builtin)
CONFIG="--with-printf-hooks=builtin"
;;
CONFIG="$CONFIG --disable-nm"
# not enabled on the build server
CONFIG="$CONFIG --disable-af-alg"
+ # separate test case with external dependency
+ CONFIG="$CONFIG --disable-botan"
if test "$TEST" != "coverage"; then
CONFIG="$CONFIG --disable-coverage"
else