texlive[67991] Build/source/texk/web2c/pdftexdir: pdftex: Make easier

commits+takuji at tug.org commits+takuji at tug.org
Sun Aug 20 16:27:05 CEST 2023


Revision: 67991
          http://tug.org/svn/texlive?view=revision&revision=67991
Author:   takuji
Date:     2023-08-20 16:27:05 +0200 (Sun, 20 Aug 2023)
Log Message:
-----------
pdftex: Make easier to test on Windows

Modified Paths:
--------------
    trunk/Build/source/texk/web2c/pdftexdir/ChangeLog
    trunk/Build/source/texk/web2c/pdftexdir/expanded.test
    trunk/Build/source/texk/web2c/pdftexdir/pdfimage.test
    trunk/Build/source/texk/web2c/pdftexdir/pdftex.test
    trunk/Build/source/texk/web2c/pdftexdir/pdftosrc.test
    trunk/Build/source/texk/web2c/pdftexdir/ttf2afm.test
    trunk/Build/source/texk/web2c/pdftexdir/wcfname.test
    trunk/Build/source/texk/web2c/pdftexdir/wprob.test

Modified: trunk/Build/source/texk/web2c/pdftexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/ChangeLog	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/ChangeLog	2023-08-20 14:27:05 UTC (rev 67991)
@@ -1,3 +1,9 @@
+2023-08-20  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* {expanded,pdfimage,pdftex,pdftosrc,ttf2afm,wcfname,
+	wprob}.test:
+	Make easier to test on Windows.
+
 2023-08-18  Hironobu Yamashita  <h.y.acetaminophen at gmail.com>
 
 	* pdftex.web: minor cleanup (sync with etex.ch r24155)

Modified: trunk/Build/source/texk/web2c/pdftexdir/expanded.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/expanded.test	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/expanded.test	2023-08-20 14:27:05 UTC (rev 67991)
@@ -4,12 +4,16 @@
 # David Carlisle: version for \expanded based on existing test scripts
 # by Peter Breitenlohner and Karl Berry.
 
+BinDir=${BinDir:-.}
+ExeExt=${ExeExt:-}
+_pdftex=$BinDir/pdftex$ExeExt
+
 LC_ALL=C; export LC_ALL;  LANGUAGE=C; export LANGUAGE
 
 TEXMFCNF=$srcdir/../kpathsea; export TEXMFCNF
-TEXINPUTS=$srcdir/pdftexdir/tests:.; export TEXINPUTS
+TEXINPUTS="$srcdir/pdftexdir/tests;."; export TEXINPUTS
 
-./pdftex -ini -etex --interaction batchmode expanded.tex 
+$_pdftex -ini -etex --interaction batchmode expanded.tex
 sed -n -e 's/[\\]pdf/\\/g' -e '/START/,/END/p' expanded.log \
   >expanded_pdftex.log || exit 1
 

Modified: trunk/Build/source/texk/web2c/pdftexdir/pdfimage.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/pdfimage.test	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/pdfimage.test	2023-08-20 14:27:05 UTC (rev 67991)
@@ -4,12 +4,16 @@
 # Copyright 2013 Peter Breitenlohner <tex-live at tug.org>
 # You may freely use, modify and/or distribute this file.
 
+BinDir=${BinDir:-.}
+ExeExt=${ExeExt:-}
+_pdftex=$BinDir/pdftex$ExeExt
+
 TEXMFCNF=$srcdir/../kpathsea; export TEXMFCNF
-TEXINPUTS=$srcdir/pdftexdir/tests:$srcdir/tests; export TEXINPUTS
+TEXINPUTS="$srcdir/pdftexdir/tests;$srcdir/tests"; export TEXINPUTS
 TEXFORMATS=.; export TEXFORMATS
 
-./pdftex -ini -interaction=batchmode pdfimage </dev/null || exit 1
+$_pdftex -ini -interaction=batchmode pdfimage </dev/null || exit 1
 
-./pdftex -fmt=pdfimage -interaction=batchmode pdfimage </dev/null || exit 1
+$_pdftex -fmt=pdfimage -interaction=batchmode pdfimage </dev/null || exit 2
 
 exit 0

