summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2013-12-07 11:21:45 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2013-12-07 11:21:45 +0000
commit3bbd721df0882f2147bb324f257b66754476fcbf (patch)
tree10f24bd83f4bf8c4cba5c438044366f427ea6865
parent12fc55ea548adddbfde8062da475dff9322f52af (diff)
Correctly handle 'vptovf foo.vpl bar vf' and 'ovp2ovf foo.ovp bar.ovf' (from TANAKA Takuji)
pltotf, tftopl, vftovp, vptovf: Verify test output files git-svn-id: svn://tug.org/texlive/trunk@32351 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/web2c/ChangeLog10
-rw-r--r--Build/source/texk/web2c/Makefile.in18
-rw-r--r--Build/source/texk/web2c/am/web.am4
-rw-r--r--Build/source/texk/web2c/cpascal.h1
-rw-r--r--Build/source/texk/web2c/omegafonts/ChangeLog7
-rw-r--r--Build/source/texk/web2c/omegafonts/Makefile.am2
-rw-r--r--Build/source/texk/web2c/omegafonts/Makefile.in4
-rw-r--r--Build/source/texk/web2c/omegafonts/omfonts.c2
-rwxr-xr-xBuild/source/texk/web2c/omegafonts/selectfont.test8
-rw-r--r--Build/source/texk/web2c/omegaware/ChangeLog11
-rw-r--r--Build/source/texk/web2c/omegaware/am/omegaware.am4
-rw-r--r--Build/source/texk/web2c/omegaware/ofm2opl.ch10
-rw-r--r--Build/source/texk/web2c/omegaware/ofm2opl.web5
-rw-r--r--Build/source/texk/web2c/omegaware/opl2ofm.ch22
-rw-r--r--Build/source/texk/web2c/omegaware/opl2ofm.web19
-rw-r--r--Build/source/texk/web2c/omegaware/ovf2ovp.ch10
-rw-r--r--Build/source/texk/web2c/omegaware/ovf2ovp.web5
-rw-r--r--Build/source/texk/web2c/omegaware/ovp2ovf.ch4
-rw-r--r--Build/source/texk/web2c/omegaware/ovp2ovf.web11
-rwxr-xr-xBuild/source/texk/web2c/omegaware/selectfont.test8
-rwxr-xr-xBuild/source/texk/web2c/pltotf.test4
-rw-r--r--Build/source/texk/web2c/tests/cmr10.pl1
-rwxr-xr-xBuild/source/texk/web2c/tftopl.test4
-rwxr-xr-xBuild/source/texk/web2c/vftovp.test4
-rw-r--r--Build/source/texk/web2c/vptovf.ch2
-rwxr-xr-xBuild/source/texk/web2c/vptovf.test15
-rw-r--r--Build/source/texk/web2c/web2c/ChangeLog4
-rw-r--r--Build/source/texk/web2c/web2c/common.defines1
28 files changed, 118 insertions, 82 deletions
diff --git a/Build/source/texk/web2c/ChangeLog b/Build/source/texk/web2c/ChangeLog
index 30e1b24fde9..79ab73b53a3 100644
--- a/Build/source/texk/web2c/ChangeLog
+++ b/Build/source/texk/web2c/ChangeLog
@@ -1,3 +1,13 @@
+2013-12-06 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * vptovf.ch: Use make_suffix() for implied tfm_name.
+ * cpascal.h (makesuffix): Add this to the underscore list.
+ * pltotf.test, tftopl.test, vftovp.test: Verify output files.
+ * vptovf.test: Add test for 'vptovf foo.vpl bar.vf' and verify
+ output files.
+ * tests/cmr10.pl: Add SEVENBITSAFEFLAG.
+ * am/web.am (DISTCLEANFILES): Additional files for vptovf.test.
+
2013-09-20 Karl Berry <karl@tug.org>
* configure.ac (NATIVE_TEXLIVE_BUILD): new AC_DEFINE,
diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in
index 5a4f7fa04b2..878c8b9523e 100644
--- a/Build/source/texk/web2c/Makefile.in
+++ b/Build/source/texk/web2c/Makefile.in
@@ -1970,13 +1970,13 @@ DISTCLEANFILES = $(EXTRA_LIBRARIES) CXXLD.sh tangle.c tangle.h \
tests/io.tex tests/xpatout pattmp.4 cmr10.gf \
tests/xcmr10.600gf tests/xcmr10.pktyp tests/xcmr10.tfm \
tests/xtexpool.typ tests/xcmr10.pl tests/xptmr.vpl \
- tests/xptmr.tfm tests/xptmr.vf pooltype.tex ctie.c cweave.c \
- tie.c ctie.outc ctie.outm common.tex common.scn common.idx \
- tie.outc tie.outm $(nodist_tex_SOURCES) tex-final.ch tex-web2c \
- tex.p tex.pool tex-tangle trip.diffs write18-quote.log \
- mftrap.diffs $(nodist_libmf_a_SOURCES) mf-final.ch mf-web2c \
- mf.p mf.pool mf-tangle $(nodist_mpost_SOURCES) mpxout-tangle \
- mptrap.diffs ptmr.mpx tests/xptmr.mpx tests/xstory.mpx \
+ tests/yptmr*.* pooltype.tex ctie.c cweave.c tie.c ctie.outc \
+ ctie.outm common.tex common.scn common.idx tie.outc tie.outm \
+ $(nodist_tex_SOURCES) tex-final.ch tex-web2c tex.p tex.pool \
+ tex-tangle trip.diffs write18-quote.log mftrap.diffs \
+ $(nodist_libmf_a_SOURCES) mf-final.ch mf-web2c mf.p mf.pool \
+ mf-tangle $(nodist_mpost_SOURCES) mpxout-tangle mptrap.diffs \
+ ptmr.mpx tests/xptmr.mpx tests/xstory.mpx \
$(nodist_libmplib_a_SOURCES) mp-tangle mpmath-tangle \
mpmathdouble-tangle mpstrings-tangle psout-tangle \
svgout-tangle pngout-tangle $(nodist_etex_SOURCES) etex.web \
@@ -2015,8 +2015,8 @@ DISTCLEANFILES = $(EXTRA_LIBRARIES) CXXLD.sh tangle.c tangle.h \
omegaware/tests/xCherokee.* omegaware/tests/xOCherokee.* \
ocftest.* 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/specialhex.ofm \
+ omegaware/tests/sample*.ovf omegaware/tests/sample1-h.opl \
+ omegaware/tests/xsample*.out omegaware/tests/specialhex.ofm \
omegaware/tests/specialhex.opl omegaware/tests/specialhex.ovf \
omegaware/tests/xspecialhex.* $(nodist_aleph_SOURCES) \
aleph.web aleph.ch aleph-web2c aleph.p aleph.pool aleph-tangle
diff --git a/Build/source/texk/web2c/am/web.am b/Build/source/texk/web2c/am/web.am
index 60c0746828a..1efa64b198f 100644
--- a/Build/source/texk/web2c/am/web.am
+++ b/Build/source/texk/web2c/am/web.am
@@ -1,6 +1,6 @@
## texk/web2c/am/web.am: Makefile fragment for normal web programs (except tangle).
##
-## Copyright (C) 2009-2011 Peter Breitenlohner <tex-live@tug.org>
+## Copyright (C) 2009-2013 Peter Breitenlohner <tex-live@tug.org>
## You may freely use, modify and/or distribute this file.
web_programs = bibtex dvicopy dvitype gftodvi gftopk gftype mft \
@@ -191,7 +191,7 @@ DISTCLEANFILES += tests/xcmr10.pl
## vftovp.test
DISTCLEANFILES += tests/xptmr.vpl
## vptovf.test
-DISTCLEANFILES += tests/xptmr.tfm tests/xptmr.vf
+DISTCLEANFILES += tests/yptmr*.*
## weave.test
DISTCLEANFILES += pooltype.tex
diff --git a/Build/source/texk/web2c/cpascal.h b/Build/source/texk/web2c/cpascal.h
index dcd6b495f87..d1dc83f4041 100644
--- a/Build/source/texk/web2c/cpascal.h
+++ b/Build/source/texk/web2c/cpascal.h
@@ -242,6 +242,7 @@ typedef const unsigned char *const_w2custring;
are defined in C with _'s. */
#define extendfilename extend_filename
#define findsuffix find_suffix
+#define makesuffix make_suffix
#define FOPENRBINMODE FOPEN_RBIN_MODE
#define FOPENRMODE FOPEN_R_MODE
#define getoptlongonly getopt_long_only
diff --git a/Build/source/texk/web2c/omegafonts/ChangeLog b/Build/source/texk/web2c/omegafonts/ChangeLog
index 6809118e740..8c2af72d2df 100644
--- a/Build/source/texk/web2c/omegafonts/ChangeLog
+++ b/Build/source/texk/web2c/omegafonts/ChangeLog
@@ -1,3 +1,10 @@
+2013-12-06 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * omfonts.c (main): Use make_suffix() for implied ofm_name.
+ * selectfont.test: Add test for 'ovp2ovf foo.ovp bar.ovf'.
+ * Makefile.am (DISTCLEANFILES): Additional files.
+ Mail from TANAKA Takuji <KXD02663@nifty.ne.jp>, 27 Nov 2013.
+
2013-07-05 Peter Breitenlohner <peb@mppmu.mpg.de>
* omfonts.c (main): Use kpse_program_basename().
diff --git a/Build/source/texk/web2c/omegafonts/Makefile.am b/Build/source/texk/web2c/omegafonts/Makefile.am
index 7e7fb7b6000..bc3fda25aaa 100644
--- a/Build/source/texk/web2c/omegafonts/Makefile.am
+++ b/Build/source/texk/web2c/omegafonts/Makefile.am
@@ -129,7 +129,7 @@ EXTRA_DIST += tests/repeat.opl tests/repeated.opl
DISTCLEANFILES += tests/xrepeated.*
## selectfont.test
EXTRA_DIST += tests/sample.out tests/sample.ovp tests/sample0-h.opl
-DISTCLEANFILES += tests/sample*.ofm tests/sample.ovf tests/sample1-h.opl tests/xsample.out
+DISTCLEANFILES += tests/sample*.ofm tests/sample*.ovf tests/sample1-h.opl tests/xsample*.out
## specialhex.test
EXTRA_DIST += tests/specialhex.ovp
DISTCLEANFILES += tests/specialhex.ofm tests/specialhex.opl \
diff --git a/Build/source/texk/web2c/omegafonts/Makefile.in b/Build/source/texk/web2c/omegafonts/Makefile.in
index 5fa5a92b7b3..0ace84f551e 100644
--- a/Build/source/texk/web2c/omegafonts/Makefile.in
+++ b/Build/source/texk/web2c/omegafonts/Makefile.in
@@ -689,8 +689,8 @@ DISTCLEANFILES = pl-parser.output tests/charwdr.* tests/charwdv.* \
tests/xlevel1.ofm tests/xlevel1.opl tests/Cherokee.tfm \
tests/OCherokee.ofm tests/OCherokee.opl tests/OCherokee.ovf \
tests/xCherokee.* tests/xOCherokee.* tests/realnum.* \
- tests/xrepeated.* tests/sample*.ofm tests/sample.ovf \
- tests/sample1-h.opl tests/xsample.out tests/specialhex.ofm \
+ tests/xrepeated.* tests/sample*.ofm tests/sample*.ovf \
+ tests/sample1-h.opl tests/xsample*.out tests/specialhex.ofm \
tests/specialhex.opl tests/specialhex.ovf tests/xspecialhex.*
linked_programs = ofm2opl opl2ofm ovf2ovp ovp2ovf
bin_links = \
diff --git a/Build/source/texk/web2c/omegafonts/omfonts.c b/Build/source/texk/web2c/omegafonts/omfonts.c
index afd94cff68f..09db093fd93 100644
--- a/Build/source/texk/web2c/omegafonts/omfonts.c
+++ b/Build/source/texk/web2c/omegafonts/omfonts.c
@@ -245,7 +245,7 @@ main (int argc, string *argv)
if (optind+3 <= argc) {
*(files[2]) = extend_filename(cmdline(optind+2) , suffixes[2]);
} else if (program == PROG_OVP2OVF) {
- *(files[2]) = extend_filename(cmdline(optind+1), suffixes[2]);
+ *(files[2]) = make_suffix(cmdline(optind+1), suffixes[2]);
}
}
} else if (program != PROG_OFM2OPL) {
diff --git a/Build/source/texk/web2c/omegafonts/selectfont.test b/Build/source/texk/web2c/omegafonts/selectfont.test
index ddabe3de870..d6024571107 100755
--- a/Build/source/texk/web2c/omegafonts/selectfont.test
+++ b/Build/source/texk/web2c/omegafonts/selectfont.test
@@ -1,6 +1,6 @@
#! /bin/sh
-# Copyright (C) 2011 Peter Breitenlohner <tex-live@tug.org>
+# Copyright (C) 2011-2013 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.
test -d tests || mkdir -p tests
@@ -23,3 +23,9 @@ diff $srcdir/tests/sample0-h.opl tests/sample1-h.opl || exit 1
diff $srcdir/tests/sample.out tests/xsample.out || exit 1
+./omfonts -ovp2ovf -verbose $srcdir/tests/sample.ovp tests/sample2.ovf || exit 1
+
+./omfonts -ovf2ovp -verbose tests/sample2 sample2 tests/xsample2.out || exit 1
+
+diff $srcdir/tests/sample.out tests/xsample2.out || exit 1
+
diff --git a/Build/source/texk/web2c/omegaware/ChangeLog b/Build/source/texk/web2c/omegaware/ChangeLog
index 72ac00ec971..84570b1711f 100644
--- a/Build/source/texk/web2c/omegaware/ChangeLog
+++ b/Build/source/texk/web2c/omegaware/ChangeLog
@@ -1,3 +1,14 @@
+2013-12-06 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * opl2ofm.{ch,web}: Drop ASCII_04, ASCII_10, ASCII_14, MBL_string,
+ RI_string, RCE_string (all unused).
+ * {opl2ofm,ovp2ovf}.web: Drop unused procedure out_digs().
+ * {ofm2opl,opl2ofm,ovf2ovp,ovp2ovf}.{ch,web}: HEX has 16 bytes.
+
+ * ovp2ovf.ch: Use make_suffix() for implied ofm_name.
+ * selectfont.test: Add test for 'ovp2ovf foo.ovp bar.ovf'.
+ * am/omegaware.am (DISTCLEANFILES): Additional files.
+
2013-01-24 Peter Breitenlohner <peb@mppmu.mpg.de>
* otangle.test: Avoid spurious failure of parallel-tests.
diff --git a/Build/source/texk/web2c/omegaware/am/omegaware.am b/Build/source/texk/web2c/omegaware/am/omegaware.am
index 8e2ac0fd64b..e834e7790ca 100644
--- a/Build/source/texk/web2c/omegaware/am/omegaware.am
+++ b/Build/source/texk/web2c/omegaware/am/omegaware.am
@@ -156,8 +156,8 @@ DISTCLEANFILES += omegaware/tests/xrepeated.*
## omegaware/selectfont.test
EXTRA_DIST += omegaware/tests/sample.out omegaware/tests/sample.ovp \
omegaware/tests/sample0-h.opl
-DISTCLEANFILES += omegaware/tests/sample*.ofm omegaware/tests/sample.ovf \
- omegaware/tests/sample1-h.opl omegaware/tests/xsample.out
+DISTCLEANFILES += omegaware/tests/sample*.ofm omegaware/tests/sample*.ovf \
+ omegaware/tests/sample1-h.opl omegaware/tests/xsample*.out
## omegaware/specialhex.test
EXTRA_DIST += omegaware/tests/specialhex.ovp
DISTCLEANFILES += omegaware/tests/specialhex.ofm omegaware/tests/specialhex.opl \
diff --git a/Build/source/texk/web2c/omegaware/ofm2opl.ch b/Build/source/texk/web2c/omegaware/ofm2opl.ch
index fc71e983c9b..623f4b83a84 100644
--- a/Build/source/texk/web2c/omegaware/ofm2opl.ch
+++ b/Build/source/texk/web2c/omegaware/ofm2opl.ch
@@ -160,33 +160,35 @@ tfm_file_array
% [27, 28] Change strings to C char pointers. The Pascal strings are
% indexed starting at 1, so we pad with a blank.
@x
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: packed array [1..32] of char;
+@!ASCII_04,@!ASCII_10,@!ASCII_14: packed array [1..32] of char;
{strings for output in the user's external character set}
@!MBL_string,@!RI_string,@!RCE_string:packed array [1..3] of char;
{handy string constants for |face| codes}
+@!HEX: packed array [1..16] of char;
@y
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: const_c_string;
+@!ASCII_04,@!ASCII_10,@!ASCII_14: const_c_string;
{strings for output in the user's external character set}
@!ASCII_all: packed array[0..256] of char;
@!MBL_string,@!RI_string,@!RCE_string: const_c_string;
{handy string constants for |face| codes}
+@!HEX: const_c_string;
@z
@x
ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
ASCII_10:='@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
ASCII_14:='`abcdefghijklmnopqrstuvwxyz{|}~ ';@/
-HEX:='0123456789ABCDEF';@/
MBL_string:='MBL'; RI_string:='RI '; RCE_string:='RCE';
+HEX:='0123456789ABCDEF';@/
@y
ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
ASCII_10:=' @@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
ASCII_14:=' `abcdefghijklmnopqrstuvwxyz{|}~ ';@/
-HEX:=' 0123456789ABCDEF';@/
strcpy (ASCII_all, ASCII_04);
strcat (ASCII_all, '@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_');
strcat (ASCII_all, '`abcdefghijklmnopqrstuvwxyz{|}~');@/
MBL_string:=' MBL'; RI_string:=' RI '; RCE_string:=' RCE';
+HEX:=' 0123456789ABCDEF';@/
@z
% [38] How we output the character code depends on |charcode_format|.
diff --git a/Build/source/texk/web2c/omegaware/ofm2opl.web b/Build/source/texk/web2c/omegaware/ofm2opl.web
index 3d0ee70bcc6..6769c20bba1 100644
--- a/Build/source/texk/web2c/omegaware/ofm2opl.web
+++ b/Build/source/texk/web2c/omegaware/ofm2opl.web
@@ -921,17 +921,18 @@ appropriate conversion of ASCII codes. Three other little strings are
used to produce |face| codes like \.{MIE}.
@<Glob...@>=
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: packed array [1..32] of char;
+@!ASCII_04,@!ASCII_10,@!ASCII_14: packed array [1..32] of char;
{strings for output in the user's external character set}
@!MBL_string,@!RI_string,@!RCE_string:packed array [1..3] of char;
{handy string constants for |face| codes}
+@!HEX: packed array [1..16] of char;
@ @<Set init...@>=
ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
ASCII_10:='@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
ASCII_14:='`abcdefghijklmnopqrstuvwxyz{|}~ ';@/
-HEX:='0123456789ABCDEF';@/
MBL_string:='MBL'; RI_string:='RI '; RCE_string:='RCE';
+HEX:='0123456789ABCDEF';@/
@ The array |dig| will hold a sequence of digits to be output.
diff --git a/Build/source/texk/web2c/omegaware/opl2ofm.ch b/Build/source/texk/web2c/omegaware/opl2ofm.ch
index d44734533a5..61ba2462ea1 100644
--- a/Build/source/texk/web2c/omegaware/opl2ofm.ch
+++ b/Build/source/texk/web2c/omegaware/opl2ofm.ch
@@ -147,33 +147,15 @@ if verbose then begin
% [27, 28] Change strings to C char pointers. The Pascal strings are
% indexed starting at 1, so we pad with a blank.
@x
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: packed array [1..32] of char;
- {strings for output in the user's external character set}
-@!MBL_string,@!RI_string,@!RCE_string:packed array [1..3] of char;
- {handy string constants for |face| codes}
+@!HEX: packed array [1..16] of char;
@y
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: const_c_string;
- {strings for output in the user's external character set}
-@!ASCII_all: packed array[0..256] of char;
-@!MBL_string,@!RI_string,@!RCE_string: const_c_string;
- {handy string constants for |face| codes}
+@!HEX: const_c_string;
@z
@x
-ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
-ASCII_10:='@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
-ASCII_14:='`abcdefghijklmnopqrstuvwxyz{|}~ ';@/
HEX:='0123456789ABCDEF';@/
-MBL_string:='MBL'; RI_string:='RI '; RCE_string:='RCE';
@y
-ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
-ASCII_10:=' @@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
-ASCII_14:=' `abcdefghijklmnopqrstuvwxyz{|}~ ';@/
HEX:=' 0123456789ABCDEF';@/
-strcpy (ASCII_all, ASCII_04);
-strcat (ASCII_all, '@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_');
-strcat (ASCII_all, '`abcdefghijklmnopqrstuvwxyz{|}~');@/
-MBL_string:=' MBL'; RI_string:=' RI '; RCE_string:=' RCE';
@z
@x [115] Output of reals.
diff --git a/Build/source/texk/web2c/omegaware/opl2ofm.web b/Build/source/texk/web2c/omegaware/opl2ofm.web
index e73f058c8b8..83ea0be20fb 100644
--- a/Build/source/texk/web2c/omegaware/opl2ofm.web
+++ b/Build/source/texk/web2c/omegaware/opl2ofm.web
@@ -2386,33 +2386,22 @@ end
@ The input routine is now complete except for the following code,
which prints a progress report as the file is being read.
+
@<Glob...@>=
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: packed array [1..32] of char;
- {strings for output in the user's external character set}
-@!MBL_string,@!RI_string,@!RCE_string:packed array [1..3] of char;
- {handy string constants for |face| codes}
+@!HEX: packed array [1..16] of char;
@ @<Set init...@>=
-ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
-ASCII_10:='@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
-ASCII_14:='`abcdefghijklmnopqrstuvwxyz{|}~ ';@/
HEX:='0123456789ABCDEF';@/
-MBL_string:='MBL'; RI_string:='RI '; RCE_string:='RCE';
@ The array |dig| will hold a sequence of digits to be output.
@<Glob...@>=
@!dig:array[0..32] of integer;
-@ Here, in fact, are two procedures that output
+@ Here, in fact, is a procedure that prints
|dig[j-1]|$\,\ldots\,$|dig[0]|, given $j>0$.
-@p procedure out_digs(j:integer); {outputs |j| digits}
-begin repeat decr(j); out(HEX[1+dig[j]]);
-until j=0;
-end;
-@#
-procedure print_digs(j:integer); {prints |j| digits}
+@p procedure print_digs(j:integer); {prints |j| digits}
begin repeat decr(j); print(HEX[1+dig[j]]);
until j=0;
end;
diff --git a/Build/source/texk/web2c/omegaware/ovf2ovp.ch b/Build/source/texk/web2c/omegaware/ovf2ovp.ch
index 2251354ce1b..a5af15e17db 100644
--- a/Build/source/texk/web2c/omegaware/ovf2ovp.ch
+++ b/Build/source/texk/web2c/omegaware/ovf2ovp.ch
@@ -266,30 +266,30 @@ cur_name[r] := 0; {Append null byte since this is C.}
@z
@x [49] Change strings to C char pointers, so we can initialize them.
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: packed array [1..32] of char;
+@!ASCII_04,@!ASCII_10,@!ASCII_14: packed array [1..32] of char;
{strings for output in the user's external character set}
@!xchr:packed array [0..255] of char;
@!MBL_string,@!RI_string,@!RCE_string:packed array [1..3] of char;
{handy string constants for |face| codes}
+@!HEX: packed array [1..16] of char;
@y
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: const_c_string;
+@!ASCII_04,@!ASCII_10,@!ASCII_14: const_c_string;
{strings for output in the user's external character set}
@!ASCII_all: packed array[0..256] of char;
@!xchr:packed array [0..255] of char;
@!MBL_string,@!RI_string,@!RCE_string: const_c_string;
{handy string constants for |face| codes}
+@!HEX: const_c_string;
@z
@x [50] The Pascal strings are indexed starting at 1, so we pad with a blank.
ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
ASCII_10:='@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
ASCII_14:='`abcdefghijklmnopqrstuvwxyz{|}~?';@/
-HEX:='0123456789ABCDEF';@/
@y
ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
ASCII_10:=' @@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
ASCII_14:=' `abcdefghijklmnopqrstuvwxyz{|}~?';@/
-HEX:=' 0123456789ABCDEF';@/
strcpy (ASCII_all, ASCII_04);
strcat (ASCII_all, '@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_');
strcat (ASCII_all, '`abcdefghijklmnopqrstuvwxyz{|}~');@/
@@ -297,8 +297,10 @@ strcat (ASCII_all, '`abcdefghijklmnopqrstuvwxyz{|}~');@/
@x
MBL_string:='MBL'; RI_string:='RI '; RCE_string:='RCE';
+HEX:='0123456789ABCDEF';@/
@y
MBL_string:=' MBL'; RI_string:=' RI '; RCE_string:=' RCE';
+HEX:=' 0123456789ABCDEF';@/
@z
% [60] How we output the character code depends on |charcode_format|.
diff --git a/Build/source/texk/web2c/omegaware/ovf2ovp.web b/Build/source/texk/web2c/omegaware/ovf2ovp.web
index 30fc71c9e03..280a0641372 100644
--- a/Build/source/texk/web2c/omegaware/ovf2ovp.web
+++ b/Build/source/texk/web2c/omegaware/ovf2ovp.web
@@ -1463,17 +1463,17 @@ appropriate conversion of ASCII codes. Three other little strings are
used to produce |face| codes like \.{MIE}.
@<Glob...@>=
-@!ASCII_04,@!ASCII_10,@!ASCII_14,HEX: packed array [1..32] of char;
+@!ASCII_04,@!ASCII_10,@!ASCII_14: packed array [1..32] of char;
{strings for output in the user's external character set}
@!xchr:packed array [0..255] of char;
@!MBL_string,@!RI_string,@!RCE_string:packed array [1..3] of char;
{handy string constants for |face| codes}
+@!HEX: packed array [1..16] of char;
@ @<Set init...@>=
ASCII_04:=' !"#$%&''()*+,-./0123456789:;<=>?';@/
ASCII_10:='@@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_';@/
ASCII_14:='`abcdefghijklmnopqrstuvwxyz{|}~?';@/
-HEX:='0123456789ABCDEF';@/
for k:=0 to 255 do xchr[k]:='?';
for k:=0 to @'37 do begin
xchr[k+@'40]:=ASCII_04[k+1];
@@ -1481,6 +1481,7 @@ for k:=0 to @'37 do begin
xchr[k+@'140]:=ASCII_14[k+1];
end;
MBL_string:='MBL'; RI_string:='RI '; RCE_string:='RCE';
+HEX:='0123456789ABCDEF';@/
@ The array |dig| will hold a sequence of digits to be output.
diff --git a/Build/source/texk/web2c/omegaware/ovp2ovf.ch b/Build/source/texk/web2c/omegaware/ovp2ovf.ch
index 759ae090d58..258bafb26d6 100644
--- a/Build/source/texk/web2c/omegaware/ovp2ovf.ch
+++ b/Build/source/texk/web2c/omegaware/ovp2ovf.ch
@@ -140,7 +140,7 @@ if verbose then begin
@z
@x
-@!HEX: packed array [1..32] of char;
+@!HEX: packed array [1..16] of char;
@y
@!HEX: const_c_string;
@z
@@ -300,7 +300,7 @@ begin
if optind + 3 <= argc then begin {Both.}
tfm_name := extend_filename (cmdline (optind + 2), 'ofm');
end else begin {Just one.}
- tfm_name := extend_filename (cmdline (optind + 1), 'ofm');
+ tfm_name := make_suffix (cmdline (optind + 1), 'ofm');
end;
end else begin {Neither.}
vf_name := basename_change_suffix (vpl_name, '.ovp', '.ovf');
diff --git a/Build/source/texk/web2c/omegaware/ovp2ovf.web b/Build/source/texk/web2c/omegaware/ovp2ovf.web
index 63c2977fba2..9a6aeb7252d 100644
--- a/Build/source/texk/web2c/omegaware/ovp2ovf.web
+++ b/Build/source/texk/web2c/omegaware/ovp2ovf.web
@@ -2773,7 +2773,7 @@ end
which prints a progress report as the file is being read.
@ @<Glob...@>=
-@!HEX: packed array [1..32] of char;
+@!HEX: packed array [1..16] of char;
@ @<Set init...@>=
HEX:='0123456789ABCDEF';@/
@@ -2783,15 +2783,10 @@ HEX:='0123456789ABCDEF';@/
@<Glob...@>=
@!dig:array[0..32] of integer;
-@ Here, in fact, are two procedures that output
+@ Here, in fact, is a procedure that prints
|dig[j-1]|$\,\ldots\,$|dig[0]|, given $j>0$.
-@p procedure out_digs(j:integer); {outputs |j| digits}
-begin repeat decr(j); out(HEX[1+dig[j]]);
- until j=0;
-end;
-@#
-procedure print_digs(j:integer); {prints |j| digits}
+@p procedure print_digs(j:integer); {prints |j| digits}
begin repeat decr(j); print(HEX[1+dig[j]]);
until j=0;
end;
diff --git a/Build/source/texk/web2c/omegaware/selectfont.test b/Build/source/texk/web2c/omegaware/selectfont.test
index 15f2193ace8..8bcfba7bab5 100755
--- a/Build/source/texk/web2c/omegaware/selectfont.test
+++ b/Build/source/texk/web2c/omegaware/selectfont.test
@@ -1,6 +1,6 @@
#! /bin/sh
-# Copyright (C) 2011 Peter Breitenlohner <tex-live@tug.org>
+# Copyright (C) 2011-2013 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.
tests=omegaware/tests
@@ -25,3 +25,9 @@ diff $srcdir/$tests/sample0-h.opl $tests/sample1-h.opl || exit 1
diff $srcdir/$tests/sample.out $tests/xsample.out || exit 1
+./ovp2ovf -verbose $srcdir/$tests/sample.ovp $tests/sample2.ovf || exit 1
+
+./ovf2ovp -verbose $tests/sample2 sample2 $tests/xsample2.out || exit 1
+
+diff $srcdir/$tests/sample.out $tests/xsample2.out || exit 1
+
diff --git a/Build/source/texk/web2c/pltotf.test b/Build/source/texk/web2c/pltotf.test
index eb3a0f67cd2..2ce47359be4 100755
--- a/Build/source/texk/web2c/pltotf.test
+++ b/Build/source/texk/web2c/pltotf.test
@@ -1,9 +1,11 @@
#! /bin/sh
-# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# Copyright (C) 2009-2013 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.
test -d tests || mkdir -p tests
./pltotf -verbose $srcdir/tests/cmr10 tests/xcmr10 || exit 1
+cmp $srcdir/tests/cmr10.tfm tests/xcmr10.tfm || exit 1
+
diff --git a/Build/source/texk/web2c/tests/cmr10.pl b/Build/source/texk/web2c/tests/cmr10.pl
index 29882e52925..cf1541c4b31 100644
--- a/Build/source/texk/web2c/tests/cmr10.pl
+++ b/Build/source/texk/web2c/tests/cmr10.pl
@@ -5,6 +5,7 @@
(COMMENT DESIGNSIZE IS IN POINTS)
(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
(CHECKSUM O 11374260171)
+(SEVENBITSAFEFLAG TRUE)
(FONTDIMEN
(SLANT R 0.0)
(SPACE R 0.333334)
diff --git a/Build/source/texk/web2c/tftopl.test b/Build/source/texk/web2c/tftopl.test
index ee217b73f9b..19c4e9f1203 100755
--- a/Build/source/texk/web2c/tftopl.test
+++ b/Build/source/texk/web2c/tftopl.test
@@ -1,6 +1,6 @@
#! /bin/sh
-# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# Copyright (C) 2009-2013 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.
test -d tests || mkdir -p tests
@@ -8,3 +8,5 @@ test -d tests || mkdir -p tests
TEXMFCNF=$srcdir/../kpathsea \
./tftopl -verbose $srcdir/tests/cmr10 tests/xcmr10 || exit 1
+diff $srcdir/tests/cmr10.pl tests/xcmr10.pl || exit 1
+
diff --git a/Build/source/texk/web2c/vftovp.test b/Build/source/texk/web2c/vftovp.test
index 433b7fdc971..614361300a4 100755
--- a/Build/source/texk/web2c/vftovp.test
+++ b/Build/source/texk/web2c/vftovp.test
@@ -1,6 +1,6 @@
#! /bin/sh
-# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# Copyright (C) 2009-2013 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.
test -d tests || mkdir -p tests
@@ -9,3 +9,5 @@ TEXMFCNF=$srcdir/../kpathsea \
TFMFONTS=$srcdir/tests \
./vftovp -verbose $srcdir/tests/ptmr ptmr tests/xptmr || exit 1
+diff $srcdir/tests/ptmr.vpl tests/xptmr.vpl || exit 1
+
diff --git a/Build/source/texk/web2c/vptovf.ch b/Build/source/texk/web2c/vptovf.ch
index d3a6ef13ec0..333f132c51c 100644
--- a/Build/source/texk/web2c/vptovf.ch
+++ b/Build/source/texk/web2c/vptovf.ch
@@ -279,7 +279,7 @@ begin
if optind + 3 <= argc then begin {Both.}
tfm_name := extend_filename (cmdline (optind + 2), 'tfm');
end else begin {Just one.}
- tfm_name := extend_filename (cmdline (optind + 1), 'tfm');
+ tfm_name := make_suffix (cmdline (optind + 1), 'tfm');
end;
end else begin {Neither.}
vf_name := basename_change_suffix (vpl_name, '.vpl', '.vf');
diff --git a/Build/source/texk/web2c/vptovf.test b/Build/source/texk/web2c/vptovf.test
index 7bf466ac764..922a62b8cd8 100755
--- a/Build/source/texk/web2c/vptovf.test
+++ b/Build/source/texk/web2c/vptovf.test
@@ -1,10 +1,21 @@
#! /bin/sh
-# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# Copyright (C) 2009-2013 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.
test -d tests || mkdir -p tests
TEXMFCNF=$srcdir/../kpathsea \
- ./vptovf $srcdir/tests/ptmr tests/xptmr tests/xptmr || exit 1
+ ./vptovf $srcdir/tests/ptmr tests/yptmr tests/yptmr || exit 1
+
+cmp $srcdir/tests/ptmr.vf tests/yptmr.vf || exit 1
+
+cmp $srcdir/tests/ptmr.tfm tests/yptmr.tfm || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ ./vptovf $srcdir/tests/ptmr tests/yptmr2.vf || exit 1
+
+cmp $srcdir/tests/ptmr.vf tests/yptmr2.vf || exit 1
+
+cmp $srcdir/tests/ptmr.tfm tests/yptmr2.tfm || exit 1
diff --git a/Build/source/texk/web2c/web2c/ChangeLog b/Build/source/texk/web2c/web2c/ChangeLog
index 639206ef199..c1d8a1f5f22 100644
--- a/Build/source/texk/web2c/web2c/ChangeLog
+++ b/Build/source/texk/web2c/web2c/ChangeLog
@@ -1,3 +1,7 @@
+2013-12-06 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * common.defines (makesuffix): Add this.
+
2013-07-17 Peter Breitenlohner <peb@mppmu.mpg.de>
* Makefile.am (libweb2c.a): Avoid more 'parallel make' problems.
diff --git a/Build/source/texk/web2c/web2c/common.defines b/Build/source/texk/web2c/web2c/common.defines
index 0923add990a..55739b9f531 100644
--- a/Build/source/texk/web2c/web2c/common.defines
+++ b/Build/source/texk/web2c/web2c/common.defines
@@ -136,6 +136,7 @@
@define function intcast ();
@define function isprint ();
@define function makebinaryfile ();
+@define function makesuffix ();
@define function odd ();
@define function ord ();
@define function round ();