Babeltrace:use new variable TEST_PLAN_PATH for test plan base path.
[lttng-ci.git] / babeltrace / babeltrace-master.sh
index 8391abe571a6f9f9dcda91a3e3057cb2995819eb..eb75863e32fcf2ca0ffdce1c69aba9c318372c3e 100755 (executable)
@@ -26,7 +26,50 @@ python_bindings)
     ;;
 esac
 
-./configure --prefix=$PREFIX $CONF_OPTS
+# Build type
+# oot : out-of-tree build
+# dist: build via make dist
+# *   : normal tree build
+#
+# Make sure to move to the build_path and configure
+# before continuing
+
+BUILD_PATH=$WORKSPACE
+TEST_PLAN_PATH=$WORKSPACE
+
+case "$build" in
+       oot)
+               echo "Out of tree build"
+               BUILD_PATH=$WORKSPACE/oot
+               mkdir -p $BUILD_PATH
+               cd $BUILD_PATH
+               $WORKSPACE/configure --prefix=$PREFIX $CONF_OPTS
+               ;;
+       dist)
+               echo "Distribution out of tree build"
+               BUILD_PATH=`mktemp -d`
+
+               # Initial configure and generate tarball
+               ./configure
+               make dist
+
+               mkdir -p $BUILD_PATH
+               cp *.tar.* $BUILD_PATH/
+               cd $BUILD_PATH
+
+               # Ignore level 1 of tar
+               tar xvf *.tar.* --strip 1
+
+               $BUILD_PATH/configure --prefix=$PREFIX $CONF_OPTS
+
+               # Set test plan to dist tar
+               TEST_PLAN_PATH=$BUILD_PATH
+               ;;
+       *)
+               echo "Standard tree build"
+               $WORKSPACE/configure --prefix=$PREFIX $CONF_OPTS
+               ;;
+esac
 
 make
 make install
@@ -34,10 +77,15 @@ make install
 rm -rf $WORKSPACE/tap
 mkdir -p $WORKSPACE/tap
 
-cd $WORKSPACE/tests
+cd $BUILD_PATH/tests
 
 # Run make check tests
-prove --merge --exec '' - < $WORKSPACE/tests/tests --archive $WORKSPACE/tap/ || true
+if [ -e $TEST_PLAN_PATH/tests/tests ]; then
+       prove --merge --exec '' - < $TEST_PLAN_PATH/tests/tests --archive $WORKSPACE/tap/ || true
+else
+       echo "Missing test plan"
+       exit 1
+fi
 
 # TAP plugin is having a hard time with .yml files.
 rm -f $WORKSPACE/tap/meta.yml
@@ -51,3 +99,7 @@ make clean
 find $WORKSPACE/build/bin -executable -type f -exec chrpath --delete {} \;
 find $WORKSPACE/build/lib -name "*.so" -exec chrpath --delete {} \;
 find $WORKSPACE/build/lib -name "*.la" -exec rm -f {} \;
+
+if [ $build = "dist" ]; then
+       rm -rf $BUILD_PATH
+fi
This page took 0.023119 seconds and 4 git commands to generate.