From 29257ccc28919fcb506e6582fa5078ed0e542f70 Mon Sep 17 00:00:00 2001 From: Peter Breitenlohner Date: Fri, 10 Jul 2015 09:42:52 +0000 Subject: Build system: Better dependencies for 'make check' git-svn-id: svn://tug.org/texlive/trunk@37824 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/mftraptest.test | 82 +++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100755 Build/source/texk/web2c/mftraptest.test (limited to 'Build/source/texk/web2c/mftraptest.test') diff --git a/Build/source/texk/web2c/mftraptest.test b/Build/source/texk/web2c/mftraptest.test new file mode 100755 index 00000000000..71fefa76939 --- /dev/null +++ b/Build/source/texk/web2c/mftraptest.test @@ -0,0 +1,82 @@ +#! /bin/sh + +# Copyright (C) 2009-2014 Peter Breitenlohner +# You may freely use, modify and/or distribute this file. + +testdir=$abs_srcdir/triptrap +TEXMFCNF=$testdir; export TEXMFCNF + +rm -rf trapdir +mkdir trapdir +cd trapdir +mkdir a b + +# See triptrap/README for explanation of why we believe these diffs are ok, +# notably including the capsule numbers. + +# TeX Live generic +cat >filter <<-\_EOF + s,^\*\*(trap\.mf,** \&trap trap \ + (trap.mf, + s/ (TeX Live 20[^)]*)// + s/base=trap [^)][^)]*)/base=trap)/ + s/) [0-9A-Z: ]*$/)/ + s/usage [1-9][0-9&]* ([1-9][0-9&]* still/usage XX\&XX (YYY\&YYYYY still/ + s/[1-9][0-9]* strings of total length [1-9][0-9]*/XXXX strings of total length YYYYY/ + s/[1-9][0-9]* strings out of [1-9].*/XX strings out of YYY/ + s/[1-9][0-9]* string characters out of [1-9].*/XXXX string characters out of YYYYY/ + s/tokens out of [1-9][0-9]*/tokens out of YYYY/ + s/out of [1-9][0-9]*i,[0-9nrpb,]*/out of YYi,YYYn,YYYr,YYYp,YYYb/ + s/out of [1-9][0-9]*w,[0-9hdilkep,]*)/out of YYYw,YYh,YYd,YYi,YYYYl,YYYk,YYYe,YYp)/ + s/METAFONT output 20..\...\...:..../METAFONT output 20YY.MM.DD:hhmm/ + _EOF + +# Capsule numbers +cat >>filter <<-\_EOF + s/ %CA$/ %/ + s/^PSULE1675/CAPSULE1172/ + s/%CAPSULE[1-9][0-9]*/%CAPSULEnnnn/g + _EOF + +echo ">>> Running TRAP test for Metafont." >&2 +echo ">>> See $testdir/mftrap.diffs for example of acceptable diffs." >&2 + +is_OK=: + +set -x + +# get same filename in log +$LN_S $testdir/trap.mf . + +../mf --progname=inimf <$testdir/mftrap1.in >mftrapin.fot +if test ! -s trap.base; then + echo "*** trap.base not created by mftrap1.in, investigate!" >&2 + exit 1 +fi +mv trap.log mftrapin.log || exit 1 +diff $testdir/mftrapin.log mftrapin.log + +../mf --progname=inimf <$testdir/mftrap2.in >mftrap.fot +mv trap.log mftrap.log || exit 1 +mv trap.tfm mftrap.tfm || exit 1 +diff $testdir/mftrap.fot mftrap.fot +diff $testdir/mftrap.log mftrap.log + +../tftopl ./mftrap.tfm mftrap.pl || exit 1 +diff $testdir/mftrap.pl mftrap.pl || is_OK=false + +../gftype -m -i ./trap.72270gf >trap.typ || exit 1 +diff $testdir/trap.typ trap.typ + +for f in mftrapin.log mftrap.fot mftrap.log trap.typ; do + sed $testdir/$f -f filter >a/$f + sed $f -f filter >b/$f + diff a/$f b/$f || is_OK=false +done + +$is_OK && { + echo ">>> All differences are acceptable." >&2 +} || { + echo "*** Error(s) found in mf trap test, investigate!" >&2 + exit 1 +} -- cgit v1.2.3