jjb: babeltrace: split gerrit jobs by branch
[lttng-ci.git] / scripts / lttng-tools / build.sh
index 1f64168c6018bb84745e4268e75980965a1b613a..079de21030832a07793cea9ce70ebfdf065f0fbd 100755 (executable)
@@ -115,15 +115,14 @@ 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 || -f /etc/yocto-release ) ]]; then
+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"
-    else
-        LIBDIR_ARCH="$LIBDIR"
     fi
 fi
 
@@ -282,11 +281,11 @@ cygwin|cygwin64|msys32|msys64)
     ;;
 esac
 
-# The missing-field-initializers warning code is very dumb in GCC 4.8 on
-# SLES12 / EL7, disable it even if it's available.
+# 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"
-    CXXFLAGS="$CXXFLAGS -Wno-missing-field-initializers"
+    CFLAGS="$CFLAGS -Wno-missing-field-initializers -Wno-shadow"
+    CXXFLAGS="$CXXFLAGS -Wno-missing-field-initializers -Wno-shadow"
 fi
 
 case "$test_type" in
@@ -354,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)
@@ -497,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"
This page took 0.023122 seconds and 4 git commands to generate.