From bb3c1007e2f9fbee5d667321fecd07897e930a18 Mon Sep 17 00:00:00 2001 From: Takuji Tanaka Date: Sat, 3 Sep 2022 05:43:53 +0000 Subject: ((u)p)bibtex: check options before initialization of kpathsea params git-svn-id: svn://tug.org/texlive/trunk@64276 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/ChangeLog | 9 +++++ Build/source/texk/web2c/Makefile.in | 46 ++++++++++++-------------- Build/source/texk/web2c/bibtex.ch | 2 +- Build/source/texk/web2c/bibtex.test | 2 ++ Build/source/texk/web2c/ptexdir/ChangeLog | 9 +++++ Build/source/texk/web2c/ptexdir/am/ptex.am | 5 +-- Build/source/texk/web2c/ptexdir/pbibtex.ch | 2 -- Build/source/texk/web2c/ptexdir/pbibtex.test | 10 ++++++ Build/source/texk/web2c/tests/enc-u.aux | 3 ++ Build/source/texk/web2c/tests/enc-up.bbl | 38 +++++++++++++++++++++ Build/source/texk/web2c/tests/enc-uu.bbl | 40 ++++++++++++++++++++++ Build/source/texk/web2c/uptexdir/ChangeLog | 9 +++++ Build/source/texk/web2c/uptexdir/am/uptex.am | 3 +- Build/source/texk/web2c/uptexdir/upbibtex.ch | 8 ++--- Build/source/texk/web2c/uptexdir/upbibtex.test | 37 +++++++++++++++++++++ 15 files changed, 187 insertions(+), 36 deletions(-) create mode 100644 Build/source/texk/web2c/tests/enc-u.aux create mode 100644 Build/source/texk/web2c/tests/enc-up.bbl create mode 100644 Build/source/texk/web2c/tests/enc-uu.bbl (limited to 'Build') diff --git a/Build/source/texk/web2c/ChangeLog b/Build/source/texk/web2c/ChangeLog index bfc1eb62c01..060c738ca8f 100644 --- a/Build/source/texk/web2c/ChangeLog +++ b/Build/source/texk/web2c/ChangeLog @@ -1,3 +1,12 @@ +2022-09-03 TANAKA Takuji + + * bibtex.ch: + Check options before initialization of kpathsearch parameters. + This change prevents unwanted looking for texmf.cnf. + https://github.com/texjporg/tex-jp-build/issues/145 + * bibtex.test, tests/enc-u.aux, tests/enc-u{p,u}.bbl: + Update tests for ((u)p)BibTeX. + 2022-08-22 Luigi Scarso * ac/web2c.ac: add potrace as dependency of mflua/mfluajit diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in index 69d951206a4..8eac176c6d1 100644 --- a/Build/source/texk/web2c/Makefile.in +++ b/Build/source/texk/web2c/Makefile.in @@ -3279,9 +3279,10 @@ EXTRA_DIST = PROJECTS cftests cpascal.h help.h w2c/config.h \ tests/enc-sjis.bib tests/enc-euc.bib tests/enc-utf8.bib \ tests/enc-utf8a.bib tests/enc-utf8b.bib tests/enc-amb0.bib \ tests/enc-amb1.bib tests/enc-amb2.bib tests/enc.aux \ - tests/enc-e.aux tests/enc-s.aux tests/enc-p.bbl \ - tests/enc-ep.bbl tests/enc-sp.bbl tests/memdata1.bst \ - tests/memdata2.bst tests/memdata3.bst ptexdir/tests/goth10.tfm \ + 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 tests/memdata1.bst tests/memdata2.bst \ + tests/memdata3.bst ptexdir/tests/goth10.tfm \ ptexdir/tests/sample.dvi ptexdir/tests/samplea.typ \ ptexdir/tests/min10.pl ptexdir/tests/min10.tfm \ ptexdir/tests/tmin10.pl ptexdir/tests/tmin10.tfm \ @@ -3300,16 +3301,16 @@ EXTRA_DIST = PROJECTS cftests cpascal.h help.h w2c/config.h \ uptexdir/uptftopl.ch uptexdir/COPYRIGHT uptexdir/COPYRIGHT.jis \ uptexdir/ChangeLog $(uptex_tests) $(upweb_tests) \ tests/enc-u.bbl tests/enc-eu.bbl tests/enc-su.bbl \ - uptexdir/tests/umin10.pl uptexdir/tests/umin10.tfm \ - uptexdir/tests/utmin10.pl uptexdir/tests/utmin10.tfm \ - uptexdir/tests/testnewu.pl uptexdir/tests/testnewu.tfm \ - uptexdir/tests/uparse.pl uptexdir/tests/uparse.tfm \ - uptexdir/tests/gkhugeok.tfm uptexdir/tests/gkhugeng.tfm \ - uptexdir/tests/gkhugeng.err uptexdir/uptrip/uptrip.diffs \ - uptexdir/uptrip/texmf.cnf $(euptex_web_srcs) $(euptex_ch_srcs) \ - euptexdir/euptex.defines euptexdir/COPYRIGHT \ - euptexdir/COPYRIGHT.jis euptexdir/ChangeLog \ - euptexdir/EUPTEX.txt $(euptex_tests) \ + tests/enc-uu.bbl uptexdir/tests/umin10.pl \ + uptexdir/tests/umin10.tfm uptexdir/tests/utmin10.pl \ + uptexdir/tests/utmin10.tfm uptexdir/tests/testnewu.pl \ + uptexdir/tests/testnewu.tfm uptexdir/tests/uparse.pl \ + uptexdir/tests/uparse.tfm uptexdir/tests/gkhugeok.tfm \ + uptexdir/tests/gkhugeng.tfm uptexdir/tests/gkhugeng.err \ + uptexdir/uptrip/uptrip.diffs uptexdir/uptrip/texmf.cnf \ + $(euptex_web_srcs) $(euptex_ch_srcs) euptexdir/euptex.defines \ + euptexdir/COPYRIGHT euptexdir/COPYRIGHT.jis \ + euptexdir/ChangeLog euptexdir/EUPTEX.txt $(euptex_tests) \ eptexdir/eptrip/eptrip.log eptexdir/eptrip/eptrip.tex \ euptexdir/euptrip/euptrip.diffs euptexdir/euptrip/texmf.cnf \ euptexdir/pdfprimitive.test \ @@ -4469,7 +4470,8 @@ pweb_tests = ptexdir/pbibtex.test ptexdir/pdvitype.test \ ptexdir/ppltotf.test ptexdir/ptftopl.test \ ptexdir/pbibtex-openout-test.pl \ ptexdir/pbibtex-longline-test.pl ptexdir/pbibtex-mem.test \ - ptexdir/nissya.test ptexdir/sample.test ptexdir/yokotate.test \ + ptexdir/nissya.test ptexdir/pbibtex-char.test \ + ptexdir/sample.test ptexdir/yokotate.test \ ptexdir/skipjfmp.test eptex_CPPFLAGS = $(PTEXENC_INCLUDES) $(AM_CPPFLAGS) -I$(srcdir)/libmd5 \ $(ZLIB_INCLUDES) $(am__append_145) @@ -4574,17 +4576,11 @@ uptftopl_DEPENDENCIES = $(uptex_dependencies) # upTeX Tests uptex_tests = uptexdir/uptriptest.test uptexdir/upver.test -upweb_tests = \ - uptexdir/upbibtex.test \ - uptexdir/updvitype.test \ - uptexdir/uppltotf.test \ - uptexdir/uptftopl.test \ - uptexdir/yokotate.test \ - uptexdir/newjfm.test \ - uptexdir/uparse.test \ - uptexdir/gkhuge.test \ - uptexdir/upkcat.test - +upweb_tests = uptexdir/upbibtex.test uptexdir/updvitype.test \ + uptexdir/uppltotf.test uptexdir/uptftopl.test \ + uptexdir/yokotate.test uptexdir/newjfm.test \ + uptexdir/uparse.test uptexdir/gkhuge.test uptexdir/upkcat.test \ + uptexdir/upbibtex-char.test euptex_CPPFLAGS = $(PTEXENC_INCLUDES) $(AM_CPPFLAGS) \ -I$(srcdir)/libmd5 $(ZLIB_INCLUDES) $(am__append_149) diff --git a/Build/source/texk/web2c/bibtex.ch b/Build/source/texk/web2c/bibtex.ch index f8ab25b7eed..6c7ff64fd99 100644 --- a/Build/source/texk/web2c/bibtex.ch +++ b/Build/source/texk/web2c/bibtex.ch @@ -118,6 +118,7 @@ max_cites := MAX_CITES; wiz_fn_space := WIZ_FN_SPACE; lit_stk_size := LIT_STK_SIZE; @# +@ setup_params; @# {Add one to the sizes because that's what bibtex uses.} @@ -761,7 +762,6 @@ command-line arguments. procedure get_the_top_level_aux_file_name; label aux_found,@!aux_not_found; begin - @ {Leave room for the \.., the extension, the junk byte at the beginning, and the null byte at the end.} name_of_file := xmalloc_array (ASCII_code, strlen (cmdline (optind)) + 5); diff --git a/Build/source/texk/web2c/bibtex.test b/Build/source/texk/web2c/bibtex.test index 6a02d662303..53e80435d69 100755 --- a/Build/source/texk/web2c/bibtex.test +++ b/Build/source/texk/web2c/bibtex.test @@ -7,6 +7,8 @@ test -d tests || mkdir -p tests rm -f tests/xexampl.* +./bibtex -version || exit 100 + cp $srcdir/tests/exampl.aux tests/xexampl.aux TEXMFCNF=$srcdir/../kpathsea \ diff --git a/Build/source/texk/web2c/ptexdir/ChangeLog b/Build/source/texk/web2c/ptexdir/ChangeLog index 10c97e55dd8..f2a01c072b0 100644 --- a/Build/source/texk/web2c/ptexdir/ChangeLog +++ b/Build/source/texk/web2c/ptexdir/ChangeLog @@ -1,3 +1,12 @@ +2022-09-03 TANAKA Takuji + + * pbibtex.ch: + Check options before initialization of kpathsearch parameters. + This change prevents unwanted looking for texmf.cnf. + https://github.com/texjporg/tex-jp-build/issues/145 + * tests/pbibtex.test, am/ptex.am: + Update tests for pBibTeX. + 2022-09-01 Hironori Kitagawa * kanji.c: Initialization of infile_enc_auto is moved to ptexenc. diff --git a/Build/source/texk/web2c/ptexdir/am/ptex.am b/Build/source/texk/web2c/ptexdir/am/ptex.am index a96e3dfa971..53e1b61bf2c 100644 --- a/Build/source/texk/web2c/ptexdir/am/ptex.am +++ b/Build/source/texk/web2c/ptexdir/am/ptex.am @@ -181,6 +181,7 @@ pweb_tests = \ ptexdir/ptftopl.test pweb_tests += ptexdir/pbibtex-openout-test.pl ptexdir/pbibtex-longline-test.pl pweb_tests += ptexdir/pbibtex-mem.test ptexdir/nissya.test +pweb_tests += ptexdir/pbibtex-char.test pweb_tests += ptexdir/sample.test pweb_tests += ptexdir/yokotate.test pweb_tests += ptexdir/skipjfmp.test @@ -214,8 +215,8 @@ DISTCLEANFILES += ptests/nissya_bib.* EXTRA_DIST += tests/testfield.bst tests/enc-asc.bib tests/enc-jis.bib tests/enc-sjis.bib \ tests/enc-euc.bib tests/enc-utf8.bib tests/enc-utf8a.bib tests/enc-utf8b.bib \ tests/enc-amb0.bib tests/enc-amb1.bib tests/enc-amb2.bib \ - tests/enc.aux tests/enc-e.aux tests/enc-s.aux \ - tests/enc-p.bbl tests/enc-ep.bbl tests/enc-sp.bbl + 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*.* ## ptexdir/pbibtex-mem.test diff --git a/Build/source/texk/web2c/ptexdir/pbibtex.ch b/Build/source/texk/web2c/ptexdir/pbibtex.ch index d1aa891a90a..48df5c67ee2 100644 --- a/Build/source/texk/web2c/ptexdir/pbibtex.ch +++ b/Build/source/texk/web2c/ptexdir/pbibtex.ch @@ -228,14 +228,12 @@ var i:c_int_type; procedure get_the_top_level_aux_file_name; label aux_found,@!aux_not_found; begin - @ @y @= procedure get_the_top_level_aux_file_name; label aux_found,@!aux_not_found; begin if (not set_enc_string (nil,'EUC')) then uexit(1); - @ @z @x diff --git a/Build/source/texk/web2c/ptexdir/pbibtex.test b/Build/source/texk/web2c/ptexdir/pbibtex.test index f7cb02845bb..2df3d8aa5f2 100755 --- a/Build/source/texk/web2c/ptexdir/pbibtex.test +++ b/Build/source/texk/web2c/ptexdir/pbibtex.test @@ -9,6 +9,8 @@ rm -f ptests/xexampl.* ptests/xenc*.* rc=0 +./pbibtex -version || rc=100 + TEXMFCNF=$srcdir/../kpathsea BSTINPUTS=$srcdir/tests BIBINPUTS=$srcdir/tests @@ -38,5 +40,13 @@ cp $srcdir/tests/enc-s.aux ptests/xenc-s.aux diff $srcdir/tests/enc-sp.bbl ptests/xenc-s.bbl || rc=8 +cp $srcdir/tests/enc-u.aux ptests/xenc-u0.aux + +./pbibtex -no-guess-input-enc ptests/xenc-u0 || rc=9 +diff $srcdir/tests/enc-up.bbl ptests/xenc-u0.bbl || rc=10 +./pbibtex -guess-input-enc ptests/xenc-u0 || rc=11 +diff $srcdir/tests/enc-up.bbl ptests/xenc-u0.bbl || rc=12 + + exit $rc diff --git a/Build/source/texk/web2c/tests/enc-u.aux b/Build/source/texk/web2c/tests/enc-u.aux new file mode 100644 index 00000000000..89bf8f900d5 --- /dev/null +++ b/Build/source/texk/web2c/tests/enc-u.aux @@ -0,0 +1,3 @@ +\citation{*} +\bibstyle{testfield} +\bibdata{enc-asc,enc-jis,enc-utf8,enc-utf8a,enc-utf8b,enc-amb0,enc-amb1} diff --git a/Build/source/texk/web2c/tests/enc-up.bbl b/Build/source/texk/web2c/tests/enc-up.bbl new file mode 100644 index 00000000000..7b943d21656 --- /dev/null +++ b/Build/source/texk/web2c/tests/enc-up.bbl @@ -0,0 +1,38 @@ +\section*{Test result} +\begin{itemize} +\item ABC xyz +\item ABC xyz +\item ABC xyz +\item ABC xyz +\item ABC xyz +\item C2Ax: ¢£¥§¨¬ +\item C2Ax: ¢£¥§¨¬ +\item C2Bx: °±¶÷ +\item CEAx: ΡΣΤΥΦΧΨΩ +\item CEBx: αβγδεζηθικλμνξο +\item CEBx: αβγδεζηθικλμνξο +\item D0Ax: СТУФХЦЧШЩЪЫЬЭЮЯ +\item D0Bx: абвгдежзийклмноп +\item D0Bx: абвгдежзийклмноп +\item F0A1B6B7: ^^f0^^a1^^b6^^b7 +\item F0A3B3BE: ^^f0^^a3^^b3^^be +\item F0A5B6A1: ^^f0^^a5^^b6^^a1 +\item あいうえお +\item あいうえお +\item ΑΒΓ χψω +\item ΑΒΓ χψω +\item ξΩ ΥΦ ^^c2^^ae^^c3^^a3 ^^c5^^b7Ч Сб ^^ce^^ac^^c3^^a5 ^^c2^^ba° +\item АБВ эюя +\item АБВ эюя +\item 一二三四五 +\item 一二三四五 +\item 佳人 大声 亡失 対価 幼女 帰任 信仰 伴侶 山岳 年俸 平常 延伸 鷲鷹 +\item 佳人 大声 亡失 対価 幼女 帰任 信仰 伴侶 山岳 年俸 平常 延伸 鷲鷹 +\item 係q体y +\item 係q体y +\item 語^^e2^^91^^a0誚^^e2^^91^^a1 +\item 語^^e2^^91^^a0誚^^e2^^91^^a1 +\item 思想 打球 明文 垂直 怜悧 +\item 思想 打球 明文 垂直 怜悧 +\end{itemize} +\endinput diff --git a/Build/source/texk/web2c/tests/enc-uu.bbl b/Build/source/texk/web2c/tests/enc-uu.bbl new file mode 100644 index 00000000000..8cfb358ed2d --- /dev/null +++ b/Build/source/texk/web2c/tests/enc-uu.bbl @@ -0,0 +1,40 @@ +\section*{Test result} +\begin{itemize} +\item ABC xyz +\item ABC xyz +\item ABC xyz +\item ABC xyz +\item ABC xyz +\item C2Ax: ¢£¥§¨¬ +\item C2Ax: ¢£¥§¨¬ +\item C2Bx: °±¶÷ +\item CEAx: ΡΣΤΥΦΧΨΩ +\item CEBx: αβγδεζηθικλμνξο +\item CEBx: αβγδεζηθικλμνξο +\item D0Ax: СТУФХЦЧШЩЪЫЬЭЮЯ +\item D0Bx: абвгдежзийклмноп +\item D0Bx: абвгдежзийклмноп +\item F0A1B6B7: 𡶷 +\item F0A3B3BE: 𣳾 +\item F0A5B6A1: 𥶡 +\item ΑΒΓ χψω +\item ΑΒΓ χψω +\item ξΩ ΥΦ ®ã ŷЧ Сб άå º° +\item АБВ эюя +\item АБВ эюя +\item あいうえお +\item あいうえお +\item 一二三四五 +\item 一二三四五 +\item + 佳人 大声 亡失 対価 幼女 帰任 信仰 伴侶 山岳 年俸 平常 延伸 鷲鷹 +\item + 佳人 大声 亡失 対価 幼女 帰任 信仰 伴侶 山岳 年俸 平常 延伸 鷲鷹 +\item 係q体y +\item 係q体y +\item 思想 打球 明文 垂直 怜悧 +\item 思想 打球 明文 垂直 怜悧 +\item 語①誚② +\item 語①誚② +\end{itemize} +\endinput diff --git a/Build/source/texk/web2c/uptexdir/ChangeLog b/Build/source/texk/web2c/uptexdir/ChangeLog index 2ae4ffc4d86..027ae9692be 100644 --- a/Build/source/texk/web2c/uptexdir/ChangeLog +++ b/Build/source/texk/web2c/uptexdir/ChangeLog @@ -1,3 +1,12 @@ +2022-09-03 TANAKA Takuji + + * upbibtex.ch: + Check options before initialization of kpathsearch parameters. + This change prevents unwanted looking for texmf.cnf. + https://github.com/texjporg/tex-jp-build/issues/145 + * tests/upbibtex.test, am/uptex.am: + Update tests for upBibTeX. + 2022-09-01 Hironori Kitagawa * kanji.c: Initialization of infile_enc_auto is moved to ptexenc. diff --git a/Build/source/texk/web2c/uptexdir/am/uptex.am b/Build/source/texk/web2c/uptexdir/am/uptex.am index 6ad2b69c5ef..62e7ae1a90e 100644 --- a/Build/source/texk/web2c/uptexdir/am/uptex.am +++ b/Build/source/texk/web2c/uptexdir/am/uptex.am @@ -174,6 +174,7 @@ upweb_tests = \ uptexdir/uparse.test \ uptexdir/gkhuge.test \ uptexdir/upkcat.test +upweb_tests += uptexdir/upbibtex-char.test uptexdir/upbibtex.log: upbibtex$(EXEEXT) uptexdir/updvitype.log: updvitype$(EXEEXT) uptexdir/uppltotf.log: uppltotf$(EXEEXT) @@ -199,7 +200,7 @@ endif UPWEB ## Test data and results ## ## uptexdir/upbibtex.test -EXTRA_DIST += tests/enc-u.bbl tests/enc-eu.bbl tests/enc-su.bbl +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*.* ## uptexdir/updvitype.test diff --git a/Build/source/texk/web2c/uptexdir/upbibtex.ch b/Build/source/texk/web2c/uptexdir/upbibtex.ch index ab076c048c5..40a12c90d04 100644 --- a/Build/source/texk/web2c/uptexdir/upbibtex.ch +++ b/Build/source/texk/web2c/uptexdir/upbibtex.ch @@ -198,14 +198,12 @@ if (len > 0) then @x procedure get_the_top_level_aux_file_name label aux_found,@!aux_not_found; +begin + if (not set_enc_string (nil,'EUC')) then uexit(1); @y label aux_found,@!aux_not_found; var i:0..last_text_char; {this is the first one declared} -@z -@x - @ -@y - @ +begin @ @z diff --git a/Build/source/texk/web2c/uptexdir/upbibtex.test b/Build/source/texk/web2c/uptexdir/upbibtex.test index e8acc12d5dd..1b42c155a70 100755 --- a/Build/source/texk/web2c/uptexdir/upbibtex.test +++ b/Build/source/texk/web2c/uptexdir/upbibtex.test @@ -9,6 +9,8 @@ rm -f uptests/xexampl.* uptests/xenc*.* rc=0 +./upbibtex -version || rc=100 + TEXMFCNF=$srcdir/../kpathsea BSTINPUTS=$srcdir/tests BIBINPUTS=$srcdir/tests @@ -38,5 +40,40 @@ cp $srcdir/tests/enc-s.aux uptests/xenc-s.aux diff $srcdir/tests/enc-su.bbl uptests/xenc-s.bbl || rc=8 +cp $srcdir/tests/enc-u.aux uptests/xenc-u0.aux + +./upbibtex -no-guess-input-enc uptests/xenc-u0 || rc=9 +diff $srcdir/tests/enc-uu.bbl uptests/xenc-u0.bbl || rc=10 +./upbibtex -guess-input-enc uptests/xenc-u0 || rc=11 +diff $srcdir/tests/enc-uu.bbl uptests/xenc-u0.bbl || rc=12 + + +## -kanji-internal=euc, compatible with pbibtex +cp $srcdir/tests/enc.aux uptests/xenc-u-e.aux + +guess_input_kanji_encoding=1 ./upbibtex -kanji-internal=euc uptests/xenc-u-e || rc=53 +diff $srcdir/tests/enc-p.bbl uptests/xenc-u-e.bbl || rc=54 + + +cp $srcdir/tests/enc-e.aux uptests/xenc-e-e.aux + +guess_input_kanji_encoding=1 ./upbibtex -kanji=euc -kanji-internal=euc uptests/xenc-e-e || rc=55 +diff $srcdir/tests/enc-ep.bbl uptests/xenc-e-e.bbl || rc=56 + + +cp $srcdir/tests/enc-s.aux uptests/xenc-s-e.aux + +./upbibtex -guess-input-enc -kanji=sjis -kanji-internal=euc uptests/xenc-s-e || rc=57 +diff $srcdir/tests/enc-sp.bbl uptests/xenc-s-e.bbl || rc=58 + + +cp $srcdir/tests/enc-u.aux uptests/xenc-u0-e.aux + +./upbibtex -no-guess-input-enc -kanji-internal=euc uptests/xenc-u0-e || rc=59 +diff $srcdir/tests/enc-up.bbl uptests/xenc-u0-e.bbl || rc=60 +./upbibtex -guess-input-enc -kanji-internal=euc uptests/xenc-u0-e || rc=61 +diff $srcdir/tests/enc-up.bbl uptests/xenc-u0-e.bbl || rc=62 + + exit $rc -- cgit v1.2.3