From acb45d847f0fdce04b13b69a4d535d47f8c39dd1 Mon Sep 17 00:00:00 2001 From: Tobias Malkmus <tomalk@mathematik.uni-freiburg.de> Date: Fri, 10 Jan 2014 12:05:01 +0100 Subject: [PATCH] make check scripts work as in dune-fem --- scripts/check-dist.sh | 28 +++++++++++++++++++++++----- scripts/opts/config_all.opts | 1 + scripts/opts/config_alu.opts | 1 + scripts/opts/config_spgrid.opts | 1 + 4 files changed, 26 insertions(+), 5 deletions(-) diff --git a/scripts/check-dist.sh b/scripts/check-dist.sh index bacc725a..29e0433b 100755 --- a/scripts/check-dist.sh +++ b/scripts/check-dist.sh @@ -20,7 +20,8 @@ FEMDIR="$DUNEDIR/dune-fem" SCRIPTSDIR="$FEMDIR/scripts" OPTSDIR="$SCRIPTSDIR/opts" -MODULES="dune-common dune-geometry dune-grid dune-istl dune-spgrid dune-fem dune-alugrid" +MODULES="dune-common dune-geometry dune-grid dune-istl dune-localfunctions dune-spgrid dune-fem dune-alugrid dune-fem-dg" +EXISTINGMODULES="" # fetch missing tarballs from website # ----------------------------------- @@ -49,6 +50,8 @@ for MODULE in $MODULES ; do echo "Fatal: No tarball available for $MODULE" exit 1 fi + + EXISTINGMODULES+=" $MODULE" done # perform tests @@ -95,11 +98,26 @@ for OPTS in `cd $OPTSDIR ; ls *.opts` ; do CHECKLOG="$WORKINGDIR/${OPTS%.opts}-check.out" MAKE_CHECK_FLAGS="" MAKE_CHECK_FLAGS="$(source $OPTSDIR/$OPTS; echo $MAKE_CHECK_FLAGS)" - if ! $SCRIPTSDIR/check-tests.sh $TESTDIR/dune-fem "$MAKE_CHECK_FLAGS"; then - echo "Error: Check failed with $OPTS (see $CHECKLOG)" - errors=$((errors+1)) + + # check for dependencies + MAKE_CHECK_DEPS="$(source $OPTSDIR/$OPTS; echo $MAKE_CHECK_DEPS)" + + MISSINGDEPS="" + for dep in $MAKE_CHECK_DEPS ; do + if ! echo $EXISTINGMODULES | grep $dep; then + MISSINGDEPS+=" $dep" + fi + done + + if test -z "$MISSINGDEPS" ; then + if ! $SCRIPTSDIR/check-tests.sh $TESTDIR/dune-fem "$MAKE_CHECK_FLAGS"; then + echo "Error: Check failed with $OPTS (see $CHECKLOG)" + errors=$((errors+1)) + fi + mv $WORKINGDIR/check-tests.out $CHECKLOG + else + echo "Skipping $OPTS due to missing dependencies:$MISSINGDEPS" fi - mv $WORKINGDIR/check-tests.out $CHECKLOG done # clean up diff --git a/scripts/opts/config_all.opts b/scripts/opts/config_all.opts index fd30de5b..9885be79 100644 --- a/scripts/opts/config_all.opts +++ b/scripts/opts/config_all.opts @@ -20,5 +20,6 @@ MAKE_FLAGS= # These flags are necessary to perform grid specific checks! MAKE_CHECK_FLAGS="GRIDTYPE=ALUGRID_SIMPLEX GRIDDIM=3" +MAKE_CHECK_DEPS="dune-alugrid" MAKE_FLAGS=-j8 diff --git a/scripts/opts/config_alu.opts b/scripts/opts/config_alu.opts index 59eb91da..c74df042 100644 --- a/scripts/opts/config_alu.opts +++ b/scripts/opts/config_alu.opts @@ -15,5 +15,6 @@ MAKE_FLAGS= # These flags are necessary to perform grid specific checks! MAKE_CHECK_FLAGS="GRIDTYPE=ALUGRID_SIMPLEX GRIDDIM=2" +MAKE_CHECK_DEPS="dune-alugrid" MAKE_FLAGS=-j8 diff --git a/scripts/opts/config_spgrid.opts b/scripts/opts/config_spgrid.opts index 473d3127..78606729 100644 --- a/scripts/opts/config_spgrid.opts +++ b/scripts/opts/config_spgrid.opts @@ -9,5 +9,6 @@ MAKE_FLAGS= # These flags are necessary to perform grid specific checks! MAKE_CHECK_FLAGS="GRIDTYPE=SPGRID GRIDDIM=2" +MAKE_CHECK_DEPS="dune-spgrid" MAKE_FLAGS=-j8 -- GitLab