summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/omegaware
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 /Build/source/texk/web2c/omegaware
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
Diffstat (limited to 'Build/source/texk/web2c/omegaware')
-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
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
+