#!/bin/bash # autopkgtest check: Run junit base tests against an installed version of LibreOffice # (c) 2021 Software in the Public Interest, Inc. # Authors: Rene Engelhard set -e set -E SRCDIR=`pwd` CHECK_PARALLELISM=1 if [ -n "$AUTOPKGTEST_TMP" ]; then WORKDIR=`mktemp -q -d -p $AUTOPKGTEST_TMP` else WORKDIR=`mktemp -q -d` fi function unapply() { cd $SRCDIR echo echo "====== Unapplying the patches ======" patch -p1 -R < ./debian/tests/patches/cppunit-standalone.diff } trap "unapply" ERR if [ -f $AUTOPKGTEST_TMP/build-tests-skipped ]; then exit 77; fi echo echo "====== Patching the tree to only build the unittests against an existing installation ======" patch -p1 < ./debian/tests/patches/cppunit-standalone.diff echo echo "====== Enabling core dumps ======" # yes, we want core dumps and stack traces ulimit -c unlimited || true echo echo "====== Starting subsequentcheck with ${CHECK_PARALLELISM} job ======" cd $SRCDIR # all modules containing subsequent(test|check). # Filter out: # - odk: already tested by odk-build-examples and odk/util/check.pl # - the junit tests - which are ran in an own test - by setting OOO_JUNIT_JAR to nothing (as --without-junit would do) # - solenv: no need to test gbuild2json... # - smoketest: done in the smoketest test export PARALLELISM=$CHECK_PARALLELISM for i in `grep subsequent */*.mk | cut -d"/" -f1 | grep -E -v '(odk|smoketest|solenv)' | sort | uniq | xargs`; do echo echo "====== Running subsequentcheck in module $i ======"; \ cd $i && \ make -rk subsequentcheck \ OOO_JUNIT_JAR= \ INSTDIR=/usr/lib/libreoffice \ verbose=t; \ cd ..;\ done unapply