Modified: trunk/Build/source/texk/web2c/pdftexdir/pdftex.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/pdftex.test	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/pdftex.test	2023-08-20 14:27:05 UTC (rev 67991)
@@ -6,6 +6,10 @@
 
 # Make sure the program executes.
 
-./pdftex --version || exit 1
-./pdftex --help || exit 1
+BinDir=${BinDir:-.}
+ExeExt=${ExeExt:-}
+_pdftex=$BinDir/pdftex$ExeExt
+
+$_pdftex --version || exit 1
+$_pdftex --help || exit 1
 exit 0

Modified: trunk/Build/source/texk/web2c/pdftexdir/pdftosrc.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/pdftosrc.test	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/pdftosrc.test	2023-08-20 14:27:05 UTC (rev 67991)
@@ -4,17 +4,29 @@
 # Copyright 2011 Peter Breitenlohner <tex-live at tug.org>
 # You may freely use, modify and/or distribute this file.
 
+BinDir=${BinDir:-.}
+ExeExt=${ExeExt:-}
+_pdftosrc=$BinDir/pdftosrc$ExeExt
+
+# pre-generated test results in the repository are stored in LF
+# but the output might be written in CRLF on some platform.
+# if 'diff --strip-trailing-cr' is available, exploit it.
+# (useful for tests on win32 binaries run on MSYS shell)
+DIFF="diff"
+$DIFF --strip-trailing-cr $0 $0 \
+  && DIFF="diff --strip-trailing-cr" || echo
+
 src=$srcdir/pdftexdir/tests
 
 rm -rf test-13.* test-15.*
 
 cp $src/test-13.pdf .
-./pdftosrc test-13.pdf -1 \
-	&& diff test-13.xref $src/test-13.xref \
+$_pdftosrc test-13.pdf -1 \
+	&& $DIFF test-13.xref $src/test-13.xref \
 	|| exit 1
 
 cp $src/test-15.pdf .
-./pdftosrc test-15.pdf -1 \
-	&& diff test-15.xref $src/test-15.xref \
-	|| exit 1
+$_pdftosrc test-15.pdf -1 \
+	&& $DIFF test-15.xref $src/test-15.xref \
+	|| exit 2
 

Modified: trunk/Build/source/texk/web2c/pdftexdir/ttf2afm.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/ttf2afm.test	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/ttf2afm.test	2023-08-20 14:27:05 UTC (rev 67991)
@@ -4,6 +4,10 @@
 # Copyright 2013 Peter Breitenlohner <tex-live at tug.org>
 # You may freely use, modify and/or distribute this file.
 
+BinDir=${BinDir:-.}
+ExeExt=${ExeExt:-}
+_pdftex=$BinDir/pdftex$ExeExt
+
 LC_ALL=C; export LC_ALL;  LANGUAGE=C; export LANGUAGE
 
 TEXMFCNF=$srcdir/../kpathsea; export TEXMFCNF

Modified: trunk/Build/source/texk/web2c/pdftexdir/wcfname.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/wcfname.test	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/wcfname.test	2023-08-20 14:27:05 UTC (rev 67991)
@@ -3,37 +3,85 @@
 # Copyright 2022-2023 Japanese TeX Development Community <issue at texjp.org>
 # You may freely use, modify and/or distribute this file.
 
-test -d pdftests || mkdir -p pdftests
-rm -f pdftests/fn*.log pdftests/fn*.txt pdftests/fn*.tex fn*.tex
+engine=pdftex
+testdir=pdftests
 
-rc=0
+KpsDir=${KpsDir:-../kpathsea}
+BinDir=${BinDir:-.}
+ExeExt=${ExeExt:-}
+_kpsewhich=$KpsDir/kpsewhich$ExeExt
+_tex=$BinDir/$engine$ExeExt
 
+test -d $testdir || mkdir -p $testdir
+rm -f $testdir/fn*.log $testdir/fn*.txt $testdir/fn*.tex fn*.tex
+
+rc=0; err1=; err2=
+
 TEXMFCNF=$srcdir/../kpathsea; export TEXMFCNF
-TEXINPUTS=pdftests:.; export TEXINPUTS
+TEXINPUTS="$testdir;."; export TEXINPUTS
 
