travis: Use amalgamation build for Botan and build outside our source tree

This merges all source files into botan_all.cpp, which reduces the build
time by almost 50%. Building outside the strongSwan tree avoids analyzing
Botan with sonarqube.
This commit is contained in:
Tobias Brunner
2018-09-12 16:25:00 +02:00
parent a80069e7bf
commit 24af02b00d
+6 -3
View File
@@ -3,6 +3,8 @@
build_botan() build_botan()
{ {
BOTAN_DIR=$TRAVIS_BUILD_DIR/../botan
# if the leak detective is enabled we have to disable threading support # if the leak detective is enabled we have to disable threading support
# (used for std::async) as that causes invalid frees somehow, the # (used for std::async) as that causes invalid frees somehow, the
# locking allocator causes a static leak via the first function that # locking allocator causes a static leak via the first function that
@@ -13,12 +15,13 @@ build_botan()
fi fi
# disable some larger modules we don't need for the tests # disable some larger modules we don't need for the tests
BOTAN_CONFIG="$BOTAN_CONFIG --disable-modules=pkcs11,tls,x509,xmss" BOTAN_CONFIG="$BOTAN_CONFIG --disable-modules=pkcs11,tls,x509,xmss"
git clone --depth 1 https://github.com/randombit/botan.git botan && git clone --depth 1 https://github.com/randombit/botan.git $BOTAN_DIR &&
cd botan && cd $BOTAN_DIR &&
python ./configure.py $BOTAN_CONFIG && python ./configure.py --amalgamation $BOTAN_CONFIG &&
make -j4 libs >/dev/null && make -j4 libs >/dev/null &&
sudo make install >/dev/null && sudo make install >/dev/null &&
sudo ldconfig || exit $? sudo ldconfig || exit $?
cd -
} }
if test -z $TRAVIS_BUILD_DIR; then if test -z $TRAVIS_BUILD_DIR; then