X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=scripts%2Flttng-tools%2Fbuild.sh;h=079de21030832a07793cea9ce70ebfdf065f0fbd;hb=05939e86cfef05d0919cfc49fdb8de27641557a6;hp=84367e0ecd4ff89f4014a65db3953fd45bf46803;hpb=6871000cbd00b2dd074a3bd313e8dfba24c83ffc;p=lttng-ci.git diff --git a/scripts/lttng-tools/build.sh b/scripts/lttng-tools/build.sh index 84367e0..079de21 100755 --- a/scripts/lttng-tools/build.sh +++ b/scripts/lttng-tools/build.sh @@ -115,13 +115,15 @@ SRCDIR="$WORKSPACE/src/lttng-tools" TAPDIR="$WORKSPACE/tap" PREFIX="/build" LIBDIR="lib" +LIBDIR_ARCH="$LIBDIR" # RHEL and SLES both use lib64 but don't bother shipping a default autoconf # site config that matches this. -if [[ ( -f /etc/redhat-release || -f /etc/SuSE-release ) && ( "$(uname -m)" == "x86_64" ) ]]; then - LIBDIR_ARCH="${LIBDIR}64" -else - LIBDIR_ARCH="$LIBDIR" +if [[ ( -f /etc/redhat-release || -f /etc/products.d/SLES.prod || -f /etc/yocto-release ) ]]; then + # Detect the userspace bitness in a distro agnostic way + if file -L /bin/bash | grep '64-bit' >/dev/null 2>&1; then + LIBDIR_ARCH="${LIBDIR}64" + fi fi DEPS_INC="$WORKSPACE/deps/build/include" @@ -279,11 +281,11 @@ cygwin|cygwin64|msys32|msys64) ;; esac -# The missing-field-initializers warning code is very dumb in GCC 4.8 on -# SLES12, disable it even if it's available. -if [[ $platform = sles12sp5* ]]; then - CFLAGS="$CFLAGS -Wno-missing-field-initializers" - CXXFLAGS="$CXXFLAGS -Wno-missing-field-initializers" +# Some warning flags are very dumb in GCC 4.8 on SLES12 / EL7, disable them +# even if they are available. +if [[ $platform = sles12sp5* ]] || [[ $platform = el7* ]]; then + CFLAGS="$CFLAGS -Wno-missing-field-initializers -Wno-shadow" + CXXFLAGS="$CXXFLAGS -Wno-missing-field-initializers -Wno-shadow" fi case "$test_type" in @@ -351,12 +353,19 @@ agents) export JAVA_HOME="/usr/lib/jvm/default-java" export CLASSPATH="$DEPS_JAVA/lttng-ust-agent-all.jar:/usr/share/java/log4j-api.jar:/usr/share/java/log4j-core.jar:/usr/share/java/log4j-1.2.jar" - CONF_OPTS+=("--enable-test-java-agent-all" "--enable-test-python-agent-all") + CONF_OPTS+=("--enable-test-java-agent-all") # Explicitly add '--enable-test-java-agent-log4j2', it's not part of '-all' in stable 2.12/2.13 if verlt "$PACKAGE_VERSION" "2.14"; then CONF_OPTS+=("--enable-test-java-agent-log4j2") fi + + # Some distros don't ship python2 anymore + if command -v $PYTHON2 >/dev/null 2>&1; then + CONF_OPTS+=("--enable-test-python-agent-all") + else + CONF_OPTS+=("--enable-test-python3-agent") + fi ;; relayd-only) @@ -494,7 +503,12 @@ if [ "$LTTNG_TOOLS_RUN_TESTS" = "yes" ] && [ "$conf" != "no-ust" ]; then fi make --keep-going check || failed_tests=1 + + # Copy tap logs for the jenkins tap parser before cleaning the build dir rsync -a --exclude 'test-suite.log' --include '*/' --include '*.log' --exclude='*' tests/ "$TAPDIR" + + # Copy the test suites top-level log which includes all tests failures + rsync -a --include 'test-suite.log' --include '*/' --exclude='*' tests/ "$WORKSPACE/log" else cd tests mkdir -p "$TAPDIR/unit"