summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/otps
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/web2c/otps')
-rw-r--r--Build/source/texk/web2c/otps/ChangeLog19
-rw-r--r--Build/source/texk/web2c/otps/Makefile.am9
-rw-r--r--Build/source/texk/web2c/otps/Makefile.in101
-rw-r--r--Build/source/texk/web2c/otps/mkocp.man50
-rw-r--r--Build/source/texk/web2c/otps/mkofm.man33
-rw-r--r--Build/source/texk/web2c/otps/otp-lexer.c63
-rw-r--r--Build/source/texk/web2c/otps/otp-lexer.l5
-rw-r--r--Build/source/texk/web2c/otps/otp-parser.c2
-rw-r--r--Build/source/texk/web2c/otps/otp-parser.y2
-rw-r--r--Build/source/texk/web2c/otps/otp2ocp.man41
-rw-r--r--Build/source/texk/web2c/otps/outocp.c2
-rw-r--r--Build/source/texk/web2c/otps/outocp.man44
-rw-r--r--Build/source/texk/web2c/otps/routines.c2
-rw-r--r--Build/source/texk/web2c/otps/routines.h2
14 files changed, 310 insertions, 65 deletions
diff --git a/Build/source/texk/web2c/otps/ChangeLog b/Build/source/texk/web2c/otps/ChangeLog
index 16695d687e8..bfb66e5f0b7 100644
--- a/Build/source/texk/web2c/otps/ChangeLog
+++ b/Build/source/texk/web2c/otps/ChangeLog
@@ -1,3 +1,22 @@
+2009-10-24 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * mkocp.man, mkofm.man, otp2ocp.man, outocp.man: New files
+ moved from ../../tetex/ to here.
+ * Makefile.am (dist_man1_MANS): Adjusted.
+
+2009-08-21 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ Avoid maximal compiler warnings.
+ * otp-lexer.l: Replace global vars i, j, and last by locals.
+ * otp-parser.y (yyerror): Constify string param.
+ * outocp.c (otp_names): Constify strings.
+ * routines.[ch] (store_state): Constify string param.
+
+2009-08-19 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * Makefile.am: otp2ocp and outocp must depend explicitly on
+ KPATHSEA_DEPEND, the implicit dependency via proglib is not enough.
+
2009-06-26 Peter Breitenlohner <peb@mppmu.mpg.de>
* otp2ocp.test, outocp.test, uni2lat.ocp, uni2lat.otp,
diff --git a/Build/source/texk/web2c/otps/Makefile.am b/Build/source/texk/web2c/otps/Makefile.am
index 1ed55c05a32..d55b87b861d 100644
--- a/Build/source/texk/web2c/otps/Makefile.am
+++ b/Build/source/texk/web2c/otps/Makefile.am
@@ -9,12 +9,8 @@ AM_YFLAGS = -d -v
proglib = ../lib/lib.a
-# Automake automatically uses $(proglib)=../lib/lib.a as dependency.
-# This does not work for the configure substitution $(KPATHSEA_LIBS),
-# thus we let $(proglib) artificially depend on $(KPATHSEA_LIBS).
-
# Rebuild $(proglib)
-$(proglib): $(KPATHSEA_DEPEND) ${top_srcdir}/lib/*.c
+$(proglib): ${top_srcdir}/lib/*.c
cd ../lib && $(MAKE) $(AM_MAKEFLAGS)
## Rebuild libkpathsea
@@ -28,6 +24,7 @@ noinst_HEADERS = otp.h routines.h yystype.h
if OTANGLE
bin_PROGRAMS = $(otps_programs)
bin_SCRIPTS = $(otps_scripts)
+dist_man1_MANS = $(otps_programs:=.man) $(otps_scripts:=.man)
endif OTANGLE
EXTRA_PROGRAMS = $(otps_programs)
@@ -45,6 +42,8 @@ outocp_SOURCES = \
outocp.c
LDADD = $(proglib) $(KPATHSEA_LIBS)
+otp2ocp_DEPENDENCIES = $(proglib) $(KPATHSEA_DEPEND)
+outocp_DEPENDENCIES = $(proglib) $(KPATHSEA_DEPEND)
## Tests
##
diff --git a/Build/source/texk/web2c/otps/Makefile.in b/Build/source/texk/web2c/otps/Makefile.in
index efd8686134a..b081508db79 100644
--- a/Build/source/texk/web2c/otps/Makefile.in
+++ b/Build/source/texk/web2c/otps/Makefile.in
@@ -39,11 +39,12 @@ host_triplet = @host@
@OTANGLE_TRUE@bin_PROGRAMS = $(am__EXEEXT_1)
EXTRA_PROGRAMS = $(am__EXEEXT_1)
subdir = otps
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in ChangeLog otp-lexer.c otp-parser.c \
- otp-parser.h
+DIST_COMMON = $(dist_man1_MANS) $(noinst_HEADERS) \
+ $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog \
+ otp-lexer.c otp-parser.c otp-parser.h
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/../../m4/kpse-asm.m4 \
+am__aclocal_m4_deps = $(top_srcdir)/m4/web2c-disable.m4 \
+ $(top_srcdir)/../../m4/kpse-asm.m4 \
$(top_srcdir)/../../m4/kpse-common.m4 \
$(top_srcdir)/../../m4/kpse-cross.m4 \
$(top_srcdir)/../../m4/kpse-cxx-hack.m4 \
@@ -76,18 +77,17 @@ CONFIG_HEADER = $(top_builddir)/c-auto.h $(top_builddir)/ff-config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__EXEEXT_1 = otp2ocp$(EXEEXT) outocp$(EXEEXT)
-am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"
+am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" \
+ "$(DESTDIR)$(man1dir)"
PROGRAMS = $(bin_PROGRAMS)
am_otp2ocp_OBJECTS = otp-parser.$(OBJEXT) otp-lexer.$(OBJEXT) \
otp2ocp.$(OBJEXT) routines.$(OBJEXT)
otp2ocp_OBJECTS = $(am_otp2ocp_OBJECTS)
otp2ocp_LDADD = $(LDADD)
am__DEPENDENCIES_1 =
-otp2ocp_DEPENDENCIES = $(proglib) $(am__DEPENDENCIES_1)
am_outocp_OBJECTS = outocp.$(OBJEXT)
outocp_OBJECTS = $(am_outocp_OBJECTS)
outocp_LDADD = $(LDADD)
-outocp_DEPENDENCIES = $(proglib) $(am__DEPENDENCIES_1)
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -134,6 +134,9 @@ LTYACCCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=compile $(YACC) $(YFLAGS) $(AM_YFLAGS)
SOURCES = $(otp2ocp_SOURCES) $(outocp_SOURCES)
DIST_SOURCES = $(otp2ocp_SOURCES) $(outocp_SOURCES)
+man1dir = $(mandir)/man1
+NROFF = nroff
+MANS = $(dist_man1_MANS)
HEADERS = $(noinst_HEADERS)
ETAGS = etags
CTAGS = ctags
@@ -228,6 +231,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
@@ -326,6 +330,7 @@ otps_programs = otp2ocp outocp
otps_scripts = mkocp mkofm
noinst_HEADERS = otp.h routines.h yystype.h
@OTANGLE_TRUE@bin_SCRIPTS = $(otps_scripts)
+@OTANGLE_TRUE@dist_man1_MANS = $(otps_programs:=.man) $(otps_scripts:=.man)
EXTRA_DIST = $(otps_scripts) otp2ocp.test outocp.test uni2lat.ocp \
uni2lat.otp uni2lat.out bugs.txt
otp2ocp_SOURCES = \
@@ -339,6 +344,8 @@ outocp_SOURCES = \
outocp.c
LDADD = $(proglib) $(KPATHSEA_LIBS)
+otp2ocp_DEPENDENCIES = $(proglib) $(KPATHSEA_DEPEND)
+outocp_DEPENDENCIES = $(proglib) $(KPATHSEA_DEPEND)
@OTANGLE_TRUE@TESTS = otp2ocp.test outocp.test
CLEANFILES = xuni2lat.ocp xuni2lat.out
all: all-am
@@ -508,6 +515,40 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
+install-man1: $(dist_man1_MANS)
+ @$(NORMAL_INSTALL)
+ test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
+ @list='$(dist_man1_MANS)'; test -n "$(man1dir)" || exit 0; \
+ { for i in $$list; do echo "$$i"; done; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list='$(dist_man1_MANS)'; test -n "$(man1dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ test -z "$$files" || { \
+ echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
@@ -654,6 +695,19 @@ check-TESTS: $(TESTS)
else :; fi
distdir: $(DISTFILES)
+ @list='$(MANS)'; if test -n "$$list"; then \
+ list=`for p in $$list; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
+ if test -n "$$list" && \
+ grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
+ echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
+ echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
+ echo " typically \`make maintainer-clean' will remove them" >&2; \
+ exit 1; \
+ else :; fi; \
+ else :; fi
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@@ -686,9 +740,9 @@ distdir: $(DISTFILES)
check-am: all-am
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-am
-all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(HEADERS)
+all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(MANS) $(HEADERS)
installdirs:
- for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)"; do \
+ for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
@@ -743,7 +797,7 @@ info: info-am
info-am:
-install-data-am:
+install-data-am: install-man
install-dvi: install-dvi-am
@@ -759,7 +813,7 @@ install-info: install-info-am
install-info-am:
-install-man:
+install-man: install-man1
install-pdf: install-pdf-am
@@ -789,7 +843,9 @@ ps: ps-am
ps-am:
-uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS
+uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS uninstall-man
+
+uninstall-man: uninstall-man1
.MAKE: check-am install-am install-strip
@@ -800,21 +856,18 @@ uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS
install install-am install-binPROGRAMS install-binSCRIPTS \
install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am 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 \
- uninstall-binSCRIPTS
-
+ install-info install-info-am install-man install-man1 \
+ 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 uninstall-binSCRIPTS uninstall-man \
+ uninstall-man1
-# Automake automatically uses $(proglib)=../lib/lib.a as dependency.
-# This does not work for the configure substitution $(KPATHSEA_LIBS),
-# thus we let $(proglib) artificially depend on $(KPATHSEA_LIBS).
# Rebuild $(proglib)
-$(proglib): $(KPATHSEA_DEPEND) ${top_srcdir}/lib/*.c
+$(proglib): ${top_srcdir}/lib/*.c
cd ../lib && $(MAKE) $(AM_MAKEFLAGS)
@KPATHSEA_RULE@
diff --git a/Build/source/texk/web2c/otps/mkocp.man b/Build/source/texk/web2c/otps/mkocp.man
new file mode 100644
index 00000000000..c35c967225e
--- /dev/null
+++ b/Build/source/texk/web2c/otps/mkocp.man
@@ -0,0 +1,50 @@
+.TH "mkocp" "1" "September 2000" "Omega" "Omega"
+.PP
+.SH "NAME"
+mkocp \- frontend to \fBotp2ocp\fP(1)
+.PP
+.SH "SYNOPSIS"
+.PP
+\fBmkocp\fP \fIOTPFILE\fP
+.PP
+.SH "DESCRIPTION"
+.PP
+\fBmkocp\fP is used to create or recreate Omega Compiled Process files
+(binary) from Omega Translation Process (text) files\&.
+.PP
+Omega Translation Processes are used to translate one character set to
+another and to choose between characters with one or more
+context-sensitive variants\&. OTPs could also be used to change the
+case or hyphenation of text\&.
+.PP
+OTPs are defined in text files, and compiled into binary code (OCPs)
+using \fBmkocp\fP (this script) or directly with \fBotp2ocp\fP(1)\&.
+.PP
+.SH "FILES"
+.IP "\fIOTPFILE\fP"
+An Omega Typesetting Process filter file\&.
+.PP
+.SH "SEE ALSO"
+.PP
+\fBomega\fP(1), \fBotp2ocp\fP(1)\&.
+.PP
+\fIDraft Manual for the Omega System\fP (\fIomega-manual\&.dvi\fP)\&.
+.PP
+Web page: <http://www\&.gutenberg\&.eu\&.org/omega/>
+.PP
+.SH "BUGS"
+.PP
+None known, but report any bugs found to <omega@ens\&.fr> (mailing list)\&.
+.PP
+.SH "AUTHOR"
+.PP
+\fBmkocp\fP is part of Omega\&. The primary authors of Omega are John Plaice
+<plaice@cse\&.unsw\&.edu\&.au> and Yannis Haralambous
+<yannis@fluxus-virus\&.com>\&.
+.PP
+This manual page was written by C\&.M\&. Connelly
+<cmc@debian\&.org>, for
+the Debian GNU/Linux system\&. It may be used by other distributions
+without contacting the author\&. Any mistakes or omissions in the
+manual page are my fault; inquiries about or corrections to this
+manual page should be directed to me (and not to the primary author)\&.
diff --git a/Build/source/texk/web2c/otps/mkofm.man b/Build/source/texk/web2c/otps/mkofm.man
new file mode 100644
index 00000000000..9c38a4301a6
--- /dev/null
+++ b/Build/source/texk/web2c/otps/mkofm.man
@@ -0,0 +1,33 @@
+.TH "mkofm" "1" "September 2000" "teTeX" "teTeX"
+.PP
+.SH "NAME"
+mkofm \- front end to \fBmktextfm\fP(1)
+.PP
+.SH "SYNOPSIS"
+.PP
+\fBmkofm\fP \fIARGS\fP
+.PP
+.SH "DESCRIPTION"
+.PP
+\fBmkofm\fP takes all \fIARGS\fP and passes them to
+\fBmktextfm\fP(1)\&. For more information about appropriate
+arguments, see \fBmktextfm\fP(1)\&.
+.PP
+.SH "SEE ALSO"
+.PP
+\fBmktextfm\fP(1)
+.PP
+.SH "BUGS"
+.PP
+None known\&.
+.PP
+.SH "AUTHOR"
+.PP
+Author unknown\&.
+.PP
+This manual page was written by C\&.M\&. Connelly
+<cmc@debian\&.org>, for
+the Debian GNU/Linux system\&. It may be used by other distributions
+without contacting the author\&. Any mistakes or omissions in the
+manual page are my fault; inquiries about or corrections to this
+manual page should be directed to me (and not to the primary author)\&.
diff --git a/Build/source/texk/web2c/otps/otp-lexer.c b/Build/source/texk/web2c/otps/otp-lexer.c
index 0bbc4df5337..b4a40b2ecfa 100644
--- a/Build/source/texk/web2c/otps/otp-lexer.c
+++ b/Build/source/texk/web2c/otps/otp-lexer.c
@@ -605,9 +605,8 @@ along with Omega; if not, write to the Free Software Foundation, Inc.,
#define YY_NO_UNPUT
#define OTP_MAXCODE 0xFFFF
int line_number = 1;
-int i,j,last;
extern YYSTYPE yylval;
-#line 611 "otp-lexer.c"
+#line 610 "otp-lexer.c"
#define INITIAL 0
@@ -789,9 +788,9 @@ YY_DECL
register char *yy_cp, *yy_bp;
register int yy_act;
-#line 44 "otp-lexer.l"
+#line 43 "otp-lexer.l"
-#line 795 "otp-lexer.c"
+#line 794 "otp-lexer.c"
if ( !(yy_init) )
{
@@ -895,25 +894,26 @@ do_action: /* This label is used only to access EOF actions. */
{ /* beginning of action switch */
case 1:
YY_RULE_SETUP
-#line 45 "otp-lexer.l"
+#line 44 "otp-lexer.l"
{}
YY_BREAK
case 2:
/* rule 2 can match eol */
YY_RULE_SETUP
-#line 46 "otp-lexer.l"
+#line 45 "otp-lexer.l"
{ line_number++;}
YY_BREAK
case 3:
/* rule 3 can match eol */
YY_RULE_SETUP
-#line 47 "otp-lexer.l"
+#line 46 "otp-lexer.l"
{ line_number++;}
YY_BREAK
case 4:
YY_RULE_SETUP
-#line 48 "otp-lexer.l"
+#line 47 "otp-lexer.l"
{
+ int i, j;
yylval.yint=0;
for (i=2; i<yyleng; i++) {
j = yytext[i];
@@ -937,6 +937,7 @@ case 5:
YY_RULE_SETUP
#line 67 "otp-lexer.l"
{
+ int i, j;
yylval.yint=0;
for (i=2; i<yyleng; i++) {
j = yytext[i];
@@ -952,8 +953,9 @@ YY_RULE_SETUP
YY_BREAK
case 6:
YY_RULE_SETUP
-#line 80 "otp-lexer.l"
+#line 81 "otp-lexer.l"
{
+ int i, j;
yylval.yint=0;
for (i=0; i<yyleng; i++) {
j = yytext[i];
@@ -969,7 +971,7 @@ YY_RULE_SETUP
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 93 "otp-lexer.l"
+#line 95 "otp-lexer.l"
{
yylval.yint=yytext[1];
return(NUMBER);
@@ -977,14 +979,15 @@ YY_RULE_SETUP
YY_BREAK
case 8:
YY_RULE_SETUP
-#line 97 "otp-lexer.l"
+#line 99 "otp-lexer.l"
{ yylval.ystring=xstrdup(yytext); return(ID); }
YY_BREAK
case 9:
/* rule 9 can match eol */
YY_RULE_SETUP
-#line 98 "otp-lexer.l"
+#line 100 "otp-lexer.l"
{
+ int i, j, last;
char *newtext;
last=yyleng-2;
i=0;
@@ -1002,85 +1005,85 @@ YY_RULE_SETUP
YY_BREAK
case 10:
YY_RULE_SETUP
-#line 113 "otp-lexer.l"
+#line 116 "otp-lexer.l"
return(RIGHTARROW);
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 114 "otp-lexer.l"
+#line 117 "otp-lexer.l"
return(LEFTARROW);
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 115 "otp-lexer.l"
+#line 118 "otp-lexer.l"
return(INPUT);
YY_BREAK
case 13:
YY_RULE_SETUP
-#line 116 "otp-lexer.l"
+#line 119 "otp-lexer.l"
return(OUTPUT);
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 117 "otp-lexer.l"
+#line 120 "otp-lexer.l"
return(ALIASES);
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 118 "otp-lexer.l"
+#line 121 "otp-lexer.l"
return(STATES);
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 119 "otp-lexer.l"
+#line 122 "otp-lexer.l"
return(TABLES);
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 120 "otp-lexer.l"
+#line 123 "otp-lexer.l"
return(EXPRESSIONS);
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 121 "otp-lexer.l"
+#line 124 "otp-lexer.l"
return(PUSH);
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 122 "otp-lexer.l"
+#line 125 "otp-lexer.l"
return(POP);
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 123 "otp-lexer.l"
+#line 126 "otp-lexer.l"
return(DIV);
YY_BREAK
case 21:
YY_RULE_SETUP
-#line 124 "otp-lexer.l"
+#line 127 "otp-lexer.l"
return(MOD);
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 125 "otp-lexer.l"
+#line 128 "otp-lexer.l"
return(BEG);
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 126 "otp-lexer.l"
+#line 129 "otp-lexer.l"
return(END);
YY_BREAK
case 24:
YY_RULE_SETUP
-#line 127 "otp-lexer.l"
+#line 130 "otp-lexer.l"
return(yytext[0]);
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 129 "otp-lexer.l"
+#line 132 "otp-lexer.l"
ECHO;
YY_BREAK
-#line 1084 "otp-lexer.c"
+#line 1087 "otp-lexer.c"
case YY_STATE_EOF(INITIAL):
yyterminate();
@@ -2064,7 +2067,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 129 "otp-lexer.l"
+#line 132 "otp-lexer.l"
diff --git a/Build/source/texk/web2c/otps/otp-lexer.l b/Build/source/texk/web2c/otps/otp-lexer.l
index 32142af1ea7..fcc4ca63c5f 100644
--- a/Build/source/texk/web2c/otps/otp-lexer.l
+++ b/Build/source/texk/web2c/otps/otp-lexer.l
@@ -30,7 +30,6 @@ along with Omega; if not, write to the Free Software Foundation, Inc.,
#define YY_NO_UNPUT
#define OTP_MAXCODE 0xFFFF
int line_number = 1;
-int i,j,last;
extern YYSTYPE yylval;
%}
@@ -46,6 +45,7 @@ string \"([^\"]|\"\")*\"
"%".*\n { line_number++;}
\r\n|\n|\r { line_number++;}
{hexnumber} {
+ int i, j;
yylval.yint=0;
for (i=2; i<yyleng; i++) {
j = yytext[i];
@@ -65,6 +65,7 @@ string \"([^\"]|\"\")*\"
return(NUMBER);
}
{octnumber} {
+ int i, j;
yylval.yint=0;
for (i=2; i<yyleng; i++) {
j = yytext[i];
@@ -78,6 +79,7 @@ string \"([^\"]|\"\")*\"
return(NUMBER);
}
{decnumber} {
+ int i, j;
yylval.yint=0;
for (i=0; i<yyleng; i++) {
j = yytext[i];
@@ -96,6 +98,7 @@ string \"([^\"]|\"\")*\"
}
{id} { yylval.ystring=xstrdup(yytext); return(ID); }
{string} {
+ int i, j, last;
char *newtext;
last=yyleng-2;
i=0;
diff --git a/Build/source/texk/web2c/otps/otp-parser.c b/Build/source/texk/web2c/otps/otp-parser.c
index d829f2ff019..277ba986375 100644
--- a/Build/source/texk/web2c/otps/otp-parser.c
+++ b/Build/source/texk/web2c/otps/otp-parser.c
@@ -76,7 +76,7 @@
int k, len;
static void
-yyerror(char * msg)
+yyerror(const char *msg)
{
fprintf(stderr, "line %d: %s\n", line_number, msg);
}
diff --git a/Build/source/texk/web2c/otps/otp-parser.y b/Build/source/texk/web2c/otps/otp-parser.y
index 7870a3269a2..468b0557930 100644
--- a/Build/source/texk/web2c/otps/otp-parser.y
+++ b/Build/source/texk/web2c/otps/otp-parser.y
@@ -29,7 +29,7 @@ along with Omega; if not, write to the Free Software Foundation, Inc.,
int k, len;
static void
-yyerror(char * msg)
+yyerror(const char *msg)
{
fprintf(stderr, "line %d: %s\n", line_number, msg);
}
diff --git a/Build/source/texk/web2c/otps/otp2ocp.man b/Build/source/texk/web2c/otps/otp2ocp.man
new file mode 100644
index 00000000000..c111acc49d3
--- /dev/null
+++ b/Build/source/texk/web2c/otps/otp2ocp.man
@@ -0,0 +1,41 @@
+.TH "otp2ocp" "1" "September 2000" "Omega" "Omega"
+.PP
+.SH "NAME"
+otp2ocp \- convert Omega Translation Process files to Omega
+Compiled Process files
+.PP
+.SH "SYNOPSIS"
+.PP
+\fBotp2ocp\fP \fIOTPFILE\fP[\&.otp] [ \fIOCPFILE\fP[\&.ocp] ]
+.PP
+.SH "DESCRIPTION"
+.PP
+\fBotp2ocp\fP is used to create or recreate Omega Compiled Process
+files (binary) from Omega Translation Process (text) files\&.
+.PP
+Omega Translation Processes are rules used to translate one character
+set to another and to choose between characters with one or more
+context-sensitive variants\&. OTPs could also be used to change the
+case or hyphenation of text\&.
+.PP
+.SH "SEE ALSO"
+.PP
+\fBmkocp\fP(1), \fBomega\fP(1)\&.
+.PP
+\fIDraft Manual for the Omega System\fP (\fIomega-manual\&.dvi\fP)\&.
+.PP
+Web page: <http://www\&.gutenberg\&.eu\&.org/omega/>
+.PP
+.SH "AUTHOR"
+.PP
+The primary authors of Omega are John Plaice
+<plaice@cse\&.unsw\&.edu\&.au> and Yannis Haralambous
+<yannis@fluxus-virus\&.com>\&.
+.PP
+This manual page was written by C\&.M\&. Connelly
+<cmc@debian\&.org>, for
+the Debian GNU/Linux system\&. It may be used by other distributions
+without contacting the author\&. Any mistakes or omissions in the
+manual page are my fault; inquiries about or corrections to this
+manual page should be directed to me (and not to the primary author)\&.
+.PP
diff --git a/Build/source/texk/web2c/otps/outocp.c b/Build/source/texk/web2c/otps/outocp.c
index be2fe297018..4b5e6dcc34c 100644
--- a/Build/source/texk/web2c/otps/outocp.c
+++ b/Build/source/texk/web2c/otps/outocp.c
@@ -29,7 +29,7 @@ along with Omega; if not, write to the Free Software Foundation, Inc.,
#include <kpathsea/tex-file.h>
#include "otp.h"
-char *otp_names[] = {
+const char *otp_names[] = {
" ",
"OTP_RIGHT_OUTPUT ",
"OTP_RIGHT_NUM ",
diff --git a/Build/source/texk/web2c/otps/outocp.man b/Build/source/texk/web2c/otps/outocp.man
new file mode 100644
index 00000000000..ee803d9be67
--- /dev/null
+++ b/Build/source/texk/web2c/otps/outocp.man
@@ -0,0 +1,44 @@
+.TH "outocp" "1" "September 2000" "Omega" "Omega"
+.PP
+.SH "NAME"
+outocp \- debug an OCP file
+.PP
+.SH "SYNOPSIS"
+.PP
+\fBoutocp\fP \fIOCPFILE\fP[\&.ocp]
+.PP
+.SH "DESCRIPTION"
+.PP
+\fBoutocp\fP is used for debugging Omega Compiled Translation Process
+(OCP) files\&. It generates some statistics about the OCP file, and
+then runs through the states that the file defines\&.
+.PP
+Omega Translation Processes are rules used to translate one character
+set to another and to choose between characters with one or more
+context-sensitive variants\&. OTPs could also be used to change the
+case or hyphenation of text\&.
+.PP
+.SH "BUGS"
+.PP
+None known, but report any found to <omega@ens\&.fr> (mailing list)\&.
+.PP
+.SH "SEE ALSO"
+.PP
+\fBocp2otp\fP(1), \fBotp2ocp\fP(1), \fBomega\fP(1)\&.
+.PP
+\fIDraft Manual for the Omega System\fP (\fIomega-manual\&.dvi\fP)\&.
+.PP
+Web page: <http://www\&.gutenberg\&.eu\&.org/omega/>
+.PP
+.SH "AUTHOR"
+.PP
+The primary authors of Omega are John Plaice
+<plaice@cse\&.unsw\&.edu\&.au> and Yannis Haralambous
+<yannis@fluxus-virus\&.com>\&.
+.PP
+This manual page was written by C\&.M\&. Connelly
+<cmc@debian\&.org>, for
+the Debian GNU/Linux system\&. It may be used by other distributions
+without contacting the author\&. Any mistakes or omissions in the
+manual page are my fault; inquiries about or corrections to this
+manual page should be directed to me (and not to the primary author)\&.
diff --git a/Build/source/texk/web2c/otps/routines.c b/Build/source/texk/web2c/otps/routines.c
index 58b47153021..916998a9c63 100644
--- a/Build/source/texk/web2c/otps/routines.c
+++ b/Build/source/texk/web2c/otps/routines.c
@@ -480,7 +480,7 @@ add_to_state((instr<<24)+val);
}
void
-store_state(string str)
+store_state(const_string str)
{
int i;
for (i=0; i<no_states; i++) {
diff --git a/Build/source/texk/web2c/otps/routines.h b/Build/source/texk/web2c/otps/routines.h
index f8a851622c2..6d99dcd906f 100644
--- a/Build/source/texk/web2c/otps/routines.h
+++ b/Build/source/texk/web2c/otps/routines.h
@@ -137,7 +137,7 @@ extern void fill_in(list L);
extern void out_int(int instr, int val);
extern void out_right(int instr, int val);
-extern void store_state(string str);
+extern void store_state(const_string str);
extern int lookup_state(string str);
extern void store_table(string str, int len);
extern int lookup_table(string str);