summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2009-06-01 13:06:15 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2009-06-01 13:06:15 +0000
commit94cac9648a9bc8062c0dc6e9ab684db0ea6c22cf (patch)
tree0f3d95b398c232788ef4b0158af6f62f150205e9
parent03af13bb7efa4ff54513f221db66312562a3cfda (diff)
add test cases for omega font utilities
git-svn-id: svn://tug.org/texlive/trunk@13559 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/web2c/Makefile.in173
-rw-r--r--Build/source/texk/web2c/am/web.am3
-rw-r--r--Build/source/texk/web2c/omegafonts/ChangeLog9
-rw-r--r--Build/source/texk/web2c/omegafonts/Makefile.am26
-rw-r--r--Build/source/texk/web2c/omegafonts/Makefile.in155
-rw-r--r--Build/source/texk/web2c/omegafonts/omfonts.c174
-rwxr-xr-xBuild/source/texk/web2c/omegafonts/omfonts.test34
-rw-r--r--Build/source/texk/web2c/omegafonts/tests/Cherokee.pl420
-rw-r--r--Build/source/texk/web2c/omegafonts/tests/OCherokee.ovp910
-rw-r--r--Build/source/texk/web2c/omegaware/ChangeLog8
-rw-r--r--Build/source/texk/web2c/omegaware/am/omegaware.am13
-rwxr-xr-xBuild/source/texk/web2c/omegaware/level1.test14
-rwxr-xr-xBuild/source/texk/web2c/omegaware/omfonts.test34
-rw-r--r--Build/source/texk/web2c/omegaware/ovp2ovf.ch2
-rw-r--r--Build/source/texk/web2c/tests/Cherokee.pl420
-rw-r--r--Build/source/texk/web2c/tests/OCherokee.ovp790
-rw-r--r--Build/source/texk/web2c/tests/level1.opl24
17 files changed, 3033 insertions, 176 deletions
diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in
index ab42b67508b..ed37f3bf66f 100644
--- a/Build/source/texk/web2c/Makefile.in
+++ b/Build/source/texk/web2c/Makefile.in
@@ -51,7 +51,8 @@ check_PROGRAMS = $(am__EXEEXT_17) $(am__EXEEXT_18) $(am__EXEEXT_19) \
TESTS = tangle.test $(am__EXEEXT_23) ctiedir/ctie.test \
cwebdir/cweave.test tiedir/tie.test $(am__append_4) \
$(am__append_8) $(am__append_11) $(am__append_14) \
- $(am__append_19) $(am__append_35) libmd5/md5.test
+ $(am__append_19) $(am__append_35) $(am__append_36) \
+ libmd5/md5.test
DIST_COMMON = README $(am__configure_deps) $(dist_man_MANS) \
$(srcdir)/../../build-aux/config.guess \
$(srcdir)/../../build-aux/config.sub \
@@ -149,23 +150,24 @@ DIST_COMMON = README $(am__configure_deps) $(dist_man_MANS) \
@OTANGLE_TRUE@am__append_33 = $(omegaware_tools)
@OMFONTS_FALSE@@OTANGLE_TRUE@am__append_34 = $(omegaware_font_tools)
@OTANGLE_TRUE@am__append_35 = omegaware/otangle.test
-@ALEPH_TRUE@am__append_36 = aleph
-@TEX_SYNCTEX_TRUE@am__append_37 = -I$(srcdir)/synctexdir $(ZLIB_INCLUDES)
-@TEX_SYNCTEX_TRUE@am__append_38 = $(ZLIB_LIBS)
-@TEX_SYNCTEX_TRUE@am__append_39 = \
+@OMFONTS_FALSE@@OTANGLE_TRUE@am__append_36 = omegaware/level1.test omegaware/omfonts.test
+@ALEPH_TRUE@am__append_37 = aleph
+@TEX_SYNCTEX_TRUE@am__append_38 = -I$(srcdir)/synctexdir $(ZLIB_INCLUDES)
+@TEX_SYNCTEX_TRUE@am__append_39 = $(ZLIB_LIBS)
+@TEX_SYNCTEX_TRUE@am__append_40 = \
@TEX_SYNCTEX_TRUE@ synctex.c
-@ETEX_SYNCTEX_TRUE@am__append_40 = -I$(srcdir)/synctexdir $(ZLIB_INCLUDES)
-@ETEX_SYNCTEX_TRUE@am__append_41 = $(ZLIB_LIBS)
-@ETEX_SYNCTEX_TRUE@am__append_42 = \
+@ETEX_SYNCTEX_TRUE@am__append_41 = -I$(srcdir)/synctexdir $(ZLIB_INCLUDES)
+@ETEX_SYNCTEX_TRUE@am__append_42 = $(ZLIB_LIBS)
+@ETEX_SYNCTEX_TRUE@am__append_43 = \
@ETEX_SYNCTEX_TRUE@ synctex-e.c
-@PDFTEX_SYNCTEX_TRUE@am__append_43 = -I$(srcdir)/synctexdir
-@PDFTEX_SYNCTEX_TRUE@am__append_44 = \
+@PDFTEX_SYNCTEX_TRUE@am__append_44 = -I$(srcdir)/synctexdir
+@PDFTEX_SYNCTEX_TRUE@am__append_45 = \
@PDFTEX_SYNCTEX_TRUE@ synctex-pdf.c
-@XETEX_SYNCTEX_TRUE@am__append_45 = -I$(srcdir)/synctexdir
-@XETEX_SYNCTEX_TRUE@am__append_46 = \
+@XETEX_SYNCTEX_TRUE@am__append_46 = -I$(srcdir)/synctexdir
+@XETEX_SYNCTEX_TRUE@am__append_47 = \
@XETEX_SYNCTEX_TRUE@ synctex-xe.c
subdir = .
@@ -1032,47 +1034,48 @@ EXTRA_LIBRARIES = libmf.a libmplib.a libpdftex.a liblua51.a libzzip.a \
EXTRA_DIST = PROJECTS cftests config.h cpascal.h help.h tangle.web \
tangle.ch tangleboot.p cwebdir ctangleboot.c cwebboot.c \
tangle.test $(web_programs:=.web) $(web_programs:=.ch) \
- $(web_tests) tests/allbib.aux tests/allbib.tex \
- tests/apalike.bst tests/batch.tex tests/check.log \
- tests/cmr10.600gf tests/cmr10.pk tests/cmr10.pl \
- tests/cmr10.tfm tests/cmr7.tfm tests/cmr8.tfm tests/cmti10.tfm \
- tests/cmtt10.tfm tests/cmtt8.tfm tests/dict tests/eight.tex \
- tests/end.tex tests/exampl.aux tests/exampl.tex tests/gray.tfm \
+ $(web_tests) tests/Cherokee.pl tests/OCherokee.ovp \
+ tests/allbib.aux tests/allbib.tex tests/apalike.bst \
+ tests/batch.tex tests/check.log tests/cmr10.600gf \
+ tests/cmr10.pk tests/cmr10.pl tests/cmr10.tfm tests/cmr7.tfm \
+ tests/cmr8.tfm tests/cmti10.tfm tests/cmtt10.tfm \
+ tests/cmtt8.tfm tests/dict tests/eight.tex tests/end.tex \
+ tests/exampl.aux tests/exampl.tex tests/gray.tfm \
tests/hello.tex tests/io.mf tests/just.texi tests/label.mp \
- tests/label.mpx tests/logo8.tfm tests/longtfm.tex \
- tests/magic.tex tests/memtest.tex tests/mltextst.tex \
- tests/mptest.mp tests/mptest.mpx tests/one.two.mf \
- tests/one.two.mp tests/one.two.tex tests/online.mf \
- tests/openout.mp tests/openout.tex tests/pagenum.dvi \
- tests/pagenum.tex tests/patgen.in tests/patterns \
- tests/plain.mft tests/pplr.dvi tests/pplr.tfm tests/ptmr.dvi \
- tests/ptmr.tfm tests/ptmr.vf tests/ptmr.vpl tests/rpsyr.tfm \
- tests/rptmr.tfm tests/story.dvi tests/testex.err \
- tests/testex.mp tests/testex.tex tests/translate tests/uno.dos \
- tests/write18.tex tests/xampl.bib ctiedir tiedir \
- lib/mfmpi386.asm lib/mfmpw32.c lib/texmfmp.c texmfmem.h \
- texmfmp-help.h texmfmp.h $(tex_ch_srcs) lib/texmfmp.c \
- tmf-pool.h $(tex_tests) mf.web mf-binpool.ch mf.ch mftalk.h \
- lib/texmfmp.c tmf-pool.h $(mf_tests) triptrap/README \
- triptrap/mftrap.diffs triptrap/mftrap.fot triptrap/mftrap.log \
- triptrap/mftrap.pl triptrap/mftrap1.in triptrap/mftrap2.in \
- triptrap/mftrapin.log triptrap/mptrap.diffs \
- triptrap/mptrap.fot triptrap/mptrap.log triptrap/mptrap.pl \
- triptrap/mptrap.readme triptrap/mptrap1.in triptrap/mptrap2.in \
- triptrap/mptrapin.log triptrap/mtrap.0 triptrap/mtrap.1 \
- triptrap/mtrap.log triptrap/mtrap.mp triptrap/texmf.cnf \
- triptrap/trap.148 triptrap/trap.149 triptrap/trap.150 \
- triptrap/trap.151 triptrap/trap.197 triptrap/trap.200 \
- triptrap/trap.5 triptrap/trap.6 triptrap/trap.mf \
- triptrap/trap.mp triptrap/trap.mpx triptrap/trap.typ \
- triptrap/trapf.pl triptrap/trapman.tex triptrap/trip.diffs \
- triptrap/trip.fot triptrap/trip.log triptrap/trip.pl \
- triptrap/trip.tex triptrap/trip.typ triptrap/trip1.in \
- triptrap/trip2.in triptrap/tripin.log triptrap/tripman.tex \
- triptrap/tripos.tex triptrap/writeo triptrap/writeo.2 \
- mplibdir/ChangeLog $(mpost_web) $(mp_tests) $(libmplib_web) \
- mplibdir/lmplib.c $(etex_web_srcs) $(etex_ch_srcs) \
- etexdir/etexextra.in lib/texmfmp.c tmf-pool.h \
+ tests/label.mpx tests/level1.opl tests/logo8.tfm \
+ tests/longtfm.tex tests/magic.tex tests/memtest.tex \
+ tests/mltextst.tex tests/mptest.mp tests/mptest.mpx \
+ tests/one.two.mf tests/one.two.mp tests/one.two.tex \
+ tests/online.mf tests/openout.mp tests/openout.tex \
+ tests/pagenum.dvi tests/pagenum.tex tests/patgen.in \
+ tests/patterns tests/plain.mft tests/pplr.dvi tests/pplr.tfm \
+ tests/ptmr.dvi tests/ptmr.tfm tests/ptmr.vf tests/ptmr.vpl \
+ tests/rpsyr.tfm tests/rptmr.tfm tests/story.dvi \
+ tests/testex.err tests/testex.mp tests/testex.tex \
+ tests/translate tests/uno.dos tests/write18.tex \
+ tests/xampl.bib ctiedir tiedir lib/mfmpi386.asm lib/mfmpw32.c \
+ lib/texmfmp.c texmfmem.h texmfmp-help.h texmfmp.h \
+ $(tex_ch_srcs) lib/texmfmp.c tmf-pool.h $(tex_tests) mf.web \
+ mf-binpool.ch mf.ch mftalk.h lib/texmfmp.c tmf-pool.h \
+ $(mf_tests) triptrap/README triptrap/mftrap.diffs \
+ triptrap/mftrap.fot triptrap/mftrap.log triptrap/mftrap.pl \
+ triptrap/mftrap1.in triptrap/mftrap2.in triptrap/mftrapin.log \
+ triptrap/mptrap.diffs triptrap/mptrap.fot triptrap/mptrap.log \
+ triptrap/mptrap.pl triptrap/mptrap.readme triptrap/mptrap1.in \
+ triptrap/mptrap2.in triptrap/mptrapin.log triptrap/mtrap.0 \
+ triptrap/mtrap.1 triptrap/mtrap.log triptrap/mtrap.mp \
+ triptrap/texmf.cnf triptrap/trap.148 triptrap/trap.149 \
+ triptrap/trap.150 triptrap/trap.151 triptrap/trap.197 \
+ triptrap/trap.200 triptrap/trap.5 triptrap/trap.6 \
+ triptrap/trap.mf triptrap/trap.mp triptrap/trap.mpx \
+ triptrap/trap.typ triptrap/trapf.pl triptrap/trapman.tex \
+ triptrap/trip.diffs triptrap/trip.fot triptrap/trip.log \
+ triptrap/trip.pl triptrap/trip.tex triptrap/trip.typ \
+ triptrap/trip1.in triptrap/trip2.in triptrap/tripin.log \
+ triptrap/tripman.tex triptrap/tripos.tex triptrap/writeo \
+ triptrap/writeo.2 mplibdir/ChangeLog $(mpost_web) $(mp_tests) \
+ $(libmplib_web) mplibdir/lmplib.c $(etex_web_srcs) \
+ $(etex_ch_srcs) etexdir/etexextra.in lib/texmfmp.c tmf-pool.h \
etexdir/ChangeLog etexdir/INSTALL etexdir/README \
etexdir/etex_gen.tex $(etex_tests) etexdir/etrip/etrip.diffs \
etexdir/etrip/etrip.fot etexdir/etrip/etrip.log \
@@ -1214,9 +1217,10 @@ EXTRA_DIST = PROJECTS cftests config.h cpascal.h help.h tangle.web \
xetexdir/LICENSE.txt xetexdir/xetex.mk omegaware/ChangeLog \
$(odvicopy_sources) $(odvitype_sources) $(ofm2opl_sources) \
$(opl2ofm_sources) $(otangle_sources) $(ovf2ovp_sources) \
- $(ovp2ovf_sources) omegaware/otangle.test $(aleph_web_srcs) \
- $(aleph_ch_srcs) lib/texmfmp.c alephdir/ChangeLog \
- alephdir/Makefile alephdir/aleph.defines \
+ $(ovp2ovf_sources) omegaware/level1.test \
+ omegaware/omfonts.test omegaware/otangle.test \
+ $(aleph_web_srcs) $(aleph_ch_srcs) lib/texmfmp.c \
+ alephdir/ChangeLog alephdir/Makefile alephdir/aleph.defines \
alephdir/aleph.version alephdir/eomega.ech alephdir/etex.ch \
alephdir/omega.ch0 alephdir/omega.ch1 alephdir/omega.ch2 \
alephdir/omxml.ch alephdir/aleph.mk synctexdir/INSTALL \
@@ -1263,8 +1267,11 @@ DISTCLEANFILES = $(EXTRA_LIBRARIES) tangle.c tangle.h tangle.p \
xetexdir/etex.version xetexdir/xetex.version \
$(omegaware_programs:=.c) $(omegaware_programs:=.h) \
$(omegaware_programs:=.p) $(omegaware_programs:=-web2c) \
- cftest.p $(nodist_aleph_SOURCES) aleph.web aleph.ch \
- aleph-web2c aleph.p aleph.pool aleph-tangle
+ tests/xlevel1.ofm tests/xlevel1.opl tests/Cherokee.tfm \
+ tests/OCherokee.ofm tests/OCherokee.opl tests/OCherokee.ovf \
+ tests/xCherokee.pl tests/xOCherokee.ofm tests/xOCherokee.opl \
+ tests/xOCherokee.ovp cftest.p $(nodist_aleph_SOURCES) \
+ aleph.web aleph.ch aleph-web2c aleph.p aleph.pool aleph-tangle
CLEANFILES =
web2c = srcdir=$(srcdir) $(SHELL) $(srcdir)/web2c/convert
makecpool = web2c/makecpool
@@ -1317,14 +1324,14 @@ web_tests = $(web_programs:=.test)
nodist_ctie_SOURCES = ctie.c
nodist_cweave_SOURCES = cweave.c cweb.c
nodist_tie_SOURCES = tie.c
-tex_CPPFLAGS = $(am__append_37)
+tex_CPPFLAGS = $(am__append_38)
# With --enable-ipc, TeX may need to link with -lsocket.
-tex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_38)
+tex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_39)
# TeX C sources
tex_c_h = texini.c tex0.c tex1.c tex2.c texcoerce.h texd.h
-nodist_tex_SOURCES = $(tex_c_h) tex-pool.c texextra.c $(am__append_39)
+nodist_tex_SOURCES = $(tex_c_h) tex-pool.c texextra.c $(am__append_40)
tex_ch_srcs = \
tex.web \
tex.ch \
@@ -1363,15 +1370,15 @@ psout_c_h = mppsout.h psout.c mplibps.h
svgout_c_h = mplibsvg.h mpsvgout.h svgout.c
libmplib_web = mplibdir/mp.w mplibdir/psout.w mplibdir/svgout.w \
mplibdir/memio.w mplibdir/tfmin.w
-etex_CPPFLAGS = $(am__append_40)
+etex_CPPFLAGS = $(am__append_41)
# With --enable-ipc, e-TeX may need to link with -lsocket.
-etex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_41)
+etex_LDADD = $(LDADD) $(ipc_socketlibs) $(am__append_42)
# e-TeX C sources
etex_c_h = etexini.c etex0.c etex1.c etex2.c etexcoerce.h etexd.h
nodist_etex_SOURCES = $(etex_c_h) etex-pool.c etexextra.c \
- etexdir/etexextra.h $(am__append_42)
+ etexdir/etexextra.h $(am__append_43)
etex_web_srcs = \
tex.web \
etexdir/etex.ch \
@@ -1395,12 +1402,12 @@ pdftex_dependencies = $(proglib) $(LIBPNG_DEPEND) $(ZLIB_DEPEND) \
$(XPDF_DEPEND) $(OBSDCOMPAT_DEPEND) libmd5.a
nodist_EXTRA_pdftex_SOURCES = dummy.cxx
pdf_tangle = WEBINPUTS=.:$(srcdir)/pdftexdir $(buildenv) $(TANGLE)
-pdftex_CPPFLAGS = $(pdftex_cppflags) $(am__append_43)
+pdftex_CPPFLAGS = $(pdftex_cppflags) $(am__append_44)
pdftex_LDADD = $(pdftex_ldadd) $(LDADD) $(ipc_socketlibs)
pdftex_DEPENDENCIES = $(pdftex_dependencies) libpdftex.a
pdftex_c_h = pdftexini.c pdftex0.c pdftex1.c pdftex2.c pdftex3.c pdftexcoerce.h pdftexd.h
nodist_pdftex_SOURCES = $(pdftex_c_h) pdftex-pool.c pdftexextra.c \
- pdftexdir/pdftexextra.h $(am__append_44)
+ pdftexdir/pdftexextra.h $(am__append_45)
pdftex_ch_srcs = \
pdftexdir/pdftex.web \
pdftexdir/tex.ch0 \
@@ -1843,12 +1850,12 @@ xetex_dependencies = $(proglib) $(ICU_DEPEND) $(TECKIT_DEPEND) \
$(am__append_26) $(am__append_29) $(FREETYPE2_DEPEND) \
$(ZLIB_DEPEND)
@XETEX_MACOSX_TRUE@xetex_LDFLAGS = -framework Carbon -framework Cocoa -framework QuickTime
-xetex_CPPFLAGS = $(xetex_cppflags) $(am__append_45)
+xetex_CPPFLAGS = $(xetex_cppflags) $(am__append_46)
xetex_LDADD = $(xetex_ldadd) $(LDADD) $(ipc_socketlibs)
xetex_DEPENDENCIES = $(xetex_dependencies) $(libxetex)
xetex_c_h = xetexini.c xetex0.c xetex1.c xetex2.c xetexcoerce.h xetexd.h
nodist_xetex_SOURCES = $(xetex_c_h) xetex_pool.c xetexextra.c \
- xetexdir/xetexextra.h $(am__append_46)
+ xetexdir/xetexextra.h $(am__append_47)
xetex_web_srcs = \
tex.web \
etexdir/etex.ch \
@@ -7698,6 +7705,8 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
+@LUATEX_FALSE@@MP_FALSE@install-exec-hook:
+@LUATEX_FALSE@@MP_FALSE@uninstall-hook:
clean: clean-recursive
clean-am: clean-binPROGRAMS clean-checkPROGRAMS clean-generic \
@@ -8103,12 +8112,12 @@ mpxout-ctangle: ctangle$(EXEEXT) mplibdir/mpxout.w
$(mpost_OBJECTS): $(nodist_mpost_SOURCES) libmplib.a
-# Double-colon rule since we do something similar in luatexdir (maybe others).
-install-exec-hook::
- cd $(DESTDIR)$(bindir) && rm -f dvitomp$(EXEEXT) \
- && $(LN_S) mpost$(EXEEXT) dvitomp$(EXEEXT)
-uninstall-hook::
- rm -f $(DESTDIR)$(bindir)/dvitomp$(EXEEXT)
+# Double-colon rules since we do something similar in luatexdir (maybe others).
+@MP_TRUE@install-exec-hook::
+@MP_TRUE@ cd $(DESTDIR)$(bindir) && rm -f dvitomp$(EXEEXT) \
+@MP_TRUE@ && $(LN_S) mpost$(EXEEXT) dvitomp$(EXEEXT)
+@MP_TRUE@uninstall-hook::
+@MP_TRUE@ rm -f $(DESTDIR)$(bindir)/dvitomp$(EXEEXT)
.PHONY: mptrap-clean
clean-local:: mptrap-clean
@@ -8252,15 +8261,15 @@ luatexdir/luatexextra.h: luatexdir/luatexextra.in luatexdir/luatex.version
sed -e s/LUATEX-VERSION/`cat luatexdir/luatex.version`/ \
$(srcdir)/luatexdir/luatexextra.in >$@
-# Double-colon rule since we do something similar in mplibdir (maybe others).
-install-exec-hook::
- cd $(DESTDIR)$(bindir) && rm -f texlua$(EXEEXT) \
- && $(LN_S) luatex$(EXEEXT) texlua$(EXEEXT)
- cd $(DESTDIR)$(bindir) && rm -f texluac$(EXEEXT) \
- && $(LN_S) luatex$(EXEEXT) texluac$(EXEEXT)
-uninstall-hook::
- rm -f $(DESTDIR)$(bindir)/texlua$(EXEEXT)
- rm -f $(DESTDIR)$(bindir)/texluac$(EXEEXT)
+# Double-colon rules since we do something similar in mplibdir (maybe others).
+@LUATEX_TRUE@install-exec-hook::
+@LUATEX_TRUE@ cd $(DESTDIR)$(bindir) && rm -f texlua$(EXEEXT) \
+@LUATEX_TRUE@ && $(LN_S) luatex$(EXEEXT) texlua$(EXEEXT)
+@LUATEX_TRUE@ cd $(DESTDIR)$(bindir) && rm -f texluac$(EXEEXT) \
+@LUATEX_TRUE@ && $(LN_S) luatex$(EXEEXT) texluac$(EXEEXT)
+@LUATEX_TRUE@uninstall-hook::
+@LUATEX_TRUE@ rm -f $(DESTDIR)$(bindir)/texlua$(EXEEXT)
+@LUATEX_TRUE@ rm -f $(DESTDIR)$(bindir)/texluac$(EXEEXT)
luatangle.c luatangle.h: luatangle-web2c
luatangle-web2c: $(web2c_depend) luatangle.p
$(web2c) luatangle
diff --git a/Build/source/texk/web2c/am/web.am b/Build/source/texk/web2c/am/web.am
index 12ca5a72739..12a91412a9f 100644
--- a/Build/source/texk/web2c/am/web.am
+++ b/Build/source/texk/web2c/am/web.am
@@ -207,6 +207,8 @@ DISTCLEANFILES += pooltype.tex
## Test data
##
EXTRA_DIST += \
+ tests/Cherokee.pl \
+ tests/OCherokee.ovp \
tests/allbib.aux \
tests/allbib.tex \
tests/apalike.bst \
@@ -232,6 +234,7 @@ EXTRA_DIST += \
tests/just.texi \
tests/label.mp \
tests/label.mpx \
+ tests/level1.opl \
tests/logo8.tfm \
tests/longtfm.tex \
tests/magic.tex \
diff --git a/Build/source/texk/web2c/omegafonts/ChangeLog b/Build/source/texk/web2c/omegafonts/ChangeLog
index 8e8421414b6..68d7f7eacb9 100644
--- a/Build/source/texk/web2c/omegafonts/ChangeLog
+++ b/Build/source/texk/web2c/omegafonts/ChangeLog
@@ -1,3 +1,12 @@
+2009-05-31 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * omfonts.c: allow 'omfonts -ofm2opl' to be ofm2opl etc., used
+ to test uninstalled program.
+
+ * omfonts.test (new): Shell script to test ofm2opl etc.
+ * tests/* (new): test data.
+ * Makefile.am: add the new test.
+
2009-04-01 Peter Breitenlohner <peb@mppmu.mpg.de>
* pl-lexer.l: Add #ifdef __MINGW32__ to source file.
diff --git a/Build/source/texk/web2c/omegafonts/Makefile.am b/Build/source/texk/web2c/omegafonts/Makefile.am
index d8b553a639a..ded304edd66 100644
--- a/Build/source/texk/web2c/omegafonts/Makefile.am
+++ b/Build/source/texk/web2c/omegafonts/Makefile.am
@@ -19,8 +19,11 @@ $(proglib): $(KPATHSEA_DEPEND) ${top_srcdir}/lib/*.c
## Rebuild libkpathsea
@KPATHSEA_RULE@
+bin_PROGRAMS =
if OTANGLE
-bin_PROGRAMS = omfonts
+if OMFONTS
+bin_PROGRAMS += omfonts
+endif OMFONTS
endif OTANGLE
EXTRA_PROGRAMS = omfonts
@@ -66,6 +69,7 @@ DISTCLEANFILES = pl-parser.output
linked_programs = ofm2opl opl2ofm ovf2ovp ovp2ovf
if OTANGLE
+if OMFONTS
install-exec-hook:
cd $(DESTDIR)$(bindir) && \
for f in $(linked_programs); do \
@@ -76,5 +80,25 @@ unistall-hook:
for f in $(linked_programs); do \
rm -f $(DESTDIR)$(bindir)/$$f$(EXEEXT); \
done
+endif OMFONTS
endif OTANGLE
+## Tests
+##
+EXTRA_DIST = omfonts.test
+
+## Test data
+##
+EXTRA_DIST += tests/Cherokee.pl tests/OCherokee.ovp
+
+if OTANGLE
+if OMFONTS
+TESTS = omfonts.test
+endif OMFONTS
+endif OTANGLE
+
+DISTCLEANFILES += tests/Cherokee.tfm tests/OCherokee.ofm \
+ tests/OCherokee.opl tests/OCherokee.ovf \
+ tests/xCherokee.pl tests/xOCherokee.ofm \
+ tests/xOCherokee.opl tests/xOCherokee.ovp
+
diff --git a/Build/source/texk/web2c/omegafonts/Makefile.in b/Build/source/texk/web2c/omegafonts/Makefile.in
index cbb33f321dd..0d1cc11ff6d 100644
--- a/Build/source/texk/web2c/omegafonts/Makefile.in
+++ b/Build/source/texk/web2c/omegafonts/Makefile.in
@@ -34,7 +34,8 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
-@OTANGLE_TRUE@bin_PROGRAMS = omfonts$(EXEEXT)
+bin_PROGRAMS = $(am__EXEEXT_1)
+@OMFONTS_TRUE@@OTANGLE_TRUE@am__append_1 = omfonts
EXTRA_PROGRAMS = omfonts$(EXEEXT)
subdir = omegafonts
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog \
@@ -71,6 +72,7 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/../../build-aux/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/c-auto.h $(top_builddir)/ff-config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
+@OMFONTS_TRUE@@OTANGLE_TRUE@am__EXEEXT_1 = omfonts$(EXEEXT)
am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
am_omfonts_OBJECTS = char_routines.$(OBJEXT) dimen_routines.$(OBJEXT) \
@@ -112,6 +114,8 @@ SOURCES = $(omfonts_SOURCES)
DIST_SOURCES = $(omfonts_SOURCES)
ETAGS = etags
CTAGS = ctags
+am__tty_colors = \
+red=; grn=; lgn=; blu=; std=
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -328,8 +332,13 @@ omfonts_SOURCES = \
print_routines.h
LDADD = $(LEXLIB) $(proglib) $(KPATHSEA_LIBS)
-DISTCLEANFILES = pl-parser.output
+DISTCLEANFILES = pl-parser.output tests/Cherokee.tfm \
+ tests/OCherokee.ofm tests/OCherokee.opl tests/OCherokee.ovf \
+ tests/xCherokee.pl tests/xOCherokee.ofm tests/xOCherokee.opl \
+ tests/xOCherokee.ovp
linked_programs = ofm2opl opl2ofm ovf2ovp ovp2ovf
+EXTRA_DIST = omfonts.test tests/Cherokee.pl tests/OCherokee.ovp
+@OMFONTS_TRUE@@OTANGLE_TRUE@TESTS = omfonts.test
all: all-am
.SUFFIXES:
@@ -524,6 +533,98 @@ GTAGS:
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-TESTS: $(TESTS)
+ @failed=0; all=0; xfail=0; xpass=0; skip=0; \
+ srcdir=$(srcdir); export srcdir; \
+ list=' $(TESTS) '; \
+ $(am__tty_colors); \
+ if test -n "$$list"; then \
+ for tst in $$list; do \
+ if test -f ./$$tst; then dir=./; \
+ elif test -f $$tst; then dir=; \
+ else dir="$(srcdir)/"; fi; \
+ if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xpass=`expr $$xpass + 1`; \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=XPASS; \
+ ;; \
+ *) \
+ col=$$grn; res=PASS; \
+ ;; \
+ esac; \
+ elif test $$? -ne 77; then \
+ all=`expr $$all + 1`; \
+ case " $(XFAIL_TESTS) " in \
+ *[\ \ ]$$tst[\ \ ]*) \
+ xfail=`expr $$xfail + 1`; \
+ col=$$lgn; res=XFAIL; \
+ ;; \
+ *) \
+ failed=`expr $$failed + 1`; \
+ col=$$red; res=FAIL; \
+ ;; \
+ esac; \
+ else \
+ skip=`expr $$skip + 1`; \
+ col=$$blu; res=SKIP; \
+ fi; \
+ echo "$${col}$$res$${std}: $$tst"; \
+ done; \
+ if test "$$all" -eq 1; then \
+ tests="test"; \
+ All=""; \
+ else \
+ tests="tests"; \
+ All="All "; \
+ fi; \
+ if test "$$failed" -eq 0; then \
+ if test "$$xfail" -eq 0; then \
+ banner="$$All$$all $$tests passed"; \
+ else \
+ if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \
+ banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \
+ fi; \
+ else \
+ if test "$$xpass" -eq 0; then \
+ banner="$$failed of $$all $$tests failed"; \
+ else \
+ if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \
+ banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \
+ fi; \
+ fi; \
+ dashes="$$banner"; \
+ skipped=""; \
+ if test "$$skip" -ne 0; then \
+ if test "$$skip" -eq 1; then \
+ skipped="($$skip test was not run)"; \
+ else \
+ skipped="($$skip tests were not run)"; \
+ fi; \
+ test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$skipped"; \
+ fi; \
+ report=""; \
+ if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \
+ report="Please report to $(PACKAGE_BUGREPORT)"; \
+ test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \
+ dashes="$$report"; \
+ fi; \
+ dashes=`echo "$$dashes" | sed s/./=/g`; \
+ if test "$$failed" -eq 0; then \
+ echo "$$grn$$dashes"; \
+ else \
+ echo "$$red$$dashes"; \
+ fi; \
+ echo "$$banner"; \
+ test -z "$$skipped" || echo "$$skipped"; \
+ test -z "$$report" || echo "$$report"; \
+ echo "$$dashes$$std"; \
+ test "$$failed" -eq 0; \
+ else :; fi
+
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@@ -555,6 +656,7 @@ distdir: $(DISTFILES)
fi; \
done
check-am: all-am
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-am
all-am: Makefile $(PROGRAMS)
installdirs:
@@ -590,6 +692,7 @@ maintainer-clean-generic:
-rm -f pl-lexer.c
-rm -f pl-parser.c
-rm -f pl-parser.h
+@OMFONTS_FALSE@install-exec-hook:
@OTANGLE_FALSE@install-exec-hook:
clean: clean-am
@@ -662,21 +765,21 @@ ps-am:
uninstall-am: uninstall-binPROGRAMS
-.MAKE: install-am install-exec-am install-strip
+.MAKE: check-am install-am install-exec-am install-strip
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic clean-libtool ctags distclean distclean-compile \
- distclean-generic distclean-libtool distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-binPROGRAMS install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-exec-hook \
- install-html install-html-am install-info install-info-am \
- install-man install-pdf install-pdf-am install-ps \
- install-ps-am install-strip installcheck installcheck-am \
- installdirs maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
- uninstall-am uninstall-binPROGRAMS
+.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
+ clean-binPROGRAMS clean-generic clean-libtool ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-binPROGRAMS install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-exec-hook install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags uninstall uninstall-am uninstall-binPROGRAMS
# Automake automatically uses $(proglib)=../lib/lib.a as dependency.
@@ -689,16 +792,16 @@ $(proglib): $(KPATHSEA_DEPEND) ${top_srcdir}/lib/*.c
@KPATHSEA_RULE@
-@OTANGLE_TRUE@install-exec-hook:
-@OTANGLE_TRUE@ cd $(DESTDIR)$(bindir) && \
-@OTANGLE_TRUE@ for f in $(linked_programs); do \
-@OTANGLE_TRUE@ rm -f $$f$(EXEEXT) && \
-@OTANGLE_TRUE@ $(LN_S) omfonts$(EXEEXT) $$f$(EXEEXT) || exit 1; \
-@OTANGLE_TRUE@ done
-@OTANGLE_TRUE@unistall-hook:
-@OTANGLE_TRUE@ for f in $(linked_programs); do \
-@OTANGLE_TRUE@ rm -f $(DESTDIR)$(bindir)/$$f$(EXEEXT); \
-@OTANGLE_TRUE@ done
+@OMFONTS_TRUE@@OTANGLE_TRUE@install-exec-hook:
+@OMFONTS_TRUE@@OTANGLE_TRUE@ cd $(DESTDIR)$(bindir) && \
+@OMFONTS_TRUE@@OTANGLE_TRUE@ for f in $(linked_programs); do \
+@OMFONTS_TRUE@@OTANGLE_TRUE@ rm -f $$f$(EXEEXT) && \
+@OMFONTS_TRUE@@OTANGLE_TRUE@ $(LN_S) omfonts$(EXEEXT) $$f$(EXEEXT) || exit 1; \
+@OMFONTS_TRUE@@OTANGLE_TRUE@ done
+@OMFONTS_TRUE@@OTANGLE_TRUE@unistall-hook:
+@OMFONTS_TRUE@@OTANGLE_TRUE@ for f in $(linked_programs); do \
+@OMFONTS_TRUE@@OTANGLE_TRUE@ rm -f $(DESTDIR)$(bindir)/$$f$(EXEEXT); \
+@OMFONTS_TRUE@@OTANGLE_TRUE@ done
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/Build/source/texk/web2c/omegafonts/omfonts.c b/Build/source/texk/web2c/omegafonts/omfonts.c
index 5d24af51b3a..48c44494eed 100644
--- a/Build/source/texk/web2c/omegafonts/omfonts.c
+++ b/Build/source/texk/web2c/omegafonts/omfonts.c
@@ -40,10 +40,11 @@ along with Omega; if not, write to the Free Software Foundation, Inc.,
#define PROG_MIN 0
#define PROG_OFM2OPL 0
-#define PROG_OVF2OVP 1
-#define PROG_OPL2OFM 2
+#define PROG_OPL2OFM 1
+#define PROG_OVF2OVP 2
#define PROG_OVP2OVF 3
-#define PROG_MAX 3
+#define PROG_OMFONTS 4
+#define PROG_NUM 5
extern FILE *yyin;
@@ -74,10 +75,28 @@ unsigned length_ofm = 0;
unsigned length_ovf = 0;
const_string name_program;
-const_string *name_help;
-string name_msg;
-string name_empty = NULL;
+const_string OMFONTSHELP[] = {
+ "Usage: omfomts -ofm2opl [OPTION]... FILE...",
+ " omfomts -opl2ofm [OPTION]... FILE...",
+ " omfomts -ovf2ovp [OPTION]... FILE...",
+ " omfomts -ovp2ovf [OPTION]... FILE...",
+ "",
+ "be ofm2opl, opl2ofm, ovf2ovp, or ovp2ovf",
+ NULL
+};
+
+static const_string names_program[PROG_NUM] =
+ { "ofm2opl", "opl2ofm", "ovf2ovp", "ovp2ovf", "omfonts" };
+static const_string *names_help[PROG_NUM] =
+ { OFM2OPLHELP, OPL2OFMHELP, OVF2OVPHELP, OVP2OVFHELP, OMFONTSHELP };
+static string names_msg[PROG_NUM] = {
+ "This is ofm2opl, Version 2.0",
+ "This is opl2ofm, Version 2.0",
+ "This is ovf2ovp, Version 2.0",
+ "This is ovp2ovf, Version 2.0",
+ "This is omfomts, Version 2.0"
+};
int no_files=0;
string *files[3] = {NULL, NULL, NULL};
@@ -89,6 +108,10 @@ static struct option long_options[] = {
{"char-format", 1, 0, 0},
{"num-format", 1, 0, 0},
{"text-format", 1, 0, 0},
+ {"ofm2opl", 0, 0, 0},
+ {"opl2ofm", 0, 0, 0},
+ {"ovf2ovp", 0, 0, 0},
+ {"ovp2ovf", 0, 0, 0},
{"help", 0, 0, 0},
{"version", 0, 0, 0},
{0, 0, 0, 0}
@@ -104,82 +127,43 @@ main (int argc, string *argv)
if (!strcmp(name_program, "ofm2opl") ||
!strcmp(name_program, "OFM2OPL.EXE")) {
program = PROG_OFM2OPL;
- name_help = OFM2OPLHELP;
- name_program = "ofm2opl";
- name_msg = "This is ofm2opl, Version 2.0";
- no_files = 2;
- files[0] = &name_ofm;
- files[1] = &name_opl;
- suffixes[0] = "ofm";
- suffixes[1] = "opl";
- full_suffixes[0] = ".ofm";
- full_suffixes[1] = ".opl";
} else if (!strcmp(name_program, "opl2ofm") ||
!strcmp(name_program, "OPL2OFM.EXE")) {
program = PROG_OPL2OFM;
- name_help = OPL2OFMHELP;
- name_program = "opl2ofm";
- name_msg = "This is opl2ofm, Version 2.0";
- no_files = 2;
- files[0] = &name_opl;
- files[1] = &name_ofm;
- suffixes[0] = "opl";
- suffixes[1] = "ofm";
- full_suffixes[0] = ".opl";
- full_suffixes[1] = ".ofm";
- } else if (!strcmp(name_program, "ovp2ovf") ||
- !strcmp(name_program, "OVP2OVF.EXE")) {
- program = PROG_OVP2OVF;
- name_help = OVP2OVFHELP;
- name_program = "ovp2ovf";
- name_msg = "This is ovp2ovf, Version 2.0";
- no_files = 3;
- files[0] = &name_ovp;
- files[1] = &name_ovf;
- files[2] = &name_ofm;
- suffixes[0] = "ovp";
- suffixes[1] = "ovf";
- suffixes[2] = "ofm";
- full_suffixes[0] = ".ovp";
- full_suffixes[1] = ".ovf";
- full_suffixes[2] = ".ofm";
} else if (!strcmp(name_program, "ovf2ovp") ||
!strcmp(name_program, "OVF2OVP.EXE")) {
program = PROG_OVF2OVP;
- name_help = OVF2OVPHELP;
- name_program = "ovf2ovp";
- name_msg = "This is ovf2ovp, Version 2.0";
- no_files = 3;
- files[0] = &name_ovf;
- files[1] = &name_ofm;
- files[2] = &name_ovp;
- suffixes[0] = "ovf";
- suffixes[1] = "ofm";
- suffixes[2] = "ovp";
- full_suffixes[0] = ".ovf";
- full_suffixes[1] = ".ofm";
- full_suffixes[2] = ".ovp";
+ } else if (!strcmp(name_program, "ovp2ovf") ||
+ !strcmp(name_program, "OVP2OVF.EXE")) {
+ program = PROG_OVP2OVF;
} else {
- fprintf(stderr , "Unrecognized program: %s\n", name_program);
- fprintf(stderr ,
- "This binary supports ofm2opl, opl2ofm, ovf2ovp, and ovp2ovf\n");
- exit(1);
+ program = PROG_OMFONTS;
}
- kpse_set_program_name(name_program, NULL);
- kpse_init_prog(uppercasify(name_program), 0, nil, nil);
do {
getopt_return_val =
getopt_long_only(argc, argv, "", long_options, &option_index) ;
if (getopt_return_val == -1) { ; }
- else if ( getopt_return_val == 63 ) {
- usage (name_program);
+ else if ( getopt_return_val == '?' ) {
+ usage (names_program[program]);
} else if (!strcmp(long_options[option_index].name, "help")) {
- usagehelp (name_help, NULL);
+ usagehelp (names_help[program], NULL);
} else if (!strcmp(long_options[option_index ].name, "version")) {
- printversionandexit(name_msg, nil,
+ printversionandexit(names_msg[program], nil,
"J. Plaice, Y. Haralambous, D.E. Knuth",
nil);
+ } else if (!strcmp(long_options[option_index ].name, "ofm2opl")) {
+ if (program == PROG_OMFONTS) program = PROG_OFM2OPL;
+ else usage (names_program[program]);
+ } else if (!strcmp(long_options[option_index ].name, "opl2ofm")) {
+ if (program == PROG_OMFONTS) program = PROG_OPL2OFM;
+ else usage (names_program[program]);
+ } else if (!strcmp(long_options[option_index ].name, "ovf2ovp")) {
+ if (program == PROG_OMFONTS) program = PROG_OVF2OVP;
+ else usage (names_program[program]);
+ } else if (!strcmp(long_options[option_index ].name, "ovp2ovf")) {
+ if (program == PROG_OMFONTS) program = PROG_OVP2OVF;
+ else usage (names_program[program]);
} else if (!strcmp(long_options[option_index ].name, "char-format")) {
if (!strcmp(optarg, "ascii")) char_format = CHAR_CODE_ASCII;
else if (!strcmp(optarg, "num")) char_format = CHAR_CODE_NUM;
@@ -194,6 +178,66 @@ main (int argc, string *argv)
else warning_s("Bad text code format (%s)", optarg);
}
} while (getopt_return_val != -1);
+
+ switch(program) {
+ case PROG_OFM2OPL: {
+ no_files = 2;
+ files[0] = &name_ofm;
+ files[1] = &name_opl;
+ suffixes[0] = "ofm";
+ suffixes[1] = "opl";
+ full_suffixes[0] = ".ofm";
+ full_suffixes[1] = ".opl";
+ break;
+ }
+ case PROG_OPL2OFM: {
+ no_files = 2;
+ files[0] = &name_opl;
+ files[1] = &name_ofm;
+ suffixes[0] = "opl";
+ suffixes[1] = "ofm";
+ full_suffixes[0] = ".opl";
+ full_suffixes[1] = ".ofm";
+ break;
+ }
+ case PROG_OVF2OVP: {
+ no_files = 3;
+ files[0] = &name_ovf;
+ files[1] = &name_ofm;
+ files[2] = &name_ovp;
+ suffixes[0] = "ovf";
+ suffixes[1] = "ofm";
+ suffixes[2] = "ovp";
+ full_suffixes[0] = ".ovf";
+ full_suffixes[1] = ".ofm";
+ full_suffixes[2] = ".ovp";
+ break;
+ }
+ case PROG_OVP2OVF: {
+ no_files = 3;
+ files[0] = &name_ovp;
+ files[1] = &name_ovf;
+ files[2] = &name_ofm;
+ suffixes[0] = "ovp";
+ suffixes[1] = "ovf";
+ suffixes[2] = "ofm";
+ full_suffixes[0] = ".ovp";
+ full_suffixes[1] = ".ovf";
+ full_suffixes[2] = ".ofm";
+ break;
+ }
+ default: {
+ fprintf(stderr , "Unrecognized program: %s\n", name_program);
+ fprintf(stderr ,
+ "This binary supports ofm2opl, opl2ofm, ovf2ovp, and ovp2ovf\n");
+ usage ("omfonts");
+ }
+ }
+
+ name_program = names_program[program];
+ kpse_set_program_name(name_program, NULL);
+ kpse_init_prog(uppercasify(name_program), 0, nil, nil);
+
if (((argc-optind) > no_files) || ((argc-optind) < 1)) {
fprintf(stderr , "%s: %s\n", name_program,
no_files == 2 ? "Need one or two file arguments."
diff --git a/Build/source/texk/web2c/omegafonts/omfonts.test b/Build/source/texk/web2c/omegafonts/omfonts.test
new file mode 100755
index 00000000000..7e5169fa769
--- /dev/null
+++ b/Build/source/texk/web2c/omegafonts/omfonts.test
@@ -0,0 +1,34 @@
+#! /bin/sh
+
+# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# You may freely use, modify and/or distribute this file.
+
+test -d tests || mkdir -p tests
+
+../pltotf $srcdir/tests/Cherokee tests/Cherokee || exit 1
+
+TEXMFCNF=$srcdir/../../kpathsea \
+ ../tftopl tests/Cherokee tests/xCherokee || exit 1
+
+diff $srcdir/tests/Cherokee.pl tests/xCherokee.pl || exit 1
+
+TEXMFCNF=$srcdir/../../kpathsea \
+ OFMFONTS=tests \
+ ./omfonts -ovp2ovf -verbose $srcdir/tests/OCherokee tests/OCherokee tests/OCherokee || exit 1
+
+TEXMFCNF=$srcdir/../../kpathsea \
+ ./omfonts -ofm2opl -verbose tests/OCherokee tests/OCherokee || exit 1
+
+./omfonts -opl2ofm -verbose tests/OCherokee tests/xOCherokee || exit 1
+
+TEXMFCNF=$srcdir/../../kpathsea \
+ ./omfonts -ofm2opl -verbose tests/xOCherokee tests/xOCherokee || exit 1
+
+diff tests/OCherokee.opl tests/xOCherokee.opl || exit 1
+
+TEXMFCNF=$srcdir/../../kpathsea \
+ OFMFONTS=.:./tests \
+ ./omfonts -ovf2ovp -verbose tests/OCherokee tests/OCherokee tests/xOCherokee || exit 1
+
+diff $srcdir/tests/OCherokee.ovp tests/xOCherokee.ovp || exit 1
+
diff --git a/Build/source/texk/web2c/omegafonts/tests/Cherokee.pl b/Build/source/texk/web2c/omegafonts/tests/Cherokee.pl
new file mode 100644
index 00000000000..30394d07004
--- /dev/null
+++ b/Build/source/texk/web2c/omegafonts/tests/Cherokee.pl
@@ -0,0 +1,420 @@
+(FAMILY TEX-CHEROKEE8R)
+(FACE F MRR)
+(CODINGSCHEME TEXBASE1ENCODING)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 35372474052)
+(SEVENBITSAFEFLAG TRUE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.5)
+ (STRETCH R 0.2)
+ (SHRINK R 0.1)
+ (XHEIGHT R 0.8)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.111)
+ )
+(CHARACTER O 36
+ (CHARWD R 0.728)
+ (CHARHT R 0.7865)
+ )
+(CHARACTER O 37
+ (CHARWD R 0.12)
+ (CHARHT R 0.793)
+ )
+(CHARACTER O 40
+ (CHARWD R 0.5)
+ )
+(CHARACTER O 41
+ (CHARWD R 0.665)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 42
+ (CHARWD R 0.285)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER O 43
+ (CHARWD R 0.672)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 44
+ (CHARWD R 0.477)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 45
+ (CHARWD R 1.044)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 46
+ (CHARWD R 1.132)
+ (CHARHT R 0.8065)
+ (CHARDP R 0.002)
+ )
+(CHARACTER O 50
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ )
+(CHARACTER O 51
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ )
+(CHARACTER O 52
+ (CHARWD R 0.774)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 53
+ (CHARWD R 1.0)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 54
+ (CHARWD R 0.25)
+ (CHARHT R 0.098)
+ (CHARDP R 0.167)
+ )
+(CHARACTER O 55
+ (CHARWD R 0.546)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 56
+ (CHARWD R 0.25)
+ (CHARHT R 0.095)
+ (CHARDP R 0.014)
+ )
+(CHARACTER O 57
+ (CHARWD R 0.795)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C 0
+ (CHARWD R 0.904)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C 1
+ (CHARWD R 1.98)
+ (CHARHT R 0.575)
+ (CHARDP R 0.014)
+ )
+(CHARACTER C 2
+ (CHARWD R 1.724)
+ (CHARHT R 0.601)
+ )
+(CHARACTER C 3
+ (CHARWD R 1.247)
+ (CHARHT R 0.598)
+ )
+(CHARACTER C 4
+ (CHARWD R 1.084)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C 5
+ (CHARWD R 0.936)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C 6
+ (CHARWD R 0.764)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C 7
+ (CHARWD R 0.728)
+ (CHARHT R 0.8035)
+ (CHARDP R 0.004)
+ )
+(CHARACTER C 8
+ (CHARWD R 0.84)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C 9
+ (CHARWD R 0.934)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.003)
+ )
+(CHARACTER O 72
+ (CHARWD R 0.816)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 73
+ (CHARWD R 0.988)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 74
+ (CHARWD R 0.972)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 75
+ (CHARWD R 0.924)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER O 76
+ (CHARWD R 0.675)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 77
+ (CHARWD R 1.297)
+ (CHARHT R 0.8065)
+ )
+(CHARACTER O 100
+ (CHARWD R 0.891)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C A
+ (CHARWD R 0.753)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C B
+ (CHARWD R 0.567)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.135)
+ )
+(CHARACTER C C
+ (CHARWD R 0.666)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C D
+ (CHARWD R 0.603)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C E
+ (CHARWD R 0.723)
+ (CHARHT R 0.8035)
+ )
+(CHARACTER C F
+ (CHARWD R 0.759)
+ (CHARHT R 0.8035)
+ )
+(CHARACTER C G
+ (CHARWD R 0.762)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C H
+ (CHARWD R 0.882)
+ (CHARHT R 0.8035)
+ )
+(CHARACTER C I
+ (CHARWD R 0.831)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C J
+ (CHARWD R 0.576)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C K
+ (CHARWD R 0.657)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C L
+ (CHARWD R 0.534)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C M
+ (CHARWD R 0.879)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C N
+ (CHARWD R 0.747)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C O
+ (CHARWD R 0.948)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C P
+ (CHARWD R 0.954)
+ (CHARHT R 0.788)
+ )
+(CHARACTER C Q
+ (CHARWD R 0.732)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C R
+ (CHARWD R 0.72)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C S
+ (CHARWD R 0.558)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C T
+ (CHARWD R 0.654)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.005)
+ )
+(CHARACTER C U
+ (CHARWD R 0.705)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C V
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C W
+ (CHARWD R 0.852)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.004)
+ )
+(CHARACTER C X
+ (CHARWD R 0.633)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C Y
+ (CHARWD R 0.759)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C Z
+ (CHARWD R 0.66)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 133
+ (CHARWD R 0.576)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 134
+ (CHARWD R 0.69)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 135
+ (CHARWD R 0.663)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 136
+ (CHARWD R 0.647)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 137
+ (CHARWD R 0.552)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ )
+(CHARACTER C a
+ (CHARWD R 0.756)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C b
+ (CHARWD R 0.639)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C c
+ (CHARWD R 0.594)
+ (CHARHT R 0.8015)
+ (CHARDP R 0.006)
+ )
+(CHARACTER C d
+ (CHARWD R 0.672)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C e
+ (CHARWD R 0.81)
+ (CHARHT R 0.7975)
+ (CHARDP R 0.005)
+ )
+(CHARACTER C f
+ (CHARWD R 0.834)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ )
+(CHARACTER C g
+ (CHARWD R 0.777)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C h
+ (CHARWD R 0.702)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ )
+(CHARACTER C i
+ (CHARWD R 0.579)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C j
+ (CHARWD R 0.612)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.007)
+ )
+(CHARACTER C k
+ (CHARWD R 0.708)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C l
+ (CHARWD R 0.651)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C m
+ (CHARWD R 0.963)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C n
+ (CHARWD R 0.747)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C o
+ (CHARWD R 0.735)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C p
+ (CHARWD R 0.978)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C q
+ (CHARWD R 0.714)
+ (CHARHT R 0.788)
+ )
+(CHARACTER C r
+ (CHARWD R 0.918)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C s
+ (CHARWD R 0.957)
+ (CHARHT R 0.7865)
+ (CHARDP R 0.003)
+ )
+(CHARACTER C t
+ (CHARWD R 0.969)
+ (CHARHT R 0.8065)
+ )
+(CHARACTER C u
+ (CHARWD R 0.792)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C v
+ (CHARWD R 0.444)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C w
+ (CHARWD R 0.966)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C x
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C y
+ (CHARWD R 0.897)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C z
+ (CHARWD R 0.726)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 173
+ (CHARWD R 0.858)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER O 174
+ (CHARWD R 0.609)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.004)
+ )
+(CHARACTER O 175
+ (CHARWD R 0.711)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ )
+(CHARACTER O 176
+ (CHARWD R 1.032)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER O 255
+ (CHARWD R 0.546)
+ (CHARHT R 0.7995)
+ )
diff --git a/Build/source/texk/web2c/omegafonts/tests/OCherokee.ovp b/Build/source/texk/web2c/omegafonts/tests/OCherokee.ovp
new file mode 100644
index 00000000000..ecbfd13f40f
--- /dev/null
+++ b/Build/source/texk/web2c/omegafonts/tests/OCherokee.ovp
@@ -0,0 +1,910 @@
+(VTITLE )
+(OFMLEVEL D 0)
+(FONTDIR TL)
+(FAMILY CHEROKEE)
+(FACE F MRR)
+(CODINGSCHEME SHIFTED CHEROKEE TEX)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM H 5EDB811F)
+(SEVENBITSAFEFLAG FALSE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.5)
+ (STRETCH R 0.3)
+ (SHRINK R 0.1)
+ (XHEIGHT R 0.8)
+ (QUAD R 1.0)
+ )
+(MAPFONT D 0
+ (FONTNAME Cherokee)
+ (FONTCHECKSUM H EBEA782A)
+ (FONTAT R 1.0)
+ (FONTDSIZE R 10.0)
+ )
+(COMMENT
+ (CHARWD_ENTRY D 0 R 0.0)
+ (CHARWD_ENTRY D 1 R 0.25)
+ (CHARWD_ENTRY D 2 R 0.333)
+ (CHARWD_ENTRY D 3 R 0.477)
+ (CHARWD_ENTRY D 4 R 0.534)
+ (CHARWD_ENTRY D 5 R 0.546)
+ (CHARWD_ENTRY D 6 R 0.552)
+ (CHARWD_ENTRY D 7 R 0.554)
+ (CHARWD_ENTRY D 8 R 0.558)
+ (CHARWD_ENTRY D 9 R 0.567)
+ (CHARWD_ENTRY D 10 R 0.576)
+ (CHARWD_ENTRY D 11 R 0.579)
+ (CHARWD_ENTRY D 12 R 0.594)
+ (CHARWD_ENTRY D 13 R 0.603)
+ (CHARWD_ENTRY D 14 R 0.609)
+ (CHARWD_ENTRY D 15 R 0.612)
+ (CHARWD_ENTRY D 16 R 0.633)
+ (CHARWD_ENTRY D 17 R 0.639)
+ (CHARWD_ENTRY D 18 R 0.647)
+ (CHARWD_ENTRY D 19 R 0.651)
+ (CHARWD_ENTRY D 20 R 0.654)
+ (CHARWD_ENTRY D 21 R 0.657)
+ (CHARWD_ENTRY D 22 R 0.66)
+ (CHARWD_ENTRY D 23 R 0.663)
+ (CHARWD_ENTRY D 24 R 0.665)
+ (CHARWD_ENTRY D 25 R 0.666)
+ (CHARWD_ENTRY D 26 R 0.672)
+ (CHARWD_ENTRY D 27 R 0.675)
+ (CHARWD_ENTRY D 28 R 0.69)
+ (CHARWD_ENTRY D 29 R 0.702)
+ (CHARWD_ENTRY D 30 R 0.705)
+ (CHARWD_ENTRY D 31 R 0.708)
+ (CHARWD_ENTRY D 32 R 0.711)
+ (CHARWD_ENTRY D 33 R 0.714)
+ (CHARWD_ENTRY D 34 R 0.72)
+ (CHARWD_ENTRY D 35 R 0.723)
+ (CHARWD_ENTRY D 36 R 0.726)
+ (CHARWD_ENTRY D 37 R 0.728)
+ (CHARWD_ENTRY D 38 R 0.729)
+ (CHARWD_ENTRY D 39 R 0.732)
+ (CHARWD_ENTRY D 40 R 0.735)
+ (CHARWD_ENTRY D 41 R 0.747)
+ (CHARWD_ENTRY D 42 R 0.753)
+ (CHARWD_ENTRY D 43 R 0.756)
+ (CHARWD_ENTRY D 44 R 0.759)
+ (CHARWD_ENTRY D 45 R 0.762)
+ (CHARWD_ENTRY D 46 R 0.764)
+ (CHARWD_ENTRY D 47 R 0.774)
+ (CHARWD_ENTRY D 48 R 0.777)
+ (CHARWD_ENTRY D 49 R 0.792)
+ (CHARWD_ENTRY D 50 R 0.795)
+ (CHARWD_ENTRY D 51 R 0.81)
+ (CHARWD_ENTRY D 52 R 0.816)
+ (CHARWD_ENTRY D 53 R 0.831)
+ (CHARWD_ENTRY D 54 R 0.834)
+ (CHARWD_ENTRY D 55 R 0.84)
+ (CHARWD_ENTRY D 56 R 0.852)
+ (CHARWD_ENTRY D 57 R 0.858)
+ (CHARWD_ENTRY D 58 R 0.879)
+ (CHARWD_ENTRY D 59 R 0.882)
+ (CHARWD_ENTRY D 60 R 0.891)
+ (CHARWD_ENTRY D 61 R 0.897)
+ (CHARWD_ENTRY D 62 R 0.904)
+ (CHARWD_ENTRY D 63 R 0.918)
+ (CHARWD_ENTRY D 64 R 0.924)
+ (CHARWD_ENTRY D 65 R 0.934)
+ (CHARWD_ENTRY D 66 R 0.936)
+ (CHARWD_ENTRY D 67 R 0.948)
+ (CHARWD_ENTRY D 68 R 0.954)
+ (CHARWD_ENTRY D 69 R 0.957)
+ (CHARWD_ENTRY D 70 R 0.963)
+ (CHARWD_ENTRY D 71 R 0.966)
+ (CHARWD_ENTRY D 72 R 0.969)
+ (CHARWD_ENTRY D 73 R 0.972)
+ (CHARWD_ENTRY D 74 R 0.978)
+ (CHARWD_ENTRY D 75 R 0.984)
+ (CHARWD_ENTRY D 76 R 0.988)
+ (CHARWD_ENTRY D 77 R 1.0)
+ (CHARWD_ENTRY D 78 R 1.032)
+ (CHARWD_ENTRY D 79 R 1.044)
+ (CHARWD_ENTRY D 80 R 1.132)
+ (CHARWD_ENTRY D 81 R 1.297)
+ )
+(COMMENT
+ (CHARHT_ENTRY D 0 R 0.0)
+ (CHARHT_ENTRY D 1 R 0.095)
+ (CHARHT_ENTRY D 2 R 0.098)
+ (CHARHT_ENTRY D 3 R 0.7865)
+ (CHARHT_ENTRY D 4 R 0.788)
+ (CHARHT_ENTRY D 5 R 0.7955)
+ (CHARHT_ENTRY D 6 R 0.7975)
+ (CHARHT_ENTRY D 7 R 0.7995)
+ (CHARHT_ENTRY D 8 R 0.8015)
+ (CHARHT_ENTRY D 9 R 0.8035)
+ (CHARHT_ENTRY D 10 R 0.8065)
+ (CHARHT_ENTRY D 11 R 0.852)
+ )
+(COMMENT
+ (CHARDP_ENTRY D 0 R 0.0)
+ (CHARDP_ENTRY D 1 R 0.001)
+ (CHARDP_ENTRY D 2 R 0.002)
+ (CHARDP_ENTRY D 3 R 0.003)
+ (CHARDP_ENTRY D 4 R 0.004)
+ (CHARDP_ENTRY D 5 R 0.005)
+ (CHARDP_ENTRY D 6 R 0.006)
+ (CHARDP_ENTRY D 7 R 0.007)
+ (CHARDP_ENTRY D 8 R 0.014)
+ (CHARDP_ENTRY D 9 R 0.056)
+ (CHARDP_ENTRY D 10 R 0.135)
+ (CHARDP_ENTRY D 11 R 0.167)
+ )
+(COMMENT
+ (CHARIC_ENTRY D 0 R 0.0)
+ )
+(COMMENT
+ (LABEL_ENTRY D 1 H 13D9 D 0)
+ (LABEL_ENTRY D 2 H 13E4 D 2)
+ (LABEL_ENTRY D 3 H 13A2 D 4)
+ )
+(LIGTABLE
+ (LABEL H 13D9)
+ (KRN H 13AA R -0.23)
+ (KRN H 13AF R -0.2)
+ (LABEL H 13E4)
+ (KRN H 13AA R -0.2)
+ (KRN H 13AF R -0.21)
+ (LABEL H 13A2)
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ (STOP)
+ )
+(CHARACTER H 22
+ (CHARWD R 0.554)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 22)
+ )
+ )
+(CHARACTER H 28
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 28)
+ )
+ )
+(CHARACTER H 29
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 29)
+ )
+ )
+(CHARACTER H 2C
+ (CHARWD R 0.25)
+ (CHARHT R 0.098)
+ (CHARDP R 0.167)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2C)
+ )
+ )
+(CHARACTER H 2E
+ (CHARWD R 0.25)
+ (CHARHT R 0.095)
+ (CHARDP R 0.014)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2E)
+ )
+ )
+(CHARACTER H 13A0
+ (CHARWD R 0.756)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 61)
+ )
+ )
+(CHARACTER H 13A1
+ (CHARWD R 0.934)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.003)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 39)
+ )
+ )
+(CHARACTER H 13A2
+ (CHARWD R 0.579)
+ (CHARHT R 0.7995)
+ (COMMENT
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ )
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 69)
+ )
+ )
+(CHARACTER H 13A3
+ (CHARWD R 0.735)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6F)
+ )
+ )
+(CHARACTER H 13A4
+ (CHARWD R 0.792)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 75)
+ )
+ )
+(CHARACTER H 13A5
+ (CHARWD R 0.966)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 76)
+ )
+ )
+(CHARACTER H 13A6
+ (CHARWD R 0.777)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 67)
+ )
+ )
+(CHARACTER H 13A7
+ (CHARWD R 0.657)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4B)
+ )
+ )
+(CHARACTER H 13A8
+ (CHARWD R 0.639)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 62)
+ )
+ )
+(CHARACTER H 13A9
+ (CHARWD R 0.834)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 66)
+ )
+ )
+(CHARACTER H 13AA
+ (CHARWD R 0.714)
+ (CHARHT R 0.788)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 71)
+ )
+ )
+(CHARACTER H 13AB
+ (CHARWD R 0.576)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4A)
+ )
+ )
+(CHARACTER H 13AC
+ (CHARWD R 0.726)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7A)
+ )
+ )
+(CHARACTER H 13AD
+ (CHARWD R 0.705)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 55)
+ )
+ )
+(CHARACTER H 13AE
+ (CHARWD R 0.534)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4C)
+ )
+ )
+(CHARACTER H 13AF
+ (CHARWD R 0.702)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 68)
+ )
+ )
+(CHARACTER H 13B0
+ (CHARWD R 0.477)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 24)
+ )
+ )
+(CHARACTER H 13B1
+ (CHARWD R 0.665)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 21)
+ )
+ )
+(CHARACTER H 13B2
+ (CHARWD R 0.882)
+ (CHARHT R 0.8035)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 48)
+ )
+ )
+(CHARACTER H 13B3
+ (CHARWD R 0.966)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 77)
+ )
+ )
+(CHARACTER H 13B4
+ (CHARWD R 0.675)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3E)
+ )
+ )
+(CHARACTER H 13B5
+ (CHARWD R 0.651)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6C)
+ )
+ )
+(CHARACTER H 13B6
+ (CHARWD R 0.663)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5D)
+ )
+ )
+(CHARACTER H 13B7
+ (CHARWD R 0.879)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4D)
+ )
+ )
+(CHARACTER H 13B8
+ (CHARWD R 0.708)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6B)
+ )
+ )
+(CHARACTER H 13B9
+ (CHARWD R 1.044)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 25)
+ )
+ )
+(CHARACTER H 13BA
+ (CHARWD R 0.774)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2A)
+ )
+ )
+(CHARACTER H 13BB
+ (CHARWD R 0.747)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4E)
+ )
+ )
+(CHARACTER H 13BC
+ (CHARWD R 0.552)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5F)
+ )
+ )
+(CHARACTER H 13BD
+ (CHARWD R 1.0)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2B)
+ )
+ )
+(CHARACTER H 13BE
+ (CHARWD R 0.747)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6E)
+ )
+ )
+(CHARACTER H 13BF
+ (CHARWD R 0.546)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2D)
+ )
+ )
+(CHARACTER H 13C1
+ (CHARWD R 0.978)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 70)
+ )
+ )
+(CHARACTER H 13C2
+ (CHARWD R 0.795)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2F)
+ )
+ )
+(CHARACTER H 13C3
+ (CHARWD R 0.66)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5A)
+ )
+ )
+(CHARACTER H 13C4
+ (CHARWD R 0.904)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 30)
+ )
+ )
+(CHARACTER H 13C5
+ (CHARWD R 0.963)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6D)
+ )
+ )
+(CHARACTER H 13C6
+ (CHARWD R 0.732)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 51)
+ )
+ )
+(CHARACTER H 13C7
+ (CHARWD R 0.891)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 40)
+ )
+ )
+(CHARACTER H 13C8
+ (CHARWD R 0.759)
+ (CHARHT R 0.8035)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 46)
+ )
+ )
+(CHARACTER H 13C9
+ (CHARWD R 1.297)
+ (CHARHT R 0.8065)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3F)
+ )
+ )
+(CHARACTER H 13CA
+ (CHARWD R 1.032)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7E)
+ )
+ )
+(CHARACTER H 13CB
+ (CHARWD R 0.728)
+ (CHARHT R 0.8035)
+ (CHARDP R 0.004)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 37)
+ )
+ )
+(CHARACTER H 13CC
+ (CHARWD R 0.753)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 41)
+ )
+ )
+(CHARACTER H 13CD
+ (CHARWD R 0.957)
+ (CHARHT R 0.7865)
+ (CHARDP R 0.003)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 73)
+ )
+ )
+(CHARACTER H 13CE
+ (CHARWD R 0.558)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 53)
+ )
+ )
+(CHARACTER H 13CF
+ (CHARWD R 0.72)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 52)
+ )
+ )
+(CHARACTER H 13D0
+ (CHARWD R 0.603)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 44)
+ )
+ )
+(CHARACTER H 13D1
+ (CHARWD R 0.858)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7B)
+ )
+ )
+(CHARACTER H 13D2
+ (CHARWD R 0.81)
+ (CHARHT R 0.7975)
+ (CHARDP R 0.005)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 65)
+ )
+ )
+(CHARACTER H 13D3
+ (CHARWD R 0.594)
+ (CHARHT R 0.8015)
+ (CHARDP R 0.006)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 63)
+ )
+ )
+(CHARACTER H 13D4
+ (CHARWD R 0.969)
+ (CHARHT R 0.8065)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 74)
+ )
+ )
+(CHARACTER H 13D5
+ (CHARWD R 0.576)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5B)
+ )
+ )
+(CHARACTER H 13D6
+ (CHARWD R 0.84)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 38)
+ )
+ )
+(CHARACTER H 13D7
+ (CHARWD R 0.672)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 64)
+ )
+ )
+(CHARACTER H 13D8
+ (CHARWD R 0.654)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.005)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 54)
+ )
+ )
+(CHARACTER H 13D9
+ (CHARWD R 0.984)
+ (CHARHT R 0.7955)
+ (COMMENT
+ (KRN H 13AA R -0.23)
+ (KRN H 13AF R -0.2)
+ (KRN H 13AA R -0.2)
+ (KRN H 13AF R -0.21)
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ )
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 34)
+ )
+ )
+(CHARACTER H 13DA
+ (CHARWD R 0.612)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.007)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6A)
+ )
+ )
+(CHARACTER H 13DB
+ (CHARWD R 0.918)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 72)
+ )
+ )
+(CHARACTER H 13DC
+ (CHARWD R 0.764)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 36)
+ )
+ )
+(CHARACTER H 13DD
+ (CHARWD R 0.647)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5E)
+ )
+ )
+(CHARACTER H 13DE
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 56)
+ )
+ )
+(CHARACTER H 13DF
+ (CHARWD R 0.666)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 43)
+ )
+ )
+(CHARACTER H 13E0
+ (CHARWD R 0.816)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3A)
+ )
+ )
+(CHARACTER H 13E1
+ (CHARWD R 1.132)
+ (CHARHT R 0.8065)
+ (CHARDP R 0.002)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 26)
+ )
+ )
+(CHARACTER H 13E2
+ (CHARWD R 0.972)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3C)
+ )
+ )
+(CHARACTER H 13E3
+ (CHARWD R 0.723)
+ (CHARHT R 0.8035)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 45)
+ )
+ )
+(CHARACTER H 13E4
+ (CHARWD R 0.711)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ (COMMENT
+ (KRN H 13AA R -0.2)
+ (KRN H 13AF R -0.21)
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ )
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7D)
+ )
+ )
+(CHARACTER H 13E5
+ (CHARWD R 0.762)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 47)
+ )
+ )
+(CHARACTER H 13E6
+ (CHARWD R 0.936)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 35)
+ )
+ )
+(CHARACTER H 13E7
+ (CHARWD R 0.672)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 23)
+ )
+ )
+(CHARACTER H 13E8
+ (CHARWD R 0.988)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3B)
+ )
+ )
+(CHARACTER H 13E9
+ (CHARWD R 0.69)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5C)
+ )
+ )
+(CHARACTER H 13EA
+ (CHARWD R 0.954)
+ (CHARHT R 0.788)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 50)
+ )
+ )
+(CHARACTER H 13EB
+ (CHARWD R 0.852)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.004)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 57)
+ )
+ )
+(CHARACTER H 13EC
+ (CHARWD R 0.948)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4F)
+ )
+ )
+(CHARACTER H 13ED
+ (CHARWD R 0.633)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 58)
+ )
+ )
+(CHARACTER H 13EE
+ (CHARWD R 0.609)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.004)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7C)
+ )
+ )
+(CHARACTER H 13EF
+ (CHARWD R 0.897)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 79)
+ )
+ )
+(CHARACTER H 13F0
+ (CHARWD R 0.567)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.135)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 42)
+ )
+ )
+(CHARACTER H 13F1
+ (CHARWD R 0.831)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 49)
+ )
+ )
+(CHARACTER H 13F2
+ (CHARWD R 0.759)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 59)
+ )
+ )
+(CHARACTER H 13F3
+ (CHARWD R 0.924)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3D)
+ )
+ )
+(CHARACTER H 13F4
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 78)
+ )
+ )
diff --git a/Build/source/texk/web2c/omegaware/ChangeLog b/Build/source/texk/web2c/omegaware/ChangeLog
index 34f6cf91f5a..95e0b5a28e0 100644
--- a/Build/source/texk/web2c/omegaware/ChangeLog
+++ b/Build/source/texk/web2c/omegaware/ChangeLog
@@ -1,3 +1,11 @@
+2009-05-30 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * level1.test (new): Shell script to test ofm_level=1.
+ * omfonts.test (new): Shell script to test ofm2opl etc.
+ * am/omegaware.am: add the new test.
+
+ * ovp2ovf.ch: correctly print banner and version_string.
+
2009-05-29 Peter Breitenlohner <peb@mppmu.mpg.de>
* {ofm2opl,opl2ofm,ovf2ovp,ovp2ovf}.{ch,web}: revived.
diff --git a/Build/source/texk/web2c/omegaware/am/omegaware.am b/Build/source/texk/web2c/omegaware/am/omegaware.am
index 8cae810b4ee..0012c57e448 100644
--- a/Build/source/texk/web2c/omegaware/am/omegaware.am
+++ b/Build/source/texk/web2c/omegaware/am/omegaware.am
@@ -100,11 +100,22 @@ ovp2ovf.p: tangle$(EXEEXT) $(ovp2ovf_sources)
## Tests
##
-EXTRA_DIST += omegaware/otangle.test
+EXTRA_DIST += omegaware/level1.test omegaware/omfonts.test omegaware/otangle.test
if OTANGLE
TESTS += omegaware/otangle.test
+if !OMFONTS
+TESTS += omegaware/level1.test omegaware/omfonts.test
+endif !OMFONTS
endif OTANGLE
+## omegaware/level1.test
+DISTCLEANFILES += tests/xlevel1.ofm tests/xlevel1.opl
+## omegaware/omfonts.test
+DISTCLEANFILES += tests/Cherokee.tfm tests/OCherokee.ofm \
+ tests/OCherokee.opl tests/OCherokee.ovf \
+ tests/xCherokee.pl tests/xOCherokee.ofm \
+ tests/xOCherokee.opl tests/xOCherokee.ovp
+## omegaware/otangle.test
DISTCLEANFILES += cftest.p
diff --git a/Build/source/texk/web2c/omegaware/level1.test b/Build/source/texk/web2c/omegaware/level1.test
new file mode 100755
index 00000000000..e88e9a611e1
--- /dev/null
+++ b/Build/source/texk/web2c/omegaware/level1.test
@@ -0,0 +1,14 @@
+#! /bin/sh
+
+# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# You may freely use, modify and/or distribute this file.
+
+test -d tests || mkdir -p tests
+
+./opl2ofm -verbose $srcdir/tests/level1 tests/xlevel1 || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ ./ofm2opl -verbose tests/xlevel1 tests/xlevel1 || exit 1
+
+diff $srcdir/tests/level1.opl tests/xlevel1.opl || exit 1
+
diff --git a/Build/source/texk/web2c/omegaware/omfonts.test b/Build/source/texk/web2c/omegaware/omfonts.test
new file mode 100755
index 00000000000..4bf1e48fa4e
--- /dev/null
+++ b/Build/source/texk/web2c/omegaware/omfonts.test
@@ -0,0 +1,34 @@
+#! /bin/sh
+
+# Copyright (C) 2009 Peter Breitenlohner <tex-live@tug.org>
+# You may freely use, modify and/or distribute this file.
+
+test -d tests || mkdir -p tests
+
+./pltotf $srcdir/tests/Cherokee tests/Cherokee || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ ./tftopl tests/Cherokee tests/xCherokee || exit 1
+
+diff $srcdir/tests/Cherokee.pl tests/xCherokee.pl || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ OFMFONTS=./tests \
+ ./ovp2ovf -verbose $srcdir/tests/OCherokee tests/OCherokee tests/OCherokee || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ ./ofm2opl -verbose tests/OCherokee tests/OCherokee || exit 1
+
+./opl2ofm -verbose tests/OCherokee tests/xOCherokee || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ ./ofm2opl -verbose tests/xOCherokee tests/xOCherokee || exit 1
+
+diff tests/OCherokee.opl tests/xOCherokee.opl || exit 1
+
+TEXMFCNF=$srcdir/../kpathsea \
+ OFMFONTS=.:./tests \
+ ./ovf2ovp -verbose tests/OCherokee tests/OCherokee tests/xOCherokee || exit 1
+
+diff $srcdir/tests/OCherokee.ovp tests/xOCherokee.ovp || exit 1
+
diff --git a/Build/source/texk/web2c/omegaware/ovp2ovf.ch b/Build/source/texk/web2c/omegaware/ovp2ovf.ch
index 058f755c138..cad20f24a83 100644
--- a/Build/source/texk/web2c/omegaware/ovp2ovf.ch
+++ b/Build/source/texk/web2c/omegaware/ovp2ovf.ch
@@ -59,7 +59,7 @@ reset(vpl_file);
reset (vpl_file, vpl_name);
if verbose then begin
print (banner);
- print_ln (banner);
+ print_ln (version_string);
end;
@z
diff --git a/Build/source/texk/web2c/tests/Cherokee.pl b/Build/source/texk/web2c/tests/Cherokee.pl
new file mode 100644
index 00000000000..30394d07004
--- /dev/null
+++ b/Build/source/texk/web2c/tests/Cherokee.pl
@@ -0,0 +1,420 @@
+(FAMILY TEX-CHEROKEE8R)
+(FACE F MRR)
+(CODINGSCHEME TEXBASE1ENCODING)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM O 35372474052)
+(SEVENBITSAFEFLAG TRUE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.5)
+ (STRETCH R 0.2)
+ (SHRINK R 0.1)
+ (XHEIGHT R 0.8)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.111)
+ )
+(CHARACTER O 36
+ (CHARWD R 0.728)
+ (CHARHT R 0.7865)
+ )
+(CHARACTER O 37
+ (CHARWD R 0.12)
+ (CHARHT R 0.793)
+ )
+(CHARACTER O 40
+ (CHARWD R 0.5)
+ )
+(CHARACTER O 41
+ (CHARWD R 0.665)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 42
+ (CHARWD R 0.285)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER O 43
+ (CHARWD R 0.672)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 44
+ (CHARWD R 0.477)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 45
+ (CHARWD R 1.044)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 46
+ (CHARWD R 1.132)
+ (CHARHT R 0.8065)
+ (CHARDP R 0.002)
+ )
+(CHARACTER O 50
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ )
+(CHARACTER O 51
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ )
+(CHARACTER O 52
+ (CHARWD R 0.774)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 53
+ (CHARWD R 1.0)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 54
+ (CHARWD R 0.25)
+ (CHARHT R 0.098)
+ (CHARDP R 0.167)
+ )
+(CHARACTER O 55
+ (CHARWD R 0.546)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 56
+ (CHARWD R 0.25)
+ (CHARHT R 0.095)
+ (CHARDP R 0.014)
+ )
+(CHARACTER O 57
+ (CHARWD R 0.795)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C 0
+ (CHARWD R 0.904)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C 1
+ (CHARWD R 1.98)
+ (CHARHT R 0.575)
+ (CHARDP R 0.014)
+ )
+(CHARACTER C 2
+ (CHARWD R 1.724)
+ (CHARHT R 0.601)
+ )
+(CHARACTER C 3
+ (CHARWD R 1.247)
+ (CHARHT R 0.598)
+ )
+(CHARACTER C 4
+ (CHARWD R 1.084)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C 5
+ (CHARWD R 0.936)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C 6
+ (CHARWD R 0.764)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C 7
+ (CHARWD R 0.728)
+ (CHARHT R 0.8035)
+ (CHARDP R 0.004)
+ )
+(CHARACTER C 8
+ (CHARWD R 0.84)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C 9
+ (CHARWD R 0.934)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.003)
+ )
+(CHARACTER O 72
+ (CHARWD R 0.816)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 73
+ (CHARWD R 0.988)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 74
+ (CHARWD R 0.972)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 75
+ (CHARWD R 0.924)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER O 76
+ (CHARWD R 0.675)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 77
+ (CHARWD R 1.297)
+ (CHARHT R 0.8065)
+ )
+(CHARACTER O 100
+ (CHARWD R 0.891)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C A
+ (CHARWD R 0.753)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C B
+ (CHARWD R 0.567)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.135)
+ )
+(CHARACTER C C
+ (CHARWD R 0.666)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C D
+ (CHARWD R 0.603)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C E
+ (CHARWD R 0.723)
+ (CHARHT R 0.8035)
+ )
+(CHARACTER C F
+ (CHARWD R 0.759)
+ (CHARHT R 0.8035)
+ )
+(CHARACTER C G
+ (CHARWD R 0.762)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C H
+ (CHARWD R 0.882)
+ (CHARHT R 0.8035)
+ )
+(CHARACTER C I
+ (CHARWD R 0.831)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C J
+ (CHARWD R 0.576)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C K
+ (CHARWD R 0.657)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C L
+ (CHARWD R 0.534)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C M
+ (CHARWD R 0.879)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C N
+ (CHARWD R 0.747)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C O
+ (CHARWD R 0.948)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C P
+ (CHARWD R 0.954)
+ (CHARHT R 0.788)
+ )
+(CHARACTER C Q
+ (CHARWD R 0.732)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C R
+ (CHARWD R 0.72)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C S
+ (CHARWD R 0.558)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C T
+ (CHARWD R 0.654)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.005)
+ )
+(CHARACTER C U
+ (CHARWD R 0.705)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C V
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C W
+ (CHARWD R 0.852)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.004)
+ )
+(CHARACTER C X
+ (CHARWD R 0.633)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C Y
+ (CHARWD R 0.759)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C Z
+ (CHARWD R 0.66)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 133
+ (CHARWD R 0.576)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 134
+ (CHARWD R 0.69)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 135
+ (CHARWD R 0.663)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 136
+ (CHARWD R 0.647)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER O 137
+ (CHARWD R 0.552)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ )
+(CHARACTER C a
+ (CHARWD R 0.756)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C b
+ (CHARWD R 0.639)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C c
+ (CHARWD R 0.594)
+ (CHARHT R 0.8015)
+ (CHARDP R 0.006)
+ )
+(CHARACTER C d
+ (CHARWD R 0.672)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C e
+ (CHARWD R 0.81)
+ (CHARHT R 0.7975)
+ (CHARDP R 0.005)
+ )
+(CHARACTER C f
+ (CHARWD R 0.834)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ )
+(CHARACTER C g
+ (CHARWD R 0.777)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C h
+ (CHARWD R 0.702)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ )
+(CHARACTER C i
+ (CHARWD R 0.579)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C j
+ (CHARWD R 0.612)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.007)
+ )
+(CHARACTER C k
+ (CHARWD R 0.708)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C l
+ (CHARWD R 0.651)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C m
+ (CHARWD R 0.963)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C n
+ (CHARWD R 0.747)
+ (CHARHT R 0.7955)
+ )
+(CHARACTER C o
+ (CHARWD R 0.735)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C p
+ (CHARWD R 0.978)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C q
+ (CHARWD R 0.714)
+ (CHARHT R 0.788)
+ )
+(CHARACTER C r
+ (CHARWD R 0.918)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C s
+ (CHARWD R 0.957)
+ (CHARHT R 0.7865)
+ (CHARDP R 0.003)
+ )
+(CHARACTER C t
+ (CHARWD R 0.969)
+ (CHARHT R 0.8065)
+ )
+(CHARACTER C u
+ (CHARWD R 0.792)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C v
+ (CHARWD R 0.444)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C w
+ (CHARWD R 0.966)
+ (CHARHT R 0.7975)
+ )
+(CHARACTER C x
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER C y
+ (CHARWD R 0.897)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER C z
+ (CHARWD R 0.726)
+ (CHARHT R 0.7995)
+ )
+(CHARACTER O 173
+ (CHARWD R 0.858)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER O 174
+ (CHARWD R 0.609)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.004)
+ )
+(CHARACTER O 175
+ (CHARWD R 0.711)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ )
+(CHARACTER O 176
+ (CHARWD R 1.032)
+ (CHARHT R 0.8015)
+ )
+(CHARACTER O 255
+ (CHARWD R 0.546)
+ (CHARHT R 0.7995)
+ )
diff --git a/Build/source/texk/web2c/tests/OCherokee.ovp b/Build/source/texk/web2c/tests/OCherokee.ovp
new file mode 100644
index 00000000000..0b7986434ea
--- /dev/null
+++ b/Build/source/texk/web2c/tests/OCherokee.ovp
@@ -0,0 +1,790 @@
+(VTITLE )
+(OFMLEVEL H 0)
+(FONTDIR TL)
+(FAMILY CHEROKEE)
+(FACE F MRR)
+(CODINGSCHEME SHIFTED CHEROKEE TEX)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM H 5EDB811F)
+(SEVENBITSAFEFLAG FALSE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.5)
+ (STRETCH R 0.3)
+ (SHRINK R 0.1)
+ (XHEIGHT R 0.8)
+ (QUAD R 1.0)
+ )
+(MAPFONT D 0
+ (FONTNAME Cherokee)
+ (FONTCHECKSUM H EBEA782A)
+ (FONTAT R 1.0)
+ (FONTDSIZE R 10.0)
+ )
+(LIGTABLE
+ (LABEL H 13D9)
+ (KRN H 13AA R -0.23)
+ (KRN H 13AF R -0.2)
+ (LABEL H 13E4)
+ (KRN H 13AA R -0.2)
+ (KRN H 13AF R -0.21)
+ (LABEL H 13A2)
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ (STOP)
+ )
+(CHARACTER H 22
+ (CHARWD R 0.554)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 22)
+ )
+ )
+(CHARACTER H 28
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 28)
+ )
+ )
+(CHARACTER H 29
+ (CHARWD R 0.333)
+ (CHARHT R 0.852)
+ (CHARDP R 0.056)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 29)
+ )
+ )
+(CHARACTER H 2C
+ (CHARWD R 0.25)
+ (CHARHT R 0.098)
+ (CHARDP R 0.167)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2C)
+ )
+ )
+(CHARACTER H 2E
+ (CHARWD R 0.25)
+ (CHARHT R 0.095)
+ (CHARDP R 0.014)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2E)
+ )
+ )
+(CHARACTER H 13A0
+ (CHARWD R 0.756)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 61)
+ )
+ )
+(CHARACTER H 13A1
+ (CHARWD R 0.934)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.003)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 39)
+ )
+ )
+(CHARACTER H 13A2
+ (CHARWD R 0.579)
+ (CHARHT R 0.7995)
+ (COMMENT
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ )
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 69)
+ )
+ )
+(CHARACTER H 13A3
+ (CHARWD R 0.735)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6F)
+ )
+ )
+(CHARACTER H 13A4
+ (CHARWD R 0.792)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 75)
+ )
+ )
+(CHARACTER H 13A5
+ (CHARWD R 0.966)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 76)
+ )
+ )
+(CHARACTER H 13A6
+ (CHARWD R 0.777)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 67)
+ )
+ )
+(CHARACTER H 13A7
+ (CHARWD R 0.657)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4B)
+ )
+ )
+(CHARACTER H 13A8
+ (CHARWD R 0.639)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 62)
+ )
+ )
+(CHARACTER H 13A9
+ (CHARWD R 0.834)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 66)
+ )
+ )
+(CHARACTER H 13AA
+ (CHARWD R 0.714)
+ (CHARHT R 0.788)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 71)
+ )
+ )
+(CHARACTER H 13AB
+ (CHARWD R 0.576)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4A)
+ )
+ )
+(CHARACTER H 13AC
+ (CHARWD R 0.726)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7A)
+ )
+ )
+(CHARACTER H 13AD
+ (CHARWD R 0.705)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 55)
+ )
+ )
+(CHARACTER H 13AE
+ (CHARWD R 0.534)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4C)
+ )
+ )
+(CHARACTER H 13AF
+ (CHARWD R 0.702)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 68)
+ )
+ )
+(CHARACTER H 13B0
+ (CHARWD R 0.477)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 24)
+ )
+ )
+(CHARACTER H 13B1
+ (CHARWD R 0.665)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 21)
+ )
+ )
+(CHARACTER H 13B2
+ (CHARWD R 0.882)
+ (CHARHT R 0.8035)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 48)
+ )
+ )
+(CHARACTER H 13B3
+ (CHARWD R 0.966)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 77)
+ )
+ )
+(CHARACTER H 13B4
+ (CHARWD R 0.675)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3E)
+ )
+ )
+(CHARACTER H 13B5
+ (CHARWD R 0.651)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6C)
+ )
+ )
+(CHARACTER H 13B6
+ (CHARWD R 0.663)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5D)
+ )
+ )
+(CHARACTER H 13B7
+ (CHARWD R 0.879)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4D)
+ )
+ )
+(CHARACTER H 13B8
+ (CHARWD R 0.708)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6B)
+ )
+ )
+(CHARACTER H 13B9
+ (CHARWD R 1.044)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 25)
+ )
+ )
+(CHARACTER H 13BA
+ (CHARWD R 0.774)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2A)
+ )
+ )
+(CHARACTER H 13BB
+ (CHARWD R 0.747)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4E)
+ )
+ )
+(CHARACTER H 13BC
+ (CHARWD R 0.552)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.002)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5F)
+ )
+ )
+(CHARACTER H 13BD
+ (CHARWD R 1.0)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2B)
+ )
+ )
+(CHARACTER H 13BE
+ (CHARWD R 0.747)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6E)
+ )
+ )
+(CHARACTER H 13BF
+ (CHARWD R 0.546)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2D)
+ )
+ )
+(CHARACTER H 13C1
+ (CHARWD R 0.978)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 70)
+ )
+ )
+(CHARACTER H 13C2
+ (CHARWD R 0.795)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 2F)
+ )
+ )
+(CHARACTER H 13C3
+ (CHARWD R 0.66)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5A)
+ )
+ )
+(CHARACTER H 13C4
+ (CHARWD R 0.904)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 30)
+ )
+ )
+(CHARACTER H 13C5
+ (CHARWD R 0.963)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6D)
+ )
+ )
+(CHARACTER H 13C6
+ (CHARWD R 0.732)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 51)
+ )
+ )
+(CHARACTER H 13C7
+ (CHARWD R 0.891)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 40)
+ )
+ )
+(CHARACTER H 13C8
+ (CHARWD R 0.759)
+ (CHARHT R 0.8035)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 46)
+ )
+ )
+(CHARACTER H 13C9
+ (CHARWD R 1.297)
+ (CHARHT R 0.8065)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3F)
+ )
+ )
+(CHARACTER H 13CA
+ (CHARWD R 1.032)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7E)
+ )
+ )
+(CHARACTER H 13CB
+ (CHARWD R 0.728)
+ (CHARHT R 0.8035)
+ (CHARDP R 0.004)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 37)
+ )
+ )
+(CHARACTER H 13CC
+ (CHARWD R 0.753)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 41)
+ )
+ )
+(CHARACTER H 13CD
+ (CHARWD R 0.957)
+ (CHARHT R 0.7865)
+ (CHARDP R 0.003)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 73)
+ )
+ )
+(CHARACTER H 13CE
+ (CHARWD R 0.558)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 53)
+ )
+ )
+(CHARACTER H 13CF
+ (CHARWD R 0.72)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 52)
+ )
+ )
+(CHARACTER H 13D0
+ (CHARWD R 0.603)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 44)
+ )
+ )
+(CHARACTER H 13D1
+ (CHARWD R 0.858)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7B)
+ )
+ )
+(CHARACTER H 13D2
+ (CHARWD R 0.81)
+ (CHARHT R 0.7975)
+ (CHARDP R 0.005)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 65)
+ )
+ )
+(CHARACTER H 13D3
+ (CHARWD R 0.594)
+ (CHARHT R 0.8015)
+ (CHARDP R 0.006)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 63)
+ )
+ )
+(CHARACTER H 13D4
+ (CHARWD R 0.969)
+ (CHARHT R 0.8065)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 74)
+ )
+ )
+(CHARACTER H 13D5
+ (CHARWD R 0.576)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5B)
+ )
+ )
+(CHARACTER H 13D6
+ (CHARWD R 0.84)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 38)
+ )
+ )
+(CHARACTER H 13D7
+ (CHARWD R 0.672)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 64)
+ )
+ )
+(CHARACTER H 13D8
+ (CHARWD R 0.654)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.005)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 54)
+ )
+ )
+(CHARACTER H 13D9
+ (CHARWD R 0.984)
+ (CHARHT R 0.7955)
+ (COMMENT
+ (KRN H 13AA R -0.23)
+ (KRN H 13AF R -0.2)
+ (KRN H 13AA R -0.2)
+ (KRN H 13AF R -0.21)
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ )
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 34)
+ )
+ )
+(CHARACTER H 13DA
+ (CHARWD R 0.612)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.007)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 6A)
+ )
+ )
+(CHARACTER H 13DB
+ (CHARWD R 0.918)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 72)
+ )
+ )
+(CHARACTER H 13DC
+ (CHARWD R 0.764)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 36)
+ )
+ )
+(CHARACTER H 13DD
+ (CHARWD R 0.647)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5E)
+ )
+ )
+(CHARACTER H 13DE
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 56)
+ )
+ )
+(CHARACTER H 13DF
+ (CHARWD R 0.666)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 43)
+ )
+ )
+(CHARACTER H 13E0
+ (CHARWD R 0.816)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3A)
+ )
+ )
+(CHARACTER H 13E1
+ (CHARWD R 1.132)
+ (CHARHT R 0.8065)
+ (CHARDP R 0.002)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 26)
+ )
+ )
+(CHARACTER H 13E2
+ (CHARWD R 0.972)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3C)
+ )
+ )
+(CHARACTER H 13E3
+ (CHARWD R 0.723)
+ (CHARHT R 0.8035)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 45)
+ )
+ )
+(CHARACTER H 13E4
+ (CHARWD R 0.711)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.001)
+ (COMMENT
+ (KRN H 13AA R -0.2)
+ (KRN H 13AF R -0.21)
+ (KRN H 13AA R -0.1)
+ (KRN H 13AF R -0.1)
+ (KRN H 13A5 R -0.1)
+ )
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7D)
+ )
+ )
+(CHARACTER H 13E5
+ (CHARWD R 0.762)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 47)
+ )
+ )
+(CHARACTER H 13E6
+ (CHARWD R 0.936)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 35)
+ )
+ )
+(CHARACTER H 13E7
+ (CHARWD R 0.672)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 23)
+ )
+ )
+(CHARACTER H 13E8
+ (CHARWD R 0.988)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3B)
+ )
+ )
+(CHARACTER H 13E9
+ (CHARWD R 0.69)
+ (CHARHT R 0.7975)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 5C)
+ )
+ )
+(CHARACTER H 13EA
+ (CHARWD R 0.954)
+ (CHARHT R 0.788)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 50)
+ )
+ )
+(CHARACTER H 13EB
+ (CHARWD R 0.852)
+ (CHARHT R 0.7955)
+ (CHARDP R 0.004)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 57)
+ )
+ )
+(CHARACTER H 13EC
+ (CHARWD R 0.948)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 4F)
+ )
+ )
+(CHARACTER H 13ED
+ (CHARWD R 0.633)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 58)
+ )
+ )
+(CHARACTER H 13EE
+ (CHARWD R 0.609)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.004)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 7C)
+ )
+ )
+(CHARACTER H 13EF
+ (CHARWD R 0.897)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 79)
+ )
+ )
+(CHARACTER H 13F0
+ (CHARWD R 0.567)
+ (CHARHT R 0.7995)
+ (CHARDP R 0.135)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 42)
+ )
+ )
+(CHARACTER H 13F1
+ (CHARWD R 0.831)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 49)
+ )
+ )
+(CHARACTER H 13F2
+ (CHARWD R 0.759)
+ (CHARHT R 0.7955)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 59)
+ )
+ )
+(CHARACTER H 13F3
+ (CHARWD R 0.924)
+ (CHARHT R 0.8015)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 3D)
+ )
+ )
+(CHARACTER H 13F4
+ (CHARWD R 0.729)
+ (CHARHT R 0.7995)
+ (MAP
+ (SELECTFONT D 0)
+ (SETCHAR H 78)
+ )
+ )
diff --git a/Build/source/texk/web2c/tests/level1.opl b/Build/source/texk/web2c/tests/level1.opl
new file mode 100644
index 00000000000..6705727511f
--- /dev/null
+++ b/Build/source/texk/web2c/tests/level1.opl
@@ -0,0 +1,24 @@
+(OFMLEVEL H 1)
+(FONTDIR TL)
+(FAMILY UNSPECIFIED)
+(FACE F MRR)
+(CODINGSCHEME UNICODE)
+(DESIGNSIZE R 10.0)
+(COMMENT DESIGNSIZE IS IN POINTS)
+(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
+(CHECKSUM H 0)
+(SEVENBITSAFEFLAG FALSE)
+(FONTDIMEN
+ (SLANT R 0.0)
+ (SPACE R 0.0)
+ (STRETCH R 0.0)
+ (SHRINK R 0.0)
+ (XHEIGHT R 1.0)
+ (QUAD R 1.0)
+ (EXTRASPACE R 0.0)
+ )
+(CHARREPEAT H 1 H FFFE
+ (CHARWD R 1.0)
+ (CHARHT R 0.9)
+ (CHARDP R 0.1)
+ )