ci: minimize installed libboost packages
Change-Id: Id951109d6be1f5ba86454625e1d15ad739011ddb
diff --git a/.jenkins.d/00-deps.sh b/.jenkins.d/00-deps.sh
index c114f8d..d21e972 100755
--- a/.jenkins.d/00-deps.sh
+++ b/.jenkins.d/00-deps.sh
@@ -1,8 +1,23 @@
#!/usr/bin/env bash
set -eo pipefail
-APT_PKGS=(build-essential pkg-config python3-minimal
- libboost-all-dev libssl-dev libsqlite3-dev)
+APT_PKGS=(
+ build-essential
+ libboost-chrono-dev
+ libboost-date-time-dev
+ libboost-dev
+ libboost-filesystem-dev
+ libboost-iostreams-dev
+ libboost-log-dev
+ libboost-program-options-dev
+ libboost-stacktrace-dev
+ libboost-test-dev
+ libboost-thread-dev
+ libsqlite3-dev
+ libssl-dev
+ pkg-config
+ python3-minimal
+)
FORMULAE=(boost openssl pkg-config)
PIP_PKGS=()
case $JOB_NAME in
@@ -26,10 +41,10 @@
brew update
brew install --formula "${FORMULAE[@]}"
elif [[ $ID_LIKE == *debian* ]]; then
- sudo apt-get -qq update
- sudo apt-get -qy install "${APT_PKGS[@]}"
+ sudo apt-get update -qq
+ sudo apt-get install -qy --no-install-recommends "${APT_PKGS[@]}"
elif [[ $ID_LIKE == *fedora* ]]; then
- sudo dnf -y install gcc-c++ libasan lld pkgconf-pkg-config python3 \
+ sudo dnf install -y gcc-c++ libasan lld pkgconf-pkg-config python3 \
boost-devel openssl-devel sqlite-devel
fi
diff --git a/.jenkins.d/01-ndn-cxx.sh b/.jenkins.d/01-ndn-cxx.sh
index 91ebefd..6c7fb22 100755
--- a/.jenkins.d/01-ndn-cxx.sh
+++ b/.jenkins.d/01-ndn-cxx.sh
@@ -42,9 +42,9 @@
popd >/dev/null
popd >/dev/null
-if [[ $ID_LIKE == *fedora* ]]; then
- sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
-fi
if [[ $ID_LIKE == *linux* ]]; then
+ if [[ $(uname -m) == x86_64 && -d /usr/lib64 ]]; then
+ sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
+ fi
sudo ldconfig
fi
diff --git a/.jenkins.d/02-chronosync.sh b/.jenkins.d/02-chronosync.sh
index 145273c..6ec9702 100755
--- a/.jenkins.d/02-chronosync.sh
+++ b/.jenkins.d/02-chronosync.sh
@@ -41,9 +41,9 @@
popd >/dev/null
popd >/dev/null
-if [[ $ID_LIKE == *fedora* ]]; then
- sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
-fi
if [[ $ID_LIKE == *linux* ]]; then
+ if [[ $(uname -m) == x86_64 && -d /usr/lib64 ]]; then
+ sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
+ fi
sudo ldconfig
fi
diff --git a/.jenkins.d/03-psync.sh b/.jenkins.d/03-psync.sh
index 4694517..bc9e6ab 100755
--- a/.jenkins.d/03-psync.sh
+++ b/.jenkins.d/03-psync.sh
@@ -41,9 +41,9 @@
popd >/dev/null
popd >/dev/null
-if [[ $ID_LIKE == *fedora* ]]; then
- sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
-fi
if [[ $ID_LIKE == *linux* ]]; then
+ if [[ $(uname -m) == x86_64 && -d /usr/lib64 ]]; then
+ sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
+ fi
sudo ldconfig
fi
diff --git a/.jenkins.d/04-ndn-svs.sh b/.jenkins.d/04-ndn-svs.sh
index 5105197..b6d6e82 100755
--- a/.jenkins.d/04-ndn-svs.sh
+++ b/.jenkins.d/04-ndn-svs.sh
@@ -41,9 +41,9 @@
popd >/dev/null
popd >/dev/null
-if [[ $ID_LIKE == *fedora* ]]; then
- sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
-fi
if [[ $ID_LIKE == *linux* ]]; then
+ if [[ $(uname -m) == x86_64 && -d /usr/lib64 ]]; then
+ sudo tee /etc/ld.so.conf.d/ndn.conf >/dev/null <<< /usr/local/lib64
+ fi
sudo ldconfig
fi
diff --git a/.jenkins.d/20-tests.sh b/.jenkins.d/20-tests.sh
index 5490d0f..0a87281 100755
--- a/.jenkins.d/20-tests.sh
+++ b/.jenkins.d/20-tests.sh
@@ -1,15 +1,16 @@
#!/usr/bin/env bash
set -eo pipefail
+# https://github.com/google/sanitizers/wiki/SanitizerCommonFlags
# https://github.com/google/sanitizers/wiki/AddressSanitizerFlags
ASAN_OPTIONS="color=always"
+ASAN_OPTIONS+=":strip_path_prefix=${PWD}/"
ASAN_OPTIONS+=":check_initialization_order=1"
ASAN_OPTIONS+=":detect_stack_use_after_return=1"
ASAN_OPTIONS+=":strict_init_order=1"
ASAN_OPTIONS+=":strict_string_checks=1"
ASAN_OPTIONS+=":detect_invalid_pointer_pairs=2"
ASAN_OPTIONS+=":detect_container_overflow=0"
-ASAN_OPTIONS+=":strip_path_prefix=${PWD}/"
export ASAN_OPTIONS
# https://www.boost.org/doc/libs/release/libs/test/doc/html/boost_test/runtime_config/summary.html