summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2012-09-18 17:32:56 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2012-09-18 17:32:56 +0000
commit4b3819719b81f03387cf0be7f4241c37d850e7c9 (patch)
treeba3cdadf58be2419816e2f4e23e248af28bd0b15 /Build
parent2ad6229bbca0c6599e33345b6359e4a5c6160bd4 (diff)
detex: Reduce W32TeX vs TL diffs
git-svn-id: svn://tug.org/texlive/trunk@27701 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r--Build/source/texk/detex/detex-2.8-PATCHES/ChangeLog9
-rw-r--r--Build/source/texk/detex/detex-2.8-PATCHES/patch-08-kpathsea52
-rw-r--r--Build/source/texk/detex/detex-2.8-PATCHES/patch-09-binary28
-rw-r--r--Build/source/texk/detex/detex-2.8/detex.h3
-rw-r--r--Build/source/texk/detex/detex-2.8/detex.l17
-rw-r--r--Build/source/texk/detex/detex.c311
6 files changed, 263 insertions, 157 deletions
diff --git a/Build/source/texk/detex/detex-2.8-PATCHES/ChangeLog b/Build/source/texk/detex/detex-2.8-PATCHES/ChangeLog
index a36f36d7fc7..b979ffb58a3 100644
--- a/Build/source/texk/detex/detex-2.8-PATCHES/ChangeLog
+++ b/Build/source/texk/detex/detex-2.8-PATCHES/ChangeLog
@@ -1,7 +1,12 @@
+2012-08-24 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * patch-08-kpathsea (new): Use kpse_program_name.
+ * patch-09-binary (new): Use binary mode for output file.
+
2012-08-02 Peter Breitenlohner <peb@mppmu.mpg.de>
- * patch-07-rename: Rename ERROR -> my_ERROR to avoid a conflict
- with WIN32 headers (from W32TeX).
+ * patch-07-rename (new): Rename ERROR -> my_ERROR to avoid a
+ conflict with WIN32 headers (from W32TeX).
2012-06-21 Peter Breitenlohner <peb@mppmu.mpg.de>
diff --git a/Build/source/texk/detex/detex-2.8-PATCHES/patch-08-kpathsea b/Build/source/texk/detex/detex-2.8-PATCHES/patch-08-kpathsea
new file mode 100644
index 00000000000..2eacbf68bcc
--- /dev/null
+++ b/Build/source/texk/detex/detex-2.8-PATCHES/patch-08-kpathsea
@@ -0,0 +1,52 @@
+ Clarify that DEFAULTINPUTS and CHPATHSEP are not used with KPATHSEA
+
+diff -ur detex-2.8.orig/detex.h detex-2.8/detex.h
+--- detex-2.8.orig/detex.h 2012-08-02 10:31:17.000000000 +0200
++++ detex-2.8/detex.h 2012-08-24 10:23:29.000000000 +0200
+@@ -51,6 +51,7 @@
+
+ #define MAXINCLIST 40
+
++#ifndef KPATHSEA
+ #ifdef OS2
+ #define DEFAULTINPUTS ".;/emtex/texinput"
+ #define CHPATHSEP ';'
+@@ -58,6 +59,8 @@
+ #define DEFAULTINPUTS ".:/usr/local/tex/inputs"
+ #define CHPATHSEP ':'
+ #endif
++#endif
++
+ #define MAXINPUTPATHS 10
+
+ #define DEFAULTENV "array,eqnarray,equation,figure,mathmatica,picture,table,verbatim"
+
+ With KPATHSEA use kpse_program_name.
+ Fixed a typo.
+
+diff -ur detex-2.8.orig/detex.l detex-2.8/detex.l
+--- detex-2.8.orig/detex.l 2012-08-02 10:31:20.000000000 +0200
++++ detex-2.8/detex.l 2012-08-24 10:37:03.000000000 +0200
+@@ -436,10 +436,10 @@
+ #endif
+ _splitpath (rgsbArgs[0], drive, dir, fname, ext);
+ sbProgName = strlwr(fname);
+-#else
+-#ifdef KPATHSEA
++#elif defined(KPATHSEA)
+ kpse_set_program_name (rgsbArgs[0], NULL);
+-#endif
++ sbProgName = kpse_program_name;
++#else
+ if ((sbProgName = rindex(rgsbArgs[0], '/')) != NULL)
+ sbProgName++;
+ else
+@@ -462,7 +467,7 @@
+ break;
+ case CHENVOPT:
+ if (++iArgs >= cArgs) {
+- ErrorExit("-e option requires and argument");
++ ErrorExit("-e option requires an argument");
+ }
+ sbEnvList = rgsbArgs[iArgs];
+ break;
diff --git a/Build/source/texk/detex/detex-2.8-PATCHES/patch-09-binary b/Build/source/texk/detex/detex-2.8-PATCHES/patch-09-binary
new file mode 100644
index 00000000000..95d272030ad
--- /dev/null
+++ b/Build/source/texk/detex/detex-2.8-PATCHES/patch-09-binary
@@ -0,0 +1,28 @@
+ In TeX Live we use binary mode for all output files.
+
+diff -ur detex-2.8.orig/detex.l detex-2.8/detex.l
+--- detex-2.8.orig/detex.l 2012-08-24 10:37:03.000000000 +0200
++++ detex-2.8/detex.l 2012-08-24 10:51:12.000000000 +0200
+@@ -83,6 +83,11 @@
+ #include <stdlib.h>
+ #endif
+
++#ifdef WIN32
++#include <fcntl.h>
++#include <io.h>
++#endif
++
+ #endif /* KPATHSEA */
+
+ #undef IGNORE
+@@ -494,6 +499,10 @@
+ }
+ SetEnvIgnore(sbEnvList);
+
++#ifdef WIN32
++ _setmode(fileno(stdout), _O_BINARY);
++#endif
++
+ /* process input files */
+ for (; iArgs < cArgs; iArgs++) {
+ fSawFile++;
diff --git a/Build/source/texk/detex/detex-2.8/detex.h b/Build/source/texk/detex/detex-2.8/detex.h
index 0b4c71d5099..ef0e65840a0 100644
--- a/Build/source/texk/detex/detex-2.8/detex.h
+++ b/Build/source/texk/detex/detex-2.8/detex.h
@@ -51,6 +51,7 @@
#define MAXINCLIST 40
+#ifndef KPATHSEA
#ifdef OS2
#define DEFAULTINPUTS ".;/emtex/texinput"
#define CHPATHSEP ';'
@@ -58,6 +59,8 @@
#define DEFAULTINPUTS ".:/usr/local/tex/inputs"
#define CHPATHSEP ':'
#endif
+#endif
+
#define MAXINPUTPATHS 10
#define DEFAULTENV "array,eqnarray,equation,figure,mathmatica,picture,table,verbatim"
diff --git a/Build/source/texk/detex/detex-2.8/detex.l b/Build/source/texk/detex/detex-2.8/detex.l
index 398dbfea632..aab1d7096ef 100644
--- a/Build/source/texk/detex/detex-2.8/detex.l
+++ b/Build/source/texk/detex/detex-2.8/detex.l
@@ -83,6 +83,11 @@ static char rcsid[] = "$Header: /p/src/local/bin/detex/RCS/detex.l,v 2.22 2007/0
#include <stdlib.h>
#endif
+#ifdef WIN32
+#include <fcntl.h>
+#include <io.h>
+#endif
+
#endif /* KPATHSEA */
#undef IGNORE
@@ -436,10 +441,10 @@ main(int cArgs, char *rgsbArgs[])
#endif
_splitpath (rgsbArgs[0], drive, dir, fname, ext);
sbProgName = strlwr(fname);
-#else
-#ifdef KPATHSEA
+#elif defined(KPATHSEA)
kpse_set_program_name (rgsbArgs[0], NULL);
-#endif
+ sbProgName = kpse_program_name;
+#else
if ((sbProgName = rindex(rgsbArgs[0], '/')) != NULL)
sbProgName++;
else
@@ -462,7 +467,7 @@ main(int cArgs, char *rgsbArgs[])
break;
case CHENVOPT:
if (++iArgs >= cArgs) {
- ErrorExit("-e option requires and argument");
+ ErrorExit("-e option requires an argument");
}
sbEnvList = rgsbArgs[iArgs];
break;
@@ -494,6 +499,10 @@ main(int cArgs, char *rgsbArgs[])
}
SetEnvIgnore(sbEnvList);
+#ifdef WIN32
+ _setmode(fileno(stdout), _O_BINARY);
+#endif
+
/* process input files */
for (; iArgs < cArgs; iArgs++) {
fSawFile++;
diff --git a/Build/source/texk/detex/detex.c b/Build/source/texk/detex/detex.c
index 169b4ee018c..f33a7d0481b 100644
--- a/Build/source/texk/detex/detex.c
+++ b/Build/source/texk/detex/detex.c
@@ -1543,6 +1543,11 @@ static char rcsid[] = "$Header: /p/src/local/bin/detex/RCS/detex.l,v 2.22 2007/0
#include <stdlib.h>
#endif
+#ifdef WIN32
+#include <fcntl.h>
+#include <io.h>
+#endif
+
#endif /* KPATHSEA */
#undef IGNORE
@@ -1617,7 +1622,7 @@ int csb = 0; /* depth of flex context stack */
-#line 1621 "detex.c"
+#line 1626 "detex.c"
#define INITIAL 0
#define Define 1
@@ -1819,9 +1824,9 @@ YY_DECL
register char *yy_cp, *yy_bp;
register int yy_act;
-#line 175 "detex.l"
+#line 180 "detex.l"
-#line 1825 "detex.c"
+#line 1830 "detex.c"
if ( !(yy_init) )
{
@@ -1902,24 +1907,24 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
YY_RULE_SETUP
-#line 176 "detex.l"
+#line 181 "detex.l"
/* ignore comments */ ;
YY_BREAK
case 2:
/* rule 2 can match eol */
YY_RULE_SETUP
-#line 178 "detex.l"
+#line 183 "detex.l"
{LATEX; IGNORE;}
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 180 "detex.l"
+#line 185 "detex.l"
/* environment start */ {LaBEGIN LaBegin; IGNORE;}
YY_BREAK
case 4:
/* rule 4 can match eol */
YY_RULE_SETUP
-#line 182 "detex.l"
+#line 187 "detex.l"
{ if (BeginEnv("verbatim"))
BEGIN LaEnv;
else
@@ -1930,24 +1935,24 @@ YY_RULE_SETUP
case 5:
/* rule 5 can match eol */
YY_RULE_SETUP
-#line 189 "detex.l"
+#line 194 "detex.l"
/* verbatim mode */ {BEGIN Normal; IGNORE;}
YY_BREAK
case 6:
/* rule 6 can match eol */
YY_RULE_SETUP
-#line 190 "detex.l"
+#line 195 "detex.l"
ECHO;
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 191 "detex.l"
+#line 196 "detex.l"
ECHO;
YY_BREAK
case 8:
/* rule 8 can match eol */
YY_RULE_SETUP
-#line 193 "detex.l"
+#line 198 "detex.l"
{ KILLARGS(1);
if (BeginEnv("minpage"))
BEGIN LaEnv;
@@ -1958,7 +1963,7 @@ YY_RULE_SETUP
YY_BREAK
case 9:
YY_RULE_SETUP
-#line 201 "detex.l"
+#line 206 "detex.l"
{ if (BeginEnv(yytext))
BEGIN LaEnv;
else
@@ -1969,33 +1974,33 @@ YY_RULE_SETUP
case 10:
/* rule 10 can match eol */
YY_RULE_SETUP
-#line 207 "detex.l"
+#line 212 "detex.l"
NEWLINE;
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 208 "detex.l"
+#line 213 "detex.l"
;
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 210 "detex.l"
+#line 215 "detex.l"
/* absorb some environments */ {LaBEGIN LaEnd; IGNORE;}
YY_BREAK
case 13:
/* rule 13 can match eol */
YY_RULE_SETUP
-#line 211 "detex.l"
+#line 216 "detex.l"
NEWLINE;
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 212 "detex.l"
+#line 217 "detex.l"
;
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 214 "detex.l"
+#line 219 "detex.l"
/* end environment */ { if (EndEnv(yytext))
BEGIN Normal;
IGNORE;
@@ -2003,301 +2008,301 @@ YY_RULE_SETUP
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 218 "detex.l"
+#line 223 "detex.l"
{BEGIN LaEnv; IGNORE;}
YY_BREAK
case 17:
/* rule 17 can match eol */
YY_RULE_SETUP
-#line 219 "detex.l"
+#line 224 "detex.l"
NEWLINE;
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 220 "detex.l"
+#line 225 "detex.l"
;
YY_BREAK
case 19:
/* rule 19 can match eol */
YY_RULE_SETUP
-#line 222 "detex.l"
+#line 227 "detex.l"
;
YY_BREAK
case 20:
/* rule 20 can match eol */
YY_RULE_SETUP
-#line 223 "detex.l"
+#line 228 "detex.l"
;
YY_BREAK
case 21:
/* rule 21 can match eol */
YY_RULE_SETUP
-#line 224 "detex.l"
+#line 229 "detex.l"
;
YY_BREAK
case 22:
/* rule 22 can match eol */
YY_RULE_SETUP
-#line 225 "detex.l"
+#line 230 "detex.l"
;
YY_BREAK
case 23:
/* rule 23 can match eol */
YY_RULE_SETUP
-#line 226 "detex.l"
+#line 231 "detex.l"
;
YY_BREAK
case 24:
/* rule 24 can match eol */
YY_RULE_SETUP
-#line 227 "detex.l"
+#line 232 "detex.l"
;
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 229 "detex.l"
+#line 234 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 230 "detex.l"
+#line 235 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 27:
YY_RULE_SETUP
-#line 231 "detex.l"
+#line 236 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 28:
YY_RULE_SETUP
-#line 232 "detex.l"
+#line 237 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 233 "detex.l"
+#line 238 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 30:
YY_RULE_SETUP
-#line 234 "detex.l"
+#line 239 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 31:
YY_RULE_SETUP
-#line 235 "detex.l"
+#line 240 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 32:
YY_RULE_SETUP
-#line 236 "detex.l"
+#line 241 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 33:
YY_RULE_SETUP
-#line 237 "detex.l"
+#line 242 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 34:
YY_RULE_SETUP
-#line 238 "detex.l"
+#line 243 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 35:
YY_RULE_SETUP
-#line 239 "detex.l"
+#line 244 "detex.l"
{ STRIPARGS(2); }
YY_BREAK
case 36:
YY_RULE_SETUP
-#line 240 "detex.l"
+#line 245 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 241 "detex.l"
+#line 246 "detex.l"
{ STRIPARGS(2); }
YY_BREAK
case 38:
YY_RULE_SETUP
-#line 242 "detex.l"
+#line 247 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 39:
YY_RULE_SETUP
-#line 243 "detex.l"
+#line 248 "detex.l"
;
YY_BREAK
case 40:
YY_RULE_SETUP
-#line 244 "detex.l"
+#line 249 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 41:
/* rule 41 can match eol */
YY_RULE_SETUP
-#line 245 "detex.l"
+#line 250 "detex.l"
{ LaBEGIN LaPicture; }
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 247 "detex.l"
+#line 252 "detex.l"
;
YY_BREAK
case 43:
/* rule 43 can match eol */
YY_RULE_SETUP
-#line 248 "detex.l"
+#line 253 "detex.l"
{ printf("<Picture %s>", yytext); }
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 249 "detex.l"
+#line 254 "detex.l"
BEGIN Normal;
YY_BREAK
case 45:
YY_RULE_SETUP
-#line 251 "detex.l"
+#line 256 "detex.l"
{ KILLARGS(3); }
YY_BREAK
case 46:
YY_RULE_SETUP
-#line 252 "detex.l"
+#line 257 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 47:
YY_RULE_SETUP
-#line 253 "detex.l"
+#line 258 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 48:
YY_RULE_SETUP
-#line 254 "detex.l"
+#line 259 "detex.l"
{ KILLARGS(2); }
YY_BREAK
case 49:
YY_RULE_SETUP
-#line 255 "detex.l"
+#line 260 "detex.l"
{ KILLARGS(3); }
YY_BREAK
case 50:
YY_RULE_SETUP
-#line 256 "detex.l"
+#line 261 "detex.l"
{ KILLARGS(1); }
YY_BREAK
case 51:
YY_RULE_SETUP
-#line 257 "detex.l"
+#line 262 "detex.l"
{ STRIPARGS(1); }
YY_BREAK
case 52:
YY_RULE_SETUP
-#line 259 "detex.l"
+#line 264 "detex.l"
;
YY_BREAK
case 53:
YY_RULE_SETUP
-#line 260 "detex.l"
+#line 265 "detex.l"
;
YY_BREAK
case 54:
YY_RULE_SETUP
-#line 261 "detex.l"
+#line 266 "detex.l"
;
YY_BREAK
case 55:
YY_RULE_SETUP
-#line 262 "detex.l"
+#line 267 "detex.l"
;
YY_BREAK
case 56:
YY_RULE_SETUP
-#line 263 "detex.l"
+#line 268 "detex.l"
;
YY_BREAK
case 57:
YY_RULE_SETUP
-#line 264 "detex.l"
+#line 269 "detex.l"
;
YY_BREAK
case 58:
YY_RULE_SETUP
-#line 266 "detex.l"
+#line 271 "detex.l"
/* ignore args */ {KILLARGS(1); IGNORE;}
YY_BREAK
case 59:
YY_RULE_SETUP
-#line 267 "detex.l"
+#line 272 "detex.l"
/* of these \cs */ {KILLARGS(1); IGNORE;}
YY_BREAK
case 60:
YY_RULE_SETUP
-#line 268 "detex.l"
+#line 273 "detex.l"
{KILLARGS(1); IGNORE;}
YY_BREAK
case 61:
YY_RULE_SETUP
-#line 269 "detex.l"
+#line 274 "detex.l"
{CITE(1); IGNORE;}
YY_BREAK
case 62:
YY_RULE_SETUP
-#line 270 "detex.l"
+#line 275 "detex.l"
{LATEX; KILLARGS(1); IGNORE;}
YY_BREAK
case 63:
YY_RULE_SETUP
-#line 271 "detex.l"
+#line 276 "detex.l"
{LATEX; KILLARGS(1); IGNORE;}
YY_BREAK
case 64:
YY_RULE_SETUP
-#line 272 "detex.l"
+#line 277 "detex.l"
{KILLARGS(1); IGNORE;}
YY_BREAK
case 65:
YY_RULE_SETUP
-#line 273 "detex.l"
+#line 278 "detex.l"
{KILLARGS(1); IGNORE;}
YY_BREAK
case 66:
YY_RULE_SETUP
-#line 274 "detex.l"
+#line 279 "detex.l"
{KILLARGS(1); SPACE;}
YY_BREAK
case 67:
YY_RULE_SETUP
-#line 275 "detex.l"
+#line 280 "detex.l"
{KILLARGS(1); SPACE;}
YY_BREAK
case 68:
YY_RULE_SETUP
-#line 276 "detex.l"
+#line 281 "detex.l"
{KILLARGS(1); IGNORE;}
YY_BREAK
case 69:
YY_RULE_SETUP
-#line 277 "detex.l"
+#line 282 "detex.l"
{CITE(1); IGNORE;}
YY_BREAK
case 70:
YY_RULE_SETUP
-#line 278 "detex.l"
+#line 283 "detex.l"
{KILLARGS(1); IGNORE;}
YY_BREAK
case 71:
YY_RULE_SETUP
-#line 279 "detex.l"
+#line 284 "detex.l"
{CITE(1); IGNORE;}
YY_BREAK
case 72:
YY_RULE_SETUP
-#line 280 "detex.l"
+#line 285 "detex.l"
{KILLARGS(1); IGNORE;}
YY_BREAK
case 73:
YY_RULE_SETUP
-#line 281 "detex.l"
+#line 286 "detex.l"
/* ignore \verb<ch>...<ch> */ { if (fLatex) {
char verbchar, c;
verbchar = input();
@@ -2310,137 +2315,137 @@ YY_RULE_SETUP
YY_BREAK
case 74:
YY_RULE_SETUP
-#line 291 "detex.l"
+#line 296 "detex.l"
{ LATEX; KILLARGS(2); }
YY_BREAK
case 75:
YY_RULE_SETUP
-#line 292 "detex.l"
+#line 297 "detex.l"
{ LATEX; KILLARGS(2); }
YY_BREAK
case 76:
YY_RULE_SETUP
-#line 293 "detex.l"
+#line 298 "detex.l"
{ LATEX; KILLARGS(3); }
YY_BREAK
case 77:
YY_RULE_SETUP
-#line 295 "detex.l"
+#line 300 "detex.l"
/* ignore def begin */ {BEGIN Define; IGNORE;}
YY_BREAK
case 78:
YY_RULE_SETUP
-#line 296 "detex.l"
+#line 301 "detex.l"
BEGIN Normal;
YY_BREAK
case 79:
/* rule 79 can match eol */
YY_RULE_SETUP
-#line 297 "detex.l"
+#line 302 "detex.l"
NEWLINE;
YY_BREAK
case 80:
YY_RULE_SETUP
-#line 298 "detex.l"
+#line 303 "detex.l"
;
YY_BREAK
case 81:
YY_RULE_SETUP
-#line 300 "detex.l"
+#line 305 "detex.l"
/* formula mode */ {LaBEGIN LaFormula; IGNORE;}
YY_BREAK
case 82:
YY_RULE_SETUP
-#line 301 "detex.l"
+#line 306 "detex.l"
BEGIN Normal;
YY_BREAK
case 83:
/* rule 83 can match eol */
YY_RULE_SETUP
-#line 302 "detex.l"
+#line 307 "detex.l"
NEWLINE;
YY_BREAK
case 84:
YY_RULE_SETUP
-#line 303 "detex.l"
+#line 308 "detex.l"
;
YY_BREAK
case 85:
YY_RULE_SETUP
-#line 305 "detex.l"
+#line 310 "detex.l"
/* display mode */ {LaBEGIN LaDisplay; IGNORE;}
YY_BREAK
case 86:
YY_RULE_SETUP
-#line 306 "detex.l"
+#line 311 "detex.l"
BEGIN Normal;
YY_BREAK
case 87:
/* rule 87 can match eol */
YY_RULE_SETUP
-#line 307 "detex.l"
+#line 312 "detex.l"
NEWLINE;
YY_BREAK
case 88:
YY_RULE_SETUP
-#line 308 "detex.l"
+#line 313 "detex.l"
;
YY_BREAK
case 89:
YY_RULE_SETUP
-#line 310 "detex.l"
+#line 315 "detex.l"
/* display mode */ {BEGIN Display; IGNORE;}
YY_BREAK
case 90:
YY_RULE_SETUP
-#line 311 "detex.l"
+#line 316 "detex.l"
BEGIN Normal;
YY_BREAK
case 91:
/* rule 91 can match eol */
YY_RULE_SETUP
-#line 312 "detex.l"
+#line 317 "detex.l"
NEWLINE;
YY_BREAK
case 92:
YY_RULE_SETUP
-#line 313 "detex.l"
+#line 318 "detex.l"
;
YY_BREAK
case 93:
YY_RULE_SETUP
-#line 315 "detex.l"
+#line 320 "detex.l"
/* math mode */ {BEGIN Math; IGNORE;}
YY_BREAK
case 94:
YY_RULE_SETUP
-#line 316 "detex.l"
+#line 321 "detex.l"
BEGIN Normal;
YY_BREAK
case 95:
/* rule 95 can match eol */
YY_RULE_SETUP
-#line 317 "detex.l"
+#line 322 "detex.l"
NEWLINE;
YY_BREAK
case 96:
YY_RULE_SETUP
-#line 318 "detex.l"
+#line 323 "detex.l"
;
YY_BREAK
case 97:
YY_RULE_SETUP
-#line 319 "detex.l"
+#line 324 "detex.l"
;
YY_BREAK
case 98:
YY_RULE_SETUP
-#line 321 "detex.l"
+#line 326 "detex.l"
/* process files */ {LaBEGIN LaInclude; IGNORE;}
YY_BREAK
case 99:
YY_RULE_SETUP
-#line 322 "detex.l"
+#line 327 "detex.l"
{ IncludeFile(yytext);
BEGIN Normal;
}
@@ -2448,27 +2453,27 @@ YY_RULE_SETUP
case 100:
/* rule 100 can match eol */
YY_RULE_SETUP
-#line 325 "detex.l"
+#line 330 "detex.l"
NEWLINE;
YY_BREAK
case 101:
YY_RULE_SETUP
-#line 326 "detex.l"
+#line 331 "detex.l"
;
YY_BREAK
case 102:
YY_RULE_SETUP
-#line 328 "detex.l"
+#line 333 "detex.l"
{BEGIN IncludeOnly; IGNORE;}
YY_BREAK
case 103:
YY_RULE_SETUP
-#line 329 "detex.l"
+#line 334 "detex.l"
AddInclude(yytext);
YY_BREAK
case 104:
YY_RULE_SETUP
-#line 330 "detex.l"
+#line 335 "detex.l"
{ if (csbIncList == 0)
rgsbIncList[csbIncList++] = '\0';
BEGIN Normal;
@@ -2477,22 +2482,22 @@ YY_RULE_SETUP
case 105:
/* rule 105 can match eol */
YY_RULE_SETUP
-#line 334 "detex.l"
+#line 339 "detex.l"
NEWLINE;
YY_BREAK
case 106:
YY_RULE_SETUP
-#line 335 "detex.l"
+#line 340 "detex.l"
;
YY_BREAK
case 107:
YY_RULE_SETUP
-#line 337 "detex.l"
+#line 342 "detex.l"
{BEGIN Input; IGNORE;}
YY_BREAK
case 108:
YY_RULE_SETUP
-#line 338 "detex.l"
+#line 343 "detex.l"
{ InputFile(yytext);
BEGIN Normal;
}
@@ -2500,55 +2505,55 @@ YY_RULE_SETUP
case 109:
/* rule 109 can match eol */
YY_RULE_SETUP
-#line 341 "detex.l"
+#line 346 "detex.l"
NEWLINE;
YY_BREAK
case 110:
YY_RULE_SETUP
-#line 342 "detex.l"
+#line 347 "detex.l"
;
YY_BREAK
case 111:
/* rule 111 can match eol */
YY_RULE_SETUP
-#line 344 "detex.l"
+#line 349 "detex.l"
/* handle ligatures */ {(void)printf("%.2s", yytext+1);}
YY_BREAK
case 112:
/* rule 112 can match eol */
YY_RULE_SETUP
-#line 345 "detex.l"
+#line 350 "detex.l"
{(void)printf("%.1s", yytext+1);}
YY_BREAK
case 113:
YY_RULE_SETUP
-#line 346 "detex.l"
+#line 351 "detex.l"
BEGIN LaBreak;
YY_BREAK
case 114:
YY_RULE_SETUP
-#line 348 "detex.l"
+#line 353 "detex.l"
/* ignore other \cs */ {BEGIN Control; IGNORE;}
YY_BREAK
case 115:
YY_RULE_SETUP
-#line 349 "detex.l"
+#line 354 "detex.l"
SPACE;
YY_BREAK
case 116:
/* rule 116 can match eol */
YY_RULE_SETUP
-#line 350 "detex.l"
+#line 355 "detex.l"
NEWLINE;
YY_BREAK
case 117:
YY_RULE_SETUP
-#line 351 "detex.l"
+#line 356 "detex.l"
IGNORE;
YY_BREAK
case 118:
YY_RULE_SETUP
-#line 352 "detex.l"
+#line 357 "detex.l"
{ if (yytext==NULL || strlen(yytext)==0
|| atoi(yytext)==4)
NEWLINE;
@@ -2557,48 +2562,48 @@ YY_RULE_SETUP
YY_BREAK
case 119:
YY_RULE_SETUP
-#line 358 "detex.l"
+#line 363 "detex.l"
IGNORE;
YY_BREAK
case 120:
YY_RULE_SETUP
-#line 359 "detex.l"
+#line 364 "detex.l"
IGNORE;
YY_BREAK
case 121:
/* rule 121 can match eol */
YY_RULE_SETUP
-#line 360 "detex.l"
+#line 365 "detex.l"
{BEGIN Normal; NEWLINE;}
YY_BREAK
case 122:
YY_RULE_SETUP
-#line 361 "detex.l"
+#line 366 "detex.l"
{BEGIN Normal; IGNORE;}
YY_BREAK
case 123:
YY_RULE_SETUP
-#line 362 "detex.l"
+#line 367 "detex.l"
{yyless(0);BEGIN Normal;}
YY_BREAK
case 124:
YY_RULE_SETUP
-#line 364 "detex.l"
+#line 369 "detex.l"
/* special characters */ IGNORE;
YY_BREAK
case 125:
YY_RULE_SETUP
-#line 365 "detex.l"
+#line 370 "detex.l"
IGNORE;
YY_BREAK
case 126:
YY_RULE_SETUP
-#line 366 "detex.l"
+#line 371 "detex.l"
SPACE;
YY_BREAK
case 127:
YY_RULE_SETUP
-#line 368 "detex.l"
+#line 373 "detex.l"
{ if (fWord)
(void)printf("%s\n", yytext);
else
@@ -2607,28 +2612,28 @@ YY_RULE_SETUP
YY_BREAK
case 128:
YY_RULE_SETUP
-#line 373 "detex.l"
+#line 378 "detex.l"
if (!fWord) ECHO;
YY_BREAK
case 129:
/* rule 129 can match eol */
YY_RULE_SETUP
-#line 374 "detex.l"
+#line 379 "detex.l"
if (!fWord) ECHO;
YY_BREAK
case 130:
YY_RULE_SETUP
-#line 376 "detex.l"
+#line 381 "detex.l"
{ BEGIN LaOptArg; }
YY_BREAK
case 131:
YY_RULE_SETUP
-#line 377 "detex.l"
+#line 382 "detex.l"
{ cOpenBrace++; }
YY_BREAK
case 132:
YY_RULE_SETUP
-#line 378 "detex.l"
+#line 383 "detex.l"
{ cOpenBrace--;
if (cOpenBrace == 0)
{
@@ -2639,28 +2644,28 @@ YY_RULE_SETUP
YY_BREAK
case 133:
YY_RULE_SETUP
-#line 385 "detex.l"
+#line 390 "detex.l"
;
YY_BREAK
case 134:
YY_RULE_SETUP
-#line 386 "detex.l"
+#line 391 "detex.l"
BEGIN LaMacro;
YY_BREAK
case 135:
/* rule 135 can match eol */
YY_RULE_SETUP
-#line 387 "detex.l"
+#line 392 "detex.l"
;
YY_BREAK
case 136:
YY_RULE_SETUP
-#line 389 "detex.l"
+#line 394 "detex.l"
{ BEGIN LaOptArg2; }
YY_BREAK
case 137:
YY_RULE_SETUP
-#line 390 "detex.l"
+#line 395 "detex.l"
{ if (cOpenBrace == 0)
{
if (--cArgs==0)
@@ -2674,30 +2679,30 @@ YY_RULE_SETUP
YY_BREAK
case 138:
YY_RULE_SETUP
-#line 400 "detex.l"
+#line 405 "detex.l"
{ cOpenBrace--; }
YY_BREAK
case 139:
YY_RULE_SETUP
-#line 401 "detex.l"
+#line 406 "detex.l"
;
YY_BREAK
case 140:
YY_RULE_SETUP
-#line 402 "detex.l"
+#line 407 "detex.l"
BEGIN LaMacro2;
YY_BREAK
case 141:
YY_RULE_SETUP
-#line 403 "detex.l"
+#line 408 "detex.l"
;
YY_BREAK
case 142:
YY_RULE_SETUP
-#line 404 "detex.l"
+#line 409 "detex.l"
ECHO;
YY_BREAK
-#line 2701 "detex.c"
+#line 2706 "detex.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(Define):
case YY_STATE_EOF(Display):
@@ -3712,7 +3717,7 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 404 "detex.l"
+#line 409 "detex.l"
/******
@@ -3749,10 +3754,10 @@ main(int cArgs, char *rgsbArgs[])
#endif
_splitpath (rgsbArgs[0], drive, dir, fname, ext);
sbProgName = strlwr(fname);
-#else
-#ifdef KPATHSEA
+#elif defined(KPATHSEA)
kpse_set_program_name (rgsbArgs[0], NULL);
-#endif
+ sbProgName = kpse_program_name;
+#else
if ((sbProgName = rindex(rgsbArgs[0], '/')) != NULL)
sbProgName++;
else
@@ -3775,7 +3780,7 @@ main(int cArgs, char *rgsbArgs[])
break;
case CHENVOPT:
if (++iArgs >= cArgs) {
- ErrorExit("-e option requires and argument");
+ ErrorExit("-e option requires an argument");
}
sbEnvList = rgsbArgs[iArgs];
break;
@@ -3807,6 +3812,10 @@ main(int cArgs, char *rgsbArgs[])
}
SetEnvIgnore(sbEnvList);
+#ifdef WIN32
+ _setmode(fileno(stdout), _O_BINARY);
+#endif
+
/* process input files */
for (; iArgs < cArgs; iArgs++) {
fSawFile++;