-perl $srcdir/tests/fn-generate.perl pdftests
-pret=$?
-if [ $pret != 0 ] && [ $pret != 239 ]; then
-  exit 128
+$_kpsewhich -var-value=TEXMFCNF
+$_kpsewhich -progname=$engine -var-value=TEXINPUTS
+$_kpsewhich -progname=$engine -var-value=command_line_encoding
+
+for loc in C.UTF-8 C.utf8 en_US.UTF-8 en_US.utf8 ja_JP.UTF-8 ja_JP.utf8; do
+  locale -a | grep "^$loc\$"
+  ret=$?
+  # For Slackware linux, we need to replace from utf8 to UTF-8
+  if [ -f /etc/slackware-version ]; then
+    loc=`echo $loc | sed -e "s/utf8/UTF-8/"`
+  fi
+  if [ $ret = 0 ]; then
+    LC_ALL=$loc; LANGUAGE=$loc; export LC_ALL LANGUAGE
+    break
+  fi
+done
+if [ $ret != 0 ]; then
+  # linux musl fails to run `locale -a` but seems to have C.UTF-8
+  loc=C.UTF-8
+  LC_ALL=$loc; LANGUAGE=$loc; export LC_ALL LANGUAGE
 fi
-rm -f pdftests/fn*-euc.tex pdftests/fn*-sjis.tex
 
-if [ "$COMSPEC" != "" ]; then
+if [ "$COMSPEC" != "" ] || [ "$ExeExt" = ".exe" ]; then
   echo "*** We guess OS is Windows."
   command_line_encoding=utf8
   export command_line_encoding
 fi
+if [ "$ExeExt" = ".exe" ]; then
+  opt_win=-windows
+else
+  opt_win=
+fi
 
+perl -s $srcdir/tests/fn-generate.perl $opt_win $testdir
+pret=$?
+if [ $pret != 0 ] && [ $pret != 239 ]; then
+  exit 77
+fi
+rm -f $testdir/fn*-euc.tex $testdir/fn*-sjis.tex
+
 fenc="utf8"
 for doc in fn-$fenc fn£¥µÆÇñß-$fenc fnさざ波-$fenc; do
 
   echo '>>> Document:'$doc '  File Encoding:'$fenc
-  ./pdftex -ini -interaction nonstopmode -jobname=$doc --shell-escape $doc.tex >pdftests/$doc-term.log || rc=1
-  mv $doc.txt $doc.log pdftests/
+  $_kpsewhich -progname=$engine $doc.tex || rc=10
+  $_kpsewhich -progname=$engine fn±×÷§¶-utf8.tex || rc=11
+  $_tex -ini -interaction nonstopmode -jobname=$doc --shell-escape $doc.tex >$testdir/$doc-term.log || \
+      { rc=1 ; err1=$err1" $fenc:$doc" ; }
+  $_kpsewhich -progname=$engine $doc-tmp.tex || rc=12
+  $_kpsewhich -progname=$engine fn±×÷§¶-utf8-tmp.tex || rc=13
+  mv $doc.txt $doc.log $testdir/
 ##   It does not work.
-##  diff pdftests/$doc.txt $srcdir/tests/fn-$enc.txt || rc=2
+##  diff $testdir/$doc.txt $srcdir/tests/fn-$fenc.txt || \
+##      { rc=2 ; err2=$err2" $fenc:$doc" ; }
 
 done
 
 
+if [ $rc -gt 0 ]; then
+  if [ -n "$err1" ]; then echo ERROR1 $err1; fi
+  if [ -n "$err2" ]; then echo ERROR2 $err2; fi
+else
+  echo PASS
+fi
 exit $rc

Modified: trunk/Build/source/texk/web2c/pdftexdir/wprob.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/wprob.test	2023-08-20 14:26:56 UTC (rev 67990)
+++ trunk/Build/source/texk/web2c/pdftexdir/wprob.test	2023-08-20 14:27:05 UTC (rev 67991)
@@ -4,6 +4,10 @@
 # Copyright 2011-2013 Peter Breitenlohner <tex-live at tug.org>
 # You may freely use, modify and/or distribute this file.
 
+BinDir=${BinDir:-.}
+ExeExt=${ExeExt:-}
+_pdftex=$BinDir/pdftex$ExeExt
+
 rm -rf pwprob.*
 cp "$srcdir/tests/wprob.tex" ./pwprob.tex || exit 1
 



More information about the tex-live-commits mailing list.