diff --git a/.jenkins.d/00-deps.sh b/.jenkins.d/00-deps.sh index c114f8d..7e03e98 100755 --- a/.jenkins.d/00-deps.sh +++ b/.jenkins.d/00-deps.sh @@ -1,8 +1,22 @@ #!/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-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 +40,10 @@ if [[ $ID == macos ]]; then 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 @@ sudo ./waf --color=yes install 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/10-build.sh b/.jenkins.d/10-build.sh index c947294..848a8d1 100755 --- a/.jenkins.d/10-build.sh +++ b/.jenkins.d/10-build.sh @@ -35,9 +35,9 @@ fi # Install sudo ./waf --color=yes install -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 8e60089..cbda13a 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 diff --git a/.jenkins.d/40-headers-check.sh b/.jenkins.d/40-headers-check.sh index a008516..458dc0e 100755 --- a/.jenkins.d/40-headers-check.sh +++ b/.jenkins.d/40-headers-check.sh @@ -11,7 +11,7 @@ if [[ -n $DISABLE_HEADERS_CHECK ]]; then exit 0 fi -if [[ $ID_LIKE == *fedora* ]]; then +if [[ $ID_LIKE == *linux* && -d /usr/local/lib64/pkgconfig ]]; then export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig fi