texlive[65380] Build/source/texk/web2c: xetex, pdftex, (u)ptex: add

commits+takuji at tug.org commits+takuji at tug.org
Wed Dec 28 09:09:53 CET 2022


Revision: 65380
          http://tug.org/svn/texlive?view=revision&revision=65380
Author:   takuji
Date:     2022-12-28 09:09:52 +0100 (Wed, 28 Dec 2022)
Log Message:
-----------
xetex, pdftex, (u)ptex: add test for filename with wide characters

Modified Paths:
--------------
    trunk/Build/source/texk/web2c/ChangeLog
    trunk/Build/source/texk/web2c/Makefile.in
    trunk/Build/source/texk/web2c/am/web.am
    trunk/Build/source/texk/web2c/pdftexdir/ChangeLog
    trunk/Build/source/texk/web2c/pdftexdir/am/pdftex.am
    trunk/Build/source/texk/web2c/ptexdir/ChangeLog
    trunk/Build/source/texk/web2c/ptexdir/am/ptex.am
    trunk/Build/source/texk/web2c/uptexdir/ChangeLog
    trunk/Build/source/texk/web2c/uptexdir/am/uptex.am
    trunk/Build/source/texk/web2c/xetexdir/ChangeLog
    trunk/Build/source/texk/web2c/xetexdir/am/xetex.am

Added Paths:
-----------
    trunk/Build/source/texk/web2c/pdftexdir/wcfname.test
    trunk/Build/source/texk/web2c/ptexdir/wcfname.test
    trunk/Build/source/texk/web2c/tests/fn-euc.txt
    trunk/Build/source/texk/web2c/tests/fn-generate.perl
    trunk/Build/source/texk/web2c/tests/fn-sjis.txt
    trunk/Build/source/texk/web2c/tests/fn-utf8.txt
    trunk/Build/source/texk/web2c/uptexdir/wcfname.test
    trunk/Build/source/texk/web2c/xetexdir/wcfname.test

Modified: trunk/Build/source/texk/web2c/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/ChangeLog	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/ChangeLog	2022-12-28 08:09:52 UTC (rev 65380)
@@ -1,3 +1,9 @@
+2022-12-28  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* tests/fn-generate.perl, tests/fn-{utf8,euc,sjis}.txt,
+	Makefile.in:
+	Tests for file names with wide characters & {pdf,Xe,p,up}TeX.
+
 2022-09-28  Karl Berry  <karl at freefriends.org>
 
 	* tex.ch (halting_on_error_p): new variable, set when we start to

Modified: trunk/Build/source/texk/web2c/Makefile.in
===================================================================
--- trunk/Build/source/texk/web2c/Makefile.in	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/Makefile.in	2022-12-28 08:09:52 UTC (rev 65380)
@@ -3238,14 +3238,16 @@
 	tests/bibtex-bigauth.aux tests/bibtex-bigauth.bib \
 	tests/bibtex-bigauth.tex tests/auxinclude.aux \
 	tests/auxinclude.bbl tests/auxinclude.bib tests/auxinclude.tex \
-	tests/auxinclude2.aux tests/auxinclude2.tex tests/allbib.aux \
-	tests/allbib.tex tests/apalike.bst tests/badpl.pl \
-	tests/badtfm.tfm tests/badvf.tfm tests/badvf.vf \
-	tests/badvpl.vpl 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/auxinclude2.aux tests/auxinclude2.tex \
+	tests/fn-generate.perl tests/fn-utf8.txt tests/fn-euc.txt \
+	tests/fn-sjis.txt tests/allbib.aux tests/allbib.tex \
+	tests/apalike.bst tests/badpl.pl tests/badtfm.tfm \
+	tests/badvf.tfm tests/badvf.vf tests/badvpl.vpl \
+	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/longline.aux \
 	tests/longline.bib tests/longline.tex tests/longtfm.tex \
@@ -3666,57 +3668,58 @@
 	$(pweb_programs:=.h) $(pweb_programs:=.p) \
 	$(pweb_programs:=-web2c) $(pweb_programs:=.web) \
 	ptests/nissya_bib.* ptests/xexampl.aux ptests/xexampl.bbl \
