From 9df6a81664289c4cf39c6251503a20a8f88f2a27 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 25 Dec 2009 01:19:05 +0000 Subject: add test for bibtex respecting openout git-svn-id: svn://tug.org/texlive/trunk@16507 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/ChangeLog | 15 ++++ Build/source/texk/web2c/Makefile.in | 84 +++++++++++----------- Build/source/texk/web2c/am/web.am | 5 +- .../source/texk/web2c/tests/bibtex-openout-test.pl | 37 ++++++++++ 4 files changed, 99 insertions(+), 42 deletions(-) create mode 100755 Build/source/texk/web2c/tests/bibtex-openout-test.pl (limited to 'Build/source') diff --git a/Build/source/texk/web2c/ChangeLog b/Build/source/texk/web2c/ChangeLog index 63c927d71eb..615dabf32bd 100644 --- a/Build/source/texk/web2c/ChangeLog +++ b/Build/source/texk/web2c/ChangeLog @@ -1,3 +1,18 @@ +2009-12-25 Karl Berry + + * tests/bibtex-openout-test.pl: new file. + * am/web.am (bibtex_tests): new var. + (TESTS): add $(bibtex_tests). + (EXTRA_DIST): likewise. + +2009-12-24 Karl Berry + + * AUTHORS, Makefile.in, README, help.h: doc/email updates. + +2009-12-23 Karl Berry + + * help.h (BIBTEXHELP): tweaks. + 2009-12-07 Peter Breitenlohner * configure.ac: Add checks for mkdtemp(), snprintf(), and diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in index 3a6c08d661a..16f498fdedd 100644 --- a/Build/source/texk/web2c/Makefile.in +++ b/Build/source/texk/web2c/Makefile.in @@ -48,7 +48,7 @@ bin_PROGRAMS = tangle$(EXEEXT) ctangle$(EXEEXT) $(am__EXEEXT_5) \ noinst_PROGRAMS = tangleboot$(EXEEXT) ctangleboot$(EXEEXT) check_PROGRAMS = $(am__EXEEXT_17) $(am__EXEEXT_18) $(am__EXEEXT_19) \ $(am__EXEEXT_20) $(am__EXEEXT_21) md5main$(EXEEXT) -TESTS = tangle.test $(am__EXEEXT_24) ctiedir/ctie.test \ +TESTS = tangle.test $(bibtex_tests) $(am__EXEEXT_24) ctiedir/ctie.test \ cwebdir/cweave.test tiedir/tie.test $(am__append_4) \ $(am__append_8) $(am__append_11) $(am__append_14) \ $(am__append_19) $(am__append_35) $(am__append_36) \ @@ -1105,46 +1105,47 @@ EXTRA_LIBRARIES = libmf.a libmplib.a libpdftex.a liblua51.a libzzip.a \ EXTRA_DIST = PROJECTS cftests config.h cpascal.h help.h tangle.web \ tangle.ch tangleboot.pin cwebdir ctangleboot.cin cwebboot.cin \ cwebboot.hin tangle.test $(web_programs:=.web) \ - $(web_programs:=.ch) $(web_tests) tests/allbib.aux \ - tests/allbib.tex tests/apalike.bst tests/batch.tex \ - tests/check.log tests/cmr10.600gf tests/cmr10.pk \ - tests/cmr10.pl tests/cmr10.tfm tests/cmr7.tfm tests/cmr8.tfm \ - tests/cmti10.tfm tests/cmtt10.tfm tests/cmtt8.tfm tests/dict \ - tests/eight.tex tests/end.tex tests/exampl.aux \ - tests/exampl.tex tests/gray.tfm tests/hello.tex tests/io.mf \ - tests/just.texi tests/label.mp tests/label.mpx tests/logo8.tfm \ - tests/longtfm.tex tests/magic.tex tests/memtest.tex \ - tests/mltextst.tex tests/mptest.mp tests/mptest.mpx \ - tests/one.two.mf tests/one.two.mp tests/one.two.tex \ - tests/online.mf tests/openout.mp tests/openout.tex \ - tests/pagenum.dvi tests/pagenum.tex tests/patgen.in \ - tests/patterns tests/plain.mft tests/pplr.dvi tests/pplr.tfm \ - tests/ptmr.dvi tests/ptmr.tfm tests/ptmr.vf tests/ptmr.vpl \ - tests/rpsyr.tfm tests/rptmr.tfm tests/story.dvi \ - tests/testex.err tests/testex.mp tests/testex.tex \ - tests/translate tests/uno.dos tests/write18.tex \ - tests/xampl.bib ctiedir tiedir lib/mfmpi386.asm lib/mfmpw32.c \ - lib/texmfmp.c texmfmem.h texmfmp-help.h texmfmp.h \ - $(tex_ch_srcs) lib/texmfmp.c tmf-pool.h $(tex_tests) mf.web \ - mf-binpool.ch mf.ch mftalk.h lib/texmfmp.c tmf-pool.h \ - $(mf_tests) triptrap/README triptrap/mftrap.diffs \ - triptrap/mftrap.fot triptrap/mftrap.log triptrap/mftrap.pl \ - triptrap/mftrap1.in triptrap/mftrap2.in triptrap/mftrapin.log \ - triptrap/mptrap.diffs triptrap/mptrap.fot triptrap/mptrap.log \ - triptrap/mptrap.pl triptrap/mptrap.readme triptrap/mptrap1.in \ - triptrap/mptrap2.in triptrap/mptrapin.log triptrap/mtrap.0 \ - triptrap/mtrap.1 triptrap/mtrap.log triptrap/mtrap.mp \ - triptrap/texmf.cnf triptrap/trap.148 triptrap/trap.149 \ - triptrap/trap.150 triptrap/trap.151 triptrap/trap.197 \ - triptrap/trap.200 triptrap/trap.5 triptrap/trap.6 \ - triptrap/trap.mf triptrap/trap.mp triptrap/trap.mpx \ - triptrap/trap.typ triptrap/trapf.pl triptrap/trapman.tex \ - triptrap/trip.diffs triptrap/trip.fot triptrap/trip.log \ - triptrap/trip.pl triptrap/trip.tex triptrap/trip.typ \ - triptrap/trip1.in triptrap/trip2.in triptrap/tripin.log \ - triptrap/tripman.tex triptrap/tripos.tex triptrap/writeo \ - triptrap/writeo.2 tmf-pool.h mplibdir/ChangeLog $(mpost_web) \ - $(mp_tests) $(libmplib_web) mplibdir/lmplib.c $(etex_web_srcs) \ + $(web_programs:=.ch) $(bibtex_tests) $(web_tests) \ + tests/allbib.aux tests/allbib.tex tests/apalike.bst \ + tests/batch.tex tests/check.log tests/cmr10.600gf \ + tests/cmr10.pk tests/cmr10.pl tests/cmr10.tfm tests/cmr7.tfm \ + tests/cmr8.tfm tests/cmti10.tfm tests/cmtt10.tfm \ + tests/cmtt8.tfm tests/dict tests/eight.tex tests/end.tex \ + tests/exampl.aux tests/exampl.tex tests/gray.tfm \ + tests/hello.tex tests/io.mf tests/just.texi tests/label.mp \ + tests/label.mpx tests/logo8.tfm tests/longtfm.tex \ + tests/magic.tex tests/memtest.tex tests/mltextst.tex \ + tests/mptest.mp tests/mptest.mpx tests/one.two.mf \ + tests/one.two.mp tests/one.two.tex tests/online.mf \ + tests/openout.mp tests/openout.tex tests/pagenum.dvi \ + tests/pagenum.tex tests/patgen.in tests/patterns \ + tests/plain.mft tests/pplr.dvi tests/pplr.tfm tests/ptmr.dvi \ + tests/ptmr.tfm tests/ptmr.vf tests/ptmr.vpl tests/rpsyr.tfm \ + tests/rptmr.tfm tests/story.dvi tests/testex.err \ + tests/testex.mp tests/testex.tex tests/translate tests/uno.dos \ + tests/write18.tex tests/xampl.bib ctiedir tiedir \ + lib/mfmpi386.asm lib/mfmpw32.c lib/texmfmp.c texmfmem.h \ + texmfmp-help.h texmfmp.h $(tex_ch_srcs) lib/texmfmp.c \ + tmf-pool.h $(tex_tests) mf.web mf-binpool.ch mf.ch mftalk.h \ + lib/texmfmp.c tmf-pool.h $(mf_tests) triptrap/README \ + triptrap/mftrap.diffs triptrap/mftrap.fot triptrap/mftrap.log \ + triptrap/mftrap.pl triptrap/mftrap1.in triptrap/mftrap2.in \ + triptrap/mftrapin.log triptrap/mptrap.diffs \ + triptrap/mptrap.fot triptrap/mptrap.log triptrap/mptrap.pl \ + triptrap/mptrap.readme triptrap/mptrap1.in triptrap/mptrap2.in \ + triptrap/mptrapin.log triptrap/mtrap.0 triptrap/mtrap.1 \ + triptrap/mtrap.log triptrap/mtrap.mp triptrap/texmf.cnf \ + triptrap/trap.148 triptrap/trap.149 triptrap/trap.150 \ + triptrap/trap.151 triptrap/trap.197 triptrap/trap.200 \ + triptrap/trap.5 triptrap/trap.6 triptrap/trap.mf \ + triptrap/trap.mp triptrap/trap.mpx triptrap/trap.typ \ + triptrap/trapf.pl triptrap/trapman.tex triptrap/trip.diffs \ + triptrap/trip.fot triptrap/trip.log triptrap/trip.pl \ + triptrap/trip.tex triptrap/trip.typ triptrap/trip1.in \ + triptrap/trip2.in triptrap/tripin.log triptrap/tripman.tex \ + triptrap/tripos.tex triptrap/writeo triptrap/writeo.2 \ + tmf-pool.h mplibdir/ChangeLog $(mpost_web) $(mp_tests) \ + $(libmplib_web) mplibdir/lmplib.c $(etex_web_srcs) \ $(etex_ch_srcs) etexdir/etexextra.in lib/texmfmp.c tmf-pool.h \ etexdir/ChangeLog etexdir/INSTALL etexdir/README \ etexdir/etex_gen.tex $(etex_tests) etexdir/etrip/etrip.diffs \ @@ -1429,6 +1430,7 @@ web_programs = bibtex dvicopy dvitype gftodvi gftopk gftype mft \ patgen pktogf pktype pltotf pooltype tftopl vftovp vptovf weave nodist_bibtex_SOURCES = bibtex.c bibtex.h +bibtex_tests = tests/bibtex-openout-test.pl nodist_dvicopy_SOURCES = dvicopy.c dvicopy.h nodist_dvitype_SOURCES = dvitype.c dvitype.h nodist_gftodvi_SOURCES = gftodvi.c gftodvi.h diff --git a/Build/source/texk/web2c/am/web.am b/Build/source/texk/web2c/am/web.am index a587967eb1a..000c2bd74b0 100644 --- a/Build/source/texk/web2c/am/web.am +++ b/Build/source/texk/web2c/am/web.am @@ -22,6 +22,9 @@ bibtex-web2c: bibtex.p $(web2c_depend) web2c/cvtbib.sed @$(web2c) bibtex bibtex.p: tangle$(EXEEXT) bibtex.web bibtex.ch $(tangle) bibtex bibtex +bibtex_tests = tests/bibtex-openout-test.pl +TESTS += $(bibtex_tests) +EXTRA_DIST += $(bibtex_tests) nodist_dvicopy_SOURCES = dvicopy.c dvicopy.h dvicopy.c dvicopy.h: dvicopy-web2c @@ -144,7 +147,7 @@ weave-web2c: weave.p $(web2c_depend) weave.p: tangle$(EXEEXT) weave.web weave.ch $(tangle) weave weave -## Tests +## Tests (basic test for each program, named foo.test). ## web_tests = $(web_programs:=.test) diff --git a/Build/source/texk/web2c/tests/bibtex-openout-test.pl b/Build/source/texk/web2c/tests/bibtex-openout-test.pl new file mode 100755 index 00000000000..9d45effefa2 --- /dev/null +++ b/Build/source/texk/web2c/tests/bibtex-openout-test.pl @@ -0,0 +1,37 @@ +#!/usr/bin/env perl +# $Id$ +# Copyright 2009 Karl Berry . +# You may freely use, modify and/or distribute this file. +# Check that bibtex respects openout_any. + +BEGIN { + chomp ($mydir = `dirname $0`); + unshift (@INC, "$mydir"); +} + +exit (&main ()); + +sub main +{ + # attempt at making it possible to run this when srcdir=builddir. + $ENV{"srcdir"} = $mydir if ! exists $ENV{"srcdir"}; + my $srcdir = $ENV{"srcdir"}; + + $ENV{"TEXMFCNF"} = "$srcdir/../kpathsea"; + $ENV{"BIBINPUTS"} = "$srcdir/tests"; + $ENV{"BSTINPUTS"} = "$srcdir/tests"; + + $ENV{"openout_any"} = "p"; # should already be in texmf.cnf, but ... + + my $prog = "./bibtex"; + die "$0: no program $prog in " . `pwd` if ! -x $prog; + + my @args = ("$srcdir/exampl.aux"); # blg open of abs path should fail + + $ret = system ($prog, @args); + #warn ("ret=$ret in " . `pwd`); + + # The test fails if the program succeeded. Ideally we'd grep the output. + my $bad = ($ret == 0); + return $bad; +} -- cgit v1.2.3