#! /bin/sh -vx # # Copyright 2022-2023 Japanese TeX Development Community # You may freely use, modify and/or distribute this file. test -d euptests || mkdir -p euptests rm -f euptests/fn*.log euptests/fn*.txt euptests/fn*.tex fn*.tex rc=0 TEXMFCNF=$srcdir/../kpathsea TEXINPUTS=euptests:. export TEXMFCNF TEXINPUTS 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=$? if [ $ret = 0 ]; then LC_ALL=$loc; LANGUAGE=$loc; export LC_ALL LANGUAGE break fi done if [ $ret = 1 ]; 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 perl $srcdir/tests/fn-generate.perl || exit 128 mv fn*.tex euptests/ # 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 ./euptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc --shell-escape $doc.tex >euptests/$doc-$ienc-term.log || rc=1 mv $doc-$ienc.txt $doc-$ienc.log fn*-tmp.tex euptests/ diff euptests/$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 ./euptex -ini -interaction nonstopmode -jobname=$doc-$ienc -kanji=$fenc --kanji-internal=$ienc --shell-escape $doc.tex >euptests/$doc-$fenc-term.log || rc=3 mv $doc-$ienc.txt $doc-$ienc.log fn*-tmp.tex euptests/ diff euptests/$doc-$ienc.txt $srcdir/tests/fn-$fenc.txt || rc=4 done done exit $rc