-	ptests/xexampl.blg ptests/xenc*.* ptests/memtest.bib \
-	ptests/memtest?.* ptests/xstory.dvityp ptests/xpagenum.typ \
-	ptests/xptex[34]*.typ ptests/xcmr10.tfm ptests/xcmr10.pl \
-	ptests/xsample*.typ ptests/x*min10.* ptests/xchcode*.* \
-	ptests/xskipjfmp.* ptrip.diffs $(nodist_eptex_SOURCES) \
-	eptex.web eptex.ch eptex-web2c eptex.p eptex.pool eptex-tangle \
-	eptrip.diffs pdfprimitive-eptex.* $(nodist_uptex_SOURCES) \
-	uptex.web uptex.ch uptex-web2c uptex.p uptex.pool uptex-tangle \
-	$(upweb_programs:=.c) $(upweb_programs:=.h) \
-	$(upweb_programs:=.p) $(upweb_programs:=-web2c) \
-	$(upweb_programs:=.web) uptests/nissya_bib.* \
-	uptests/xexampl.aux uptests/xexampl.bbl uptests/xexampl.blg \
-	uptests/xenc*.* uptests/memtest.bib uptests/memtest?.* \
-	uptests/xstory.dvityp uptests/xpagenum.typ \
-	uptests/x*ptex[34]*.typ uptests/xcmr10.tfm uptests/xcmr10.pl \
-	uptests/xsample*.typ uptests/x*min10.* uptests/xchcode*.* \
-	uptests/xtestnewu.* uptests/xuparse.* uptests/yuparse.* \
-	uptests/ygkhuge*.* uptests/xskipjfmp.* uptrip.diffs \
-	$(nodist_euptex_SOURCES) euptex.web euptex.ch euptex-web2c \
-	euptex.p euptex.pool euptex-tangle euptrip.diffs \
-	pdfprimitive-euptex.* $(nodist_hitex_SOURCES) \
-	$(nodist_hishrink_SOURCES) $(nodist_histretch_SOURCES) \
-	hiformat-tangle hitex-tangle hello.log rule.log \
-	$(nodist_pdftex_SOURCES) pdftex-final.ch pdftex-web2c pdftex.p \
-	pdftex.pool pdftex-tangle pwprob.log pwprob.tex pdfimage.fmt \
-	pdfimage.log pdfimage.pdf expanded.log cnfline.log \
-	partoken-ok.log partoken-xfail.log postV3.afm postV7.afm \
-	test-13.pdf test-13.xref test-15.pdf test-15.xref \
-	$(nodist_libluatex_sources) luaimage.* luajitimage.* \
-	$(nodist_xetex_SOURCES) xetex.web xetex-final.ch xetex-web2c \
-	xetex.p xetex.pool xetex-tangle bug73.fmt bug73.log bug73.out \
-	bug73.tex filedump.log filedump.out filedump.tex \
-	$(omegaware_programs:=.c) $(omegaware_programs:=.h) \
-	$(omegaware_programs:=.p) $(omegaware_programs:=-web2c) \
-	ofm2opl.web opl2ofm.web ovf2ovp.web ovp2ovf.web \
-	omegaware/bad*.* omegaware/tests/charwdr.* \
-	omegaware/tests/charwdv.* omegaware/tests/xcheck* \
-	omegaware/tests/xlevel1.* omegaware/tests/xlig*.* ofont*vf \
-	omegaware/tests/xpagenum.* omegaware/tests/xofont* \
-	omegaware/tests/Cherokee.tfm omegaware/tests/OCherokee.ofm \
-	omegaware/tests/OCherokee.opl omegaware/tests/OCherokee.ovf \
-	omegaware/tests/xCherokee.* omegaware/tests/xOCherokee.* \
-	ocftest.* omegaware/tests/xinbmp* omegaware/tests/xoverbmp* \
-	omegaware/tests/xrealnum.* omegaware/tests/xrepeated.* \
-	omegaware/tests/sample*.ofm omegaware/tests/sample*.ovf \
-	omegaware/tests/sample1-h.opl omegaware/tests/xsample*.out \
-	omegaware/tests/shortend.* omegaware/tests/specialhex.ofm \
-	omegaware/tests/specialhex.opl omegaware/tests/specialhex.ovf \
-	omegaware/tests/xspecialhex.* omegaware/tests/yrepeat* \
-	omegaware/tests/*yarabic* $(nodist_aleph_SOURCES) aleph.web \
-	aleph.ch aleph-web2c aleph.p aleph.pool aleph-tangle
+	ptests/xexampl.blg ptests/xenc*.* ptests/fn*.* \
+	ptests/memtest.bib ptests/memtest?.* ptests/xstory.dvityp \
+	ptests/xpagenum.typ ptests/xptex[34]*.typ ptests/xcmr10.tfm \
+	ptests/xcmr10.pl ptests/xsample*.typ ptests/x*min10.* \
+	ptests/xchcode*.* ptests/xskipjfmp.* ptrip.diffs \
+	$(nodist_eptex_SOURCES) eptex.web eptex.ch eptex-web2c eptex.p \
+	eptex.pool eptex-tangle eptrip.diffs pdfprimitive-eptex.* \
+	$(nodist_uptex_SOURCES) uptex.web uptex.ch uptex-web2c uptex.p \
+	uptex.pool uptex-tangle $(upweb_programs:=.c) \
+	$(upweb_programs:=.h) $(upweb_programs:=.p) \
+	$(upweb_programs:=-web2c) $(upweb_programs:=.web) \
+	uptests/nissya_bib.* uptests/xexampl.aux uptests/xexampl.bbl \
+	uptests/xexampl.blg uptests/xenc*.* uptests/fn*.* \
+	uptests/memtest.bib uptests/memtest?.* uptests/xstory.dvityp \
+	uptests/xpagenum.typ uptests/x*ptex[34]*.typ \
+	uptests/xcmr10.tfm uptests/xcmr10.pl uptests/xsample*.typ \
+	uptests/x*min10.* uptests/xchcode*.* uptests/xtestnewu.* \
+	uptests/xuparse.* uptests/yuparse.* uptests/ygkhuge*.* \
+	uptests/xskipjfmp.* uptrip.diffs $(nodist_euptex_SOURCES) \
+	euptex.web euptex.ch euptex-web2c euptex.p euptex.pool \
+	euptex-tangle euptrip.diffs pdfprimitive-euptex.* \
+	$(nodist_hitex_SOURCES) $(nodist_hishrink_SOURCES) \
+	$(nodist_histretch_SOURCES) hiformat-tangle hitex-tangle \
+	hello.log rule.log $(nodist_pdftex_SOURCES) pdftex-final.ch \
+	pdftex-web2c pdftex.p pdftex.pool pdftex-tangle pwprob.log \
+	pwprob.tex pdfimage.fmt pdfimage.log pdfimage.pdf expanded.log \
+	cnfline.log partoken-ok.log partoken-xfail.log pdftests/fn*.* \
+	postV3.afm postV7.afm test-13.pdf test-13.xref test-15.pdf \
+	test-15.xref $(nodist_libluatex_sources) luaimage.* \
+	luajitimage.* $(nodist_xetex_SOURCES) xetex.web xetex-final.ch \
+	xetex-web2c xetex.p xetex.pool xetex-tangle bug73.fmt \
+	bug73.log bug73.out bug73.tex filedump.log filedump.out \
+	filedump.tex xetests/fn*.* $(omegaware_programs:=.c) \
+	$(omegaware_programs:=.h) $(omegaware_programs:=.p) \
+	$(omegaware_programs:=-web2c) ofm2opl.web opl2ofm.web \
+	ovf2ovp.web ovp2ovf.web omegaware/bad*.* \
+	omegaware/tests/charwdr.* omegaware/tests/charwdv.* \
+	omegaware/tests/xcheck* omegaware/tests/xlevel1.* \
+	omegaware/tests/xlig*.* ofont*vf omegaware/tests/xpagenum.* \
+	omegaware/tests/xofont* omegaware/tests/Cherokee.tfm \
+	omegaware/tests/OCherokee.ofm omegaware/tests/OCherokee.opl \
+	omegaware/tests/OCherokee.ovf omegaware/tests/xCherokee.* \
+	omegaware/tests/xOCherokee.* ocftest.* omegaware/tests/xinbmp* \
+	omegaware/tests/xoverbmp* omegaware/tests/xrealnum.* \
+	omegaware/tests/xrepeated.* omegaware/tests/sample*.ofm \
+	omegaware/tests/sample*.ovf omegaware/tests/sample1-h.opl \
+	omegaware/tests/xsample*.out omegaware/tests/shortend.* \
+	omegaware/tests/specialhex.ofm omegaware/tests/specialhex.opl \
+	omegaware/tests/specialhex.ovf omegaware/tests/xspecialhex.* \
+	omegaware/tests/yrepeat* omegaware/tests/*yarabic* \
+	$(nodist_aleph_SOURCES) aleph.web aleph.ch aleph-web2c aleph.p \
+	aleph.pool aleph-tangle
 CLEANFILES = $(EXTRA_PROGRAMS) $(EXTRA_LIBRARIES) $(EXTRA_LTLIBRARIES)
 TRIPTRAP_CLEAN = $(am__append_8) $(am__append_18) $(am__append_27) \
 	$(am__append_36) $(am__append_44) $(am__append_60) \
@@ -4499,7 +4502,7 @@
 
 # pTeX Tests
 #
-ptex_tests = ptexdir/ptriptest.test ptexdir/pver.test
+ptex_tests = ptexdir/ptriptest.test ptexdir/pver.test ptexdir/wcfname.test
 eptex_CPPFLAGS = $(PTEXENC_INCLUDES) $(AM_CPPFLAGS) -I$(srcdir)/libmd5 \
 	$(ZLIB_INCLUDES) $(am__append_144)
 
@@ -4602,7 +4605,7 @@
 uptftopl_DEPENDENCIES = $(uptex_dependencies)
 
 # upTeX Tests
-uptex_tests = uptexdir/uptriptest.test uptexdir/upver.test uptexdir/upkcat.test
+uptex_tests = uptexdir/uptriptest.test uptexdir/upver.test uptexdir/upkcat.test uptexdir/wcfname.test
 # uppPLtoTF/upTFtoPL
 upweb_tests = uptexdir/upbibtex.test uptexdir/updvitype.test \
 	uptexdir/uppltotf.test uptexdir/uptftopl.test \
@@ -4792,7 +4795,8 @@
 #
 pdftex_tests = pdftexdir/wprob.test pdftexdir/pdftex.test \
   pdftexdir/pdfimage.test pdftexdir/expanded.test \
-  pdftexdir/tests/cnfline.test pdftexdir/tests/partoken.test
+  pdftexdir/tests/cnfline.test pdftexdir/tests/partoken.test \
+  pdftexdir/wcfname.test
 
 ttf2afm_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/pdftexdir
 ttf2afm_SOURCES = pdftexdir/ttf2afm.c
@@ -5507,7 +5511,8 @@
 xetex_tests = \
 	xetexdir/xetex-filedump.test \
 	xetexdir/xetex-bug73.test \
-	xetexdir/xetex.test
+	xetexdir/xetex.test \
+	xetexdir/wcfname.test
 
 omegaware_programs = odvicopy odvitype otangle wofm2opl wopl2ofm wovf2ovp wovp2ovf
 ow_tangle = WEBINPUTS=$(srcdir)/omegaware $(buildenv) $(TANGLE)
@@ -22078,7 +22083,7 @@
 ptex.ch: tie$(EXEEXT) ptex.web $(ptex_ch_srcs)
 	$(tie_c) ptex.web $(ptex_ch_srcs)
 ptexdir/ptriptest.log: ptex$(EXEEXT) dvitype$(EXEEXT) pltotf$(EXEEXT) tftopl$(EXEEXT)
-ptexdir/pver.log: ptex$(EXEEXT)
+ptexdir/pver.log ptexdir/wcfname.log: ptex$(EXEEXT)
 #pweb_tests = \
 #	ptexdir/pbibtex.test \
 #	ptexdir/pdvitype.test \
@@ -22206,7 +22211,7 @@
 uptftopl.web: tie$(EXEEXT) tftopl.web tftopl.ch
 	$(tie_m) tftopl.web tftopl.ch
 uptexdir/uptriptest.log: uptex$(EXEEXT) dvitype$(EXEEXT) pltotf$(EXEEXT) tftopl$(EXEEXT)
-uptexdir/upver.log uptexdir/upkcat.log: uptex$(EXEEXT)
+uptexdir/upver.log uptexdir/upkcat.log uptexdir/wcfname.log: uptex$(EXEEXT)
 uptexdir/upbibtex.log: upbibtex$(EXEEXT)
 uptexdir/updvitype.log: updvitype$(EXEEXT)
 uptexdir/uppltotf.log: uppltotf$(EXEEXT)
@@ -22324,7 +22329,8 @@
 
 pdftexdir/wprob.log pdftexdir/pdftex.log \
   pdftexdir/pdfimage.log pdftexdir/expanded.log \
-  pdftexdir/tests/cnfline.log pdftexdir/tests/partoken.log: pdftex$(EXEEXT)
+  pdftexdir/tests/cnfline.log pdftexdir/tests/partoken.log \
+  pdftexdir/wcfname.log: pdftex$(EXEEXT)
 
 # (end of pdftex.am)
 pdftexdir/ttf2afm.log: ttf2afm$(EXEEXT)
@@ -22467,7 +22473,8 @@
 xetex-final.ch: tie$(EXEEXT) $(xetex_ch_srcs)
 	$(tie_c) $(xetex_ch_srcs)
 $(libxetex_a_OBJECTS): $(libxetex_prereq)
-xetexdir/xetex-filedump.log xetexdir/xetex-bug73.log xetexdir/xetex.log: xetex$(EXEEXT)
+xetexdir/xetex-filedump.log xetexdir/xetex-bug73.log xetexdir/xetex.log \
+  xetexdir/wcfname.log: xetex$(EXEEXT)
 
 # (end of xetex.am)
 odvicopy.c odvicopy.h: odvicopy-web2c

Modified: trunk/Build/source/texk/web2c/am/web.am
===================================================================
--- trunk/Build/source/texk/web2c/am/web.am	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/am/web.am	2022-12-28 08:09:52 UTC (rev 65380)
@@ -237,6 +237,9 @@
 DISTCLEANFILES += badvpl.* tests/yptmr*.*
 ## weave.test
 DISTCLEANFILES += pooltype.tex
+## {pdftexdir,xetexdir,ptexdir,uptexdir}/wcfname.test
+EXTRA_DIST += tests/fn-generate.perl
+EXTRA_DIST += tests/fn-utf8.txt tests/fn-euc.txt tests/fn-sjis.txt
 
 ## Test data
 ##

Modified: trunk/Build/source/texk/web2c/pdftexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/ChangeLog	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/pdftexdir/ChangeLog	2022-12-28 08:09:52 UTC (rev 65380)
@@ -1,3 +1,8 @@
+2022-12-28  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* wcfname.test, am/pdftex.am:
+	Add tests for file names with UTF-8 characters.
+
 2022-12-21  Thanh Han The  <hanthethanh at gmail.com>
 
 	* pdftex.web (pdf_omit_info_procset_code),

Modified: trunk/Build/source/texk/web2c/pdftexdir/am/pdftex.am
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/am/pdftex.am	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/pdftexdir/am/pdftex.am	2022-12-28 08:09:52 UTC (rev 65380)
@@ -105,11 +105,13 @@
 #
 pdftex_tests = pdftexdir/wprob.test pdftexdir/pdftex.test \
   pdftexdir/pdfimage.test pdftexdir/expanded.test \
-  pdftexdir/tests/cnfline.test pdftexdir/tests/partoken.test
+  pdftexdir/tests/cnfline.test pdftexdir/tests/partoken.test \
+  pdftexdir/wcfname.test
 
 pdftexdir/wprob.log pdftexdir/pdftex.log \
   pdftexdir/pdfimage.log pdftexdir/expanded.log \
-  pdftexdir/tests/cnfline.log pdftexdir/tests/partoken.log: pdftex$(EXEEXT)
+  pdftexdir/tests/cnfline.log pdftexdir/tests/partoken.log \
+  pdftexdir/wcfname.log: pdftex$(EXEEXT)
 
 EXTRA_DIST += $(pdftex_tests)
 
@@ -138,4 +140,7 @@
 EXTRA_DIST += tests/partoken-ok.tex tests/partoken-xfail.tex
 DISTCLEANFILES += partoken-ok.log partoken-xfail.log
 
+## wcfname.test
+DISTCLEANFILES += pdftests/fn*.*
+
 # (end of pdftex.am)

Added: trunk/Build/source/texk/web2c/pdftexdir/wcfname.test
===================================================================
--- trunk/Build/source/texk/web2c/pdftexdir/wcfname.test	                        (rev 0)
+++ trunk/Build/source/texk/web2c/pdftexdir/wcfname.test	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1,36 @@
+#! /bin/sh -vx
+#
+# Copyright 2022 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
+
+rc=0
+
+TEXMFCNF=$srcdir/../kpathsea
+TEXINPUTS=pdftests:.
+export TEXMFCNF TEXINPUTS
+
+perl $srcdir/tests/fn-generate.perl || exit 128
+mv fn*-utf8.tex pdftests/; rm -f fn*.tex
+
+if [ "$COMSPEC" != "" ]; then
+  echo "*** We guess OS is Windows."
+  command_line_encoding=utf8
+  export command_line_encoding
+fi
+
+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 $doc-tmp.tex pdftests/
+##   It does not work.
+##  diff pdftests/$doc.txt $srcdir/tests/fn-$enc.txt || rc=2
+
+done
+
+
+exit $rc


Property changes on: trunk/Build/source/texk/web2c/pdftexdir/wcfname.test
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Modified: trunk/Build/source/texk/web2c/ptexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/ptexdir/ChangeLog	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/ptexdir/ChangeLog	2022-12-28 08:09:52 UTC (rev 65380)
@@ -1,3 +1,10 @@
+2022-12-28  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* wcfname.test, am/ptex.am:
+	Add tests for file names with JIS X 0208 characters
+	in `ptex --kanji-internal={euc,sjis}`.
+	https://github.com/texjporg/tex-jp-build/issues/136
+
 2022-12-22  Hironori Kitagawa  <h_kitagawa2001 at yahoo.co.jp>
 
 	* ptex-base.ch, ptex.defines, kanji.h, am/ptex.am:

Modified: trunk/Build/source/texk/web2c/ptexdir/am/ptex.am
===================================================================
--- trunk/Build/source/texk/web2c/ptexdir/am/ptex.am	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/ptexdir/am/ptex.am	2022-12-28 08:09:52 UTC (rev 65380)
@@ -171,9 +171,9 @@
 
 # pTeX Tests
 #
-ptex_tests = ptexdir/ptriptest.test ptexdir/pver.test
+ptex_tests = ptexdir/ptriptest.test ptexdir/pver.test ptexdir/wcfname.test
 ptexdir/ptriptest.log: ptex$(EXEEXT) dvitype$(EXEEXT) pltotf$(EXEEXT) tftopl$(EXEEXT)
-ptexdir/pver.log: ptex$(EXEEXT)
+ptexdir/pver.log ptexdir/wcfname.log: ptex$(EXEEXT)
 #pweb_tests = \
 #	ptexdir/pbibtex.test \
 #	ptexdir/pdvitype.test \
@@ -224,7 +224,7 @@
 	tests/enc.aux tests/enc-e.aux tests/enc-s.aux tests/enc-u.aux \
 	tests/enc-p.bbl tests/enc-ep.bbl tests/enc-sp.bbl tests/enc-up.bbl
 DISTCLEANFILES += ptests/xexampl.aux ptests/xexampl.bbl ptests/xexampl.blg \
-	ptests/xenc*.*
+	ptests/xenc*.* ptests/fn*.*
 ## ptexdir/pbibtex-mem.test
 EXTRA_DIST += tests/memdata1.bst tests/memdata2.bst tests/memdata3.bst
 DISTCLEANFILES += ptests/memtest.bib ptests/memtest?.*

Added: trunk/Build/source/texk/web2c/ptexdir/wcfname.test
===================================================================
--- trunk/Build/source/texk/web2c/ptexdir/wcfname.test	                        (rev 0)
+++ trunk/Build/source/texk/web2c/ptexdir/wcfname.test	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1,54 @@
+#! /bin/sh -vx
+#
+# Copyright 2022 Japanese TeX Development Community <issue at texjp.org>
+# You may freely use, modify and/or distribute this file.
+
+test -d ptests || mkdir -p ptests
+rm -f ptests/fn*.log ptests/fn*.txt ptests/fn*.tex fn*.tex
+
+rc=0
+
+TEXMFCNF=$srcdir/../kpathsea
+TEXINPUTS=ptests:.
+export TEXMFCNF TEXINPUTS
+
+perl $srcdir/tests/fn-generate.perl || exit 128
+mv fn*.tex ptests/
+
+# pTeX internal encoding
+fenc="utf8"
+for ienc in euc sjis; do
+for doc in fn-$fenc fnさざ波-$fenc; do
+
+  echo '>>> Document:'$doc '  File Encoding:'$fenc '  Internal Encoding:'$ienc
+  ./ptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc --shell-escape $doc.tex >ptests/$doc-$ienc-term.log || rc=1
+  mv $doc-$ienc.txt $doc-$ienc.log $doc-tmp.tex ptests/
+  diff ptests/$doc-$ienc.txt $srcdir/tests/fn-$fenc.txt || rc=2
+
+done
+done
+
+
+# pTeX, regacy encoding
+for fenc in sjis euc; do
+for doc in fnさざ波-$fenc; do
+
+  ienc=$fenc
+  if [ "$COMSPEC" != "" ]; then
+    echo "*** We guess OS is Windows."
+    if [ $fenc != euc ]; then ienc="sjis"; fi
+  else
+    echo "*** We guess OS is not Windows."
+    if [ $fenc != sjis ]; then ienc="euc"; fi
+  fi
+
+  echo '>>> Document:'$doc '  File Encoding:'$fenc '  Internal Encoding:'$ienc
+  ./ptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc --shell-escape $doc.tex >ptests/$doc-$fenc-term.log || rc=3
+  mv $doc-$ienc.txt $doc-$ienc.log $doc-tmp.tex ptests/
+  diff ptests/$doc-$ienc.txt $srcdir/tests/fn-$fenc.txt || rc=4
+
+done
+done
+
+
+exit $rc


Property changes on: trunk/Build/source/texk/web2c/ptexdir/wcfname.test
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Added: trunk/Build/source/texk/web2c/tests/fn-euc.txt
===================================================================
--- trunk/Build/source/texk/web2c/tests/fn-euc.txt	                        (rev 0)
+++ trunk/Build/source/texk/web2c/tests/fn-euc.txt	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1 @@
+abc \xA6\xC1\xA6¦\xC3 \xA7ѧҧ\xD3 \xA4\xA2\xA5\xA2\xA2\xA8\xA1\xEF ŷ\xC3Ͽ\xCD

Added: trunk/Build/source/texk/web2c/tests/fn-generate.perl
===================================================================
--- trunk/Build/source/texk/web2c/tests/fn-generate.perl	                        (rev 0)
+++ trunk/Build/source/texk/web2c/tests/fn-generate.perl	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1,73 @@
+#!/usr/bin/env perl
+#
+# Copyright 2022 Japanese TeX Development Community <issue at texjp.org>
+# You may freely use, modify and/or distribute this file.
+
+use strict;
+use warnings;
+use 5.010;
+use Encode;
+
+foreach $_ (<DATA>) {
+    chomp;
+    my ($encname, $fname0, $fname1) = split ' ', $_;
+
+    my $src = &make_str($encname, $fname0, $fname1);
+
+    open(my $ofh, '>', $fname0) or die "Cannot open $fname0:$!";
+    print $ofh $src;
+}
+
+
+sub make_str ($$;$) {
+    my ($encname, $fname0, $fname1) = @_;
+    my ($src);
+
+    my ($fnameT) = $fname0;
+    $fnameT =~ s/\.tex$/-tmp.tex/;
+
+$src = <<END;
+\% $fname0
+\% $encname encoding
+\\catcode`\\{=1
+\\catcode`\\}=2
+
+\\immediate\\write16{JOB[\\jobname] :: We are in $fname0}
+
+\\immediate\\openout0=\\jobname.txt
+\\immediate\\write0{abc αβγ абв あア※¥ 天地人}
+\\immediate\\closeout0
+
+\\immediate\\openout1=$fnameT
+\\immediate\\write1{\\relax}
+\\immediate\\closeout1
+
+% current directory
+\\input "|cat $fnameT"
+\\input $fnameT
+END
+
+$src .= <<END if $fname1;
+
+% vir kpathsearch
+\\immediate\\write16{JOB[\\jobname] :: Search $fname1}
+\\input $fname1
+END
+
+$src .= <<END;
+
+\\relax\\end
+END
+
+    Encode::from_to($src, 'utf8', $encname) if ($encname !~ /UTF.*8/i);
+    return ($src);
+
+}
+
+__DATA__
+UTF-8        fn±×÷§¶-utf8.tex
+UTF-8        fn-utf8.tex             fn±×÷§¶-utf8.tex
+UTF-8        fn£¥µÆÇñß-utf8.tex      fn±×÷§¶-utf8.tex
+UTF-8        fnさざ波-utf8.tex       fn±×÷§¶-utf8.tex
+EUC-JP       fnさざ波-euc.tex        fn±×÷§¶-utf8.tex
+Shift_JIS    fnさざ波-sjis.tex       fn±×÷§¶-utf8.tex


Property changes on: trunk/Build/source/texk/web2c/tests/fn-generate.perl
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Added: trunk/Build/source/texk/web2c/tests/fn-sjis.txt
===================================================================
--- trunk/Build/source/texk/web2c/tests/fn-sjis.txt	                        (rev 0)
+++ trunk/Build/source/texk/web2c/tests/fn-sjis.txt	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1 @@
+abc \x83\xBF\x83\xC0\x83\xC1 \x84p\x84q\x84r \x82\xA0\x83A\x81\xA6\x81\x8F \x93V\x92n\x90l

Added: trunk/Build/source/texk/web2c/tests/fn-utf8.txt
===================================================================
--- trunk/Build/source/texk/web2c/tests/fn-utf8.txt	                        (rev 0)
+++ trunk/Build/source/texk/web2c/tests/fn-utf8.txt	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1 @@
+abc αβγ абв あア※¥ 天地人

Modified: trunk/Build/source/texk/web2c/uptexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/uptexdir/ChangeLog	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/uptexdir/ChangeLog	2022-12-28 08:09:52 UTC (rev 65380)
@@ -1,3 +1,10 @@
+2022-12-28  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* wcfname.test, am/uptex.am:
+	Add tests for file names with JIS X 0208 & UTF-8 characters
+	in `uptex --kanji-internal={euc,sjis,uptex}`.
+	https://github.com/texjporg/tex-jp-build/issues/136
+
 2022-12-22  Hironori Kitagawa  <h_kitagawa2001 at yahoo.co.jp>
 
 	* uptex.defines, kanji.h, am/uptex.am:

Modified: trunk/Build/source/texk/web2c/uptexdir/am/uptex.am
===================================================================
--- trunk/Build/source/texk/web2c/uptexdir/am/uptex.am	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/uptexdir/am/uptex.am	2022-12-28 08:09:52 UTC (rev 65380)
@@ -165,9 +165,9 @@
 	uptexdir/ChangeLog
 
 # upTeX Tests
-uptex_tests = uptexdir/uptriptest.test uptexdir/upver.test uptexdir/upkcat.test
+uptex_tests = uptexdir/uptriptest.test uptexdir/upver.test uptexdir/upkcat.test uptexdir/wcfname.test
 uptexdir/uptriptest.log: uptex$(EXEEXT) dvitype$(EXEEXT) pltotf$(EXEEXT) tftopl$(EXEEXT)
-uptexdir/upver.log uptexdir/upkcat.log: uptex$(EXEEXT)
+uptexdir/upver.log uptexdir/upkcat.log uptexdir/wcfname.log: uptex$(EXEEXT)
 upweb_tests = \
 	uptexdir/upbibtex.test \
 	uptexdir/updvitype.test \
@@ -214,7 +214,7 @@
 ## uptexdir/upbibtex.test
 EXTRA_DIST += tests/enc-u.bbl tests/enc-eu.bbl tests/enc-su.bbl tests/enc-uu.bbl
 DISTCLEANFILES += uptests/xexampl.aux uptests/xexampl.bbl uptests/xexampl.blg \
-	uptests/xenc*.*
+	uptests/xenc*.* uptests/fn*.*
 ## uptexdir/upbibtex-mem.test
 DISTCLEANFILES += uptests/memtest.bib uptests/memtest?.*
 ## uptexdir/updvitype.test

Added: trunk/Build/source/texk/web2c/uptexdir/wcfname.test
===================================================================
--- trunk/Build/source/texk/web2c/uptexdir/wcfname.test	                        (rev 0)
+++ trunk/Build/source/texk/web2c/uptexdir/wcfname.test	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1,80 @@
+#! /bin/sh -vx
+#
+# Copyright 2022 Japanese TeX Development Community <issue at texjp.org>
+# You may freely use, modify and/or distribute this file.
+
+test -d uptests || mkdir -p uptests
+rm -f uptests/fn*.log uptests/fn*.txt uptests/fn*.tex fn*.tex
+
+rc=0
+
+TEXMFCNF=$srcdir/../kpathsea
+TEXINPUTS=uptests:.
+export TEXMFCNF TEXINPUTS
+
+perl $srcdir/tests/fn-generate.perl || exit 128
+mv fn*.tex uptests/
+
+# upTeX internal encoding
+fenc="utf8"
+for ienc in euc sjis uptex; do
+for doc in fn-$fenc fnさざ波-$fenc fn£¥µÆÇñß-$fenc; do
+
+  if [ $ienc != uptex -a $doc = fn£¥µÆÇñß-$fenc ]; then
+    continue
+  fi
+
+  if [ "$COMSPEC" != "" ]; then
+    echo "*** We guess OS is Windows."
+    if [ $ienc = uptex ]; then
+      command_line_encoding=utf8
+      export command_line_encoding
+    else
+      command_line_encoding=none
+      export command_line_encoding
+    fi
+  fi
+
+  echo '>>> Document:'$doc '  File Encoding:'$fenc '  Internal Encoding:'$ienc
+  ./uptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc --shell-escape $doc.tex >uptests/$doc-$ienc-term.log || rc=1
+  mv $doc-$ienc.txt $doc-$ienc.log $doc-tmp.tex uptests/
+  diff uptests/$doc-$ienc.txt $srcdir/tests/fn-$fenc.txt || rc=2
+
+done
+done
+
+
+# pTeX compatible mode, regacy encoding
+for fenc in sjis euc; do
+for doc in fnさざ波-$fenc; do
+
+  ienc=$fenc
+  if [ "$COMSPEC" != "" ]; then
+    echo "*** We guess OS is Windows."
+    if [ $fenc != euc ]; then ienc="sjis"; fi
+    if [ $ienc = uptex ]; then
+      command_line_encoding=utf8
+      export command_line_encoding
+    else
+      command_line_encoding=none
+      export command_line_encoding
+    fi
+  else
+    echo "*** We guess OS is not Windows."
+    if [ $fenc != sjis ]; then ienc="euc"; fi
+  fi
+  if [ $ienc != uptex ]; then
+    guess_input_kanji_encoding=1
+    export guess_input_kanji_encoding
+  fi
+
+  echo '>>> Document:'$doc '  File Encoding:'$fenc '  Internal Encoding:'$ienc
+  ./uptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc --shell-escape $doc.tex >uptests/$doc-$fenc-term.log || rc=3
+  mv $doc-$ienc.txt $doc-$ienc.log $doc-tmp.tex uptests/
+  diff uptests/$doc-$ienc.txt $srcdir/tests/fn-$fenc.txt || rc=4
+
+done
+done
+
+
+exit $rc


Property changes on: trunk/Build/source/texk/web2c/uptexdir/wcfname.test
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Modified: trunk/Build/source/texk/web2c/xetexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/xetexdir/ChangeLog	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/xetexdir/ChangeLog	2022-12-28 08:09:52 UTC (rev 65380)
@@ -1,3 +1,8 @@
+2022-12-28  TANAKA Takuji  <ttk at t-lab.opal.ne.jp>
+
+	* wcfname.test, am/xetex.am:
+	Add tests for file names with UTF-8 characters.
+
 2022-03-21  Karl Berry  <karl at tug.org>
 
 	* TL'22 release.

Modified: trunk/Build/source/texk/web2c/xetexdir/am/xetex.am
===================================================================
--- trunk/Build/source/texk/web2c/xetexdir/am/xetex.am	2022-12-28 00:50:28 UTC (rev 65379)
+++ trunk/Build/source/texk/web2c/xetexdir/am/xetex.am	2022-12-28 08:09:52 UTC (rev 65380)
@@ -204,8 +204,10 @@
 xetex_tests = \
 	xetexdir/xetex-filedump.test \
 	xetexdir/xetex-bug73.test \
-	xetexdir/xetex.test
-xetexdir/xetex-filedump.log xetexdir/xetex-bug73.log xetexdir/xetex.log: xetex$(EXEEXT)
+	xetexdir/xetex.test \
+	xetexdir/wcfname.test
+xetexdir/xetex-filedump.log xetexdir/xetex-bug73.log xetexdir/xetex.log \
+  xetexdir/wcfname.log: xetex$(EXEEXT)
 
 EXTRA_DIST += $(xetex_tests)
 
@@ -221,4 +223,7 @@
 EXTRA_DIST += xetexdir/tests/filedump.log xetexdir/tests/filedump.tex
 DISTCLEANFILES += filedump.log filedump.out filedump.tex
 
+## wcfname.test
+DISTCLEANFILES += xetests/fn*.*
+
 # (end of xetex.am)

Added: trunk/Build/source/texk/web2c/xetexdir/wcfname.test
===================================================================
--- trunk/Build/source/texk/web2c/xetexdir/wcfname.test	                        (rev 0)
+++ trunk/Build/source/texk/web2c/xetexdir/wcfname.test	2022-12-28 08:09:52 UTC (rev 65380)
@@ -0,0 +1,35 @@
+#! /bin/sh -vx
+#
+# Copyright 2022 Japanese TeX Development Community <issue at texjp.org>
+# You may freely use, modify and/or distribute this file.
+
+test -d xetests || mkdir -p xetests
+rm -f xetests/fn*.log xetests/fn*.txt xetests/fn*.tex fn*.tex
+
+rc=0
+
+TEXMFCNF=$srcdir/../kpathsea
+TEXINPUTS=xetests:.
+export TEXMFCNF TEXINPUTS
+
+perl $srcdir/tests/fn-generate.perl || exit 128
+mv fn*-utf8.tex xetests/; rm -f fn*.tex
+
+if [ "$COMSPEC" != "" ]; then
+  echo "*** We guess OS is Windows."
+  command_line_encoding=utf8
+  export command_line_encoding
+fi
+
+fenc="utf8"
+for doc in fn-$fenc fn£¥µÆÇñß-$fenc fnさざ波-$fenc; do
+
+  echo '>>> Document:'$doc '  File Encoding:'$fenc
+  ./xetex -ini -interaction nonstopmode -jobname=$doc --shell-escape $doc.tex >xetests/$doc-term.log || rc=1
+  mv $doc.txt $doc.log $doc-tmp.tex xetests/
+  diff xetests/$doc.txt $srcdir/tests/fn-utf8.txt || rc=2
+
+done
+
+
+exit $rc


Property changes on: trunk/Build/source/texk/web2c/xetexdir/wcfname.test
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property


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