diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2013-12-07 11:21:45 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2013-12-07 11:21:45 +0000 |
commit | 3bbd721df0882f2147bb324f257b66754476fcbf (patch) | |
tree | 10f24bd83f4bf8c4cba5c438044366f427ea6865 /Build/source/texk/web2c/omegaware | |
parent | 12fc55ea548adddbfde8062da475dff9322f52af (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
Diffstat (limited to 'Build/source/texk/web2c/omegaware')
-rw-r--r-- | Build/source/texk/web2c/omegaware/ChangeLog | 11 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/am/omegaware.am | 4 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/ofm2opl.ch | 10 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/ofm2opl.web | 5 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/opl2ofm.ch | 22 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/opl2ofm.web | 19 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/ovf2ovp.ch | 10 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/ovf2ovp.web | 5 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/ovp2ovf.ch | 4 | ||||
-rw-r--r-- | Build/source/texk/web2c/omegaware/ovp2ovf.web | 11 | ||||
-rwxr-xr-x | Build/source/texk/web2c/omegaware/selectfont.test | 8 |
11 files changed, 49 insertions, 60 deletions
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 + |