gerrit: bt2: add dev and prod mode
[lttng-ci.git] / scripts / babeltrace / build.sh
index 6bc76c3a06590ca07fc865952ea94dca5458d32c..da5f4ab96ff4ec1aa46a74e75ec5b97abbf72e66 100755 (executable)
@@ -73,6 +73,8 @@ verne() {
 arch=${arch:-}
 conf=${conf:-}
 build=${build:-}
+cc=${cc:-}
+bt2_mode=${bt2_mode:-}
 
 
 SRCDIR="$WORKSPACE/src/babeltrace"
@@ -84,6 +86,69 @@ rm -rf "$PREFIX" "$TMPDIR"
 mkdir -p "$PREFIX" "$TMPDIR"
 
 export TMPDIR
+export CFLAGS="-g -O2"
+
+# Set compiler variables
+case "$cc" in
+gcc)
+    export CC=gcc
+    export CXX=g++
+    ;;
+gcc-4.8)
+    export CC=gcc-4.8
+    export CXX=g++-4.8
+    ;;
+gcc-5)
+    export CC=gcc-5
+    export CXX=g++-5
+    ;;
+gcc-6)
+    export CC=gcc-6
+    export CXX=g++-6
+    ;;
+gcc-7)
+    export CC=gcc-7
+    export CXX=g++-7
+    ;;
+gcc-8)
+    export CC=gcc-8
+    export CXX=g++-8
+    ;;
+clang)
+    export CC=clang
+    export CXX=clang++
+    ;;
+clang-3.9)
+    export CC=clang-3.9
+    export CXX=clang++-3.9
+    ;;
+clang-4.0)
+    export CC=clang-4.0
+    export CXX=clang++-4.0
+    ;;
+clang-5.0)
+    export CC=clang-5.0
+    export CXX=clang++-5.0
+    ;;
+clang-6.0)
+    export CC=clang-6.0
+    export CXX=clang++-6.0
+    ;;
+clang-7)
+    export CC=clang-7
+    export CXX=clang++-7
+    ;;
+*)
+    if [ "x$cc" != "x" ]; then
+           export CC="$cc"
+    fi
+    ;;
+esac
+
+if [ "x${CC:-}" != "x" ]; then
+    echo "Selected compiler:"
+    "$CC" -v
+fi
 
 # Set platform variables
 case "$arch" in
@@ -102,11 +167,9 @@ sol11-i386)
     export MAKE=gmake
     export TAR=gtar
     export NPROC=nproc
-    export BISON="/opt/csw/bin/bison"
-    export YACC="$BISON -y"
     export PATH="$PATH:/usr/perl5/bin"
-    export LD_ALTEXEC=/usr/sfw/bin/gld
-    export LD=/usr/sfw/bin/gld
+    export LD_ALTEXEC=/usr/bin/gld
+    export LD=/usr/bin/gld
     ;;
 macosx)
     export MAKE=make
@@ -115,7 +178,7 @@ macosx)
     export BISON="bison"
     export YACC="$BISON -y"
     export PATH="/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
-    export CFLAGS="-I/opt/local/include"
+    export CFLAGS="$CFLAGS -I/opt/local/include"
     export LDFLAGS="-L/opt/local/lib"
     ;;
 *)
@@ -134,6 +197,20 @@ cd "$SRCDIR"
 # Get source version from configure script
 eval "$(grep '^PACKAGE_VERSION=' ./configure)"
 
+# Enable dev mode by default for BT 2.0 builds
+case "$bt2_mode" in
+dev)
+    echo "Developer mode"
+    export BABELTRACE_DEBUG_MODE=1
+    export BABELTRACE_DEV_MODE=1
+    export BABELTRACE_MINIMAL_LOG_LEVEL=VERBOSE
+    ;;
+*)
+    echo "Production mode (Default)"
+    export BABELTRACE_MINIMAL_LOG_LEVEL=INFO
+    ;;
+esac
+
 # Set configure options for each build configuration
 CONF_OPTS=""
 case "$conf" in
@@ -152,7 +229,7 @@ python-bindings)
     CONF_OPTS="--enable-python-bindings"
 
     if vergte "$PACKAGE_VERSION" "2.0"; then
-        CONF_OPTS="${CONF_OPTS} --enable-python-bindings-doc --enable-python-bindings-tests --enable-python-plugins"
+        CONF_OPTS="${CONF_OPTS} --enable-python-bindings-doc --enable-python-plugins"
     fi
     ;;
 *)
@@ -196,12 +273,6 @@ case "$build" in
         "$BUILD_PATH/configure" --prefix="$PREFIX" $CONF_OPTS
         ;;
 
-    clang)
-        echo "LLVM clang build"
-        export CC=clang
-        clang -v
-       "$SRCDIR/configure" --prefix="$PREFIX" $CONF_OPTS
-        ;;
     *)
         echo "Standard in-tree build"
         "$SRCDIR/configure" --prefix="$PREFIX" $CONF_OPTS
@@ -213,7 +284,7 @@ $MAKE -j "$($NPROC)" V=1
 $MAKE install
 
 # Run tests
-$MAKE check
+$MAKE --keep-going check
 
 # Copy tap logs for the jenkins tap parser
 rsync -a --exclude 'test-suite.log' --include '*/' --include '*.log' --exclude='*' tests/ "$WORKSPACE/tap"
This page took 0.02546 seconds and 4 git commands to generate.