aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2013-04-30 23:49:23 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2013-04-30 23:49:23 +0000
commit13a0f001a6ab7539b25c7c3d3bdde6e762bf7048 (patch)
tree1b00f7df67c04abe9ac5ac8ad06da4a6490be03e
parent6916e47018a8c6788dae5b227a259d86ccd41e52 (diff)
downloadsrc-13a0f001a6ab7539b25c7c3d3bdde6e762bf7048.tar.gz
src-13a0f001a6ab7539b25c7c3d3bdde6e762bf7048.zip
Import flex 2.5.37.vendor/flex/2.5.37
Notes
Notes: svn path=/vendor/flex/dist/; revision=250125 svn path=/vendor/flex/2.5.37/; revision=250126; tag=vendor/flex/2.5.37
-rw-r--r--ChangeLog5464
-rw-r--r--INSTALL243
-rw-r--r--Makefile.am30
-rw-r--r--Makefile.in591
-rw-r--r--NEWS30
-rw-r--r--README.cvs6
-rw-r--r--buf.c25
-rwxr-xr-xcompile21
-rw-r--r--conf.in15
-rwxr-xr-xconfig.guess191
-rwxr-xr-xconfig.sub210
-rwxr-xr-xconfigure11069
-rw-r--r--configure.in45
-rwxr-xr-xdepcomp172
-rw-r--r--dfa.c13
-rw-r--r--doc/Makefile.am16
-rw-r--r--doc/Makefile.in560
-rw-r--r--doc/flex.1165
-rw-r--r--doc/flex.info282
-rw-r--r--doc/flex.info-17683
-rw-r--r--doc/flex.info-2bin52175 -> 0 bytes
-rwxr-xr-xdoc/mdate-sh201
-rw-r--r--doc/stamp-vti4
-rw-r--r--filter.c33
-rw-r--r--flex.skl122
-rw-r--r--flexdef.h14
-rw-r--r--flexint.h2
-rw-r--r--gen.c2
-rwxr-xr-xinstall-sh517
-rw-r--r--m4/Makefile.am1
-rw-r--r--m4/Makefile.in316
-rw-r--r--main.c14
-rw-r--r--misc.c140
-rwxr-xr-xmissing104
-rw-r--r--parse.c1618
-rw-r--r--parse.h45
-rw-r--r--parse.y10
-rw-r--r--regex.c16
-rw-r--r--scan.c71
-rw-r--r--scan.l10
-rw-r--r--scanflags.c3
-rw-r--r--scanopt.c11
-rw-r--r--skel.c126
-rw-r--r--tables.c5
-rwxr-xr-xylwrap222
45 files changed, 10975 insertions, 19463 deletions
diff --git a/ChangeLog b/ChangeLog
index 6cf7e1c8a6dd..4d0c7595a7f7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,996 +1,1408 @@
-2008-02-26 15:36 Will Estes <wlestes@users.sourceforge.net>
+2012-08-03 Will Estes <westes575@gmail.com>
+
+ * NEWS: update NEWS to reflect changes in 2.5.37
+
+2012-08-03 Will Estes <westes575@gmail.com>
+
+ * configure.in: update flex version to 2.5.37
+
+2012-08-03 Will Estes <westes575@gmail.com>
+
+ * po/de.po: new de translation from the translation project
+
+2012-08-02 Will Estes <westes575@gmail.com>
+
+ * po/vi.po: new vi translation from the translation project
+
+2012-08-02 Will Estes <westes575@gmail.com>
+
+ * po/pl.po: new pl translation from the translation project
+
+2012-08-02 Will Estes <westes575@gmail.com>
+
+ * po/fi.po: new fi translation from the translation project
+
+2012-08-02 Will Estes <westes575@gmail.com>
+
+ * Makefile.am: Add -f option to LN_S to create flex++ The autoconf macro LN_S needs -f to successfully install flex++ if
+ flex++ already exists. Fortunately, ln, ln -s and cp -p, which are
+ the various forms that LN_S can take all will do the right thing
+ with a -f argument passed.
+
+2012-08-02 Will Estes <westes575@gmail.com>
+
+ * Makefile.am, tools/Makefile.am, tools/cvs2cl.pl,
+ tools/cvsauthors, tools/git2cl: replace cvs2cl with git2cl Add the git2cl script in tools/ and remove the (now unnecessary)
+ cvs2cl script. Remove tools/cvsauthors since git2cl does not need
+ that file. Account for all the above in Makefile.am and
+ tools/Makefile.am
+
+2012-07-29 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/.cvsignore, tests/.gitignore, tests/TEMPLATE/.cvsignore,
+ tests/TEMPLATE/.gitignore, tests/test-alloc-extra/.cvsignore,
+ tests/test-alloc-extra/.gitignore, tests/test-array-nr/.cvsignore,
+ tests/test-array-nr/.gitignore, tests/test-array-r/.cvsignore,
+ tests/test-array-r/.gitignore, tests/test-basic-nr/.cvsignore,
+ tests/test-basic-nr/.gitignore, tests/test-basic-r/.cvsignore,
+ tests/test-basic-r/.gitignore, tests/test-bison-nr/.cvsignore,
+ tests/test-bison-nr/.gitignore, tests/test-bison-yylloc/.cvsignore,
+ tests/test-bison-yylloc/.gitignore,
+ tests/test-bison-yylval/.cvsignore,
+ tests/test-bison-yylval/.gitignore,
+ tests/test-c++-basic/.cvsignore, tests/test-c++-basic/.gitignore,
+ tests/test-c++-multiple-scanners/.cvsignore,
+ tests/test-c++-multiple-scanners/.gitignore,
+ tests/test-c++-yywrap/.cvsignore, tests/test-c++-yywrap/.gitignore,
+ tests/test-c-cpp-nr/.cvsignore, tests/test-c-cpp-nr/.gitignore,
+ tests/test-c-cpp-r/.cvsignore, tests/test-c-cpp-r/.gitignore,
+ tests/test-ccl/.cvsignore, tests/test-ccl/.gitignore,
+ tests/test-concatenated-options/.cvsignore,
+ tests/test-concatenated-options/.gitignore,
+ tests/test-debug-nr/.cvsignore, tests/test-debug-nr/.gitignore,
+ tests/test-debug-r/.cvsignore, tests/test-debug-r/.gitignore,
+ tests/test-extended/.cvsignore, tests/test-extended/.gitignore,
+ tests/test-header-nr/.cvsignore, tests/test-header-nr/.gitignore,
+ tests/test-header-r/.cvsignore, tests/test-header-r/.gitignore,
+ tests/test-include-by-buffer/.cvsignore,
+ tests/test-include-by-buffer/.gitignore,
+ tests/test-include-by-push/.cvsignore,
+ tests/test-include-by-push/.gitignore,
+ tests/test-include-by-reentrant/.cvsignore,
+ tests/test-include-by-reentrant/.gitignore,
+ tests/test-linedir-r/.cvsignore, tests/test-linedir-r/.gitignore,
+ tests/test-lineno-nr/.cvsignore, tests/test-lineno-nr/.gitignore,
+ tests/test-lineno-r/.cvsignore, tests/test-lineno-r/.gitignore,
+ tests/test-mem-nr/.cvsignore, tests/test-mem-nr/.gitignore,
+ tests/test-mem-r/.cvsignore, tests/test-mem-r/.gitignore,
+ tests/test-multiple-scanners-nr/.cvsignore,
+ tests/test-multiple-scanners-nr/.gitignore,
+ tests/test-multiple-scanners-r/.cvsignore,
+ tests/test-multiple-scanners-r/.gitignore,
+ tests/test-noansi-nr/.cvsignore, tests/test-noansi-nr/.gitignore,
+ tests/test-noansi-r/.cvsignore, tests/test-noansi-r/.gitignore,
+ tests/test-posix/.cvsignore, tests/test-posix/.gitignore,
+ tests/test-posixly-correct/.cvsignore,
+ tests/test-posixly-correct/.gitignore,
+ tests/test-prefix-nr/.cvsignore, tests/test-prefix-nr/.gitignore,
+ tests/test-prefix-r/.cvsignore, tests/test-prefix-r/.gitignore,
+ tests/test-pthread/.cvsignore, tests/test-pthread/.gitignore,
+ tests/test-quotes/.cvsignore, tests/test-quotes/.gitignore,
+ tests/test-reject/.cvsignore, tests/test-reject/.gitignore,
+ tests/test-rescan-nr/.cvsignore, tests/test-rescan-nr/.gitignore,
+ tests/test-rescan-r/.cvsignore, tests/test-rescan-r/.gitignore,
+ tests/test-string-nr/.cvsignore, tests/test-string-nr/.gitignore,
+ tests/test-string-r/.cvsignore, tests/test-string-r/.gitignore,
+ tests/test-table-opts/.cvsignore, tests/test-table-opts/.gitignore,
+ tests/test-top/.cvsignore, tests/test-top/.gitignore,
+ tests/test-yyextra/.cvsignore, tests/test-yyextra/.gitignore: rename
+ .cvsignore files in tests/ subdirectories to gitignore
+
+2012-07-23 Will Estes <wlestes@users.sourceforge.net>
+
+ * examples/.cvsignore, examples/fastwc/.cvsignore,
+ examples/manual/.cvsignore, lib/.cvsignore, tools/.cvsignore: remove
+ unneeded .cvsignore files
+
+2012-07-22 Will Estes <wlestes@users.sourceforge.net>
+
+ * .gitignore: add *.o and *.a to top level .gitignore The cvs tree did not need these additions because cvs assumed a lot
+ of C-style defaults for .cvsignore files. flex builds *.o object
+ files in the course of compilation and *.a files are built as a part
+ of the libraries that flex compiles in the build process.
+
+2012-07-22 Will Estes <wlestes@users.sourceforge.net>
+
+ * .cvsignore, .gitignore, doc/.cvsignore, doc/.gitignore,
+ m4/.cvsignore, m4/.gitignore, po/.cvsignore, po/.gitignore: rename
+ .cvsignore files to .gitignore The .cvsignore files from the legacy cvs repository tracked what
+ files got autogenerated during various stages of the flex build.
+ Renaming the .cvsignore files to .gitignore lets git do the same
+ thing. git is better about letting higher level .gitignore files
+ not-track files in lower level directories. As I work my way through
+ the test directories, we may add additional .gitignore files from
+ the old .cvsignore files. The po/ directory has a lot of special files used by gettext, so the
+ patterns in po/.gitignore look very different. The doc/.gitignore file accounts for what texinfo/makeinfo do, and
+ so it also has special patterns. The m4 directory is mainly present for autoconf's benefit, but we
+ have to account for it so make can do the right thing. Hence,
+ m4/.gitignore says to ignore *.m4, as counterintuitive as that may
+ seem.
+
+2012-07-22 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS: update NEWS file to note release date of 2.5.36
+
+2012-06-23 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: fix call to version in manual
+
+2012-06-22 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: add missing argument to call to yylex in manual
+
+2012-04-27 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl: lintish cleanup in flex.skl; resolves #2040664
+
+2012-04-27 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: add a 7 to the c99 octal pattern; resolves #3518269
+
+2012-03-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: copyedit; resolves #3513670
+
+2012-03-23 Will Estes <wlestes@users.sourceforge.net>
+
+ * buf.c: escape backslashes in #line filenames in %top section;
+ resolves #3212400; patch submitted by scfc_de
+
+2012-03-21 Will Estes <wlestes@users.sourceforge.net>
+
+ * Makefile.am, configure.in, lib/Makefile.am, lib/lib.c,
+ lib/malloc.c, lib/realloc.c: provide malloc() and realloc() for
+ systems that do not have satisfactory versions; resolves #1899047
+
+2012-03-21 Will Estes <wlestes@users.sourceforge.net>
+
+ * Makefile.am: install flex++ as a link; resolves bug #2939681
+
+2012-03-21 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/test-bison-nr/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am: fix dependencies for make -j in
+ test suite
+
+2012-03-19 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl: add missing prototypes for yyset_column() and
+ yyget_column(); resolves #3029024; patch submitted by scfc_de
+
+2012-03-02 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl, tests/test-reject/scanner.l,
+ tests/test-table-opts/scanner.l: wrap yy_fatal_error calls
+ appropriately
+
+2012-03-02 Will Estes <wlestes@users.sourceforge.net>
+
+ * regex.c: fix overlapping data buffer issue; patch from Tim
+ Landsheet scfc_de
+
+2012-03-02 Will Estes <wlestes@users.sourceforge.net>
+
+ * scan.l: better bracket handling in the scanner
+
+2012-03-02 Will Estes <wlestes@users.sourceforge.net>
+
+ * flexdef.h, main.c, misc.c: Remove unneeded tracking of line/column
+ output; patch from Tim Landsheet scfc_de
+
+2012-03-02 Will Estes <wlestes@users.sourceforge.net>
+
+ * configure.in: fix test for m4 to accept an m4 with -P and not jus
+ tGNU m4; patch from Tim Landsheet scfc_de on sourceforge
+
+2012-03-02 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: fix order of td_lolen and td_hilen in
+ documentation; resolves #2913693; patch submitted by Andreas
+ Gruenbacher <agruen@suse.de>
+
+2012-03-02 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: correct document of YY_FLUSH_BUFFER; resolves
+ #1723028
+
+2012-02-17 Will Estes <wlestes@users.sourceforge.net>
+
+ * dfa.c, flexdef.h, misc.c, parse.y: speed up things for complex
+ inputs; resolves #2891390
+
+2012-02-17 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: fix ipv6 pattern in manual; update manual copyright
+ to 2012
+
+2012-02-17 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl: fremove isatty() declaration; resolves #1984987
+
+2012-02-17 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: Add link for RFC 2396
+
+2012-02-17 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl: resolve #1990170
+
+2012-02-17 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl: fix documentation to reflect arguments actually used;
+ bug #2783023
+
+2012-02-05 Will Estes <wlestes@users.sourceforge.net>
+
+ * main.c: fix yywrap behavior for reentrant scanners
+
+2012-02-04 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS: Mmention tr translation
+
+2012-02-04 Will Estes <wlestes@users.sourceforge.net>
+
+ * tables.c: prevent unused stuff from being compiled so as to reduce
+ warnings
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * buf.c, filter.c, main.c, misc.c, regex.c, scanflags.c: more better
+ error messages; more better memory handling
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * misc.c: more careful/paranoia
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * scanopt.c: more careful memory allocation in option processing
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * Makefile.am, configure.in: remove m4/ directory and generally
+ clean up automake/autoconf inputs
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * lib/.cvsignore: cvsignore files that need that
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS, po/da.po, po/es.po, po/ko.po, po/pt_BR.po, po/ro.po,
+ po/ru.po, po/sv.po, po/tr.po, po/zh_CN.po: check in translations
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * main.c: correct macro definition of yywrap
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * scan.l: Greater specificity in error messages
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * parse.y: improve rule handling at EOF
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl: include cstdio for definition of EOF in all cases
+
+2012-02-03 Will Estes <wlestes@users.sourceforge.net>
+
+ * flex.skl: suppress warning on unused yyguts_t
+
+2010-08-13 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS, po/LINGUAS, po/fi.po: new fi translation from the
+ translation project
+
+2009-03-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: Include version.texi after @setfilename, so that @set values are correctly evaluated. (Start Conditions, Performance, Lex and Posix): Fix some markup errors. (Cxx): Likewise. Also, fix C++ example to actually be compilable. Patch from Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+2008-12-28 Will Estes <wlestes@users.sourceforge.net>
+
+ * configure.in: remove line break that broke configure
+
+2008-12-28 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: specify the title on the title page since @settitle
+ doesn't do that for us; resolves bug #2043491
+
+2008-12-28 Will Estes <wlestes@users.sourceforge.net>
+
+ * configure.in, flexdef.h: check for regex.h; resolves bug #2337486
+
+2008-07-23 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS, po/ga.po: new ga translation from the translation project
+
+2008-06-10 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS, po/ca.po: new ca translation
+
+2008-05-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * Makefile.am: move ABOUT-NLS back to EXTRA_DIST
+
+2008-05-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * Makefile.am: create new dist_doc_DATA; move some EXTRA_DIST files
+ to new dist_doc_DATA target
+
+2008-05-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * .cvsignore: ignore more automake generated config.status* files
+
+2008-05-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS: flex distribution now built with automake and autoconf
+ versions ...
+
+2008-05-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * README.cvs: document GNU auto* version changes for building flex
+ from cvs
+
+2008-05-31 Will Estes <wlestes@users.sourceforge.net>
+
+ * .cvsignore, doc/Makefile.am: ignore automake-supplied ylwrap
+
+2008-05-15 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS, flex.skl: clean up types; resolves 1961902
+
+2008-05-15 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS: update NEWS re manual
+
+2008-05-15 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: correct eroneous references to 'nowrap' to refer to
+ 'noyywrap'; resolves bug #1739912
+
+2008-05-14 Will Estes <wlestes@users.sourceforge.net>
+
+ * filter.c: call clearerr on stdin before dup2'ing it; resolves bug
+ #1902612
+
+2008-05-14 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS: generic updates to NEWS
+
+2008-05-14 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/test-pthread/Makefile.am: move library flags in linker
+ command; resolves patch #1943403; patch submitted by
+ nullnix@users.sourceforge.net
+
+2008-05-14 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: use ansi syntax in simple examples; resolves patch
+ #1909844; patch submitted by Tom Browder,
+ tbrowder2@users.sourceforge.net
+
+2008-04-10 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/flex.texi: fix typo in example (from Paolo J. Matos
+
+2008-04-10 Will Estes <wlestes@users.sourceforge.net>
+
+ * flexint.h: move endif to better account for what C99 defines for
+ integer types (fix from debian project)
+
+2008-04-10 Will Estes <wlestes@users.sourceforge.net>
+
+ * gen.c: fix another int type to be size_t
+
+2008-03-30 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS, po/fr.po: new fr translation
+
+2008-03-30 Will Estes <wlestes@users.sourceforge.net>
+
+ * NEWS, configure.in: start version 2.5.36
+
+2008-02-26 Will Estes <wlestes@users.sourceforge.net>
* NEWS: add date of release
-2008-02-15 07:37 Will Estes <wlestes@users.sourceforge.net>
+2008-02-15 Will Estes <wlestes@users.sourceforge.net>
* NEWS, parse.y: fix bug that prevented comments from working
properly
-2008-02-12 07:57 Will Estes <wlestes@users.sourceforge.net>
+2008-02-12 Will Estes <wlestes@users.sourceforge.net>
* po/de.po: new de translation
-2008-02-10 06:08 Will Estes <wlestes@users.sourceforge.net>
+2008-02-10 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/vi.po: new vi translation
-2008-02-09 19:22 Will Estes <wlestes@users.sourceforge.net>
+2008-02-10 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/nl.po: new nl translation
-2008-02-09 14:59 Will Estes <wlestes@users.sourceforge.net>
+2008-02-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/pl.po: new pl translation
-2008-02-09 14:19 Will Estes <wlestes@users.sourceforge.net>
+2008-02-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/de.po, po/pt_BR.po: new de, pt_br translations
-2008-02-09 13:54 Will Estes <wlestes@users.sourceforge.net>
+2008-02-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS, flex.skl: generate headers for all functions (resolves bug
#1628314)
-2008-02-09 10:49 Will Estes <wlestes@users.sourceforge.net>
+2008-02-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS, flex.skl: change yy_size_t to be size_t (resolves bug
#1849812)
-2008-02-09 10:46 Will Estes <wlestes@users.sourceforge.net>
+2008-02-09 Will Estes <wlestes@users.sourceforge.net>
* configure.in: start work on version 2.5.35
-2007-12-12 16:00 Will Estes <wlestes@users.sourceforge.net>
+2007-12-12 Will Estes <wlestes@users.sourceforge.net>
- * NEWS, configure.in: revert NEWS and configure.in to version
- 2.5.34
+ * NEWS, configure.in: revert NEWS and configure.in to version 2.5.34
-2007-09-12 11:28 Will Estes <wlestes@users.sourceforge.net>
+2007-09-12 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: update version number to 2.5.35
-2007-09-10 02:17 Aaron Stone <sodabrew@users.sourceforge.net>
+2007-09-10 Aaron Stone <sodabrew@users.sourceforge.net>
* tests/test-alloc-extra/scanner.l: Use %option extra-type.
-2007-09-10 02:16 Aaron Stone <sodabrew@users.sourceforge.net>
+2007-09-10 Aaron Stone <sodabrew@users.sourceforge.net>
- * NEWS, flex.skl, flexdef.h, main.c, parse.y, scan.l,
- doc/flex.texi: Introduce %option extra-type="your_type *" (resolves
- bug #1744505).
+ * NEWS, doc/flex.texi, flex.skl, flexdef.h, main.c, parse.y, scan.l:
+ Introduce %option extra-type="your_type *" (resolves bug #1744505).
-2007-08-15 08:28 Will Estes <wlestes@users.sourceforge.net>
+2007-08-15 Will Estes <wlestes@users.sourceforge.net>
* po/nl.po: new nl translations from the translation project
-2007-06-28 16:28 Will Estes <wlestes@users.sourceforge.net>
+2007-06-28 Will Estes <wlestes@users.sourceforge.net>
* NEWS: change release date
-2007-06-27 21:59 Will Estes <wlestes@users.sourceforge.net>
+2007-06-28 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: adjustment for prefix classes; patch submitted by Petr
Machata <pmachata@redhat.com>
-2007-06-27 21:53 Will Estes <wlestes@users.sourceforge.net>
+2007-06-28 Will Estes <wlestes@users.sourceforge.net>
* NEWS: NEWS item for yy_init_extra
-2007-06-12 12:33 Aaron Stone <sodabrew@users.sourceforge.net>
+2007-06-12 Aaron Stone <sodabrew@users.sourceforge.net>
* doc/flex.texi: Docs and example for yylex_init_extra.
-2007-05-31 20:22 Will Estes <wlestes@users.sourceforge.net>
+2007-06-01 Will Estes <wlestes@users.sourceforge.net>
* tests/test-alloc-extra/.cvsignore: ignore OUTPUT file in
test-alloc-extra
-2007-05-31 20:21 Will Estes <wlestes@users.sourceforge.net>
+2007-06-01 Will Estes <wlestes@users.sourceforge.net>
* tests/descriptions: add description of concatenated options test
-2007-05-31 16:20 Will Estes <wlestes@users.sourceforge.net>
+2007-05-31 Will Estes <wlestes@users.sourceforge.net>
* tests/test-alloc-extra/.cvsignore: add missing .cvsignore to
test-alloc-extra
-2007-05-31 02:21 Aaron Stone <sodabrew@users.sourceforge.net>
+2007-05-31 Aaron Stone <sodabrew@users.sourceforge.net>
* configure.in, flex.skl, gen.c, main.c: Changes to resolve SF bugs
1568325 and 1563589.
-2007-05-31 02:09 Aaron Stone <sodabrew@users.sourceforge.net>
+2007-05-31 Aaron Stone <sodabrew@users.sourceforge.net>
- * tests/: Makefile.am, descriptions, test-alloc-extra/Makefile.am,
- test-alloc-extra/scanner.l, test-alloc-extra/test.input: Adding
- test cases for yylex_init_extra.
+ * tests/Makefile.am, tests/descriptions,
+ tests/test-alloc-extra/Makefile.am,
+ tests/test-alloc-extra/scanner.l, tests/test-alloc-extra/test.input:
+ Adding test cases for yylex_init_extra.
-2007-05-12 11:27 Will Estes <wlestes@users.sourceforge.net>
+2007-05-12 Will Estes <wlestes@users.sourceforge.net>
* configure.in, tests/test-pthread/scanner.l: fixes to test-pthread
-2007-05-12 09:13 Will Estes <wlestes@users.sourceforge.net>
+2007-05-12 Will Estes <wlestes@users.sourceforge.net>
* NEWS: NEWS item for concatenated options
-2007-05-12 09:13 Will Estes <wlestes@users.sourceforge.net>
+2007-05-12 Will Estes <wlestes@users.sourceforge.net>
* configure.in, tests/Makefile.am,
tests/test-concatenated-options/.cvsignore,
tests/test-concatenated-options/Makefile.am: unit test to verify
concatenated options parsing
-2007-05-12 09:11 Will Estes <wlestes@users.sourceforge.net>
+2007-05-12 Will Estes <wlestes@users.sourceforge.net>
* scanopt.c: parse multiple short concatenated options; patch
submitted by Petr Machata <pmachata@redhat.com
-2007-05-11 16:52 Will Estes <wlestes@users.sourceforge.net>
+2007-05-11 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: remove --force option from autogen.sh; much faster
without it
-2007-05-11 14:35 Will Estes <wlestes@users.sourceforge.net>
+2007-05-11 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.34
-2007-05-08 00:23 Aaron Stone <sodabrew@users.sourceforge.net>
+2007-05-08 Aaron Stone <sodabrew@users.sourceforge.net>
* NEWS, flex.skl: Better checking after yyalloc/yyrealloc (resolves
bug #1595967)
-2007-05-01 08:10 Will Estes <wlestes@users.sourceforge.net>
+2007-05-01 Will Estes <wlestes@users.sourceforge.net>
* doc/flex.texi: change title of manual to 'Lexical Analysis with
Flex'
-2007-04-25 14:16 Will Estes <wlestes@users.sourceforge.net>
+2007-04-25 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: c++ memory leak plug
-2007-04-23 09:29 Will Estes <wlestes@users.sourceforge.net>
+2007-04-23 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: roll back c++ memory patch as it causes the test suite
no end of grief
-2007-04-23 08:42 Will Estes <wlestes@users.sourceforge.net>
+2007-04-23 Will Estes <wlestes@users.sourceforge.net>
- * flex.skl: fix function definitions for non-ANSI environments
- (from Manoj Srivastava from Debian patchset)
+ * flex.skl: fix function definitions for non-ANSI environments (from
+ Manoj Srivastava from Debian patchset)
-2007-04-23 08:37 Will Estes <wlestes@users.sourceforge.net>
+2007-04-23 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: fix c++ memory leak (from Manoj Srivastava from Debian
patchset)
-2007-04-23 06:59 Will Estes <wlestes@users.sourceforge.net>
+2007-04-23 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: fix parameter name in comment (patch from Manoj
Srivastava from the debian patchset
-2007-04-23 06:57 Will Estes <wlestes@users.sourceforge.net>
+2007-04-23 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: add a size_t cast (patch from Manoj Srivastava from the
debian patchset
-2007-04-16 17:06 Will Estes <wlestes@users.sourceforge.net>
+2007-04-16 Will Estes <wlestes@users.sourceforge.net>
- * tests/: test-extended/Makefile.am, test-quotes/Makefile.am:
+ * tests/test-extended/Makefile.am, tests/test-quotes/Makefile.am:
cleanups to handle VPATH builds better; passifies make distcheck
-2007-04-16 16:42 Will Estes <wlestes@users.sourceforge.net>
+2007-04-16 Will Estes <wlestes@users.sourceforge.net>
* doc/flex.texi: drop using the \ in \ escaping as it throws pdf
generation for a loop
-2007-04-14 08:33 Will Estes <wlestes@users.sourceforge.net>
+2007-04-14 Will Estes <wlestes@users.sourceforge.net>
* .cvsignore: add compile and *.tar.bz2 to .cvsignore
-2007-04-14 08:27 Will Estes <wlestes@users.sourceforge.net>
+2007-04-14 Will Estes <wlestes@users.sourceforge.net>
* main.c: add call to setlocale for ctype as per debian patchset
-2007-04-14 08:25 Will Estes <wlestes@users.sourceforge.net>
+2007-04-14 Will Estes <wlestes@users.sourceforge.net>
- * Makefile.am, NEWS: provide for a PIC version of libfl.a for
- shared libraries using flex scanners
+ * Makefile.am, NEWS: provide for a PIC version of libfl.a for shared
+ libraries using flex scanners
-2007-04-13 13:24 Will Estes <wlestes@users.sourceforge.net>
+2007-04-13 Will Estes <wlestes@users.sourceforge.net>
* FlexLexer.h: annotate endifs since they're a bit far from their
opening #if statements
-2007-04-13 12:55 Will Estes <wlestes@users.sourceforge.net>
+2007-04-13 Will Estes <wlestes@users.sourceforge.net>
* flexdef.h, parse.y: refactor and slightly redo alloca testing,
resolves bug #1675899
-2007-04-13 12:50 Will Estes <wlestes@users.sourceforge.net>
-
- * configure.in: overhaul configure.in: use octathorps for comments
- so they're passed through m4 processing; better bracketing of m4
- arguments; retool checks as per suggestions from autoscan(1)
-
-2007-04-13 12:43 Will Estes <wlestes@users.sourceforge.net>
+2007-04-13 Will Estes <wlestes@users.sourceforge.net>
- * flex.skl: better handling of class that use the prefix
- functionality; from submitted patch
+ * : overhaul configure.in: use octathorps for comments so they're
+ passed through m4 processing; better bracketing of m4 arguments;
+ retool checks as per suggestions from autoscan(1)
-2007-04-13 12:32 Will Estes <wlestes@users.sourceforge.net>
+2007-04-13 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: fix skeleton for reentrant scanners
-2007-04-12 21:50 Will Estes <wlestes@users.sourceforge.net>
+2007-04-13 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: remove homegrown tags target; automake does that for
us
-2007-04-12 15:12 Will Estes <wlestes@users.sourceforge.net>
-
- * FlexLexer.h: declare some const where missing in c++ header file
-
-2007-04-12 15:12 Will Estes <wlestes@users.sourceforge.net>
+2007-04-12 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: fix skeleton for reentrant scanners, resolves bug
#1694318
-2007-04-10 15:20 Will Estes <wlestes@users.sourceforge.net>
+2007-04-12 Will Estes <wlestes@users.sourceforge.net>
+
+ * FlexLexer.h: declare some const where missing in c++ header file
+
+2007-04-10 Will Estes <wlestes@users.sourceforge.net>
* doc/flex.texi: corrections to the manual as per suggestions from
flex-help@
-2007-04-03 15:16 Will Estes <wlestes@users.sourceforge.net>
+2007-04-03 Will Estes <wlestes@users.sourceforge.net>
* doc/flex.texi: include author names in online versions of the
manual
-2007-04-03 15:07 Will Estes <wlestes@users.sourceforge.net>
+2007-04-03 Will Estes <wlestes@users.sourceforge.net>
* COPYING: update copyright notice
-2007-04-03 14:54 Will Estes <wlestes@users.sourceforge.net>
+2007-04-03 Will Estes <wlestes@users.sourceforge.net>
* AUTHORS: rearrange and update AUTHORS
-2007-03-29 11:45 Will Estes <wlestes@users.sourceforge.net>
+2007-03-29 Will Estes <wlestes@users.sourceforge.net>
* NEWS: note sf feature request 1658379 in NEWS
-2007-03-29 11:36 Will Estes <wlestes@users.sourceforge.net>
+2007-03-29 Will Estes <wlestes@users.sourceforge.net>
* tools/cvsauthors: add sodabrew to cvsauthors file
-2007-03-29 11:25 Aaron Stone <sodabrew@users.sourceforge.net>
+2007-03-29 Aaron Stone <sodabrew@users.sourceforge.net>
- * flex.skl:
- SourceForge feature request #1658379: Expose YY_BUF_SIZE in the
- header file.
+ * flex.skl: SourceForge feature request #1658379: Expose YY_BUF_SIZE
+ in the header file.
-2007-03-07 16:50 Will Estes <wlestes@users.sourceforge.net>
+2007-03-07 Will Estes <wlestes@users.sourceforge.net>
* NEWS, filter.c, flex.skl: apply patches submitted by sodabrew
-2007-03-07 16:20 Will Estes <wlestes@users.sourceforge.net>
+2007-03-07 Will Estes <wlestes@users.sourceforge.net>
* README.cvs: more changes describing building flex from cvs
-2007-03-07 16:16 Will Estes <wlestes@users.sourceforge.net>
+2007-03-07 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, README.cvs, README.cvs-snapshot: rename
README.cvs-snapshot to README.cvs
-2007-03-07 16:14 Will Estes <wlestes@users.sourceforge.net>
+2007-03-07 Will Estes <wlestes@users.sourceforge.net>
* README.cvs-snapshot: update to explain where flex cvs lives
-2007-03-07 15:45 Will Estes <wlestes@users.sourceforge.net>
+2007-03-07 Will Estes <wlestes@users.sourceforge.net>
* README, doc/flex.texi: correct how to submit bugs
-2007-02-16 10:38 Will Estes <wlestes@users.sourceforge.net>
+2007-02-16 Will Estes <wlestes@users.sourceforge.net>
* NEWS: clarify NEWS item re man page and pdf manual
-2007-02-14 12:03 Will Estes <wlestes@users.sourceforge.net>
+2007-02-14 Will Estes <wlestes@users.sourceforge.net>
* po/Makevars: update bug address to point to flex-devel instead of
lex-help
-2007-02-13 12:54 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* configure.in, doc/Makefile.am: make better use of AC_INIT; clean
up, simplify and make more robust the generation of the man page
-2007-02-13 12:08 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* configure.in: remove option check-news from call to
AM_INIT_AUTOMAKE as gnits implies check-news
-2007-02-13 10:07 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, configure.in: move automake options from Makefile.am
to configure.in
-2007-02-13 10:04 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: restore --install option to autogen.sh since --force
does not imply --install
-2007-02-13 10:04 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* tools/cvsauthors: add john43 to cvsauthors file
-2007-02-13 09:50 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: call autoreconf with --force instead of --install
-2007-02-13 09:48 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* doc/.cvsignore: remove texinfo.tex from cvs tree
-2007-02-12 20:15 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* NEWS: updates to NEWS file to reflect recent changes
-2007-02-12 20:14 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* doc/Makefile.am: add flex.pdf to EXTRA_DIST
-2007-02-12 19:45 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* configure.in: remove flex.spec
-2007-02-12 19:44 Will Estes <wlestes@users.sourceforge.net>
+2007-02-13 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: remove maintainercleanfiles
-2007-02-01 15:56 Will Estes <wlestes@users.sourceforge.net>
+2007-02-01 Will Estes <wlestes@users.sourceforge.net>
* doc/Makefile.am: more changes to build system to distribute man
page
-2007-02-01 12:10 Will Estes <wlestes@users.sourceforge.net>
+2007-02-01 Will Estes <wlestes@users.sourceforge.net>
* doc/Makefile.am: add flex man page to distribution
-2007-02-01 12:09 Will Estes <wlestes@users.sourceforge.net>
+2007-02-01 Will Estes <wlestes@users.sourceforge.net>
* .cvsignore, flex.spec.in: remove flex spec file
-2006-11-17 10:14 Will Estes <wlestes@users.sourceforge.net>
+2006-11-17 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-table-opts/Makefile.am: make test target depend on
- test groupings, which in turn depend on building executables;
- cygwin portability fix
+ * tests/test-table-opts/Makefile.am: make test target depend on test
+ groupings, which in turn depend on building executables; cygwin
+ portability fix
-2006-11-10 16:00 Will Estes <wlestes@users.sourceforge.net>
+2006-11-10 Will Estes <wlestes@users.sourceforge.net>
* tests/create-test: change create-test script to edit files in
place
-2006-11-09 15:14 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: test-array-nr/Makefile.am, test-array-r/Makefile.am,
- test-basic-nr/Makefile.am, test-basic-r/Makefile.am,
- test-bison-nr/Makefile.am, test-bison-yylloc/Makefile.am,
- test-bison-yylval/Makefile.am, test-c++-basic/Makefile.am,
- test-c++-multiple-scanners/Makefile.am,
- test-c++-yywrap/Makefile.am, test-c-cpp-nr/Makefile.am,
- test-c-cpp-r/Makefile.am, test-ccl/Makefile.am,
- test-debug-nr/Makefile.am, test-debug-r/Makefile.am,
- test-extended/Makefile.am, test-header-nr/Makefile.am,
- test-header-r/Makefile.am, test-include-by-buffer/Makefile.am,
- test-include-by-push/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-linedir-r/Makefile.am,
- test-lineno-nr/Makefile.am, test-lineno-r/Makefile.am,
- test-mem-nr/Makefile.am, test-mem-r/Makefile.am,
- test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-noansi-nr/Makefile.am,
- test-noansi-r/Makefile.am, test-posix/Makefile.am,
- test-posixly-correct/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-quotes/Makefile.am, test-reject/Makefile.am,
- test-rescan-nr/Makefile.am, test-rescan-r/Makefile.am,
- test-string-nr/Makefile.am, test-string-r/Makefile.am,
- test-top/Makefile.am, test-yyextra/Makefile.am: change CLEANFILES
- to include instead of just the testname for the executable
-
-2006-11-09 09:44 Will Estes <wlestes@users.sourceforge.net>
+2006-11-09 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/test-array-nr/Makefile.am, tests/test-array-r/Makefile.am,
+ tests/test-basic-nr/Makefile.am, tests/test-basic-r/Makefile.am,
+ tests/test-bison-nr/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c++-basic/Makefile.am,
+ tests/test-c++-multiple-scanners/Makefile.am,
+ tests/test-c++-yywrap/Makefile.am, tests/test-c-cpp-nr/Makefile.am,
+ tests/test-c-cpp-r/Makefile.am, tests/test-ccl/Makefile.am,
+ tests/test-debug-nr/Makefile.am, tests/test-debug-r/Makefile.am,
+ tests/test-extended/Makefile.am, tests/test-header-nr/Makefile.am,
+ tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-push/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-linedir-r/Makefile.am, tests/test-lineno-nr/Makefile.am,
+ tests/test-lineno-r/Makefile.am, tests/test-mem-nr/Makefile.am,
+ tests/test-mem-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-noansi-nr/Makefile.am, tests/test-noansi-r/Makefile.am,
+ tests/test-posix/Makefile.am,
+ tests/test-posixly-correct/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-quotes/Makefile.am,
+ tests/test-reject/Makefile.am, tests/test-rescan-nr/Makefile.am,
+ tests/test-rescan-r/Makefile.am, tests/test-string-nr/Makefile.am,
+ tests/test-string-r/Makefile.am, tests/test-top/Makefile.am,
+ tests/test-yyextra/Makefile.am: change CLEANFILES to include
+ instead of just the testname for the executable
+
+2006-11-09 Will Estes <wlestes@users.sourceforge.net>
* doc/flex.texi: fix typos in manual; resolves bug #1592857
-2006-11-09 09:39 Will Estes <wlestes@users.sourceforge.net>
+2006-11-09 Will Estes <wlestes@users.sourceforge.net>
* tests/TEMPLATE/Makefile.am: change test template to remove test
executable when that executable has an extension, e.g. under Cygwin
-2006-11-08 10:28 Will Estes <wlestes@users.sourceforge.net>
+2006-11-08 Will Estes <wlestes@users.sourceforge.net>
* tests/Makefile.am: test names weren't displaying in test
success/failure messages (from #1591672
-2006-10-30 15:28 Will Estes <wlestes@users.sourceforge.net>
+2006-10-30 Will Estes <wlestes@users.sourceforge.net>
* doc/.cvsignore: add flex.html to .cvsignore in doc directory
-2006-10-22 18:42 Will Estes <wlestes@users.sourceforge.net>
+2006-10-22 Will Estes <wlestes@users.sourceforge.net>
* NEWS: update NEWS file for the work that millaway did
-2006-10-22 18:17 Will Estes <wlestes@users.sourceforge.net>
+2006-10-22 Will Estes <wlestes@users.sourceforge.net>
* FlexLexer.h, NEWS, main.c,
tests/test-c++-multiple-scanners/scanner-2.l: make yywrap work with
c++ scanners as per sf bug report
-2006-10-20 15:16 Will Estes <wlestes@users.sourceforge.net>
+2006-10-20 Will Estes <wlestes@users.sourceforge.net>
- * flex.skl, tests/test-c++-multiple-scanners/main.cpp,
- tests/test-c-cpp-nr/scanner.l, NEWS: memory leak issues in c++
- scanner
+ * NEWS, flex.skl, tests/test-c++-multiple-scanners/main.cpp,
+ tests/test-c-cpp-nr/scanner.l: memory leak issues in c++ scanner
-2006-10-20 13:10 Will Estes <wlestes@users.sourceforge.net>
+2006-10-20 Will Estes <wlestes@users.sourceforge.net>
- * configure.in, tests/Makefile.am, tests/descriptions,
+ * NEWS, configure.in, tests/Makefile.am, tests/descriptions,
tests/test-c++-yywrap/.cvsignore,
tests/test-c++-yywrap/Makefile.am, tests/test-c++-yywrap/scanner.l,
- tests/test-c++-yywrap/test.input, NEWS: add unit test for c++ with
- yywrap
+ tests/test-c++-yywrap/test.input: add unit test for c++ with yywrap
-2006-10-20 12:08 Will Estes <wlestes@users.sourceforge.net>
+2006-10-20 Will Estes <wlestes@users.sourceforge.net>
* NEWS, tests/test-c++-basic/Makefile.am,
tests/test-linedir-r/Makefile.am: use configure-provided awk
variable for portability; add loadlibes variable to c++ test
-2006-10-17 09:41 Will Estes <wlestes@users.sourceforge.net>
+2006-10-17 Will Estes <wlestes@users.sourceforge.net>
* doc/flex.texi: add noyywrap option to example; use whitespace to
clarify example
-2006-08-02 10:43 Will Estes <wlestes@users.sourceforge.net>
+2006-08-02 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/ca.po, po/vi.po: new translations
-2006-04-11 12:54 John Millaway <john43@users.sourceforge.net>
+2006-04-11 John Millaway <john43@users.sourceforge.net>
* tables.c: Casted away signedness to appease -Werror freaks.
-2006-03-28 15:47 John Millaway <john43@users.sourceforge.net>
+2006-03-28 John Millaway <john43@users.sourceforge.net>
- * ccl.c, flexdef.h, parse.y, scan.l, sym.c, doc/flex.texi,
- tests/test-ccl/scanner.l, tests/test-ccl/test.input: Added ccl
- union operator. Added test in test suite for ccl union operator.
- Documented ccl union operator. Removed crufty ccl cache to prevent
+ * ccl.c, doc/flex.texi, flexdef.h, parse.y, scan.l, sym.c,
+ tests/test-ccl/scanner.l, tests/test-ccl/test.input: Added ccl union
+ operator. Added test in test suite for ccl union operator.
+ Documented ccl union operator. Removed crufty ccl cache to prevent
parser problems.
-2006-03-28 12:56 John Millaway <john43@users.sourceforge.net>
+2006-03-28 John Millaway <john43@users.sourceforge.net>
- * scan.l, doc/flex.texi, tests/test-extended/scanner.l,
+ * doc/flex.texi, scan.l, tests/test-extended/scanner.l,
tests/test-extended/test.input: Extended syntax excluded for
- lex/posix compat mode. Comments discarded inside (?x:) patterns.
- Added test in test suite for comments in extended patterns.
+ lex/posix compat mode. Comments discarded inside (?x:) patterns.
+ Added test in test suite for comments in extended patterns.
Documented syntax additions.
-2006-03-27 17:48 John Millaway <john43@users.sourceforge.net>
+2006-03-27 John Millaway <john43@users.sourceforge.net>
- * scan.l, tests/test-ccl/scanner.l, tests/test-ccl/test.input:
+ * scan.l, tests/test-ccl/scanner.l, tests/test-ccl/test.input:
Implemented (?x:) syntax to allow whitespace in patterns. Added
test for (?x:) syntax in test suite.
-2006-03-27 17:04 John Millaway <john43@users.sourceforge.net>
+2006-03-27 John Millaway <john43@users.sourceforge.net>
- * parse.y, tests/test-ccl/scanner.l, tests/test-ccl/test.input:
+ * parse.y, tests/test-ccl/scanner.l, tests/test-ccl/test.input:
Implemented dot-all syntax. Added test for dot-all syntax in test
suite.
-2006-03-27 15:59 John Millaway <john43@users.sourceforge.net>
+2006-03-27 John Millaway <john43@users.sourceforge.net>
- * dfa.c, flexdef.h, gen.c, main.c, parse.y, scan.l, scanflags.c,
- doc/flex.texi, tests/test-ccl/scanner.l, tests/test-ccl/test.input:
+ * dfa.c, doc/flex.texi, flexdef.h, gen.c, main.c, parse.y, scan.l,
+ scanflags.c, tests/test-ccl/scanner.l, tests/test-ccl/test.input:
Removed global variable caseins. Added scanner stack flags for
case-insensitivity. Moved case-folding code from DFA-generation to
parse time read-macros. Added localized case-sensitivity syntax
- from Perl. Added test for new syntax in test suite. Documented
- new syntax.
+ from Perl. Added test for new syntax in test suite. Documented new
+ syntax.
-2006-03-27 14:00 John Millaway <john43@users.sourceforge.net>
+2006-03-27 John Millaway <john43@users.sourceforge.net>
- * Makefile.am, configure.in, flexdef.h, scanflags.c: Added
- configure check for assert.h. Added scanner flags stack.
+ * Makefile.am, configure.in, flexdef.h, scanflags.c: Added configure
+ check for assert.h. Added scanner flags stack.
-2006-03-25 14:03 John Millaway <john43@users.sourceforge.net>
+2006-03-25 John Millaway <john43@users.sourceforge.net>
- * configure.in, scan.l, doc/flex.texi, tests/Makefile.am,
+ * configure.in, doc/flex.texi, scan.l, tests/Makefile.am,
tests/descriptions, tests/test-extended/.cvsignore,
tests/test-extended/Makefile.am, tests/test-extended/scanner.l,
tests/test-extended/test.input: Added extended, perl-compatible
- comment syntax. Added test for extended comment syntax.
- Documented extended comment syntax.
+ comment syntax. Added test for extended comment syntax. Documented
+ extended comment syntax.
-2006-03-25 12:57 John Millaway <john43@users.sourceforge.net>
+2006-03-25 John Millaway <john43@users.sourceforge.net>
- * parse.y, doc/flex.texi: Changed explicit 'A'-'Z' to isupper(),
+ * doc/flex.texi, parse.y: Changed explicit 'A'-'Z' to isupper(),
where correct to do so. Documentation.
-2006-03-24 17:33 John Millaway <john43@users.sourceforge.net>
+2006-03-24 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Documentation.
-2006-03-24 13:57 John Millaway <john43@users.sourceforge.net>
+2006-03-24 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Added appendix of patterns to manual.
-2006-03-23 18:34 John Millaway <john43@users.sourceforge.net>
+2006-03-23 John Millaway <john43@users.sourceforge.net>
- * doc/flex.texi: [no log message]
+ * doc/flex.texi: .
-2006-03-22 15:06 John Millaway <john43@users.sourceforge.net>
+2006-03-22 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Documentation.
-2006-03-22 15:03 John Millaway <john43@users.sourceforge.net>
+2006-03-22 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Documented set difference operator {-}.
-2006-03-22 14:06 John Millaway <john43@users.sourceforge.net>
+2006-03-22 John Millaway <john43@users.sourceforge.net>
* ccl.c, flexdef.h, parse.y, scan.l, tests/test-ccl/scanner.l,
tests/test-ccl/test.input: Added set difference operator {-} for
character classes.
-2006-03-22 11:04 John Millaway <john43@users.sourceforge.net>
+2006-03-22 John Millaway <john43@users.sourceforge.net>
- * configure.in, parse.y, scan.l, doc/flex.texi, tests/Makefile.am,
+ * configure.in, doc/flex.texi, parse.y, scan.l, tests/Makefile.am,
tests/descriptions, tests/test-ccl/.cvsignore,
tests/test-ccl/Makefile.am, tests/test-ccl/scanner.l,
tests/test-ccl/test.input: Added negated character class
- expressions. Documented negated character class expressions.
- Added regression test for negated character class expressions.
+ expressions. Documented negated character class expressions. Added
+ regression test for negated character class expressions.
-2006-03-22 07:49 John Millaway <john43@users.sourceforge.net>
+2006-03-22 John Millaway <john43@users.sourceforge.net>
- * buf.c, filter.c, gen.c, main.c, misc.c, nfa.c, parse.y, regex.c:
+ * buf.c, filter.c, gen.c, main.c, misc.c, nfa.c, parse.y, regex.c:
Replaced sprintf with snprintf everywhere.
-2006-03-21 19:15 John Millaway <john43@users.sourceforge.net>
+2006-03-22 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Removed includedir from AM_CPPFLAGS #1439351.
-2006-03-21 18:49 John Millaway <john43@users.sourceforge.net>
+2006-03-21 John Millaway <john43@users.sourceforge.net>
* configure.in, tests/Makefile.am, tests/descriptions,
tests/test-quotes/.cvsignore, tests/test-quotes/Makefile.am,
tests/test-quotes/scanner.l, tests/test-quotes/test.input: Added
test to verify user code is unmangled.
-2006-03-21 16:39 John Millaway <john43@users.sourceforge.net>
+2006-03-21 John Millaway <john43@users.sourceforge.net>
* flexdef.h, misc.c, scan.l: Fixed escape in actions.
-2006-03-21 16:22 John Millaway <john43@users.sourceforge.net>
+2006-03-21 John Millaway <john43@users.sourceforge.net>
* filter.c, flexdef.h, main.c, scan.l: Reverted previous input
filter changes. Added noop macro to scanner output. Modified
scan.l to escape m4 quotes found in user code.
-2006-03-21 16:18 John Millaway <john43@users.sourceforge.net>
+2006-03-21 John Millaway <john43@users.sourceforge.net>
- * tests/test-table-opts/: Makefile.am, scanner.l: Removed m4 from
- test-table-opts
+ * tests/test-table-opts/Makefile.am,
+ tests/test-table-opts/scanner.l: Removed m4 from test-table-opts
-2006-03-21 15:58 John Millaway <john43@users.sourceforge.net>
+2006-03-21 John Millaway <john43@users.sourceforge.net>
- * tests/test-reject/: Makefile.am, scanner.l: Removed m4 from
- test-reject
+ * tests/test-reject/Makefile.am, tests/test-reject/scanner.l:
+ Removed m4 from test-reject
-2006-03-21 13:23 John Millaway <john43@users.sourceforge.net>
+2006-03-21 John Millaway <john43@users.sourceforge.net>
* filter.c, flexdef.h, main.c, scan.l: Moved set_input_file to
different file.
-2006-03-20 21:17 John Millaway <john43@users.sourceforge.net>
+2006-03-21 John Millaway <john43@users.sourceforge.net>
- * flex.skl, flexdef.h, flexint.h, misc.c: Relaxed tests for
- __STDC__ and __STDC_VERSION__ to cope with bugs in GCC and Sun cc.
+ * flex.skl, flexdef.h, flexint.h, misc.c: Relaxed tests for __STDC__
+ and __STDC_VERSION__ to cope with bugs in GCC and Sun cc.
-2006-03-19 20:50 John Millaway <john43@users.sourceforge.net>
+2006-03-20 John Millaway <john43@users.sourceforge.net>
* filter.c: Documented filter chain. Removed fdopen. Added no-op
fseek.
-2006-03-13 16:21 John Millaway <john43@users.sourceforge.net>
+2006-03-13 John Millaway <john43@users.sourceforge.net>
* gen.c: Fixed another -Wall report.
-2006-03-10 09:59 Will Estes <wlestes@users.sourceforge.net>
+2006-03-10 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/vi.po: new vi translation
-2006-03-09 08:45 Will Estes <wlestes@users.sourceforge.net>
+2006-03-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/ga.po, po/nl.po: new nl, ga translations
-2006-02-20 20:54 Will Estes <wlestes@users.sourceforge.net>
+2006-02-21 Will Estes <wlestes@users.sourceforge.net>
* m4/Makefile.am: add po.m4 to extra_dist in m4/ so it gets picked
up by distributions
-2006-02-20 20:42 Will Estes <wlestes@users.sourceforge.net>
+2006-02-21 Will Estes <wlestes@users.sourceforge.net>
* m4/Makefile.am: add nls.m4 to extra_dist in m4/ so it will get
picked up in distribution tarballs
-2006-02-20 20:10 Will Estes <wlestes@users.sourceforge.net>
+2006-02-21 Will Estes <wlestes@users.sourceforge.net>
* configure.in: remove website directory from configure.in
-2006-02-20 14:22 Will Estes <wlestes@users.sourceforge.net>
+2006-02-20 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.33 marks in NEWS and configure.in
-2006-02-20 13:21 Will Estes <wlestes@users.sourceforge.net>
+2006-02-20 Will Estes <wlestes@users.sourceforge.net>
* configure.in: change email address in configure.in to point to
flex-help@sourceforge.net
-2006-02-20 12:30 John Millaway <john43@users.sourceforge.net>
+2006-02-20 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Documentation.
-2006-02-20 12:17 John Millaway <john43@users.sourceforge.net>
+2006-02-20 John Millaway <john43@users.sourceforge.net>
* BUGS: Appended to BUGS file.
-2006-02-18 14:09 Will Estes <wlestes@users.sourceforge.net>
+2006-02-18 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: remove website directory (since it now has its own
module in the flex project
-2006-02-16 17:20 John Millaway <john43@users.sourceforge.net>
+2006-02-16 John Millaway <john43@users.sourceforge.net>
- * flex.skl, doc/flex.texi: Fixed buffer overflow in reject state
+ * doc/flex.texi, flex.skl: Fixed buffer overflow in reject state
buffer. Corrected documentation on the state buffer.
-2006-02-16 10:02 John Millaway <john43@users.sourceforge.net>
+2006-02-16 John Millaway <john43@users.sourceforge.net>
* flex.skl: Reverted num_read from size_t back to int.
-2006-02-15 18:58 John Millaway <john43@users.sourceforge.net>
+2006-02-15 John Millaway <john43@users.sourceforge.net>
* Makefile.am, configure.in: Removed reference to RoadMap in
Makefile.am. Added website directory.
-2006-02-15 16:08 Will Estes <wlestes@users.sourceforge.net>
+2006-02-15 Will Estes <wlestes@users.sourceforge.net>
* README, RoadMap: remove RoadMap and reference to it in README
-2006-02-15 13:35 John Millaway <john43@users.sourceforge.net>
+2006-02-15 John Millaway <john43@users.sourceforge.net>
* BUGS, README, doc/flex.texi, doc/flex.xml: Eliminated references
to lex.sf.net.
-2006-02-15 13:31 John Millaway <john43@users.sourceforge.net>
+2006-02-15 John Millaway <john43@users.sourceforge.net>
- * BUGS, flex.skl: Transfered bugs list from lex.sf.net to BUGS
- file.
+ * BUGS, flex.skl: Transfered bugs list from lex.sf.net to BUGS file.
-2006-02-15 13:11 John Millaway <john43@users.sourceforge.net>
+2006-02-15 John Millaway <john43@users.sourceforge.net>
- * tests/: test-rescan-nr/.cvsignore, test-rescan-nr/Makefile.am,
- test-rescan-nr/scanner.l, test-rescan-nr/test.input,
- test-rescan-r/.cvsignore, test-rescan-r/Makefile.am,
- test-rescan-r/scanner.l, test-rescan-r/test.input: Recommit of last
- commit -- broken pipe.
+ * tests/test-rescan-nr/.cvsignore,
+ tests/test-rescan-nr/Makefile.am, tests/test-rescan-nr/scanner.l,
+ tests/test-rescan-nr/test.input, tests/test-rescan-r/.cvsignore,
+ tests/test-rescan-r/Makefile.am, tests/test-rescan-r/scanner.l,
+ tests/test-rescan-r/test.input: Recommit of last commit -- broken
+ pipe.
-2006-02-15 13:06 John Millaway <john43@users.sourceforge.net>
+2006-02-15 John Millaway <john43@users.sourceforge.net>
- * configure.in, flex.skl, tests/Makefile.am, tests/descriptions:
+ * configure.in, flex.skl, tests/Makefile.am, tests/descriptions:
yy_lex_destroy calls yy_init_globals to reset everything for next
- call to yylex. Added two new tests for reusing scanners.
+ call to yylex. Added two new tests for reusing scanners.
-2006-02-14 15:28 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* flex.spec.in: Patched rpm spec file.
-2006-02-14 15:23 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* configure.in, flexint.h: Added C99 macro for inttypes, just to be
conformant.
-2006-02-14 14:38 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
- * flexdef.h, nfa.c, parse.y: Changed symbol INFINITE to fix
- conflict with C math symbol.
+ * flexdef.h, nfa.c, parse.y: Changed symbol INFINITE to fix conflict
+ with C math symbol.
-2006-02-14 14:28 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* scan.l: Omitting parens for named rules in trailing context.
-2006-02-14 13:55 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* configure.in, main.c, po/ca.po, po/da.po, po/de.po, po/es.po,
po/fr.po, po/ga.po, po/ko.po, po/nl.po, po/pl.po, po/pt_BR.po,
po/ro.po, po/ru.po, po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po,
- tests/test-mem-nr/scanner.l, tests/test-mem-r/scanner.l: Added
- check for locale.h and libintl.h in configure script.
+ tests/test-mem-nr/scanner.l, tests/test-mem-r/scanner.l: Added check
+ for locale.h and libintl.h in configure script.
-2006-02-14 13:36 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* flex.skl: Removed unused local vars.
-2006-02-14 13:25 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* flex.skl: Removed certain offending #undefs.
-2006-02-14 13:07 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* flexint.h: Removed logical and from preprocessor statement.
-2006-02-14 06:40 Will Estes <wlestes@users.sourceforge.net>
+2006-02-14 Will Estes <wlestes@users.sourceforge.net>
- * po/: nl.po, nl.po.1: remove eroneously named nl.po.1; update
+ * po/nl.po, po/nl.po.1: remove eroneously named nl.po.1; update
nl.po
-2006-02-14 01:38 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
- * dfa.c: [no log message]
+ * dfa.c: .
-2006-02-14 00:27 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* flex.skl: Included <sys/types.h> for serialized tables.
-2006-02-14 00:22 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* configure.in: Minor patch to call to head in configure script.
-2006-02-14 00:12 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Documentation patch.
-2006-02-13 22:32 John Millaway <john43@users.sourceforge.net>
+2006-02-14 John Millaway <john43@users.sourceforge.net>
* filter.c, gen.c, libyywrap.c, main.c: Patch for full file system
failure.
-2006-02-13 16:45 John Millaway <john43@users.sourceforge.net>
+2006-02-13 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Documentation.
-2006-02-13 16:18 John Millaway <john43@users.sourceforge.net>
+2006-02-13 John Millaway <john43@users.sourceforge.net>
* main.c: Fixed double-fclose when input file is empty.
-2006-02-10 18:17 Will Estes <wlestes@users.sourceforge.net>
+2006-02-10 Will Estes <wlestes@users.sourceforge.net>
- * po/: ca.po, da.po, de.po, es.po, fr.po, ga.po, ko.po, nl.po.1,
- pl.po, pt_BR.po, ro.po, ru.po, sv.po, tr.po, vi.po, zh_CN.po:
- newtranslations
+ * po/ca.po, po/da.po, po/de.po, po/es.po, po/fr.po, po/ga.po,
+ po/ko.po, po/nl.po.1, po/pl.po, po/pt_BR.po, po/ro.po, po/ru.po,
+ po/sv.po, po/tr.po, po/vi.po, po/zh_CN.po: newtranslations
-2005-12-21 19:24 John Millaway <john43@users.sourceforge.net>
+2005-12-22 John Millaway <john43@users.sourceforge.net>
* buf.c, main.c: Improvement request 1069716 log vs. log10
-2005-12-21 19:16 John Millaway <john43@users.sourceforge.net>
+2005-12-22 John Millaway <john43@users.sourceforge.net>
* flex.skl: Fixed bug 1257093 yy_init_globals in header file
-2005-04-14 16:45 Will Estes <wlestes@users.sourceforge.net>
+2005-04-14 Will Estes <wlestes@users.sourceforge.net>
* po/nl.po: new nl translation
-2005-04-07 08:49 Will Estes <wlestes@users.sourceforge.net>
+2005-04-07 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/LINGUAS, po/nl.po, po/vi.po: new nl and vi translations
-2004-07-20 16:32 Will Estes <wlestes@users.sourceforge.net>
+2004-07-20 Will Estes <wlestes@users.sourceforge.net>
* filter.c: correct improper stdin assignment
-2004-05-22 18:42 Will Estes <wlestes@users.sourceforge.net>
+2004-05-22 Will Estes <wlestes@users.sourceforge.net>
- * po/tr.po, NEWS: new tr translation
+ * NEWS, po/tr.po: new tr translation
-2004-05-11 20:44 Will Estes <wlestes@users.sourceforge.net>
+2004-05-12 Will Estes <wlestes@users.sourceforge.net>
- * .indent.pro, .cvsignore: .cvsignore and .indent.pro got missed
- in the import to sourceforge; replace them
+ * .cvsignore, .indent.pro: .cvsignore and .indent.pro got missed in
+ the import to sourceforge; replace them
-2004-05-11 09:28 Will Estes <wlestes@users.sourceforge.net>
+2004-05-11 Will Estes <wlestes@users.sourceforge.net>
* po/fr.po: new fr translation
-2004-05-03 10:52 Will Estes <wlestes@users.sourceforge.net>
+2004-05-03 Will Estes <wlestes@users.sourceforge.net>
* po/LINGUAS: polish is pl, not po
-2004-03-22 08:10 Will Estes <wlestes@users.sourceforge.net>
+2004-03-22 Will Estes <wlestes@users.sourceforge.net>
* po/sv.po: yet another sweedish update
-2004-03-19 09:27 Will Estes <wlestes@users.sourceforge.net>
+2004-03-19 Will Estes <wlestes@users.sourceforge.net>
- * po/sv.po, NEWS: new sv translation
+ * NEWS, po/sv.po: new sv translation
-2003-12-10 20:43 John Millaway <millaway@acm.org>
+2003-12-11 John Millaway <john43@users.sourceforge.net>
- * configure.in, filter.c, main.c: Configure checks for GNU m4.
+ * configure.in, filter.c, main.c: Configure checks for GNU m4.
Environment variable M4 overrides built-in m4 path. Generated m4
does a late check for GNU m4.
-2003-12-08 21:17 John Millaway <millaway@acm.org>
+2003-12-09 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: added 3 faqs
-2003-11-24 08:12 Will Estes <wlestes@users.sourceforge.net>
+2003-11-24 Will Estes <wlestes@users.sourceforge.net>
* po/ro.po: new ro translation
-2003-11-07 13:38 Will Estes <wlestes@users.sourceforge.net>
+2003-11-07 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/fr.po: new french translation
-2003-11-07 08:57 Will Estes <wlestes@users.sourceforge.net>
+2003-11-07 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/ca.po: new catalan translation from the translation
project
-2003-11-07 08:50 Will Estes <wlestes@users.sourceforge.net>
+2003-11-07 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/LINGUAS, po/ga.po, po/pl.po: new polish translation;
updated irish translation from translation project
-2003-10-10 08:47 Will Estes <wlestes@users.sourceforge.net>
+2003-10-10 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/LINGUAS, po/ga.po: new Irish translation
-2003-08-25 07:57 Will Estes <wlestes@users.sourceforge.net>
+2003-08-25 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/LINGUAS, po/ro.po: add romanian translation
-2003-07-16 11:05 Will Estes <wlestes@users.sourceforge.net>
+2003-07-16 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: flex_*int* type fixes
-2003-07-16 10:45 Will Estes <wlestes@users.sourceforge.net>
+2003-07-16 Will Estes <wlestes@users.sourceforge.net>
* tools/cvsauthors: change wlestes email address
-2003-07-16 10:43 Will Estes <wlestes@users.sourceforge.net>
+2003-07-16 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: undef yytext_ptr has some bad side effects
-2003-07-07 13:32 John Millaway <millaway@acm.org>
+2003-07-07 John Millaway <john43@users.sourceforge.net>
* doc/flex.texi: Documented m4 incompatibility with lex.
-2003-05-21 13:57 Will Estes <wlestes@users.sourceforge.net>
+2003-05-21 Will Estes <wlestes@users.sourceforge.net>
* NEWS: upgrade to gettext 0.12
-2003-05-20 16:25 Will Estes <wlestes@users.sourceforge.net>
+2003-05-20 Will Estes <wlestes@users.sourceforge.net>
* flex.skl, gen.c: patches from manoj via sourceforge
-2003-05-20 16:09 Will Estes <wlestes@users.sourceforge.net>
+2003-05-20 Will Estes <wlestes@users.sourceforge.net>
- * configure.in, po/.cvsignore, po/Makevars: upgrade gettext to
- 0.12; this allows running make pdf and make ps to be successful
+ * configure.in, po/.cvsignore, po/Makevars: upgrade gettext to 0.12;
+ this allows running make pdf and make ps to be successful
-2003-05-20 13:41 Will Estes <wlestes@users.sourceforge.net>
+2003-05-20 Will Estes <wlestes@users.sourceforge.net>
* doc/.cvsignore: cvs should ignore flex.pdf and flex.ps
-2003-04-25 15:45 John Millaway <millaway@acm.org>
+2003-04-25 John Millaway <john43@users.sourceforge.net>
* TODO: Added yylineno bugs to TODO list.
-2003-04-02 20:01 John Millaway <millaway@acm.org>
+2003-04-03 John Millaway <john43@users.sourceforge.net>
* doc/flex.xml: Docbook.
-2003-04-02 19:22 John Millaway <millaway@acm.org>
+2003-04-03 John Millaway <john43@users.sourceforge.net>
* doc/flex.xml: xml now validates.
-2003-04-02 18:20 John Millaway <millaway@acm.org>
+2003-04-02 John Millaway <john43@users.sourceforge.net>
* doc/flex.xml: Began conversion to DocBook.
-2003-04-01 11:17 Will Estes <wlestes@users.sourceforge.net>
+2003-04-01 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.31
-2003-04-01 11:14 Will Estes <wlestes@users.sourceforge.net>
+2003-04-01 Will Estes <wlestes@users.sourceforge.net>
* NEWS: remove --enable-maintainer-mode configure option
-2003-04-01 11:08 Will Estes <wlestes@users.sourceforge.net>
+2003-04-01 Will Estes <wlestes@users.sourceforge.net>
* configure.in: remove AM_MAINTAINER_MODE
-2003-03-31 20:51 John Millaway <millaway@acm.org>
+2003-04-01 John Millaway <john43@users.sourceforge.net>
- * flex.skl, flexdef.h, main.c, misc.c, scan.l: Renamed some
- internal variables.
+ * flex.skl, flexdef.h, main.c, misc.c, scan.l: Renamed some internal
+ variables.
-2003-03-31 08:21 Will Estes <wlestes@users.sourceforge.net>
+2003-03-31 Will Estes <wlestes@users.sourceforge.net>
* NEWS: yylineno is now per-buffer in reentrant scanners
-2003-03-30 21:04 John Millaway <millaway@acm.org>
+2003-03-31 John Millaway <john43@users.sourceforge.net>
* TODO: Added TODO item.
-2003-03-30 14:58 John Millaway <millaway@acm.org>
+2003-03-30 John Millaway <john43@users.sourceforge.net>
* flex.skl, gen.c: yylineno is per-buffer in the reentrant scanner.
- support for yycolumn exists, but is not yet developed.
+ support for yycolumn exists, but is not yet developed.
-2003-03-28 16:08 John Millaway <millaway@acm.org>
+2003-03-28 John Millaway <john43@users.sourceforge.net>
* flex.skl: Minor documentation.
-2003-03-28 09:17 Will Estes <wlestes@users.sourceforge.net>
+2003-03-28 Will Estes <wlestes@users.sourceforge.net>
* NEWS: added %top directive
-2003-03-27 13:02 John Millaway <millaway@acm.org>
+2003-03-27 John Millaway <john43@users.sourceforge.net>
- * buf.c, configure.in, flexdef.h, main.c, scan.l, doc/flex.texi,
+ * buf.c, configure.in, doc/flex.texi, flexdef.h, main.c, scan.l,
tests/Makefile.am, tests/descriptions, tests/test-top/.cvsignore,
tests/test-top/Makefile.am, tests/test-top/main.c,
tests/test-top/scanner.l, tests/test-top/test.input: Added %top
block syntax. Added test for %top block. Documented %top block.
-2003-03-26 23:02 John Millaway <millaway@acm.org>
+2003-03-27 John Millaway <john43@users.sourceforge.net>
* TODO, doc/flex.texi: Documented the m4 dependency.
-2003-03-26 16:43 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
- * configure.in, flexdef.h: check for sys/wait.h since we use
- wait(2)
+ * configure.in, flexdef.h: check for sys/wait.h since we use wait(2)
-2003-03-26 16:35 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
* flexdef.h: reorder include directives so as to catch system
integer types before flex defined values for same
-2003-03-26 14:19 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
* TODO: assign tasks due before major release can happen; remove
--enable-maintainer-mode entry
-2003-03-26 14:15 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: only rebuild the ChangeLog if we're inside a cvs
working directory
-2003-03-26 14:05 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
* configure.in, tools/.cvsignore, tools/Makefile.am: add tools/
subdirectory to distribution
-2003-03-26 14:05 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: remove maintainer_mode conditional; add filter.c and
- regex.c to indentfiles; reformat and sort indentfiles so it's
- easier to add files in the future
+ regex.c to indentfiles; reformat and sort indentfiles so it's easier
+ to add files in the future
-2003-03-26 14:04 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
* doc/Makefile.am: clean up flex.texi processing leftovers with
cleanfiles
-2003-03-26 13:29 Will Estes <wlestes@users.sourceforge.net>
+2003-03-26 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-linedir-r/Makefile.am: an awk script wasn't included
- in the distribution
+ * tests/test-linedir-r/Makefile.am: an awk script wasn't included in
+ the distribution
-2003-03-26 11:52 John Millaway <millaway@acm.org>
+2003-03-26 John Millaway <john43@users.sourceforge.net>
* TODO, configure.in, tests/Makefile.am, tests/descriptions,
tests/test-include-by-push/.cvsignore,
@@ -1001,19 +1413,19 @@
tests/test-include-by-push/test-3.input: Added test for
yypush_buffer_state and yypop_buffer_state.
-2003-03-25 22:27 John Millaway <millaway@acm.org>
+2003-03-26 John Millaway <john43@users.sourceforge.net>
* TODO: Removed items from TODO list.
-2003-03-25 22:26 John Millaway <millaway@acm.org>
+2003-03-26 John Millaway <john43@users.sourceforge.net>
* configure.in, tests/Makefile.am, tests/descriptions,
tests/test-linedir-r/.cvsignore, tests/test-linedir-r/Makefile.am,
tests/test-linedir-r/check-lines.awk, tests/test-linedir-r/main.c,
- tests/test-linedir-r/scanner.l, tests/test-linedir-r/test.input:
+ tests/test-linedir-r/scanner.l, tests/test-linedir-r/test.input:
Added test for #line directives.
-2003-03-25 20:37 John Millaway <millaway@acm.org>
+2003-03-26 John Millaway <john43@users.sourceforge.net>
* configure.in, tests/Makefile.am, tests/test-noansi-nr/.cvsignore,
tests/test-noansi-nr/Makefile.am, tests/test-noansi-nr/scanner.l,
@@ -1022,672 +1434,800 @@
tests/test-noansi-r/test.input: Added test for noansi (traditional)
options. Reordered the tests so the basic ones are first.
-2003-03-25 15:51 Will Estes <wlestes@users.sourceforge.net>
+2003-03-25 Will Estes <wlestes@users.sourceforge.net>
* TODO, doc/Makefile.am: remove maintainer-mode conditional around
rebuilding of manpage
-2003-03-25 15:45 Will Estes <wlestes@users.sourceforge.net>
+2003-03-25 Will Estes <wlestes@users.sourceforge.net>
* README: mention doc/ for user documentation
-2003-03-25 15:45 Will Estes <wlestes@users.sourceforge.net>
+2003-03-25 Will Estes <wlestes@users.sourceforge.net>
* TODO: rework distribution items
-2003-03-25 15:45 Will Estes <wlestes@users.sourceforge.net>
+2003-03-25 Will Estes <wlestes@users.sourceforge.net>
* NEWS: mention m4 processing
-2003-03-25 15:44 Will Estes <wlestes@users.sourceforge.net>
+2003-03-25 Will Estes <wlestes@users.sourceforge.net>
* tests/README: update instructions for running test suite
-2003-03-25 11:39 Will Estes <wlestes@users.sourceforge.net>
+2003-03-25 Will Estes <wlestes@users.sourceforge.net>
- * FlexLexer.h, Makefile.am, TODO, buf.c, configure.in, filter.c,
- flex.skl, flexdef.h, gen.c, main.c, misc.c, options.c, options.h,
- regex.c, scan.l, sym.c, doc/flex.texi,
+ * FlexLexer.h, Makefile.am, TODO, buf.c, configure.in,
+ doc/flex.texi, filter.c, flex.skl, flexdef.h, gen.c, main.c,
+ misc.c, options.c, options.h, regex.c, scan.l, sym.c,
tests/test-bison-nr/scanner.l, tests/test-bison-yylloc/scanner.l,
tests/test-reject/scanner.l, tests/test-table-opts/scanner.l: merge
millaway's m4 branch work
-2003-03-20 15:10 Will Estes <wlestes@users.sourceforge.net>
+2003-03-24 John Millaway <john43@users.sourceforge.net>
+
+ * doc/flex.texi, flex.skl, flexdef.h, gen.c, main.c, options.c,
+ options.h, scan.l: Option ansi-definitions. Option ansi-prototypes.
+ Cleaned up some of header. Documented bison-locations.
+
+2003-03-24 John Millaway <john43@users.sourceforge.net>
+
+ * scan.l: Escaped m4 macros in scan.l which would cause
+ bootstrapping issues.
+
+2003-03-21 John Millaway <john43@users.sourceforge.net>
+
+ * doc/flex.texi, flex.skl, main.c: Cleaning up the skel.
+
+2003-03-20 Will Estes <wlestes@users.sourceforge.net>
* TODO: we want to move the contents of to.do/Wishlist to top level
TODO
-2003-03-20 13:09 John Millaway <millaway@acm.org>
+2003-03-20 John Millaway <john43@users.sourceforge.net>
* to.do/Wish-List: Assessment of every item in Wish-List.
-2003-03-17 04:57 John Millaway <millaway@acm.org>
+2003-03-19 John Millaway <john43@users.sourceforge.net>
+
+ * main.c: Fixed allocation of slightly more memory than needed.
+
+2003-03-19 John Millaway <john43@users.sourceforge.net>
+
+ * TODO, buf.c, configure.in, flex.skl, flexdef.h, main.c, sym.c:
+ Start conditions now generated in a single place.
+
+2003-03-19 Will Estes <wlestes@users.sourceforge.net>
+
+ * TODO: cosmetic changes to TODO list
+
+2003-03-19 John Millaway <john43@users.sourceforge.net>
+
+ * flex.skl: Cleaned up warnings so multiple headers could coincide.
+
+2003-03-19 John Millaway <john43@users.sourceforge.net>
+
+ * TODO, flex.skl, main.c: Moved prefixes to m4.
+
+2003-03-19 John Millaway <john43@users.sourceforge.net>
+
+ * FlexLexer.h, filter.c, flex.skl, flexdef.h, main.c, misc.c,
+ regex.c: Removed Paxson/Berkeley copyright restriction from filter.c
+ and regex.c. Inline documentation of much of the generated API.
+ Line directives now fixed for header and stdin/stdout. Blank lines
+ squeezed from generated scanner.
+
+2003-03-18 John Millaway <john43@users.sourceforge.net>
+
+ * filter.c, flexdef.h, main.c, regex.c: Fixed #line directives.
+
+2003-03-17 John Millaway <john43@users.sourceforge.net>
+
+ * Makefile.am, filter.c, flexdef.h, regex.c: Added regex.c for
+ regex-related code. Worked on fixing line directives;incomplete.
+
+2003-03-14 John Millaway <john43@users.sourceforge.net>
+
+ * TODO: Added some TODOs.
+
+2003-03-14 John Millaway <john43@users.sourceforge.net>
+
+ * flexdef.h, main.c, options.c, options.h, scan.l,
+ tests/test-bison-nr/scanner.l, tests/test-bison-yylloc/scanner.l:
+ Bison bridge was simplified to rely less on bison output. New
+ option bison-locations.
+
+2003-03-14 John Millaway <john43@users.sourceforge.net>
+
+ * filter.c, flex.skl, flexdef.h, gen.c, main.c, scan.l,
+ tests/test-reject/scanner.l: Filters are now direct children of main
+ process. Header file now generated through m4.
+
+2003-03-14 John Millaway <john43@users.sourceforge.net>
+
+ * buf.c, filter.c, flexdef.h, main.c, misc.c: Added internal filter
+ ability. Deleted various unused variables.
+
+2003-03-14 John Millaway <john43@users.sourceforge.net>
+
+ * main.c, tests/test-table-opts/scanner.l: Keeping tests up to date
+ with m4 changes. Proper wait for all children.
+
+2003-03-14 John Millaway <john43@users.sourceforge.net>
+
+ * flex.skl, tests/test-table-opts/scanner.l: Moved test-tables to
+ m4.
+
+2003-03-14 John Millaway <john43@users.sourceforge.net>
+
+ * flex.skl, main.c, options.c: Moved bison bridge code to m4.
+
+2003-03-13 John Millaway <john43@users.sourceforge.net>
+
+ * flex.skl, gen.c, main.c, scan.l: Moved YY_USE_LINENO to m4.
+
+2003-03-13 John Millaway <john43@users.sourceforge.net>
+
+ * buf.c, flexdef.h, scan.l: Added function buf_m4_undefine.
- * regex.c: file regex.c was initially added on branch m4.
+2003-03-13 John Millaway <john43@users.sourceforge.net>
-2003-03-10 15:00 John Millaway <millaway@acm.org>
+ * flex.skl, main.c, scan.l: Replaced YY_ALWAYS_INTERACTIVE with m4.
+ Replaced YY_NEVER_INTERACTIVE with m4.
- * filter.c: file filter.c was initially added on branch m4.
+2003-03-13 John Millaway <john43@users.sourceforge.net>
-2003-03-05 14:52 Will Estes <wlestes@users.sourceforge.net>
+ * flex.skl, main.c: Moved YY_TEXT_IS_ARRAY to m4.
- * texinfo.tex, doc/.cvsignore: move texinfo.tex to doc/
+2003-03-12 John Millaway <john43@users.sourceforge.net>
-2003-03-05 14:37 Will Estes <wlestes@users.sourceforge.net>
+ * flex.skl, gen.c, main.c, tests/test-reject/scanner.l: Renaming
+ macros from YY_* to M4_YY_* where appropriate.
+
+2003-03-12 John Millaway <john43@users.sourceforge.net>
+
+ * flex.skl, tests/test-reject/scanner.l,
+ tests/test-table-opts/scanner.l: Now using local variable "yyg"
+ instead of lengthly YY_G expansion.
+
+2003-03-12 John Millaway <john43@users.sourceforge.net>
+
+ * buf.c, filter.c, flex.skl, flexdef.h, main.c, misc.c, options.c,
+ options.h, scan.l, tests/test-reject/scanner.l: More m4 macro
+ conversions. Added debugging option --preproc-level=NUM.
+
+2003-03-11 John Millaway <john43@users.sourceforge.net>
+
+ * Makefile.am, buf.c, flex.skl, flexdef.h, gen.c, main.c, misc.c,
+ scan.l: Replaced many CPP macros with m4 equivalents.
+
+2003-03-10 John Millaway <john43@users.sourceforge.net>
+
+ * Makefile.am, filter.c, flex.skl, flexdef.h, main.c, misc.c: Added
+ filter.c Added filter.c rules to Makefile.am Added filter prototypes
+ to flexdef.h Flex now filters output through m4.
+
+2003-03-05 Will Estes <wlestes@users.sourceforge.net>
+
+ * doc/.cvsignore, texinfo.tex: move texinfo.tex to doc/
+
+2003-03-05 Will Estes <wlestes@users.sourceforge.net>
* TODO: update TODO
-2003-03-05 14:37 Will Estes <wlestes@users.sourceforge.net>
+2003-03-05 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.29
-2003-03-04 18:43 John Millaway <millaway@acm.org>
+2003-03-04 John Millaway <john43@users.sourceforge.net>
* FlexLexer.h, flex.skl: Added growable buffer stack to C++ scanner
as well. yyensure_buffer_stack is now static.
-2003-03-01 20:45 John Millaway <millaway@acm.org>
+2003-03-02 John Millaway <john43@users.sourceforge.net>
- * flex.skl, misc.c: Removed awkward %push %pop syntax from
- skeleton.
+ * flex.skl, misc.c: Removed awkward %push %pop syntax from skeleton.
-2003-03-01 19:34 John Millaway <millaway@acm.org>
+2003-03-02 John Millaway <john43@users.sourceforge.net>
* flex.skl: Renamed YY_CURRENT_BUFFER_FAST to
YY_CURRENT_BUFFER_LVALUE to better reflect its purpose.
-2003-02-28 15:19 John Millaway <millaway@acm.org>
+2003-02-28 John Millaway <john43@users.sourceforge.net>
* NEWS: made entry on input buffer stacks.
-2003-02-28 09:23 Will Estes <wlestes@users.sourceforge.net>
+2003-02-28 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, doc/Makefile.am: build on . in top level first; this
will simplify calling help2man
-2003-02-28 06:27 John Millaway <millaway@acm.org>
+2003-02-28 John Millaway <john43@users.sourceforge.net>
- * TODO, flex.skl, gen.c, main.c, doc/flex.texi: Removed
+ * TODO, doc/flex.texi, flex.skl, gen.c, main.c: Removed
yy_current_buffer from the planet. Input buffer states are now in
an internal unbounded stack. Added new internal function,
- yyensure_buffer_stack. Added new API function,
- yypush_buffer_state. Added new API function, yypop_buffer_state.
- Documented the new API calls in the manual. Macro YY_BUFFER_STATE
- now refers to top of stack. This revision breaks the C++ scanner
- (again.)
+ yyensure_buffer_stack. Added new API function, yypush_buffer_state.
+ Added new API function, yypop_buffer_state. Documented the new API
+ calls in the manual. Macro YY_BUFFER_STATE now refers to top of
+ stack. This revision breaks the C++ scanner (again.)
-2003-02-28 04:02 John Millaway <millaway@acm.org>
+2003-02-28 John Millaway <john43@users.sourceforge.net>
* main.c: Removed some symbols from the undef list. They are needed
for multiple headers to coexist.
-2003-02-27 10:37 Will Estes <wlestes@users.sourceforge.net>
+2003-02-27 Will Estes <wlestes@users.sourceforge.net>
- * Makefile.am, NEWS, configure.in, flex.texi, doc/.cvsignore,
- doc/Makefile.am, doc/flex.texi: move flex.texi and flex.1 to new
- doc/ subdirectory
+ * Makefile.am, NEWS, configure.in, doc/.cvsignore, doc/Makefile.am,
+ doc/flex.texi, flex.texi: move flex.texi and flex.1 to new doc/
+ subdirectory
-2003-02-27 09:44 Will Estes <wlestes@users.sourceforge.net>
+2003-02-27 Will Estes <wlestes@users.sourceforge.net>
* NEWS: namespace cleanups
-2003-02-26 18:23 John Millaway <millaway@acm.org>
+2003-02-26 John Millaway <john43@users.sourceforge.net>
* main.c: Added a few macros to the undef list.
-2003-02-26 18:17 John Millaway <millaway@acm.org>
+2003-02-26 John Millaway <john43@users.sourceforge.net>
* main.c: Put the undef macros in an array.
-2003-02-12 16:54 Will Estes <wlestes@users.sourceforge.net>
+2003-02-12 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.28
-2003-02-10 09:11 Will Estes <wlestes@users.sourceforge.net>
+2003-02-10 Will Estes <wlestes@users.sourceforge.net>
* README, TODO, configure.in, flex.texi: update documentation to
reflect the sourceforge move
-2003-02-06 16:00 Will Estes <wlestes@users.sourceforge.net>
+2003-02-06 Will Estes <wlestes@users.sourceforge.net>
* TODO: update according to current thinking
-2003-02-06 15:12 Will Estes <wlestes@users.sourceforge.net>
+2003-02-06 Will Estes <wlestes@users.sourceforge.net>
* TODO: mcvs reviewed
-2003-02-06 09:06 Will Estes <wlestes@users.sourceforge.net>
+2003-02-06 Will Estes <wlestes@users.sourceforge.net>
* TODO: sourceforge migration tasks
-2003-02-04 09:10 Will Estes <wlestes@users.sourceforge.net>
+2003-02-04 Will Estes <wlestes@users.sourceforge.net>
* NEWS: Flex now warns if always-interactive is specified with fast
or full; Fixed trailing slash bug in YY_INPUT macro def
-2003-01-31 17:30 John Millaway <millaway@acm.org>
+2003-01-31 John Millaway <john43@users.sourceforge.net>
* scan.l: Flex now warns if always-interactive is specified with
fast or full.
-2003-01-31 12:37 Will Estes <wlestes@users.sourceforge.net>
+2003-01-31 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: switch to using cvs2cl.pl to generate the ChangeLog
-2003-01-31 12:12 Will Estes <wlestes@users.sourceforge.net>
+2003-01-31 Will Estes <wlestes@users.sourceforge.net>
- * tools/: cvs2cl.pl, cvsauthors: we're going to be switching how we
- handle our ChangeLog
+ * tools/cvs2cl.pl, tools/cvsauthors: we're going to be switching how
+ we handle our ChangeLog
-2003-01-29 15:16 John Millaway <millaway@acm.org>
+2003-01-29 John Millaway <john43@users.sourceforge.net>
* gen.c, misc.c: Fixed trailing slash bug in YY_INPUT macro def.
-2003-01-29 13:09 Will Estes <wlestes@users.sourceforge.net>
+2003-01-29 Will Estes <wlestes@users.sourceforge.net>
* README.cvs-snapshot: upgrade texinfo to 4.3d
-2003-01-29 13:07 Will Estes <wlestes@users.sourceforge.net>
+2003-01-29 Will Estes <wlestes@users.sourceforge.net>
- * flex.texi: the @copying construct works now; thanks to the
- texinfo maintainers for finding the problem
+ * flex.texi: the @copying construct works now; thanks to the texinfo
+ maintainers for finding the problem
-2003-01-21 08:33 Will Estes <wlestes@users.sourceforge.net>
+2003-01-21 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.27
-2003-01-21 08:32 Will Estes <wlestes@users.sourceforge.net>
+2003-01-21 Will Estes <wlestes@users.sourceforge.net>
* NEWS: flex now works with recent bison versions
-2003-01-18 13:54 John Millaway <millaway@acm.org>
+2003-01-18 John Millaway <john43@users.sourceforge.net>
* flex.skl: Check for YYLTYPE_IS_DECLARED. This fixes bison-bridge
with latest bison.
-2003-01-15 08:33 Will Estes <wlestes@users.sourceforge.net>
+2003-01-15 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/pt_BR.po: new pt_br translation
-2003-01-14 10:51 Will Estes <wlestes@users.sourceforge.net>
+2003-01-14 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.26
-2003-01-14 09:12 Will Estes <wlestes@users.sourceforge.net>
+2003-01-14 Will Estes <wlestes@users.sourceforge.net>
* NEWS: Fixed table deserialization bug on big-endian archs. Patch
sent from Bryce Nichols <bryce@bnichols.org>
-2003-01-11 22:30 John Millaway <millaway@acm.org>
+2003-01-12 John Millaway <john43@users.sourceforge.net>
* tables_shared.h: Fixed table deserialization bug on big-endian
archs. Patch sent from Bryce Nichols <bryce@bnichols.org>.
-2003-01-10 09:05 Will Estes <wlestes@users.sourceforge.net>
+2003-01-10 Will Estes <wlestes@users.sourceforge.net>
* README.cvs-snapshot: add version numbers for some tools and
explain about version.texi and --enable-maintainer-mode
-2003-01-10 08:59 Will Estes <wlestes@users.sourceforge.net>
+2003-01-10 Will Estes <wlestes@users.sourceforge.net>
* NEWS: catch news up
-2003-01-09 18:06 John Millaway <millaway@acm.org>
+2003-01-09 John Millaway <john43@users.sourceforge.net>
- * tests/: test-mem-nr/scanner.l, test-mem-r/scanner.l: Changed
+ * tests/test-mem-nr/scanner.l, tests/test-mem-r/scanner.l: Changed
size_t to yy_size_t in yyalloc() and yyrealloc(). Is this really
what we want?
-2003-01-09 17:20 John Millaway <millaway@acm.org>
+2003-01-09 John Millaway <john43@users.sourceforge.net>
* flex.skl: Changed type of yyleng from size_t to int. This fixes
bug in PostgreSQL compilation.
-2003-01-09 11:15 Will Estes <wlestes@users.sourceforge.net>
+2003-01-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS: catch news up
-2003-01-09 11:15 Will Estes <wlestes@users.sourceforge.net>
+2003-01-09 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: more c++ fixes
-2003-01-09 10:43 Will Estes <wlestes@users.sourceforge.net>
+2003-01-09 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, configure.in, flex.spec.in: add a spec file
-2003-01-09 10:25 Will Estes <wlestes@users.sourceforge.net>
+2003-01-09 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: type cast to pacify c++ compilers; patch from Bruce
Lilly <blilly@erols.com>
-2003-01-08 12:58 Will Estes <wlestes@users.sourceforge.net>
+2003-01-08 Will Estes <wlestes@users.sourceforge.net>
* NEWS: new es translation
-2003-01-08 12:57 Will Estes <wlestes@users.sourceforge.net>
+2003-01-08 Will Estes <wlestes@users.sourceforge.net>
* po/es.po: new spanish translation
-2002-12-18 22:17 John Millaway <millaway@acm.org>
+2002-12-19 John Millaway <john43@users.sourceforge.net>
* gen.c: Fixed bug where YY_G(0) sometimes occurs (created by my
previous commit.)
-2002-12-17 18:53 John Millaway <millaway@acm.org>
+2002-12-17 John Millaway <john43@users.sourceforge.net>
* gen.c: Fixed bug submitted by Bojan Smojver <bojan@rexursive.com>
where the use of yylineno, reentrant, and yymore together caused a
compile-time error.
-2002-12-17 16:57 Will Estes <wlestes@users.sourceforge.net>
+2002-12-17 Will Estes <wlestes@users.sourceforge.net>
* NEWS: update NEWS
-2002-12-17 15:28 John Millaway <millaway@acm.org>
+2002-12-17 John Millaway <john43@users.sourceforge.net>
* flex.texi: Documented new behavior with character ranges.
-2002-12-16 18:33 John Millaway <millaway@acm.org>
+2002-12-16 John Millaway <john43@users.sourceforge.net>
* parse.y: Fixed bug submitted by Bruce Lilly <blilly@erols.com>
- where character ranges would yield unexpected behavior in a
- caseless scanner. Also, flex now emits a warning if the range
- looks like trouble.
+ where character ranges would yield unexpected behavior in a caseless
+ scanner. Also, flex now emits a warning if the range looks like
+ trouble.
-2002-12-16 18:28 John Millaway <millaway@acm.org>
+2002-12-16 John Millaway <john43@users.sourceforge.net>
- * flexdef.h, ccl.c: Added utility functions to deal with character
+ * ccl.c, flexdef.h: Added utility functions to deal with character
case.
-2002-12-09 09:14 Will Estes <wlestes@users.sourceforge.net>
+2002-12-09 Will Estes <wlestes@users.sourceforge.net>
* flexint.h: we don't really need int64 anyway
-2002-12-09 09:13 Will Estes <wlestes@users.sourceforge.net>
+2002-12-09 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: apparently some lints are happier with fllthrough
without a space
-2002-12-02 15:50 Will Estes <wlestes@users.sourceforge.net>
+2002-12-02 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.25
-2002-12-02 15:48 Will Estes <wlestes@users.sourceforge.net>
+2002-12-02 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: enclose flex.1 target in MAINTERNER_MODE
-2002-12-02 08:39 Will Estes <wlestes@users.sourceforge.net>
+2002-12-02 Will Estes <wlestes@users.sourceforge.net>
* po/pt_BR.po: new pt_br translation
-2002-12-01 13:31 John Millaway <millaway@acm.org>
+2002-12-01 John Millaway <john43@users.sourceforge.net>
* flex.texi: Indexed some more faqs.
-2002-11-28 22:34 John Millaway <millaway@acm.org>
+2002-11-29 John Millaway <john43@users.sourceforge.net>
- * flex.skl: Fixed bug in SECOND yyless definition where argument
- was not enclosed in parentheses.
+ * flex.skl: Fixed bug in SECOND yyless definition where argument was
+ not enclosed in parentheses.
-2002-11-28 22:29 John Millaway <millaway@acm.org>
+2002-11-29 John Millaway <john43@users.sourceforge.net>
* flex.skl: Fixed bug in yyless definition where argument was not
enclosed in parentheses.
-2002-11-27 13:42 Will Estes <wlestes@users.sourceforge.net>
+2002-11-27 Will Estes <wlestes@users.sourceforge.net>
* NEWS: flex uses flex_int*_t types
-2002-11-27 13:41 Will Estes <wlestes@users.sourceforge.net>
+2002-11-27 Will Estes <wlestes@users.sourceforge.net>
* flexint.h: integer types for non-C99 systems flexint.h
-2002-11-27 09:43 John Millaway <millaway@acm.org>
+2002-11-27 John Millaway <john43@users.sourceforge.net>
* dfa.c, flexint.h, gen.c, tables.c, tables.h, tables_shared.c,
tables_shared.h: Changed int types to flex_intX_t. The build is now
broken until typedef's are established.
-2002-11-27 09:05 Will Estes <wlestes@users.sourceforge.net>
+2002-11-27 Will Estes <wlestes@users.sourceforge.net>
- * Makefile.am: MAINTAINERCLEANFILES: new variable: try to make it
- so that make maintainer-clean erases everything not under version
+ * Makefile.am: MAINTAINERCLEANFILES: new variable: try to make it so
+ that make maintainer-clean erases everything not under version
control
-2002-11-27 08:53 Will Estes <wlestes@users.sourceforge.net>
+2002-11-27 Will Estes <wlestes@users.sourceforge.net>
* config.rpath: remove config.rpath
-2002-11-27 08:52 Will Estes <wlestes@users.sourceforge.net>
+2002-11-27 Will Estes <wlestes@users.sourceforge.net>
* README-alpha: just list location of betas
-2002-11-26 09:46 Will Estes <wlestes@users.sourceforge.net>
+2002-11-26 Will Estes <wlestes@users.sourceforge.net>
* flexint.h: __STDC_VERSION__ needs an L suffix
-2002-11-26 08:22 Will Estes <wlestes@users.sourceforge.net>
+2002-11-26 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/LINGUAS, po/pt_BR.po: new pt_br translation from the
translation project
-2002-11-25 11:19 Will Estes <wlestes@users.sourceforge.net>
+2002-11-25 Will Estes <wlestes@users.sourceforge.net>
* flexint.h: include inttypes.h for folks who really are C99
-2002-11-25 09:17 Will Estes <wlestes@users.sourceforge.net>
+2002-11-25 Will Estes <wlestes@users.sourceforge.net>
* TODO: fix a typo
-2002-11-25 08:53 Will Estes <wlestes@users.sourceforge.net>
+2002-11-25 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.24
-2002-11-23 12:59 Will Estes <wlestes@users.sourceforge.net>
+2002-11-23 Will Estes <wlestes@users.sourceforge.net>
* configure.in: try to make sure we have GNU m4
-2002-11-23 12:56 Will Estes <wlestes@users.sourceforge.net>
+2002-11-23 Will Estes <wlestes@users.sourceforge.net>
* tests/test-c++-multiple-scanners/Makefile.am: include
tests/test-c++-multipl-scanners/test.input
-2002-11-23 12:28 Will Estes <wlestes@users.sourceforge.net>
+2002-11-23 Will Estes <wlestes@users.sourceforge.net>
* NEWS: more portability fixes
-2002-11-23 11:50 Will Estes <wlestes@users.sourceforge.net>
+2002-11-23 Will Estes <wlestes@users.sourceforge.net>
* configure.in, flexdef.h: apparently on some BSD systems, we need
sys/params.h; reported by millaway
-2002-11-22 16:04 Will Estes <wlestes@users.sourceforge.net>
+2002-11-22 Will Estes <wlestes@users.sourceforge.net>
* NEWS: update NEWS
-2002-11-22 15:38 John Millaway <millaway@acm.org>
+2002-11-22 John Millaway <john43@users.sourceforge.net>
- * flex.skl, main.c, tests/test-c++-multiple-scanners/Makefile.am:
+ * flex.skl, main.c, tests/test-c++-multiple-scanners/Makefile.am:
Fixed prefix of yyalloc,yyfree,yyrealloc in C++ scanner. Removed
yylex_destroy from C++ scanner.
-2002-11-22 15:05 John Millaway <millaway@acm.org>
+2002-11-22 John Millaway <john43@users.sourceforge.net>
* flex.texi: renamed some faqs.
-2002-11-22 08:20 Will Estes <wlestes@users.sourceforge.net>
+2002-11-22 Will Estes <wlestes@users.sourceforge.net>
* AUTHORS: update wording about authorship
-2002-11-17 17:17 John Millaway <millaway@acm.org>
+2002-11-17 John Millaway <john43@users.sourceforge.net>
* parse.y: Removed space before line num in error messages to look
more like gcc's errors.
-2002-11-06 10:16 Will Estes <wlestes@users.sourceforge.net>
+2002-11-06 Will Estes <wlestes@users.sourceforge.net>
- * po/tr.po, NEWS: new turkish translation from the translation
+ * NEWS, po/tr.po: new turkish translation from the translation
project
-2002-10-28 07:21 Will Estes <wlestes@users.sourceforge.net>
+2002-10-28 Will Estes <wlestes@users.sourceforge.net>
* gen.c: applied c++ from lilypond folks for std:: reasons
-2002-10-25 15:18 Will Estes <wlestes@users.sourceforge.net>
+2002-10-25 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: proofreading
-2002-10-24 16:07 Will Estes <wlestes@users.sourceforge.net>
+2002-10-24 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: proofreading
-2002-10-22 10:28 Will Estes <wlestes@users.sourceforge.net>
+2002-10-22 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: use c-style header names in c++ for now; at some point
we'll have a separate c++ skeleton and we can go whole-hog pure c++
-2002-10-22 10:01 Will Estes <wlestes@users.sourceforge.net>
+2002-10-22 Will Estes <wlestes@users.sourceforge.net>
* TODO: c++ rants
-2002-10-22 09:37 Will Estes <wlestes@users.sourceforge.net>
+2002-10-22 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: more proofreading
-2002-10-22 09:37 Will Estes <wlestes@users.sourceforge.net>
+2002-10-22 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: include intent.pro; indent target is MAINTAINER_MODE
conditional
-2002-10-22 08:32 Will Estes <wlestes@users.sourceforge.net>
+2002-10-22 Will Estes <wlestes@users.sourceforge.net>
* configure.in: When we use AC_PATH_PROG, value-if-not-found is the
name of the program we wanted to find; this will generate more
helpful error messages
-2002-10-21 19:52 John Millaway <millaway@acm.org>
+2002-10-21 John Millaway <john43@users.sourceforge.net>
* tables.c: Added a missing function prototype.
-2002-10-21 13:30 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.23
-2002-10-21 13:27 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* NEWS: update NEWS on recent changes
-2002-10-21 13:21 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* flexint.h: use sys/types.h and not inttypes.h
-2002-10-21 13:20 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* configure.in: check for limits.h
-2002-10-21 13:19 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* TODO: update TODO on recent suggestions
-2002-10-21 11:28 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: titlepage and contents
-2002-10-21 10:45 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: typo
-2002-10-21 10:27 Will Estes <wlestes@users.sourceforge.net>
+2002-10-21 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, README.cvs-snapshot: include README.cvs-snapshot in
the distribution; in README-cvs-snapshot, mention the need for
enable-maintainer-mode
-2002-10-20 22:26 John Millaway <millaway@acm.org>
+2002-10-21 John Millaway <john43@users.sourceforge.net>
* flex.texi: typo.
-2002-10-18 11:25 Will Estes <wlestes@users.sourceforge.net>
+2002-10-18 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: report the current version info that flex provides;
reformat a list of non-posix features
-2002-10-18 11:25 Will Estes <wlestes@users.sourceforge.net>
+2002-10-18 Will Estes <wlestes@users.sourceforge.net>
* NEWS: report the current version info that flex provides
-2002-10-18 11:23 Will Estes <wlestes@users.sourceforge.net>
+2002-10-18 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: FLEX_BETA defined if flex is beta
-2002-10-16 09:15 Will Estes <wlestes@users.sourceforge.net>
+2002-10-16 Will Estes <wlestes@users.sourceforge.net>
* flexint.h: if we're doing c++, then we can't use long long
-2002-10-14 11:33 Will Estes <wlestes@users.sourceforge.net>
+2002-10-14 Will Estes <wlestes@users.sourceforge.net>
* TODO: update TODO on several things
-2002-10-11 16:40 Will Estes <wlestes@users.sourceforge.net>
+2002-10-11 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: more proofreading
-2002-10-11 11:26 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: TEMPLATE/Makefile.am, test-array-nr/Makefile.am,
- test-array-r/Makefile.am, test-basic-nr/Makefile.am,
- test-basic-r/Makefile.am, test-bison-nr/Makefile.am,
- test-bison-yylloc/Makefile.am, test-bison-yylval/Makefile.am,
- test-c++-basic/Makefile.am, test-c++-multiple-scanners/Makefile.am,
- test-c-cpp-nr/Makefile.am, test-c-cpp-r/Makefile.am,
- test-debug-nr/Makefile.am, test-debug-r/Makefile.am,
- test-header-nr/Makefile.am, test-header-r/Makefile.am,
- test-include-by-buffer/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-lineno-nr/Makefile.am,
- test-lineno-r/Makefile.am, test-mem-nr/Makefile.am,
- test-mem-r/Makefile.am, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-posix/Makefile.am,
- test-posixly-correct/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-reject/Makefile.am, test-string-nr/Makefile.am,
- test-string-r/Makefile.am, test-table-opts/Makefile.am,
- test-yyextra/Makefile.am: remove BISON assignment as per suggestion
- from Akim Demaille
-
-2002-10-11 11:04 Will Estes <wlestes@users.sourceforge.net>
+2002-10-11 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/TEMPLATE/Makefile.am, tests/test-array-nr/Makefile.am,
+ tests/test-array-r/Makefile.am, tests/test-basic-nr/Makefile.am,
+ tests/test-basic-r/Makefile.am, tests/test-bison-nr/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c++-basic/Makefile.am,
+ tests/test-c++-multiple-scanners/Makefile.am,
+ tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-r/Makefile.am,
+ tests/test-debug-nr/Makefile.am, tests/test-debug-r/Makefile.am,
+ tests/test-header-nr/Makefile.am, tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-r/Makefile.am,
+ tests/test-mem-nr/Makefile.am, tests/test-mem-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-posix/Makefile.am,
+ tests/test-posixly-correct/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-reject/Makefile.am,
+ tests/test-string-nr/Makefile.am, tests/test-string-r/Makefile.am,
+ tests/test-table-opts/Makefile.am, tests/test-yyextra/Makefile.am:
+ remove BISON assignment as per suggestion from Akim Demaille
+
+2002-10-11 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, configure.in: remove intl from dist
-2002-10-11 10:33 Will Estes <wlestes@users.sourceforge.net>
+2002-10-11 Will Estes <wlestes@users.sourceforge.net>
* configure.in: we use maintainer mode now
-2002-10-11 10:33 Will Estes <wlestes@users.sourceforge.net>
+2002-10-11 Will Estes <wlestes@users.sourceforge.net>
* NEWS: include create-test
-2002-10-11 10:23 Will Estes <wlestes@users.sourceforge.net>
+2002-10-11 Will Estes <wlestes@users.sourceforge.net>
* tests/Makefile.am: rename test to check-local as per Akim
Demaille; test for failed tests so that make check fails if any
tests do
-2002-10-11 08:46 Will Estes <wlestes@users.sourceforge.net>
+2002-10-11 Will Estes <wlestes@users.sourceforge.net>
* tests/Makefile.am: use dist_noinst_scripts as per email from Akim
Demaille
-2002-10-10 17:42 John Millaway <millaway@acm.org>
+2002-10-10 John Millaway <john43@users.sourceforge.net>
* flex.texi: Documentation.
-2002-10-10 15:54 Will Estes <wlestes@users.sourceforge.net>
+2002-10-10 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.22; portability fixes and attn to
the test suite
-2002-10-10 15:36 Will Estes <wlestes@users.sourceforge.net>
+2002-10-10 Will Estes <wlestes@users.sourceforge.net>
* flexint.h: ok, this seems to work
-2002-10-10 15:12 Will Estes <wlestes@users.sourceforge.net>
+2002-10-10 Will Estes <wlestes@users.sourceforge.net>
- * tests/: TEMPLATE/Makefile.am, test-bison-nr/Makefile.am,
- test-bison-yylloc/Makefile.am, test-bison-yylval/Makefile.am,
- test-header-nr/Makefile.am, test-header-r/Makefile.am,
- test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am: use builddir in tests that
- need it in their include path
+ * tests/TEMPLATE/Makefile.am, tests/test-bison-nr/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-header-nr/Makefile.am, tests/test-header-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am: use builddir in tests
+ that need it in their include path
-2002-10-10 14:13 Will Estes <wlestes@users.sourceforge.net>
+2002-10-10 Will Estes <wlestes@users.sourceforge.net>
* tests/TEMPLATE/Makefile.am: sometimes we put header files in the
builddir and so we should account for that
-2002-10-10 14:08 Will Estes <wlestes@users.sourceforge.net>
+2002-10-10 Will Estes <wlestes@users.sourceforge.net>
- * tests/TEMPLATE/Makefile.am: replace the last instance
+ * tests/TEMPLATE/Makefile.am: replace the last instance
-2002-10-10 13:02 Will Estes <wlestes@users.sourceforge.net>
+2002-10-10 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: include unistd.h and not cunistd as cunistd only seems
to be present on very recent systems
-2002-10-10 11:34 Will Estes <wlestes@users.sourceforge.net>
+2002-10-10 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, configure.in, flex.skl, flexdef.h, flexint.h: redo
integral types again; add flexint.h; change dependencies caused by
adding flexint.h; remove autoconf wrapper around cunistd; restore
- netinet/in.h includes; remove unneded feature checks in
- configure.in
+ netinet/in.h includes; remove unneded feature checks in configure.in
-2002-10-08 11:32 Will Estes <wlestes@users.sourceforge.net>
+2002-10-08 Will Estes <wlestes@users.sourceforge.net>
* configure.in, flex.skl, flexdef.h: current swipe at header magic;
int types be damned
-2002-10-08 11:19 Will Estes <wlestes@users.sourceforge.net>
+2002-10-08 Will Estes <wlestes@users.sourceforge.net>
* NEWS: change version constant info to reflect change to flex.skl
-2002-10-08 11:15 Will Estes <wlestes@users.sourceforge.net>
+2002-10-08 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: remove README-alpha option; add definitions for
FLEX_{MAJOR,MINOR,SUBMINOR}_VERSION
-2002-10-07 11:29 Will Estes <wlestes@users.sourceforge.net>
+2002-10-07 Will Estes <wlestes@users.sourceforge.net>
* flex.skl, flexdef.h: ok, here goes; try to handle integral
typedefs in one swell foop
-2002-10-07 11:28 Will Estes <wlestes@users.sourceforge.net>
+2002-10-07 Will Estes <wlestes@users.sourceforge.net>
* configure.in: we check for {u,}int*_t types; maybe this will
simplify things
-2002-10-07 09:12 Will Estes <wlestes@users.sourceforge.net>
+2002-10-07 Will Estes <wlestes@users.sourceforge.net>
- * configure.in: we create the tests/TEMPLATE/Makefile so that we
- can build the dist archives
+ * configure.in: we create the tests/TEMPLATE/Makefile so that we can
+ build the dist archives
-2002-10-07 08:38 Will Estes <wlestes@users.sourceforge.net>
+2002-10-07 Will Estes <wlestes@users.sourceforge.net>
* NEWS: more test suite cleanups
-2002-10-07 08:37 Will Estes <wlestes@users.sourceforge.net>
+2002-10-07 Will Estes <wlestes@users.sourceforge.net>
* tests/test-c++-multiple-scanners/Makefile.am: we don't use header
files...
-2002-10-07 08:26 Will Estes <wlestes@users.sourceforge.net>
+2002-10-07 Will Estes <wlestes@users.sourceforge.net>
* flexdef.h: remove include of malloc.h
-2002-10-04 15:33 Will Estes <wlestes@users.sourceforge.net>
+2002-10-04 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: more editing; remove examples index; merge examples
into concept index
-2002-10-04 08:36 Will Estes <wlestes@users.sourceforge.net>
+2002-10-04 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: edited one more faq; used C-u C-c C-u C-a to update
menus and nodes since the other updating commands are somewhat
broken; unfortunately this means that all nodes have all pointers
filled in
-2002-10-04 08:19 Will Estes <wlestes@users.sourceforge.net>
+2002-10-04 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: yesterday's proofreading
-2002-10-02 16:07 Will Estes <wlestes@users.sourceforge.net>
+2002-10-02 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: proofread some more
-2002-10-02 08:38 Will Estes <wlestes@users.sourceforge.net>
+2002-10-02 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: proofread edit begins
-2002-10-01 11:10 Will Estes <wlestes@users.sourceforge.net>
+2002-10-01 Will Estes <wlestes@users.sourceforge.net>
* configure.in, tests/Makefile.am,
tests/test-c++-multiple-scanners/.cvsignore,
@@ -1698,196 +2238,211 @@
tests/test-c++-multiple-scanners/test.input: test c++ with multiple
scanners
-2002-09-27 16:58 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: test-array-nr/Makefile.am, test-array-r/Makefile.am,
- test-basic-nr/Makefile.am, test-basic-r/Makefile.am,
- test-bison-nr/Makefile.am, test-bison-yylloc/Makefile.am,
- test-bison-yylval/Makefile.am, test-c++-basic/Makefile.am,
- test-c-cpp-nr/Makefile.am, test-c-cpp-r/Makefile.am,
- test-debug-nr/Makefile.am, test-debug-r/Makefile.am,
- test-header-nr/Makefile.am, test-header-r/Makefile.am,
- test-include-by-buffer/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-lineno-nr/Makefile.am,
- test-lineno-r/Makefile.am, test-mem-nr/Makefile.am,
- test-mem-r/Makefile.am, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-posix/Makefile.am,
- test-posixly-correct/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-reject/Makefile.am, test-string-nr/Makefile.am,
- test-string-r/Makefile.am, test-table-opts/Makefile.am,
- test-yyextra/Makefile.am: we used INCLUDES in another place in the
- Makefile.am files in the test suite
-
-2002-09-27 16:50 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: test-array-nr/Makefile.am, test-array-r/Makefile.am,
- test-basic-nr/Makefile.am, test-basic-r/Makefile.am,
- test-bison-nr/Makefile.am, test-bison-yylloc/Makefile.am,
- test-bison-yylval/Makefile.am, test-c++-basic/Makefile.am,
- test-c-cpp-nr/Makefile.am, test-c-cpp-r/Makefile.am,
- test-debug-nr/Makefile.am, test-debug-r/Makefile.am,
- test-header-nr/Makefile.am, test-header-r/Makefile.am,
- test-include-by-buffer/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-lineno-nr/Makefile.am,
- test-lineno-r/Makefile.am, test-mem-nr/Makefile.am,
- test-mem-r/Makefile.am, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-posix/Makefile.am,
- test-posixly-correct/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-reject/Makefile.am, test-string-nr/Makefile.am,
- test-string-r/Makefile.am, test-table-opts/Makefile.am,
- test-yyextra/Makefile.am: oops, I typed that last s/// command to
- perl way wrong
-
-2002-09-27 16:46 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: TEMPLATE/Makefile.am, test-array-nr/Makefile.am,
- test-array-r/Makefile.am, test-basic-nr/Makefile.am,
- test-basic-r/Makefile.am, test-bison-nr/Makefile.am,
- test-bison-yylloc/Makefile.am, test-bison-yylval/Makefile.am,
- test-c++-basic/Makefile.am, test-c-cpp-nr/Makefile.am,
- test-c-cpp-r/Makefile.am, test-debug-nr/Makefile.am,
- test-debug-r/Makefile.am, test-header-nr/Makefile.am,
- test-header-r/Makefile.am, test-include-by-buffer/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-lineno-nr/Makefile.am,
- test-lineno-r/Makefile.am, test-mem-nr/Makefile.am,
- test-mem-r/Makefile.am, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-posix/Makefile.am,
- test-posixly-correct/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-reject/Makefile.am, test-string-nr/Makefile.am,
- test-string-r/Makefile.am, test-table-opts/Makefile.am,
- test-yyextra/Makefile.am: use AM_CPPFLAGS instead of INCLUDES;
- write -I with no space after it for broken compilers
-
-2002-09-27 16:28 Will Estes <wlestes@users.sourceforge.net>
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/test-array-nr/Makefile.am, tests/test-array-r/Makefile.am,
+ tests/test-basic-nr/Makefile.am, tests/test-basic-r/Makefile.am,
+ tests/test-bison-nr/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c++-basic/Makefile.am, tests/test-c-cpp-nr/Makefile.am,
+ tests/test-c-cpp-r/Makefile.am, tests/test-debug-nr/Makefile.am,
+ tests/test-debug-r/Makefile.am, tests/test-header-nr/Makefile.am,
+ tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-r/Makefile.am,
+ tests/test-mem-nr/Makefile.am, tests/test-mem-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-posix/Makefile.am,
+ tests/test-posixly-correct/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-reject/Makefile.am,
+ tests/test-string-nr/Makefile.am, tests/test-string-r/Makefile.am,
+ tests/test-table-opts/Makefile.am, tests/test-yyextra/Makefile.am:
+ we used INCLUDES in another place in the Makefile.am files in the
+ test suite
+
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/test-array-nr/Makefile.am, tests/test-array-r/Makefile.am,
+ tests/test-basic-nr/Makefile.am, tests/test-basic-r/Makefile.am,
+ tests/test-bison-nr/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c++-basic/Makefile.am, tests/test-c-cpp-nr/Makefile.am,
+ tests/test-c-cpp-r/Makefile.am, tests/test-debug-nr/Makefile.am,
+ tests/test-debug-r/Makefile.am, tests/test-header-nr/Makefile.am,
+ tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-r/Makefile.am,
+ tests/test-mem-nr/Makefile.am, tests/test-mem-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-posix/Makefile.am,
+ tests/test-posixly-correct/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-reject/Makefile.am,
+ tests/test-string-nr/Makefile.am, tests/test-string-r/Makefile.am,
+ tests/test-table-opts/Makefile.am, tests/test-yyextra/Makefile.am:
+ oops, I typed that last s/// command to perl way wrong
+
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/TEMPLATE/Makefile.am, tests/test-array-nr/Makefile.am,
+ tests/test-array-r/Makefile.am, tests/test-basic-nr/Makefile.am,
+ tests/test-basic-r/Makefile.am, tests/test-bison-nr/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c++-basic/Makefile.am, tests/test-c-cpp-nr/Makefile.am,
+ tests/test-c-cpp-r/Makefile.am, tests/test-debug-nr/Makefile.am,
+ tests/test-debug-r/Makefile.am, tests/test-header-nr/Makefile.am,
+ tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-r/Makefile.am,
+ tests/test-mem-nr/Makefile.am, tests/test-mem-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-posix/Makefile.am,
+ tests/test-posixly-correct/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-reject/Makefile.am,
+ tests/test-string-nr/Makefile.am, tests/test-string-r/Makefile.am,
+ tests/test-table-opts/Makefile.am, tests/test-yyextra/Makefile.am:
+ use AM_CPPFLAGS instead of INCLUDES; write -I with no space after it
+ for broken compilers
+
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: INCLUDES is obsolete; use AM_CPPFLAGS instead
-2002-09-27 13:02 Will Estes <wlestes@users.sourceforge.net>
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
* configure.in: apparently, AM_CONFIG_HEADER is obsolete
-2002-09-27 12:30 Will Estes <wlestes@users.sourceforge.net>
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
* TODO: integrate test suite into automake
-2002-09-27 12:18 Will Estes <wlestes@users.sourceforge.net>
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
- * configure.in: since we dont run the template test, we dont need
- to generate its Makefile either
+ * configure.in: since we dont run the template test, we dont need to
+ generate its Makefile either
-2002-09-27 12:17 Will Estes <wlestes@users.sourceforge.net>
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
- * autogen.sh: use autoreconf instead of calling individual
- utilities separately
+ * autogen.sh: use autoreconf instead of calling individual utilities
+ separately
-2002-09-27 09:20 Will Estes <wlestes@users.sourceforge.net>
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
* configure.in: check for c++ compiler
-2002-09-27 09:20 Will Estes <wlestes@users.sourceforge.net>
+2002-09-27 Will Estes <wlestes@users.sourceforge.net>
* configure.in: re-organize according to suggested layout in
autoconf manual
-2002-09-26 08:54 Will Estes <wlestes@users.sourceforge.net>
+2002-09-26 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, NEWS, configure.in: update automake to 1.7 and
autoconf to 2.54
-2002-09-26 08:48 Will Estes <wlestes@users.sourceforge.net>
+2002-09-26 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: use AM_YFLAGS since YFLAGS is a user variable
-2002-09-25 09:40 Will Estes <wlestes@users.sourceforge.net>
+2002-09-25 Will Estes <wlestes@users.sourceforge.net>
* NEWS: catch NEWS up on things, some of which happened a long time
ago; correct punctuation; try to remove some editorializing
-2002-09-25 09:39 Will Estes <wlestes@users.sourceforge.net>
+2002-09-25 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, flex.skl, flex.texi: include a single, automatically
generated version number in flex scanners
-2002-09-23 16:39 Will Estes <wlestes@users.sourceforge.net>
+2002-09-23 Will Estes <wlestes@users.sourceforge.net>
* tests/create-test: complain audibly when argument not supplied;
echo on stderr when writing error messages
-2002-09-23 12:02 Will Estes <wlestes@users.sourceforge.net>
+2002-09-23 Will Estes <wlestes@users.sourceforge.net>
- * tests/: Makefile.am, create-test: DIST_SUBDIRS so we don't have
- to run the TEMPLATE test; so we add new tests to SUBDIRS and
+ * tests/Makefile.am, tests/create-test: DIST_SUBDIRS so we don't
+ have to run the TEMPLATE test; so we add new tests to SUBDIRS and
DIST_SUBDIRS
-2002-09-23 11:30 Will Estes <wlestes@users.sourceforge.net>
+2002-09-23 Will Estes <wlestes@users.sourceforge.net>
* tests/TEMPLATE/Makefile.am: not all compilers support '-I dir' so
we write '-Idir' instead
-2002-09-23 10:00 Will Estes <wlestes@users.sourceforge.net>
+2002-09-23 Will Estes <wlestes@users.sourceforge.net>
* TODO: reorganize faq entries; proofread the manual
-2002-09-23 09:55 Will Estes <wlestes@users.sourceforge.net>
+2002-09-23 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: move c++ experimental warning to top of cxx node
-2002-09-20 13:17 Will Estes <wlestes@users.sourceforge.net>
+2002-09-20 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: move stdint.h include to table-serialization section;
we'll still need to think about stdint.h more though
-2002-09-20 08:30 Will Estes <wlestes@users.sourceforge.net>
+2002-09-20 Will Estes <wlestes@users.sourceforge.net>
* NEWS: new smarter skeleton/scanner generation
-2002-09-19 20:06 John Millaway <millaway@acm.org>
+2002-09-20 John Millaway <john43@users.sourceforge.net>
* flex.skl, misc.c: bison-bridge skel handled via %if/%endif pairs.
-2002-09-19 19:57 John Millaway <millaway@acm.org>
+2002-09-19 John Millaway <john43@users.sourceforge.net>
* flex.skl, misc.c: reentrant skel handled via %if/%endif pairs.
-2002-09-19 19:20 John Millaway <millaway@acm.org>
+2002-09-19 John Millaway <john43@users.sourceforge.net>
- * flex.skl, misc.c: skeleton uses %push/%pop to keep skelout()
- scope sane. skel commands are omitted unless --debug enabled.
+ * flex.skl, misc.c: skeleton uses %push/%pop to keep skelout() scope
+ sane. skel commands are omitted unless --debug enabled.
-2002-09-19 15:46 John Millaway <millaway@acm.org>
+2002-09-19 John Millaway <john43@users.sourceforge.net>
* flex.skl, main.c, misc.c, tables.h: Added %push and %pop
operations to skel processing.
-2002-09-17 08:27 Will Estes <wlestes@users.sourceforge.net>
+2002-09-17 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: flex 2.5.21
-2002-09-17 00:10 John Millaway <millaway@acm.org>
+2002-09-17 John Millaway <john43@users.sourceforge.net>
* tests/test-reject/Makefile.am: minor fixup for dist.
-2002-09-16 16:26 Will Estes <wlestes@users.sourceforge.net>
+2002-09-16 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.20
-2002-09-16 16:25 Will Estes <wlestes@users.sourceforge.net>
+2002-09-16 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: correct typo
-2002-09-16 15:59 Will Estes <wlestes@users.sourceforge.net>
+2002-09-16 Will Estes <wlestes@users.sourceforge.net>
* NEWS: note the new tables functionality
-2002-09-16 14:40 John Millaway <millaway@acm.org>
+2002-09-16 John Millaway <john43@users.sourceforge.net>
- * tests/test-multiple-scanners-r/: .cvsignore, Makefile.am: Fixed
- `clean' target and .cvsignore.
+ * tests/test-multiple-scanners-r/.cvsignore,
+ tests/test-multiple-scanners-r/Makefile.am: Fixed `clean' target and
+ .cvsignore.
-2002-09-16 14:38 John Millaway <millaway@acm.org>
+2002-09-16 John Millaway <john43@users.sourceforge.net>
* TODO, flex.skl, flex.texi, main.c, tables_shared.h,
tests/test-multiple-scanners-r/main.c,
@@ -1896,154 +2451,155 @@
headers (%option headers). Serialization code (Tables API) is
complete.
-2002-09-16 08:41 Will Estes <wlestes@users.sourceforge.net>
+2002-09-16 Will Estes <wlestes@users.sourceforge.net>
* tests/test-reject/scanner.l: replace yytables_load with
yytables_fload as per millaway's other changes
-2002-09-15 19:13 John Millaway <millaway@acm.org>
+2002-09-15 John Millaway <john43@users.sourceforge.net>
- * TODO, flex.texi: Created user API for tables deserialization.
+ * TODO, flex.texi: Created user API for tables deserialization.
Documented API and --tables-* options in manual.
-2002-09-15 19:12 John Millaway <millaway@acm.org>
+2002-09-15 John Millaway <john43@users.sourceforge.net>
* flex.skl, tests/test-table-opts/scanner.l: Tables deserialization
uses yyalloc/yyfree. Changed yytables_load to yytables_fload.
-2002-09-15 18:09 John Millaway <millaway@acm.org>
+2002-09-15 John Millaway <john43@users.sourceforge.net>
* tests/test-bison-nr/.cvsignore: minor upkeep.
-2002-09-15 15:53 John Millaway <millaway@acm.org>
+2002-09-15 John Millaway <john43@users.sourceforge.net>
* flex.texi: Categorized and indexed scanner options in manual.
-2002-09-15 12:47 John Millaway <millaway@acm.org>
+2002-09-15 John Millaway <john43@users.sourceforge.net>
* flex.skl: Initialization of reject vars and %array vars in
reentrant scanner.
-2002-09-13 17:54 John Millaway <millaway@acm.org>
+2002-09-13 John Millaway <john43@users.sourceforge.net>
- * TODO, configure.in, dfa.c, flex.skl, flex.texi, gen.c, tables.c,
- tables_shared.c, tables_shared.h, devel/tables.pl,
+ * TODO, configure.in, devel/tables.pl, dfa.c, flex.skl, flex.texi,
+ gen.c, tables.c, tables_shared.c, tables_shared.h,
tests/Makefile.am, tests/test-reject/.cvsignore,
tests/test-reject/Makefile.am, tests/test-reject/scanner.l,
- tests/test-reject/test.input, tests/test-table-opts/Makefile.am:
+ tests/test-reject/test.input, tests/test-table-opts/Makefile.am:
Created test for reject. Handled reject-triggered tables in
serialization.
-2002-09-13 08:28 Will Estes <wlestes@users.sourceforge.net>
+2002-09-13 Will Estes <wlestes@users.sourceforge.net>
* NEWS: millaway has been very busy
-2002-09-13 03:12 John Millaway <millaway@acm.org>
+2002-09-13 John Millaway <john43@users.sourceforge.net>
* flex.skl, tests/test-table-opts/Makefile.am,
tests/test-table-opts/scanner.l: Added test for multiple tables in
one file.
-2002-09-12 21:19 John Millaway <millaway@acm.org>
+2002-09-13 John Millaway <john43@users.sourceforge.net>
* tests/test-bison-nr/.cvsignore: forgot to add .cvsignore on last
commit.
-2002-09-12 21:18 John Millaway <millaway@acm.org>
+2002-09-13 John Millaway <john43@users.sourceforge.net>
- * tests/test-bison-nr/: Makefile.am, main.c, parser.y, scanner.l,
- test.input: Added test-bison-bridge.
+ * tests/test-bison-nr/Makefile.am, tests/test-bison-nr/main.c,
+ tests/test-bison-nr/parser.y, tests/test-bison-nr/scanner.l,
+ tests/test-bison-nr/test.input: Added test-bison-bridge.
-2002-09-12 21:17 John Millaway <millaway@acm.org>
+2002-09-13 John Millaway <john43@users.sourceforge.net>
* configure.in, flex.skl, flex.texi, flexdef.h, gen.c, main.c,
misc.c, options.c, options.h, scan.l, tables.h, tests/Makefile.am,
tests/descriptions, tests/test-bison-yylloc/scanner.l,
- tests/test-bison-yylval/scanner.l, tests/test-table-opts/scanner.l:
+ tests/test-bison-yylval/scanner.l, tests/test-table-opts/scanner.l:
Bison bridge code now works for all C scanners and pure/non-pure
- bison parsers. Added %option bison-bridge (--bison-bridge).
- Removed %option reentrant-bison/--reentrant-bison/-Rb. Scanner
- knows the name of its tables. Tables serialization is OK on EOF.
+ bison parsers. Added %option bison-bridge (--bison-bridge).
+ Removed %option reentrant-bison/--reentrant-bison/-Rb. Scanner
+ knows the name of its tables. Tables serialization is OK on EOF.
yylineno is present in all scanners. Modified nasty performance
penalty warning w/ yylineno. test-table-opts is now run last
because it's so fat. Updated manual.
-2002-09-12 11:48 John Millaway <millaway@acm.org>
+2002-09-12 John Millaway <john43@users.sourceforge.net>
* flex.texi: documentation of tabels api in manual
-2002-09-12 10:54 John Millaway <millaway@acm.org>
+2002-09-12 John Millaway <john43@users.sourceforge.net>
* TODO, tables.c: Renamed *_fwrite to *_write to reflect writer
abstraction.
-2002-09-11 17:55 John Millaway <millaway@acm.org>
+2002-09-11 John Millaway <john43@users.sourceforge.net>
* devel/tables.pl: Added perl script to read/dump serialized tables
in devel/
-2002-09-11 17:22 Will Estes <wlestes@users.sourceforge.net>
+2002-09-11 Will Estes <wlestes@users.sourceforge.net>
* scan.l: the debian patch used strlen(yytext) and similar
constructs--as millaway points out, this is better known as yyleng
-2002-09-11 16:00 Will Estes <wlestes@users.sourceforge.net>
+2002-09-11 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/de.po: new de translation from the translation project
-2002-09-11 08:30 John Millaway <millaway@acm.org>
+2002-09-11 John Millaway <john43@users.sourceforge.net>
- * flex.skl: yytbl_load now checks tables set by name. Localized
- var scaope in yytbl_load.
+ * flex.skl: yytbl_load now checks tables set by name. Localized var
+ scaope in yytbl_load.
-2002-09-10 09:12 Will Estes <wlestes@users.sourceforge.net>
+2002-09-10 Will Estes <wlestes@users.sourceforge.net>
* tests/Makefile.am: make clean before make test
-2002-09-09 18:06 John Millaway <millaway@acm.org>
+2002-09-09 John Millaway <john43@users.sourceforge.net>
* TODO, flex.skl: Fixed deserialization of --fast tables.
-2002-09-09 16:44 Will Estes <wlestes@users.sourceforge.net>
+2002-09-09 Will Estes <wlestes@users.sourceforge.net>
* TODO: fix typo; remove the yylineo entry
-2002-09-09 15:25 John Millaway <millaway@acm.org>
+2002-09-09 John Millaway <john43@users.sourceforge.net>
- * TODO, buf.c, dfa.c, flex.skl, flexdef.h, gen.c, main.c, misc.c,
- options.c, options.h, scan.l, tables.c, tables.h, tables_shared.h,
- devel/dump-tables.pl, tests/test-table-opts/.cvsignore,
- tests/test-table-opts/Makefile.am, tests/test-table-opts/scanner.l:
- Table deserialization works for everything except --fast scanners.
- Scanners can auto-verify serialized table integrity via
- --tables-verify. Added tables API items to TODO list.
+ * TODO, buf.c, devel/dump-tables.pl, dfa.c, flex.skl, flexdef.h,
+ gen.c, main.c, misc.c, options.c, options.h, scan.l, tables.c,
+ tables.h, tables_shared.h, tests/test-table-opts/.cvsignore,
+ tests/test-table-opts/Makefile.am, tests/test-table-opts/scanner.l:
+ Table deserialization works for everything except --fast scanners.
+ Scanners can auto-verify serialized table integrity via
+ --tables-verify. Added tables API items to TODO list.
test-table-opts is becoming exhaustive (a good thing).
-2002-09-09 11:54 Will Estes <wlestes@users.sourceforge.net>
+2002-09-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS: flex has better internal diagnostics
-2002-09-09 11:52 Will Estes <wlestes@users.sourceforge.net>
+2002-09-09 Will Estes <wlestes@users.sourceforge.net>
* configure.in, flexdef.h: test for presence of __func__ and
compensate if absent
-2002-09-09 09:59 Will Estes <wlestes@users.sourceforge.net>
+2002-09-09 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: include the intl/ subdirectory when searching for
include files
-2002-09-09 08:49 Will Estes <wlestes@users.sourceforge.net>
+2002-09-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/ru.po, po/sv.po: new sv, ru translations from the
translation project
-2002-09-07 18:40 John Millaway <millaway@acm.org>
+2002-09-07 John Millaway <john43@users.sourceforge.net>
* flex.skl, misc.c: Changed cryptic skeleton markers to readable
form.
-2002-09-07 00:18 John Millaway <millaway@acm.org>
+2002-09-07 John Millaway <john43@users.sourceforge.net>
* Makefile.am, dfa.c, flex.skl, flex.texi, flexdef.h, gen.c,
main.c, misc.c, parse.y, tables.c, tables.h, tables_shared.c,
@@ -2051,532 +2607,538 @@
be the same size. Added shared file tables_shared.c. Separated
tables.h from flexdef.h Bulk of table deserialization code is done.
-2002-09-06 11:42 Will Estes <wlestes@users.sourceforge.net>
+2002-09-06 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/ca.po: new ca translation
-2002-09-06 11:24 Will Estes <wlestes@users.sourceforge.net>
+2002-09-06 Will Estes <wlestes@users.sourceforge.net>
* NEWS: new fr translation
-2002-09-06 11:22 Will Estes <wlestes@users.sourceforge.net>
+2002-09-06 Will Estes <wlestes@users.sourceforge.net>
* po/fr.po: new french translation from the translation project
-2002-09-05 14:41 Will Estes <wlestes@users.sourceforge.net>
+2002-09-05 Will Estes <wlestes@users.sourceforge.net>
* NEWS: c99 function defs by default
-2002-09-05 14:22 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
* flexdef.h, tables.c: Added flex_die macro. May need some autoconf
massaging. Added thorough error checking in tables code.
-2002-09-05 14:21 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
* flex.skl, flex.texi: Flex generates C99 defs now. Documented the
above change in manual.
-2002-09-05 14:12 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
- * tests/test-table-opts/: .cvsignore, Makefile.am: Added
- serialization test to table-opts test.
+ * tests/test-table-opts/.cvsignore,
+ tests/test-table-opts/Makefile.am: Added serialization test to
+ table-opts test.
-2002-09-05 12:03 Will Estes <wlestes@users.sourceforge.net>
+2002-09-05 Will Estes <wlestes@users.sourceforge.net>
* configure.in: oops, i made a typo
-2002-09-05 12:01 Will Estes <wlestes@users.sourceforge.net>
+2002-09-05 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.19
-2002-09-05 10:08 Will Estes <wlestes@users.sourceforge.net>
+2002-09-05 Will Estes <wlestes@users.sourceforge.net>
* scan.l: use FLEX_EXIT(), not exit()
-2002-09-05 09:53 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
- * devel/: 00EXTRACT-ALL-SYMS.sh, README, dump-tables.pl: Added
- devel/ directory for junk that we don't want in the distribution,
- but that we want in CVS.
+ * devel/00EXTRACT-ALL-SYMS.sh, devel/README, devel/dump-tables.pl:
+ Added devel/ directory for junk that we don't want in the
+ distribution, but that we want in CVS.
-2002-09-05 09:26 Will Estes <wlestes@users.sourceforge.net>
+2002-09-05 Will Estes <wlestes@users.sourceforge.net>
* scan.l: s/exit(1)/exit(EXIT_FAILURE)
-2002-09-05 09:18 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
* dfa.c, gen.c: Tables are now generated with %option
tables-file=FILE.
-2002-09-05 09:14 Will Estes <wlestes@users.sourceforge.net>
+2002-09-05 Will Estes <wlestes@users.sourceforge.net>
* NEWS: catch up on a few things
-2002-09-05 09:11 Will Estes <wlestes@users.sourceforge.net>
+2002-09-05 Will Estes <wlestes@users.sourceforge.net>
* scan.l: prevent segfault on input lines which are longer than the
allocated space (problem report from Manoj Srivastava
<srivasta@golden-gryphon.com>)
-2002-09-05 06:54 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
* flex.texi, main.c, options.c, options.h: Changed option 'header'
to 'header-file'. 'header' still works, though.
-2002-09-05 06:48 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
* flex.texi, flexdef.h, gen.c, main.c, options.c, options.h,
scan.l, tables.c: Tons more work on tables.
-2002-09-05 00:24 John Millaway <millaway@acm.org>
+2002-09-05 John Millaway <john43@users.sourceforge.net>
* flexdef.h, gen.c, tables.c, tables_shared.h: Lots of work on
tables serialization code.
-2002-09-04 08:36 Will Estes <wlestes@users.sourceforge.net>
+2002-09-04 Will Estes <wlestes@users.sourceforge.net>
* README.cvs-snapshot: mention GNU indent
-2002-09-04 08:33 Will Estes <wlestes@users.sourceforge.net>
+2002-09-04 Will Estes <wlestes@users.sourceforge.net>
* NEWS: remove the word after from the version line
-2002-09-03 17:02 Will Estes <wlestes@users.sourceforge.net>
+2002-09-03 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.18
-2002-09-03 09:46 Will Estes <wlestes@users.sourceforge.net>
+2002-09-03 Will Estes <wlestes@users.sourceforge.net>
* NEWS: catch up on the NEWS
-2002-09-03 09:42 Will Estes <wlestes@users.sourceforge.net>
+2002-09-03 Will Estes <wlestes@users.sourceforge.net>
* tests/Makefile.am: target test: quote the results echoing so that
the ECHO_C will work on systems where it is used
-2002-09-03 09:08 Will Estes <wlestes@users.sourceforge.net>
+2002-09-03 Will Estes <wlestes@users.sourceforge.net>
* configure.in: when we don't have GNU indent, the test will
generate output on stderr, so we send that to /dev/null
-2002-09-03 08:56 Will Estes <wlestes@users.sourceforge.net>
+2002-09-03 Will Estes <wlestes@users.sourceforge.net>
* configure.in: fixed bug whereby bison was reported missing even
when it was found
-2002-09-02 14:44 John Millaway <millaway@acm.org>
+2002-09-02 John Millaway <john43@users.sourceforge.net>
* tables.c: In-code documentation.
-2002-09-02 14:44 John Millaway <millaway@acm.org>
+2002-09-02 John Millaway <john43@users.sourceforge.net>
* flexdef.h: Forgot to indent before previous commit.
-2002-09-02 13:55 John Millaway <millaway@acm.org>
+2002-09-02 John Millaway <john43@users.sourceforge.net>
* flexdef.h: Added known integer limits if undefined.
-2002-08-29 17:12 Will Estes <wlestes@users.sourceforge.net>
+2002-08-29 Will Estes <wlestes@users.sourceforge.net>
* configure.in: version 2.5.17
-2002-08-29 17:12 Will Estes <wlestes@users.sourceforge.net>
+2002-08-29 Will Estes <wlestes@users.sourceforge.net>
* NEWS: more portability fixes; new version number
-2002-08-29 16:30 Will Estes <wlestes@users.sourceforge.net>
+2002-08-29 Will Estes <wlestes@users.sourceforge.net>
* flexdef.h, main.c, misc.c, scanopt.c: #include fixes; we've
factored out all the system include files and put them in flexdef.h
-2002-08-29 15:02 Will Estes <wlestes@users.sourceforge.net>
+2002-08-29 Will Estes <wlestes@users.sourceforge.net>
* dfa.c: eat a blank line
-2002-08-29 09:21 Will Estes <wlestes@users.sourceforge.net>
+2002-08-29 Will Estes <wlestes@users.sourceforge.net>
* NEWS: new config.{sub,guess} files; mention that we use indent on
flex
-2002-08-28 13:12 Will Estes <wlestes@users.sourceforge.net>
+2002-08-28 Will Estes <wlestes@users.sourceforge.net>
* configure.in: warn if no indent found; version 2.5.16
-2002-08-28 13:10 Will Estes <wlestes@users.sourceforge.net>
+2002-08-28 Will Estes <wlestes@users.sourceforge.net>
* NEWS: catch up on recent changes; version 2.5.16
-2002-08-27 14:07 Will Estes <wlestes@users.sourceforge.net>
+2002-08-27 Will Estes <wlestes@users.sourceforge.net>
* buf.c, ccl.c, dfa.c, ecs.c, flexdef.h, gen.c, libmain.c,
libyywrap.c, main.c, misc.c, nfa.c, options.c, options.h,
scanopt.c, scanopt.h, sym.c, tables.c, tables_shared.h, tblcmp.c,
yylex.c: ran the indent target; commit the results
-2002-08-27 14:05 Will Estes <wlestes@users.sourceforge.net>
+2002-08-27 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: touch up the indent targeet; it's ready for
production use now
-2002-08-27 14:01 Will Estes <wlestes@users.sourceforge.net>
+2002-08-27 Will Estes <wlestes@users.sourceforge.net>
* configure.in: test for GNU indent; reorder the tests somewhat
-2002-08-23 10:29 Will Estes <wlestes@users.sourceforge.net>
+2002-08-23 Will Estes <wlestes@users.sourceforge.net>
* configure.in: automake is smarter about autoconf's versioning
scheme
-2002-08-23 09:18 Will Estes <wlestes@users.sourceforge.net>
+2002-08-23 Will Estes <wlestes@users.sourceforge.net>
* NEWS: catch NEWS up on what we've been doing
-2002-08-22 13:18 Will Estes <wlestes@users.sourceforge.net>
+2002-08-22 Will Estes <wlestes@users.sourceforge.net>
* flexdef.h: do some more conditional including for folks without
standard systems
-2002-08-22 13:15 Will Estes <wlestes@users.sourceforge.net>
+2002-08-22 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-c++-basic/Makefile.am: use CXX to link the test
- scanner here
+ * tests/test-c++-basic/Makefile.am: use CXX to link the test scanner
+ here
-2002-08-22 01:35 John Millaway <millaway@acm.org>
+2002-08-22 John Millaway <john43@users.sourceforge.net>
* flex.texi: Documentation.
-2002-08-21 21:49 John Millaway <millaway@acm.org>
+2002-08-22 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Created 'indent' target and added .indent.pro.
-2002-08-21 21:42 John Millaway <millaway@acm.org>
+2002-08-22 John Millaway <john43@users.sourceforge.net>
- * tests/: test-array-nr/Makefile.am, test-array-r/Makefile.am,
- test-basic-nr/Makefile.am, test-basic-r/Makefile.am,
- test-c-cpp-nr/Makefile.am: Fixed missing 'make clean' files.
+ * tests/test-array-nr/Makefile.am, tests/test-array-r/Makefile.am,
+ tests/test-basic-nr/Makefile.am, tests/test-basic-r/Makefile.am,
+ tests/test-c-cpp-nr/Makefile.am: Fixed missing 'make clean' files.
-2002-08-21 21:34 John Millaway <millaway@acm.org>
+2002-08-22 John Millaway <john43@users.sourceforge.net>
- * tests/: test-bison-yylloc/Makefile.am,
- test-bison-yylval/Makefile.am: fixed missing 'clean' file.
+ * tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am: fixed missing 'clean' file.
-2002-08-21 21:11 John Millaway <millaway@acm.org>
+2002-08-22 John Millaway <john43@users.sourceforge.net>
* flex.skl, tests/test-c++-basic/Makefile.am,
tests/test-c++-basic/scanner.l: Removed core of yylex_destroy from
- c++ scanner -- hack! Added -lstdc++ to LDFLAGS (should we have to
- do this??)
+ c++ scanner -- hack! Added -lstdc++ to LDFLAGS (should we have to do
+ this??)
-2002-08-21 10:15 Will Estes <wlestes@users.sourceforge.net>
+2002-08-21 Will Estes <wlestes@users.sourceforge.net>
* README: official releases are being hosted by Vern
-2002-08-21 09:42 Will Estes <wlestes@users.sourceforge.net>
+2002-08-21 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: new beta version; more entries in NEWS from
millaway; the top level entry for test-c++-basic
-2002-08-21 09:41 Will Estes <wlestes@users.sourceforge.net>
+2002-08-21 Will Estes <wlestes@users.sourceforge.net>
- * tests/: Makefile.am, test-c++-basic/.cvsignore,
- test-c++-basic/Makefile.am, test-c++-basic/scanner.l,
- test-c++-basic/test.input: add test-c++-basic
+ * tests/Makefile.am, tests/test-c++-basic/.cvsignore,
+ tests/test-c++-basic/Makefile.am, tests/test-c++-basic/scanner.l,
+ tests/test-c++-basic/test.input: add test-c++-basic
-2002-08-21 02:54 John Millaway <millaway@acm.org>
+2002-08-21 John Millaway <john43@users.sourceforge.net>
* gen.c, nfa.c: More tabels work.
-2002-08-20 21:54 John Millaway <millaway@acm.org>
+2002-08-21 John Millaway <john43@users.sourceforge.net>
* flexdef.h, gen.c, tables.c, tables_shared.h: More work on tables.
-2002-08-20 19:49 John Millaway <millaway@acm.org>
+2002-08-20 John Millaway <john43@users.sourceforge.net>
* dfa.c: Cleaned up macros that took no ';'.
-2002-08-20 19:47 John Millaway <millaway@acm.org>
+2002-08-20 John Millaway <john43@users.sourceforge.net>
* scanopt.c: Fixed oddball '=-'.
-2002-08-20 17:42 John Millaway <millaway@acm.org>
+2002-08-20 John Millaway <john43@users.sourceforge.net>
* flex.skl, flex.texi, gen.c: Dynamically allocate REJECT state
buffer. Mentioned memory usage in docs. Made REJECT buffer
variables reentrant-safe.
-2002-08-20 17:37 John Millaway <millaway@acm.org>
+2002-08-20 John Millaway <john43@users.sourceforge.net>
* tables.c: More work on tables code.
-2002-08-20 10:52 Will Estes <wlestes@users.sourceforge.net>
+2002-08-20 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, NEWS, configure.in: we're using m4 so have configure
test for it
-2002-08-20 00:23 John Millaway <millaway@acm.org>
+2002-08-20 John Millaway <john43@users.sourceforge.net>
* Makefile.am, tables.c: Added tables.c and rebuilt dependencies.
-2002-08-19 20:30 John Millaway <millaway@acm.org>
+2002-08-20 John Millaway <john43@users.sourceforge.net>
* TODO, flex.texi: Dicussed prototypes and header in manual.
-2002-08-19 17:56 John Millaway <millaway@acm.org>
+2002-08-19 John Millaway <john43@users.sourceforge.net>
- * Makefile.am, configure.in, flex.skl, flexdef.h, tables_shared.h:
+ * Makefile.am, configure.in, flex.skl, flexdef.h, tables_shared.h:
More work on tables serialization.
-2002-08-19 17:15 John Millaway <millaway@acm.org>
+2002-08-19 John Millaway <john43@users.sourceforge.net>
* Makefile.am, mkskel.sh: Skeleton is now passed through m4 (before
dist is built).
-2002-08-19 08:51 Will Estes <wlestes@users.sourceforge.net>
+2002-08-19 Will Estes <wlestes@users.sourceforge.net>
- * po/: LINGUAS, zh_CN.po: add zh_cn translation from the
+ * po/LINGUAS, po/zh_CN.po: add zh_cn translation from the
translation project
-2002-08-19 08:51 Will Estes <wlestes@users.sourceforge.net>
+2002-08-19 Will Estes <wlestes@users.sourceforge.net>
* NEWS: millaway's done a lot of things which need to be mentioned
in NEWS
-2002-08-18 16:32 John Millaway <millaway@acm.org>
+2002-08-18 John Millaway <john43@users.sourceforge.net>
* main.c: Removed #undef of start conditions.
-2002-08-17 18:24 John Millaway <millaway@acm.org>
+2002-08-17 John Millaway <john43@users.sourceforge.net>
* TODO: todo list
-2002-08-17 16:04 John Millaway <millaway@acm.org>
+2002-08-17 John Millaway <john43@users.sourceforge.net>
* flexdef.h, main.c, misc.c: Start conditions now optional in
header. undef's now optional in header. Start conditions are NOT
prefixed.
-2002-08-17 13:05 John Millaway <millaway@acm.org>
+2002-08-17 John Millaway <john43@users.sourceforge.net>
* flex.skl, flex.texi: Working on tables API.
-2002-08-16 18:32 John Millaway <millaway@acm.org>
+2002-08-16 John Millaway <john43@users.sourceforge.net>
- * flexdef.h, main.c, misc.c, options.c, options.h, parse.y, scan.l:
- Added --tables option. Omitted tables code from generated scanner
+ * flexdef.h, main.c, misc.c, options.c, options.h, parse.y, scan.l:
+ Added --tables option. Omitted tables code from generated scanner
when unused.
-2002-08-16 15:54 John Millaway <millaway@acm.org>
+2002-08-16 John Millaway <john43@users.sourceforge.net>
* flex.skl, flex.texi, misc.c: Prelimary work on tables API.
-2002-08-16 15:45 John Millaway <millaway@acm.org>
-
- * tests/: TEMPLATE/Makefile.am, test-array-nr/Makefile.am,
- test-array-r/Makefile.am, test-basic-nr/Makefile.am,
- test-basic-r/Makefile.am, test-bison-yylloc/Makefile.am,
- test-bison-yylval/Makefile.am, test-c-cpp-nr/Makefile.am,
- test-c-cpp-r/Makefile.am, test-debug-nr/Makefile.am,
- test-debug-r/Makefile.am, test-header-nr/Makefile.am,
- test-header-r/Makefile.am, test-include-by-buffer/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-lineno-nr/Makefile.am,
- test-lineno-r/Makefile.am, test-mem-nr/Makefile.am,
- test-mem-r/Makefile.am, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-posix/Makefile.am,
- test-posixly-correct/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-string-nr/Makefile.am, test-string-r/Makefile.am,
- test-table-opts/Makefile.am, test-yyextra/Makefile.am: Tests now
- respect CFLAGS, CPPFLAGS, etc..
-
-2002-08-16 15:03 John Millaway <millaway@acm.org>
-
- * tests/: test-basic-nr/scanner.l, test-basic-r/scanner.l,
- test-lineno-nr/scanner.l, test-lineno-r/scanner.l: Got rid of flex
- -s warnings in tests.
-
-2002-08-16 14:51 John Millaway <millaway@acm.org>
+2002-08-16 John Millaway <john43@users.sourceforge.net>
+
+ * tests/TEMPLATE/Makefile.am, tests/test-array-nr/Makefile.am,
+ tests/test-array-r/Makefile.am, tests/test-basic-nr/Makefile.am,
+ tests/test-basic-r/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-r/Makefile.am,
+ tests/test-debug-nr/Makefile.am, tests/test-debug-r/Makefile.am,
+ tests/test-header-nr/Makefile.am, tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-r/Makefile.am,
+ tests/test-mem-nr/Makefile.am, tests/test-mem-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-posix/Makefile.am,
+ tests/test-posixly-correct/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-string-nr/Makefile.am,
+ tests/test-string-r/Makefile.am, tests/test-table-opts/Makefile.am,
+ tests/test-yyextra/Makefile.am: Tests now respect CFLAGS, CPPFLAGS,
+ etc..
+
+2002-08-16 John Millaway <john43@users.sourceforge.net>
+
+ * tests/test-basic-nr/scanner.l, tests/test-basic-r/scanner.l,
+ tests/test-lineno-nr/scanner.l, tests/test-lineno-r/scanner.l: Got
+ rid of flex -s warnings in tests.
+
+2002-08-16 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Updated dependencies list.
-2002-08-15 17:23 John Millaway <millaway@acm.org>
+2002-08-15 John Millaway <john43@users.sourceforge.net>
* main.c: Fixed seg fault bug in ecs.
-2002-08-15 17:18 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
- * tests/: test-c-cpp-nr/.cvsignore, test-c-cpp-r/.cvsignore: ignore
- .cpp files since we generate them instead of .c
+ * tests/test-c-cpp-nr/.cvsignore, tests/test-c-cpp-r/.cvsignore:
+ ignore .cpp files since we generate them instead of .c
-2002-08-15 11:37 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
* configure.in: version 2.5.14
-2002-08-15 11:37 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
* NEWS: c-as-c++ tests reworked
-2002-08-15 11:15 John Millaway <millaway@acm.org>
+2002-08-15 John Millaway <john43@users.sourceforge.net>
- * tests/: test-c-cpp-nr/Makefile.am, test-c-cpp-nr/scanner.l,
- test-c-cpp-r/Makefile.am, test-c-cpp-r/scanner.l: The c++ tests use
- .cpp instead of .c extensions just to be on the safe side.
+ * tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-nr/scanner.l,
+ tests/test-c-cpp-r/Makefile.am, tests/test-c-cpp-r/scanner.l: The
+ c++ tests use .cpp instead of .c extensions just to be on the safe
+ side.
-2002-08-15 10:50 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
- * main.c: conditionally include <locale.h>; include config.h as
- well
+ * main.c: conditionally include <locale.h>; include config.h as well
-2002-08-15 10:49 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
* configure.in, flex.skl: only include <cunistd> if we have it
-2002-08-15 10:48 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
- * NEWS: portability fixes; added missing punctuation; de
- translation now included
+ * NEWS: portability fixes; added missing punctuation; de translation
+ now included
-2002-08-15 10:16 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
* po/LINGUAS: we also translate to german
-2002-08-15 09:17 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: require automake at least 1.6
-2002-08-15 08:32 Will Estes <wlestes@users.sourceforge.net>
+2002-08-15 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.13
-2002-08-14 10:57 Will Estes <wlestes@users.sourceforge.net>
+2002-08-14 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: reverted away from the @copying as it breaks the info
reader
-2002-08-13 20:46 John Millaway <millaway@acm.org>
+2002-08-14 John Millaway <john43@users.sourceforge.net>
* flex.texi, flexdef.h, main.c, misc.c: Start condition prefixes
attempts to adjust to user preferences.
-2002-08-13 17:19 John Millaway <millaway@acm.org>
+2002-08-13 John Millaway <john43@users.sourceforge.net>
* main.c: Include start condition symbols in header.
-2002-08-13 15:16 John Millaway <millaway@acm.org>
+2002-08-13 John Millaway <john43@users.sourceforge.net>
- * flexdef.h, main.c: Omit user code and tables from generated
- header file.
+ * flexdef.h, main.c: Omit user code and tables from generated header
+ file.
-2002-08-13 09:14 Will Estes <wlestes@users.sourceforge.net>
+2002-08-13 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: use @copying construct to display the flex license;
move copying and bug reporting to the front of the manual
-2002-08-13 09:00 Will Estes <wlestes@users.sourceforge.net>
+2002-08-13 Will Estes <wlestes@users.sourceforge.net>
* NEWS: printf fix and yylex_init reports errors
-2002-08-12 19:15 John Millaway <millaway@acm.org>
+2002-08-12 John Millaway <john43@users.sourceforge.net>
* flex.texi: Updated manual for %option header.
-2002-08-12 15:36 John Millaway <millaway@acm.org>
+2002-08-12 John Millaway <john43@users.sourceforge.net>
- * flex.skl, flex.texi, gen.c: Fixed type mismatch in printf.
+ * flex.skl, flex.texi, gen.c: Fixed type mismatch in printf.
yylex_init now reports errors.
-2002-08-10 13:22 John Millaway <millaway@acm.org>
+2002-08-10 John Millaway <john43@users.sourceforge.net>
* dfa.c, main.c: Added alignment flag for future use.
-2002-08-10 13:17 John Millaway <millaway@acm.org>
+2002-08-10 John Millaway <john43@users.sourceforge.net>
- * tests/test-table-opts/: .cvsignore, Makefile.am: Added options to
- test-table-opts
+ * tests/test-table-opts/.cvsignore,
+ tests/test-table-opts/Makefile.am: Added options to test-table-opts
-2002-08-10 12:39 John Millaway <millaway@acm.org>
+2002-08-10 John Millaway <john43@users.sourceforge.net>
* configure.in, tests/Makefile.am, tests/descriptions,
tests/test-c-cpp-nr/Makefile.am, tests/test-table-opts/.cvsignore,
tests/test-table-opts/Makefile.am, tests/test-table-opts/scanner.l,
- tests/test-table-opts/test.input: Added a test for various DFA
- table options.
+ tests/test-table-opts/test.input: Added a test for various DFA table
+ options.
-2002-08-09 16:36 Will Estes <wlestes@users.sourceforge.net>
+2002-08-09 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: more faq editing; corrected mistyped nodenames
-2002-08-09 13:41 Will Estes <wlestes@users.sourceforge.net>
+2002-08-09 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: fix typo which propogates out to generated scanners
-2002-08-09 10:42 Will Estes <wlestes@users.sourceforge.net>
+2002-08-09 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: edited a few more faqs
-2002-08-09 10:20 Will Estes <wlestes@users.sourceforge.net>
+2002-08-09 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, faq.texi: remove faq.texi as it's included in
flex.texi
-2002-08-08 17:12 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: a few more faq edits; remove faq-89
-2002-08-08 16:50 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: cite, not site
-2002-08-08 16:46 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: and get the faq included
-2002-08-08 16:29 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: fix some grammer/typography in the top node and add a
detailed menu
-2002-08-08 13:10 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* TODO: we've updated gettext
-2002-08-08 13:04 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* po/.cvsignore: we need to ignore a few more gettext files
-2002-08-08 11:22 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.12
-2002-08-08 10:53 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
- * NEWS: mention gettext; document the non-need for bison/flex in
- the build process
+ * NEWS: mention gettext; document the non-need for bison/flex in the
+ build process
-2002-08-08 10:51 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
- * Makefile.am, configure.in: include intl in the distribution and
- in the build process
+ * Makefile.am, configure.in: include intl in the distribution and in
+ the build process
-2002-08-08 10:12 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: builddir in help2man call needed @-signs around it
-2002-08-08 09:54 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* po/.cvsignore: we can ignore Makefile.in.in
-2002-08-08 09:45 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
- * m4/: .cvsignore, Makefile.am: oops, too hasty on deleting this
+ * m4/.cvsignore, m4/Makefile.am: oops, too hasty on deleting this
directory, sigh
-2002-08-08 09:23 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
- * autogen.sh: if autopoint is going to run automatically, it's
- going to need to be able to update existing files
+ * autogen.sh: if autopoint is going to run automatically, it's going
+ to need to be able to update existing files
-2002-08-08 09:22 Will Estes <wlestes@users.sourceforge.net>
+2002-08-08 Will Estes <wlestes@users.sourceforge.net>
* ABOUT-NLS, autogen.sh, configure.in, m4/.cvsignore,
m4/Makefile.am, m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4,
@@ -2584,118 +3146,118 @@
m4/lib-link.m4, m4/lib-prefix.m4, m4/progtest.m4: autopoint now
works so let's let it run the gettext show
-2002-08-07 13:27 Will Estes <wlestes@users.sourceforge.net>
+2002-08-07 Will Estes <wlestes@users.sourceforge.net>
* TODO: we need to index the faq entries
-2002-08-07 13:26 Will Estes <wlestes@users.sourceforge.net>
+2002-08-07 Will Estes <wlestes@users.sourceforge.net>
* faq.texi: proofed "Why do flex scanners call fileno if it is not
ANSI compatible?"
-2002-08-07 13:23 Will Estes <wlestes@users.sourceforge.net>
+2002-08-07 Will Estes <wlestes@users.sourceforge.net>
* faq.texi: proofed "How do I expand \ escape sequences in C-style
quoted strings?"
-2002-08-07 13:19 Will Estes <wlestes@users.sourceforge.net>
+2002-08-07 Will Estes <wlestes@users.sourceforge.net>
* README: changes to README to align with GNU coding standards
-2002-08-06 09:05 Will Estes <wlestes@users.sourceforge.net>
+2002-08-06 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: help2man should look in builddir for the flex binary
-2002-08-02 16:23 John Millaway <millaway@acm.org>
+2002-08-02 John Millaway <john43@users.sourceforge.net>
* flex.skl: Fixed yyunput prototype.
-2002-08-01 11:35 Will Estes <wlestes@users.sourceforge.net>
+2002-08-01 Will Estes <wlestes@users.sourceforge.net>
* NEWS: new fr translation from the translation project
-2002-08-01 10:02 Will Estes <wlestes@users.sourceforge.net>
+2002-08-01 Will Estes <wlestes@users.sourceforge.net>
* po/fr.po: new fr.po translation from the translation project
-2002-08-01 10:00 Will Estes <wlestes@users.sourceforge.net>
+2002-08-01 Will Estes <wlestes@users.sourceforge.net>
* NEWS: yylineno performance hit is fixed
-2002-07-31 17:29 John Millaway <millaway@acm.org>
+2002-07-31 John Millaway <john43@users.sourceforge.net>
* TODO, flex.texi: Updated docs on yylineno.
-2002-07-31 15:19 Will Estes <wlestes@users.sourceforge.net>
+2002-07-31 Will Estes <wlestes@users.sourceforge.net>
* TODO: discuss yylineno performance
-2002-07-31 13:07 Will Estes <wlestes@users.sourceforge.net>
+2002-07-31 Will Estes <wlestes@users.sourceforge.net>
* NEWS: forgot to say what the date was that we made the release
-2002-07-31 10:52 Will Estes <wlestes@users.sourceforge.net>
+2002-07-31 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: version 2.5.11
-2002-07-31 10:45 Will Estes <wlestes@users.sourceforge.net>
+2002-07-31 Will Estes <wlestes@users.sourceforge.net>
* faq.texi: fixed a menu entry and related problems
-2002-07-31 10:38 Will Estes <wlestes@users.sourceforge.net>
+2002-07-31 Will Estes <wlestes@users.sourceforge.net>
* configure.in: someday, maybe we can use autopoint
-2002-07-31 09:56 Will Estes <wlestes@users.sourceforge.net>
+2002-07-31 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: we need to include texinfo.tex now
-2002-07-31 09:55 Will Estes <wlestes@users.sourceforge.net>
+2002-07-31 Will Estes <wlestes@users.sourceforge.net>
* texinfo.tex: add texinfo.tex
-2002-07-30 11:59 Will Estes <wlestes@users.sourceforge.net>
+2002-07-30 Will Estes <wlestes@users.sourceforge.net>
* faq.texi: fix up some fatal bugs in the texinfo of the faq; begin
the clean up; remove trailing and leading white space
-2002-07-30 11:53 Will Estes <wlestes@users.sourceforge.net>
+2002-07-30 Will Estes <wlestes@users.sourceforge.net>
* TODO: faqs need work
-2002-07-30 09:03 Will Estes <wlestes@users.sourceforge.net>
+2002-07-30 Will Estes <wlestes@users.sourceforge.net>
* NEWS, TODO: prototypes get airtime these days
-2002-07-28 16:02 John Millaway <millaway@acm.org>
+2002-07-28 John Millaway <john43@users.sourceforge.net>
* flex.skl: Added some comments.
-2002-07-28 14:27 John Millaway <millaway@acm.org>
+2002-07-28 John Millaway <john43@users.sourceforge.net>
* flex.skl: Fixed bug where yyless did not consider yylineno.
-2002-07-28 01:45 John Millaway <millaway@acm.org>
+2002-07-28 John Millaway <john43@users.sourceforge.net>
* scan.l: Fixed bug I created in previous commit.
-2002-07-28 01:38 John Millaway <millaway@acm.org>
+2002-07-28 John Millaway <john43@users.sourceforge.net>
* scan.l: Don't wrap ()s around {NAMEDEFS} at the end of a rule.
-2002-07-27 17:37 John Millaway <millaway@acm.org>
+2002-07-27 John Millaway <john43@users.sourceforge.net>
* flex.skl, tests/test-c-cpp-nr/Makefile.am,
- tests/test-c-cpp-r/Makefile.am: Fixed test-c-cpp to actually use
- the C++ compiler for the test. Fixed the bug that this exposed.
+ tests/test-c-cpp-r/Makefile.am: Fixed test-c-cpp to actually use the
+ C++ compiler for the test. Fixed the bug that this exposed.
-2002-07-27 15:34 John Millaway <millaway@acm.org>
+2002-07-27 John Millaway <john43@users.sourceforge.net>
- * ccl.c, flex.skl, flexdef.h, gen.c, main.c, nfa.c, parse.y,
- scan.l: yylineno check is only performed on rules whose regexs can
- match a newline.
+ * ccl.c, flex.skl, flexdef.h, gen.c, main.c, nfa.c, parse.y, scan.l:
+ yylineno check is only performed on rules whose regexs can match a
+ newline.
-2002-07-24 20:43 John Millaway <millaway@acm.org>
+2002-07-25 John Millaway <john43@users.sourceforge.net>
* flex.skl, tests/TEMPLATE/scanner.l,
tests/test-array-nr/scanner.l, tests/test-array-r/scanner.l,
@@ -2712,24 +3274,24 @@
tests/test-pthread/scanner.l, tests/test-string-nr/scanner.l,
tests/test-string-r/scanner.l, tests/test-yyextra/scanner.l: All
prototypes were rewritten to depend upon the macro
- YY_TRADITIONAL_FUNC_DEFS, which is defined by default. The
+ YY_TRADITIONAL_FUNC_DEFS, which is defined by default. The
generated scanners build cleanly under gcc's traditional strictness
and under C++ compilers.
-2002-07-24 11:58 Will Estes <wlestes@users.sourceforge.net>
+2002-07-24 Will Estes <wlestes@users.sourceforge.net>
* NEWS: dist-bzip2 and rename yy_globals and yy_globals_t
-2002-07-24 11:57 Will Estes <wlestes@users.sourceforge.net>
+2002-07-24 Will Estes <wlestes@users.sourceforge.net>
* configure.in: version 2.5.10
-2002-07-24 11:57 Will Estes <wlestes@users.sourceforge.net>
+2002-07-24 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: add dist-bzip2 to automake_options so we'll start
getting tar.bz2 archives
-2002-07-23 16:11 John Millaway <millaway@acm.org>
+2002-07-23 John Millaway <john43@users.sourceforge.net>
* flex.skl, flex.texi, tests/test-bison-yylval/scanner.l,
tests/test-mem-r/scanner.l,
@@ -2739,83 +3301,83 @@
tests/test-yyextra/scanner.l: s/yy_globals_t/yyguts_t/g
s/yy_globals/yyscanner/g
-2002-07-23 13:55 John Millaway <millaway@acm.org>
+2002-07-23 John Millaway <john43@users.sourceforge.net>
* Makefile.am: typo in tags target
-2002-07-22 12:18 John Millaway <millaway@acm.org>
+2002-07-22 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Removed erroneous $(srcdir) from help2man target.
-2002-07-22 10:03 Will Estes <wlestes@users.sourceforge.net>
+2002-07-22 Will Estes <wlestes@users.sourceforge.net>
* NEWS, configure.in: it's version 2.5.9 now
-2002-07-22 09:56 Will Estes <wlestes@users.sourceforge.net>
+2002-07-22 Will Estes <wlestes@users.sourceforge.net>
* po/.cvsignore: updated gettext to 0.11.3
-2002-07-22 09:49 Will Estes <wlestes@users.sourceforge.net>
+2002-07-22 Will Estes <wlestes@users.sourceforge.net>
* ABOUT-NLS, config.rpath, m4/gettext.m4, m4/iconv.m4,
- m4/isc-posix.m4, m4/lcmessage.m4, m4/lib-link.m4: updated gettext
- to version 0.11.3
+ m4/isc-posix.m4, m4/lcmessage.m4, m4/lib-link.m4: updated gettext to
+ version 0.11.3
-2002-07-22 09:29 Will Estes <wlestes@users.sourceforge.net>
+2002-07-22 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh, configure.in: rollback on configure.in and autogen.sh
because autpoint is broken
-2002-07-22 09:15 Will Estes <wlestes@users.sourceforge.net>
+2002-07-22 Will Estes <wlestes@users.sourceforge.net>
* po/ru.po: new russian translation from translation project
-2002-07-19 17:09 Will Estes <wlestes@users.sourceforge.net>
+2002-07-19 Will Estes <wlestes@users.sourceforge.net>
- * autogen.sh: ok, we're going to start using autopoint, but the
- tree is going to undergo some changes after this
+ * autogen.sh: ok, we're going to start using autopoint, but the tree
+ is going to undergo some changes after this
-2002-07-19 17:06 Will Estes <wlestes@users.sourceforge.net>
+2002-07-19 Will Estes <wlestes@users.sourceforge.net>
* configure.in: we're preparing for autopoint
-2002-07-17 11:57 John Millaway <millaway@acm.org>
+2002-07-17 John Millaway <john43@users.sourceforge.net>
* flex.texi: Updated manual.
-2002-07-17 08:53 Will Estes <wlestes@users.sourceforge.net>
+2002-07-17 Will Estes <wlestes@users.sourceforge.net>
* NEWS: update the NEWS file for lots of things millaway has done
-2002-07-17 02:46 John Millaway <millaway@acm.org>
+2002-07-17 John Millaway <john43@users.sourceforge.net>
* flex.skl, main.c, misc.c, scan.l, scanopt.c, sym.c,
tests/test-mem-nr/scanner.l, tests/test-mem-r/scanner.l: Fixed
prototype/definition conflicts with "traditional" C in skeleton at
request of gcc developer. Removed duplicate prototypes in gen.c,
- sym.c, main.c. Added missing prototypes where needed. All
- functions in skeleton follow ISO C style protos and defs, instead
- of BOTH ISO and new-style. Skeleton now compiles cleanly under
+ sym.c, main.c. Added missing prototypes where needed. All
+ functions in skeleton follow ISO C style protos and defs, instead of
+ BOTH ISO and new-style. Skeleton now compiles cleanly under
super-strict gcc flags. Flex itself almost compiles cleanly under
strict flags.
-2002-07-15 14:59 John Millaway <millaway@acm.org>
+2002-07-15 John Millaway <john43@users.sourceforge.net>
* faq.texi, flex.texi: Worked on mem mgmt sect of manual.
-2002-07-15 12:55 Will Estes <wlestes@users.sourceforge.net>
+2002-07-15 Will Estes <wlestes@users.sourceforge.net>
* scan.l: allow blank lines and continuations in more places
-2002-07-12 13:43 Will Estes <wlestes@users.sourceforge.net>
+2002-07-12 Will Estes <wlestes@users.sourceforge.net>
* TODO: millaway finished the faqs directory
-2002-07-12 13:39 Will Estes <wlestes@users.sourceforge.net>
+2002-07-12 Will Estes <wlestes@users.sourceforge.net>
* TODO: removed items as per email from millaway
-2002-07-12 12:23 John Millaway <millaway@acm.org>
+2002-07-12 John Millaway <john43@users.sourceforge.net>
* configure.in, tests/Makefile.am, tests/descriptions,
tests/test-posix/.cvsignore, tests/test-posix/Makefile.am,
@@ -2825,1036 +3387,1029 @@
posix-compat and repeat operator. Added test for POSIXLY_CORRECT
environment variable and repeat operator.
-2002-07-12 12:21 John Millaway <millaway@acm.org>
+2002-07-12 John Millaway <john43@users.sourceforge.net>
* main.c, scan.l: Fixed POSIXLY_CORRECT detection in scanner.
-2002-07-11 16:27 John Millaway <millaway@acm.org>
+2002-07-11 John Millaway <john43@users.sourceforge.net>
* faq.texi: More work on faq.
-2002-07-11 16:06 John Millaway <millaway@acm.org>
+2002-07-11 John Millaway <john43@users.sourceforge.net>
* faq.texi: Moved all faqs into manual -- but did not evaluate them
yet. Removed the old faq files.
-2002-07-10 17:59 John Millaway <millaway@acm.org>
+2002-07-10 John Millaway <john43@users.sourceforge.net>
* main.c: Removed duplicate definition of FLEX_DEBUG. gcc doesn't
care, but other compilers might.
-2002-07-10 17:55 John Millaway <millaway@acm.org>
+2002-07-10 John Millaway <john43@users.sourceforge.net>
* flex.texi: Wrote some more about memory mgmt in the manual.
-2002-07-10 11:43 John Millaway <millaway@acm.org>
+2002-07-10 John Millaway <john43@users.sourceforge.net>
* flex.texi: flex.texi now works with install-info.
-2002-07-10 10:02 Will Estes <wlestes@users.sourceforge.net>
+2002-07-10 Will Estes <wlestes@users.sourceforge.net>
* TODO: added items as per email from millaway
-2002-07-10 10:02 Will Estes <wlestes@users.sourceforge.net>
+2002-07-10 Will Estes <wlestes@users.sourceforge.net>
* NEWS: after we release a version, we have to keep the version
number in NEWS current
-2002-07-09 20:04 John Millaway <millaway@acm.org>
+2002-07-10 John Millaway <john43@users.sourceforge.net>
* flex.skl, flex.texi, main.c, scan.l, tests/test-mem-nr/scanner.l,
tests/test-mem-r/scanner.l: Fixed prefix issue with get/set debug
functions. Fixed prefix issues with memory functions.
-2002-07-09 19:35 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* flex.skl: Memory functions are no longer static.
-2002-07-09 19:02 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* tests/test-mem-nr/test.input: Added a missing input file for
test-mem-nr/
-2002-07-09 18:47 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
- * tests/: test-mem-nr/.cvsignore, test-mem-nr/Makefile.am,
- test-mem-nr/scanner.l, test-mem-r/.cvsignore,
- test-mem-r/Makefile.am, test-mem-r/scanner.l,
- test-mem-r/test.input: Added tests for overriding memory.
+ * tests/test-mem-nr/.cvsignore, tests/test-mem-nr/Makefile.am,
+ tests/test-mem-nr/scanner.l, tests/test-mem-r/.cvsignore,
+ tests/test-mem-r/Makefile.am, tests/test-mem-r/scanner.l,
+ tests/test-mem-r/test.input: Added tests for overriding memory.
-2002-07-09 18:45 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* flex.texi: Added sections in manual for memory management.
-2002-07-09 17:36 Will Estes <wlestes@users.sourceforge.net>
+2002-07-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS: noted more user visible changes
-2002-07-09 16:52 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* configure.in, flex.skl, scan.l, tests/Makefile.am: Added
- yylex_destroy() to non-reentrant scanner. Added ability to
- override memory functions. Added tests for overriding memory
- functions.
+ yylex_destroy() to non-reentrant scanner. Added ability to override
+ memory functions. Added tests for overriding memory functions.
-2002-07-09 14:41 Will Estes <wlestes@users.sourceforge.net>
+2002-07-09 Will Estes <wlestes@users.sourceforge.net>
* NEWS: new POSIXLY_CORRECT and new ru translation
-2002-07-09 14:40 Will Estes <wlestes@users.sourceforge.net>
+2002-07-09 Will Estes <wlestes@users.sourceforge.net>
* po/ru.po: new ru translation from the translation project
-2002-07-09 14:25 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* flex.texi: Made note of set/get debug in docs.
-2002-07-09 14:11 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* configure.in, flexdef.h, tests/create-test: Replaced obsolete
macros in configure.in. Modified create-test to handle the above
changes in configure.in. Added support for <stdbool.h>.
-2002-07-09 13:27 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* main.c: Check POSIXLY_CORRECT env variable.
-2002-07-09 12:43 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* flex.skl: Added prototypes for the get/set debug functions.
-2002-07-09 12:37 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* configure.in, flex.skl, gen.c, main.c, scan.l, tests/Makefile.am,
tests/test-debug-nr/.cvsignore, tests/test-debug-nr/Makefile.am,
tests/test-debug-nr/scanner.l, tests/test-debug-nr/test.input,
tests/test-debug-r/.cvsignore, tests/test-debug-r/Makefile.am,
tests/test-debug-r/scanner.l, tests/test-debug-r/test.input: Made
- yy_flex_debug non-global in reentrant scanner. Created get/set
- functions for yy_flex_debug. Defined prefixes for new
- yy_flex_debug symbols. Added tests/ for yy_flex_debug.
+ yy_flex_debug non-global in reentrant scanner. Created get/set
+ functions for yy_flex_debug. Defined prefixes for new yy_flex_debug
+ symbols. Added tests/ for yy_flex_debug.
-2002-07-09 12:31 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* tests/create-test: create-test script now modifies .cvsignore
-2002-07-09 12:22 John Millaway <millaway@acm.org>
+2002-07-09 John Millaway <john43@users.sourceforge.net>
* tests/create-test: Improved the error checking.
-2002-07-03 09:12 Will Estes <wlestes@users.sourceforge.net>
+2002-07-03 Will Estes <wlestes@users.sourceforge.net>
* main.c: fix bug whereby prefix didn't get passed to everybody;
- patch by rse@engelschall.com
+ patch by rse@engelschall.com
-2002-07-03 08:47 Will Estes <wlestes@users.sourceforge.net>
+2002-07-03 Will Estes <wlestes@users.sourceforge.net>
* faq.texi: ~ is an active character, so we'll just use the word
'about'
-2002-07-02 18:59 John Millaway <millaway@acm.org>
+2002-07-02 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Fixed typo.
-2002-07-02 15:47 John Millaway <millaway@acm.org>
+2002-07-02 John Millaway <john43@users.sourceforge.net>
* faq.texi: Added a faq.
-2002-06-28 19:05 John Millaway <millaway@acm.org>
+2002-06-28 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Added 'tags' target -- something I should have done
long ago.
-2002-06-28 12:18 Will Estes <wlestes@users.sourceforge.net>
+2002-06-28 Will Estes <wlestes@users.sourceforge.net>
* TODO: add two new items regarding coding; remove tests/ copyright
notice item as it's done
-2002-06-26 08:33 Will Estes <wlestes@users.sourceforge.net>
+2002-06-26 Will Estes <wlestes@users.sourceforge.net>
* NEWS: note the copyright messages in tests/
-2002-06-25 15:37 John Millaway <millaway@acm.org>
-
- * tests/: TEMPLATE/Makefile.am, TEMPLATE/parser.y,
- TEMPLATE/scanner.l, test-array-nr/Makefile.am,
- test-array-nr/scanner.l, test-array-r/Makefile.am,
- test-array-r/scanner.l, test-basic-nr/Makefile.am,
- test-basic-nr/scanner.l, test-basic-r/Makefile.am,
- test-basic-r/scanner.l, test-bison-yylloc/Makefile.am,
- test-bison-yylloc/main.c, test-bison-yylloc/parser.y,
- test-bison-yylloc/scanner.l, test-bison-yylval/Makefile.am,
- test-bison-yylval/main.c, test-bison-yylval/parser.y,
- test-bison-yylval/scanner.l, test-c-cpp-nr/Makefile.am,
- test-c-cpp-nr/scanner.l, test-c-cpp-r/Makefile.am,
- test-c-cpp-r/scanner.l, test-header-nr/Makefile.am,
- test-header-nr/main.c, test-header-nr/scanner.l,
- test-header-r/Makefile.am, test-header-r/main.c,
- test-header-r/scanner.l, test-include-by-buffer/Makefile.am,
- test-include-by-buffer/scanner.l,
- test-include-by-reentrant/Makefile.am,
- test-include-by-reentrant/scanner.l, test-lineno-nr/Makefile.am,
- test-lineno-nr/scanner.l, test-lineno-r/Makefile.am,
- test-lineno-r/scanner.l, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-nr/main.c,
- test-multiple-scanners-nr/scanner-1.l,
- test-multiple-scanners-nr/scanner-2.l,
- test-multiple-scanners-r/Makefile.am,
- test-multiple-scanners-r/main.c,
- test-multiple-scanners-r/scanner-1.l,
- test-multiple-scanners-r/scanner-2.l, test-prefix-nr/Makefile.am,
- test-prefix-nr/scanner.l, test-prefix-r/Makefile.am,
- test-prefix-r/scanner.l, test-pthread/Makefile.am,
- test-pthread/scanner.l, test-string-nr/Makefile.am,
- test-string-nr/scanner.l, test-string-r/Makefile.am,
- test-string-r/scanner.l, test-yyextra/Makefile.am,
- test-yyextra/scanner.l: Prepended explicit license to all test-*/
- sources.
-
-2002-06-25 08:56 Will Estes <wlestes@users.sourceforge.net>
+2002-06-25 John Millaway <john43@users.sourceforge.net>
+
+ * tests/TEMPLATE/Makefile.am, tests/TEMPLATE/parser.y,
+ tests/TEMPLATE/scanner.l, tests/test-array-nr/Makefile.am,
+ tests/test-array-nr/scanner.l, tests/test-array-r/Makefile.am,
+ tests/test-array-r/scanner.l, tests/test-basic-nr/Makefile.am,
+ tests/test-basic-nr/scanner.l, tests/test-basic-r/Makefile.am,
+ tests/test-basic-r/scanner.l, tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylloc/main.c, tests/test-bison-yylloc/parser.y,
+ tests/test-bison-yylloc/scanner.l,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-bison-yylval/main.c, tests/test-bison-yylval/parser.y,
+ tests/test-bison-yylval/scanner.l, tests/test-c-cpp-nr/Makefile.am,
+ tests/test-c-cpp-nr/scanner.l, tests/test-c-cpp-r/Makefile.am,
+ tests/test-c-cpp-r/scanner.l, tests/test-header-nr/Makefile.am,
+ tests/test-header-nr/main.c, tests/test-header-nr/scanner.l,
+ tests/test-header-r/Makefile.am, tests/test-header-r/main.c,
+ tests/test-header-r/scanner.l,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-buffer/scanner.l,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-include-by-reentrant/scanner.l,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-nr/scanner.l,
+ tests/test-lineno-r/Makefile.am, tests/test-lineno-r/scanner.l,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-nr/main.c,
+ tests/test-multiple-scanners-nr/scanner-1.l,
+ tests/test-multiple-scanners-nr/scanner-2.l,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-multiple-scanners-r/main.c,
+ tests/test-multiple-scanners-r/scanner-1.l,
+ tests/test-multiple-scanners-r/scanner-2.l,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-nr/scanner.l,
+ tests/test-prefix-r/Makefile.am, tests/test-prefix-r/scanner.l,
+ tests/test-pthread/Makefile.am, tests/test-pthread/scanner.l,
+ tests/test-string-nr/Makefile.am, tests/test-string-nr/scanner.l,
+ tests/test-string-r/Makefile.am, tests/test-string-r/scanner.l,
+ tests/test-yyextra/Makefile.am, tests/test-yyextra/scanner.l:
+ Prepended explicit license to all test-*/ sources.
+
+2002-06-25 Will Estes <wlestes@users.sourceforge.net>
* NEWS, po/ca.po, po/de.po, po/fr.po, po/sv.po, po/tr.po: new ca,
de, fr, sv, tr translations
-2002-06-19 09:40 Will Estes <wlestes@users.sourceforge.net>
+2002-06-19 Will Estes <wlestes@users.sourceforge.net>
* TODO: add bootstrapper to the todo list
-2002-06-19 09:38 Will Estes <wlestes@users.sourceforge.net>
+2002-06-19 Will Estes <wlestes@users.sourceforge.net>
* configure.in: new version number
-2002-06-19 09:38 Will Estes <wlestes@users.sourceforge.net>
+2002-06-19 Will Estes <wlestes@users.sourceforge.net>
* TODO: update TODO list
-2002-06-19 09:26 Will Estes <wlestes@users.sourceforge.net>
+2002-06-19 Will Estes <wlestes@users.sourceforge.net>
* NEWS, TODO, flex.texi, flexdef.h, main.c, options.c, options.h,
parse.y, scan.l: address typos in NEWS; add --posix option for ERE
parsing the way posix wants it; update the TODO file
-2002-05-31 13:18 Will Estes <wlestes@users.sourceforge.net>
+2002-05-31 Will Estes <wlestes@users.sourceforge.net>
* README-alpha: made code quality warning more explicit; gave url
for cvs and beta flex
-2002-05-23 11:53 John Millaway <millaway@acm.org>
+2002-05-23 John Millaway <john43@users.sourceforge.net>
- * gen.c: Fixed bug where omission of user section 3 caused
- unmatched #ifdef's in generated code.
+ * gen.c: Fixed bug where omission of user section 3 caused unmatched
+ #ifdef's in generated code.
-2002-05-20 08:39 Will Estes <wlestes@users.sourceforge.net>
+2002-05-20 Will Estes <wlestes@users.sourceforge.net>
* configure.in: configure.in requires at least autoconf 2.50
-2002-05-13 14:45 John Millaway <millaway@acm.org>
+2002-05-13 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Updated my email address.
-2002-05-10 15:33 John Millaway <millaway@acm.org>
+2002-05-10 John Millaway <john43@users.sourceforge.net>
* flexdef.h, misc.c: chomp'd lines when reading external skel file.
-2002-05-07 11:00 Will Estes <wlestes@users.sourceforge.net>
+2002-05-07 Will Estes <wlestes@users.sourceforge.net>
* po/sv.po: new sweedish translation from the translation project
-2002-04-29 11:37 Will Estes <wlestes@users.sourceforge.net>
+2002-04-29 Will Estes <wlestes@users.sourceforge.net>
* po/ca.po: new catalan translation from the translation project
-2002-04-29 11:37 Will Estes <wlestes@users.sourceforge.net>
+2002-04-29 Will Estes <wlestes@users.sourceforge.net>
* po/es.po: new spanish translation from the translation project
-2002-04-25 17:54 Will Estes <wlestes@users.sourceforge.net>
+2002-04-25 Will Estes <wlestes@users.sourceforge.net>
- * TODO: note that the lex matching of abc{1,3} is the posix
- behavior and so we have a problem
+ * TODO: note that the lex matching of abc{1,3} is the posix behavior
+ and so we have a problem
-2002-04-25 17:53 Will Estes <wlestes@users.sourceforge.net>
+2002-04-25 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: note that the lex matching of abc{1,3} is the posix
behavior
-2002-04-23 07:02 Will Estes <wlestes@users.sourceforge.net>
+2002-04-23 Will Estes <wlestes@users.sourceforge.net>
* configure.in: new version 2.5.7; use autoconf versioning info
-2002-04-23 07:01 Will Estes <wlestes@users.sourceforge.net>
+2002-04-23 Will Estes <wlestes@users.sourceforge.net>
* NEWS: note changes in 2.5.7
-2002-04-23 06:23 Will Estes <wlestes@users.sourceforge.net>
+2002-04-23 Will Estes <wlestes@users.sourceforge.net>
* main.c: conditional compile gettext initialization
-2002-04-22 13:28 Will Estes <wlestes@users.sourceforge.net>
+2002-04-22 Will Estes <wlestes@users.sourceforge.net>
* po/de.po: new german translation from the translation project
-2002-04-19 18:40 John Millaway <millaway@acm.org>
+2002-04-19 John Millaway <john43@users.sourceforge.net>
* tests/test-include-by-reentrant/Makefile.am: Fixed command line
for test-include-by-reentrant/Makefile.am
-2002-04-19 18:30 John Millaway <millaway@acm.org>
-
- * tests/: Makefile.am, TEMPLATE/Makefile.am,
- test-array-nr/Makefile.am, test-array-r/Makefile.am,
- test-basic-nr/Makefile.am, test-basic-r/Makefile.am,
- test-bison-yylloc/Makefile.am, test-bison-yylval/Makefile.am,
- test-c-cpp-nr/Makefile.am, test-c-cpp-r/Makefile.am,
- test-header-nr/Makefile.am, test-header-r/Makefile.am,
- test-include-by-buffer/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-lineno-nr/Makefile.am,
- test-lineno-r/Makefile.am, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-string-nr/Makefile.am, test-string-r/Makefile.am,
- test-yyextra/Makefile.am: Added -I . to compiler search path in
- tests (so it finds the generated parser.h).
-
-2002-04-19 18:20 John Millaway <millaway@acm.org>
+2002-04-19 John Millaway <john43@users.sourceforge.net>
+
+ * tests/Makefile.am, tests/TEMPLATE/Makefile.am,
+ tests/test-array-nr/Makefile.am, tests/test-array-r/Makefile.am,
+ tests/test-basic-nr/Makefile.am, tests/test-basic-r/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-r/Makefile.am,
+ tests/test-header-nr/Makefile.am, tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-string-nr/Makefile.am,
+ tests/test-string-r/Makefile.am, tests/test-yyextra/Makefile.am:
+ Added -I . to compiler search path in tests (so it finds the
+ generated parser.h).
+
+2002-04-19 John Millaway <john43@users.sourceforge.net>
* flexdef.h, misc.c, parse.y, sym.c: Applied 'const' to a few more
char*, where appropriate.
-2002-04-19 17:54 John Millaway <millaway@acm.org>
-
- * tests/: TEMPLATE/Makefile.am, test-array-nr/Makefile.am,
- test-array-r/Makefile.am, test-basic-nr/Makefile.am,
- test-basic-r/Makefile.am, test-bison-yylloc/Makefile.am,
- test-bison-yylval/Makefile.am, test-c-cpp-nr/Makefile.am,
- test-c-cpp-r/Makefile.am, test-header-nr/Makefile.am,
- test-header-r/Makefile.am, test-include-by-buffer/Makefile.am,
- test-include-by-reentrant/Makefile.am, test-lineno-nr/Makefile.am,
- test-lineno-r/Makefile.am, test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-prefix-nr/Makefile.am,
- test-prefix-r/Makefile.am, test-pthread/Makefile.am,
- test-string-nr/Makefile.am, test-string-r/Makefile.am,
- test-yyextra/Makefile.am: Added top_builddir to -I path. Changed
- $(srcdir)/$(testname) to ./$(testname) in 'make test' rule.
-
-2002-04-19 17:53 John Millaway <millaway@acm.org>
+2002-04-19 John Millaway <john43@users.sourceforge.net>
+
+ * tests/TEMPLATE/Makefile.am, tests/test-array-nr/Makefile.am,
+ tests/test-array-r/Makefile.am, tests/test-basic-nr/Makefile.am,
+ tests/test-basic-r/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-r/Makefile.am,
+ tests/test-header-nr/Makefile.am, tests/test-header-r/Makefile.am,
+ tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-prefix-nr/Makefile.am, tests/test-prefix-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-string-nr/Makefile.am,
+ tests/test-string-r/Makefile.am, tests/test-yyextra/Makefile.am:
+ Added top_builddir to -I path. Changed $(srcdir)/$(testname) to
+ ./$(testname) in 'make test' rule.
+
+2002-04-19 John Millaway <john43@users.sourceforge.net>
* flexdef.h, gen.c, misc.c: Changed 'char[]' to 'const char*'
wherever in conflicted with gettext.
-2002-04-19 10:35 Will Estes <wlestes@users.sourceforge.net>
+2002-04-19 Will Estes <wlestes@users.sourceforge.net>
- * po/: fr.po, sv.po: new files from translation after 2.5.6 beta
+ * po/fr.po, po/sv.po: new files from translation after 2.5.6 beta
release
-2002-04-18 19:01 John Millaway <millaway@acm.org>
+2002-04-18 John Millaway <john43@users.sourceforge.net>
* tests/test-lineno-r/Makefile.am: Fixed minor typo/cut and paste
error.
-2002-04-18 18:07 John Millaway <millaway@acm.org>
+2002-04-18 John Millaway <john43@users.sourceforge.net>
* configure.in: Added yylineno test.
-2002-04-18 18:06 John Millaway <millaway@acm.org>
+2002-04-18 John Millaway <john43@users.sourceforge.net>
* tests/Makefile.am: Added yylineno tests.
-2002-04-18 18:06 John Millaway <millaway@acm.org>
+2002-04-18 John Millaway <john43@users.sourceforge.net>
- * tests/: test-lineno-nr/.cvsignore, test-lineno-nr/Makefile.am,
- test-lineno-nr/scanner.l, test-lineno-nr/test.input,
- test-lineno-r/.cvsignore, test-lineno-r/Makefile.am,
- test-lineno-r/scanner.l, test-lineno-r/test.input: Created yylineno
- tests.
+ * tests/test-lineno-nr/.cvsignore,
+ tests/test-lineno-nr/Makefile.am, tests/test-lineno-nr/scanner.l,
+ tests/test-lineno-nr/test.input, tests/test-lineno-r/.cvsignore,
+ tests/test-lineno-r/Makefile.am, tests/test-lineno-r/scanner.l,
+ tests/test-lineno-r/test.input: Created yylineno tests.
-2002-04-15 16:49 John Millaway <millaway@acm.org>
+2002-04-15 John Millaway <john43@users.sourceforge.net>
* scanopt.c: Applied gettext macros to error messages from scanopt.
-2002-04-15 16:46 John Millaway <millaway@acm.org>
+2002-04-15 John Millaway <john43@users.sourceforge.net>
- * buf.c, faq.texi, options.c, options.h, scanopt.c, scanopt.h:
+ * buf.c, faq.texi, options.c, options.h, scanopt.c, scanopt.h:
Changed copyright from Millaway to flex? U.S. Gov't? Regents of U.
- Cali.? Paxson?
+ Cali.? Paxson?
-2002-04-15 10:44 Will Estes <wlestes@users.sourceforge.net>
+2002-04-15 Will Estes <wlestes@users.sourceforge.net>
- * tests/: test-bison-yylloc/Makefile.am,
- test-header-nr/Makefile.am, test-header-r/Makefile.am: we missed a
- few main.c files in the distribution
+ * tests/test-bison-yylloc/Makefile.am,
+ tests/test-header-nr/Makefile.am, tests/test-header-r/Makefile.am:
+ we missed a few main.c files in the distribution
-2002-04-15 08:05 Will Estes <wlestes@users.sourceforge.net>
+2002-04-15 Will Estes <wlestes@users.sourceforge.net>
* TODO: a lot more work has happened to flex; note this by removing
a number of TODO entries
-2002-04-15 07:59 Will Estes <wlestes@users.sourceforge.net>
+2002-04-15 Will Estes <wlestes@users.sourceforge.net>
* TODO: make sure all gettext modules use gettext translation
facilities
-2002-04-14 15:53 John Millaway <millaway@acm.org>
+2002-04-14 John Millaway <john43@users.sourceforge.net>
* faq.texi: Converted faqs 34-41 to texinfo.
-2002-04-14 14:42 John Millaway <millaway@acm.org>
+2002-04-14 John Millaway <john43@users.sourceforge.net>
- * Makefile.am, faq.texi, flex.texi: Added faq.texi to archive.
- Added faq.texi to flex_TEXINFOS macro in Makefile.am. flex.texi
- now includes faq.texi.
+ * Makefile.am, faq.texi, flex.texi: Added faq.texi to archive.
+ Added faq.texi to flex_TEXINFOS macro in Makefile.am. flex.texi now
+ includes faq.texi.
-2002-04-13 00:16 John Millaway <millaway@acm.org>
+2002-04-13 John Millaway <john43@users.sourceforge.net>
* flexdef.h: defined FLEX_EXIT macro to call longjmp on errors.
-2002-04-13 00:08 John Millaway <millaway@acm.org>
+2002-04-13 John Millaway <john43@users.sourceforge.net>
* main.c, misc.c: Replaced exit(2) calls with longjmps (in the form
of FLEX_EXIT macro). Moved main() to flex_main() to allow flex to
be called from a library.
-2002-04-13 00:06 John Millaway <millaway@acm.org>
+2002-04-13 John Millaway <john43@users.sourceforge.net>
* scanopt.c: Fixed minor typo in error message
-2002-04-12 12:23 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/: test-header-nr/Makefile.am, test-header-r/Makefile.am,
- test-multiple-scanners-nr/Makefile.am,
- test-multiple-scanners-r/Makefile.am, test-pthread/Makefile.am,
- test-string-nr/Makefile.am, test-string-r/Makefile.am,
- test-yyextra/Makefile.am: removed eroneous files listed in
- EXTRA_DIST
+ * tests/test-header-nr/Makefile.am,
+ tests/test-header-r/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-pthread/Makefile.am, tests/test-string-nr/Makefile.am,
+ tests/test-string-r/Makefile.am, tests/test-yyextra/Makefile.am:
+ removed eroneous files listed in EXTRA_DIST
-2002-04-12 12:09 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
* tests/test-yyextra/.cvsignore: ignore Makefile.in
-2002-04-12 12:09 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
* tests/test-string-r/.cvsignore: it's Makefile.in, not makefile.in
-2002-04-12 12:02 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-yyextra/: Makefile.am, Makefile.in: put test-yyextra
- under automake
+ * tests/test-yyextra/Makefile.am, tests/test-yyextra/Makefile.in:
+ put test-yyextra under automake
-2002-04-12 11:52 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-string-r/: Makefile.am, Makefile.in: put test-string-r
- under automake
+ * tests/test-string-r/Makefile.am, tests/test-string-r/Makefile.in:
+ put test-string-r under automake
-2002-04-12 11:50 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/: test-string-nr/.cvsignore, test-string-r/.cvsignore: we
- can ignore Makefile.in
+ * tests/test-string-nr/.cvsignore, tests/test-string-r/.cvsignore:
+ we can ignore Makefile.in
-2002-04-12 11:49 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-string-nr/: Makefile.am, Makefile.in: put
- test-string-nr under automake
+ * tests/test-string-nr/Makefile.am,
+ tests/test-string-nr/Makefile.in: put test-string-nr under automake
-2002-04-12 11:40 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
* tests/test-pthread/.cvsignore: ignore Makefile.in
-2002-04-12 11:37 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-pthread/: Makefile.am, Makefile.in: put test-pthread
- under automake
+ * tests/test-pthread/Makefile.am, tests/test-pthread/Makefile.in:
+ put test-pthread under automake
-2002-04-12 11:24 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-prefix-r/.cvsignore: we can ignore Makefile.in
+ * tests/test-prefix-r/Makefile.am, tests/test-prefix-r/Makefile.in:
+ put test-prefix-r under automake
-2002-04-12 11:23 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-prefix-r/: Makefile.am, Makefile.in: put test-prefix-r
- under automake
+ * tests/test-prefix-nr/.cvsignore, tests/test-prefix-r/.cvsignore:
+ we can ignore Makefile.in
-2002-04-12 11:20 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-prefix-nr/.cvsignore: we can ignore Makefile.in
+ * tests/test-prefix-nr/Makefile.am,
+ tests/test-prefix-nr/Makefile.in: put test-prefix-nr under automake
-2002-04-12 11:19 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-prefix-nr/: Makefile.am, Makefile.in: put
- test-prefix-nr under automake
-
-2002-04-12 08:03 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/test-multiple-scanners-r/.cvsignore: we can ignore
- Makefile.in now
-
-2002-04-12 08:02 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/test-multiple-scanners-r/: Makefile.am, Makefile.in: put
+ * tests/test-multiple-scanners-r/Makefile.am,
+ tests/test-multiple-scanners-r/Makefile.in: put
test-multiple-scanners-r under automake
-2002-04-12 07:59 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-multiple-scanners-nr/.cvsignore: we can ignore
- Makefile.in now
+ * tests/test-multiple-scanners-nr/.cvsignore,
+ tests/test-multiple-scanners-r/.cvsignore: we can ignore Makefile.in
+ now
-2002-04-12 07:59 Will Estes <wlestes@users.sourceforge.net>
+2002-04-12 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-multiple-scanners-nr/: Makefile.am, Makefile.in: put
+ * tests/test-multiple-scanners-nr/Makefile.am,
+ tests/test-multiple-scanners-nr/Makefile.in: put
test-multiple-scanners-nr under automake
-2002-04-11 07:44 Will Estes <wlestes@users.sourceforge.net>
+2002-04-11 Will Estes <wlestes@users.sourceforge.net>
- * tests/: test-c-cpp-nr/Makefile.am, test-c-cpp-r/Makefile.am: we
- didn't need parser.y
+ * tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-r/Makefile.am:
+ we didn't need parser.y
-2002-04-11 07:43 Will Estes <wlestes@users.sourceforge.net>
+2002-04-11 Will Estes <wlestes@users.sourceforge.net>
* TODO: work done on the test suite; remove relevant entries from
TODO
-2002-04-10 13:06 Will Estes <wlestes@users.sourceforge.net>
+2002-04-10 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-include-by-reentrant/: .cvsignore, Makefile.am,
- Makefile.in: put test-include-by-reentrant under automake
+ * tests/test-include-by-reentrant/.cvsignore,
+ tests/test-include-by-reentrant/Makefile.am,
+ tests/test-include-by-reentrant/Makefile.in: put
+ test-include-by-reentrant under automake
-2002-04-09 09:52 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
* tests/test-include-by-buffer/.cvsignore: we have a Makefile.in
which we need to ignore
-2002-04-09 09:33 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-include-by-buffer/: Makefile.am, Makefile.in:
- test-include-by-buffer now under automake control
+ * tests/test-include-by-buffer/Makefile.am,
+ tests/test-include-by-buffer/Makefile.in: test-include-by-buffer now
+ under automake control
-2002-04-09 09:32 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
- * tests/TEMPLATE/Makefile.am: and we want LFLAGS in the rule to
- make scanner.c as well
+ * tests/TEMPLATE/Makefile.am: and we want LFLAGS in the rule to make
+ scanner.c as well
-2002-04-09 09:13 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-header-r/: .cvsignore, Makefile.am, Makefile.in: put
- test-header-r under automake
+ * tests/test-header-r/.cvsignore, tests/test-header-r/Makefile.am,
+ tests/test-header-r/Makefile.in: put test-header-r under automake
-2002-04-09 09:12 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
* tests/test-header-nr/.cvsignore: we now generate a Makefile.in
from automake; cvs should ignore it
-2002-04-09 09:12 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
* tests/test-header-nr/Makefile.am: add dependencies for main.o and
scaner.h
-2002-04-09 09:11 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
* tests/TEMPLATE/Makefile.am: We may want to have LFLAGS readily
available
-2002-04-09 08:48 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-header-nr/: Makefile.am, Makefile.in: put
- test-header-nr under automake
+ * tests/test-header-nr/Makefile.am,
+ tests/test-header-nr/Makefile.in: put test-header-nr under automake
-2002-04-09 08:47 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
* tests/TEMPLATE/Makefile.am: oops, we need to clean objects too
-2002-04-09 08:35 Will Estes <wlestes@users.sourceforge.net>
+2002-04-09 Will Estes <wlestes@users.sourceforge.net>
- * tests/: TEMPLATE/Makefile.am, test-array-nr/Makefile.am,
- test-array-r/Makefile.am, test-basic-nr/Makefile.am,
- test-basic-r/Makefile.am, test-bison-yylloc/Makefile.am,
- test-bison-yylval/Makefile.am, test-c-cpp-nr/Makefile.am,
- test-c-cpp-r/Makefile.am: now that config.h lives in the top-level
- directory, we need to tell the testsuite
+ * tests/TEMPLATE/Makefile.am, tests/test-array-nr/Makefile.am,
+ tests/test-array-r/Makefile.am, tests/test-basic-nr/Makefile.am,
+ tests/test-basic-r/Makefile.am,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylval/Makefile.am,
+ tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-r/Makefile.am: now
+ that config.h lives in the top-level directory, we need to tell the
+ testsuite
-2002-04-08 11:06 Will Estes <wlestes@users.sourceforge.net>
+2002-04-08 Will Estes <wlestes@users.sourceforge.net>
- * tests/: test-array-nr/.cvsignore, test-array-r/.cvsignore,
- test-basic-nr/.cvsignore, test-basic-r/.cvsignore,
- test-bison-yylval/.cvsignore, test-c-cpp-nr/.cvsignore,
- test-c-cpp-r/.cvsignore: we can ignore some Makefile.in
+ * tests/test-array-nr/.cvsignore, tests/test-array-r/.cvsignore,
+ tests/test-basic-nr/.cvsignore, tests/test-basic-r/.cvsignore,
+ tests/test-bison-yylval/.cvsignore, tests/test-c-cpp-nr/.cvsignore,
+ tests/test-c-cpp-r/.cvsignore: we can ignore some Makefile.in
-2002-04-08 11:00 Will Estes <wlestes@users.sourceforge.net>
+2002-04-08 Will Estes <wlestes@users.sourceforge.net>
* configure.in, tests/TEMPLATE/Makefile.am: only one config file
header apparently; this will have consequences in the test suite
-2002-04-08 10:36 Will Estes <wlestes@users.sourceforge.net>
+2002-04-08 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-bison-yylval/: Makefile.am, Makefile.in: adding
- automake support
+ * tests/test-bison-yylval/Makefile.am,
+ tests/test-bison-yylval/Makefile.in: adding automake support
-2002-04-08 10:26 Will Estes <wlestes@users.sourceforge.net>
+2002-04-08 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-bison-yylloc/: .cvsignore, Makefile.am: tuned
- Makefile.am to build correctly; ignore Makefile.in now
+ * tests/test-bison-yylloc/.cvsignore,
+ tests/test-bison-yylloc/Makefile.am: tuned Makefile.am to build
+ correctly; ignore Makefile.in now
-2002-04-08 09:22 Will Estes <wlestes@users.sourceforge.net>
+2002-04-08 Will Estes <wlestes@users.sourceforge.net>
* tests/configure.in: test suite changes
-2002-04-08 09:16 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: TEMPLATE/.cvsignore, TEMPLATE/Makefile.am,
- TEMPLATE/Makefile.in, test-array-nr/Makefile.am,
- test-array-nr/Makefile.in, test-array-r/Makefile.am,
- test-array-r/Makefile.in, test-basic-nr/Makefile.am,
- test-basic-nr/Makefile.in, test-basic-r/Makefile.am,
- test-basic-r/Makefile.in, test-bison-yylloc/Makefile.am,
- test-bison-yylloc/Makefile.in, test-c-cpp-nr/Makefile.am,
- test-c-cpp-nr/Makefile.in, test-c-cpp-r/Makefile.am,
- test-c-cpp-r/Makefile.in: test suite changes
-
-2002-04-08 09:13 Will Estes <wlestes@users.sourceforge.net>
+2002-04-08 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh, configure.in, tests/.cvsignore, tests/Makefile.am,
- tests/Makefile.in, tests/README, tests/configure.in,
- tests/create-test, tests/create-test.pl: test suite changes
+ tests/Makefile.in, tests/README, tests/TEMPLATE/.cvsignore,
+ tests/TEMPLATE/Makefile.am, tests/TEMPLATE/Makefile.in,
+ tests/configure.in, tests/create-test, tests/create-test.pl,
+ tests/test-array-nr/Makefile.am, tests/test-array-nr/Makefile.in,
+ tests/test-array-r/Makefile.am, tests/test-array-r/Makefile.in,
+ tests/test-basic-nr/Makefile.am, tests/test-basic-nr/Makefile.in,
+ tests/test-basic-r/Makefile.am, tests/test-basic-r/Makefile.in,
+ tests/test-bison-yylloc/Makefile.am,
+ tests/test-bison-yylloc/Makefile.in,
+ tests/test-c-cpp-nr/Makefile.am, tests/test-c-cpp-nr/Makefile.in,
+ tests/test-c-cpp-r/Makefile.am, tests/test-c-cpp-r/Makefile.in: test
+ suite changes
-2002-04-05 14:18 John Millaway <millaway@acm.org>
+2002-04-05 John Millaway <john43@users.sourceforge.net>
* flex.texi: Corrected error in manual regarding return type for
yy_scan_{string,buffer,bytes}.
-2002-04-05 08:25 Will Estes <wlestes@users.sourceforge.net>
+2002-04-05 Will Estes <wlestes@users.sourceforge.net>
* po/de.po: new german translations from the translation project
-2002-04-03 13:13 Will Estes <wlestes@users.sourceforge.net>
+2002-04-03 Will Estes <wlestes@users.sourceforge.net>
* po/es.po: new spanish translations
-2002-04-01 11:47 Will Estes <wlestes@users.sourceforge.net>
+2002-04-01 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: DIST_SUBDIRS: new variable. we can build flex with
SUBDIRS and then build the distribution using DIST_SUBDIRS
-2002-04-01 08:03 Will Estes <wlestes@users.sourceforge.net>
+2002-04-01 Will Estes <wlestes@users.sourceforge.net>
* main.c: fix typo in comment
-2002-03-31 12:17 John Millaway <millaway@acm.org>
+2002-03-31 John Millaway <john43@users.sourceforge.net>
* main.c: Documented the header file kludge, (in anticipation of
buffering Section 1.)
-2002-03-30 22:26 John Millaway <millaway@acm.org>
+2002-03-31 John Millaway <john43@users.sourceforge.net>
* flex.texi: Created appendix "Makefiles and Flex" in the manual.
-2002-03-29 19:12 John Millaway <millaway@acm.org>
+2002-03-30 John Millaway <john43@users.sourceforge.net>
* flex.texi: updating manual.
-2002-03-29 17:32 Will Estes <wlestes@users.sourceforge.net>
+2002-03-29 Will Estes <wlestes@users.sourceforge.net>
* po/POTFILES.in: we want parse.y, not parse.c
-2002-03-29 16:37 John Millaway <millaway@acm.org>
+2002-03-29 John Millaway <john43@users.sourceforge.net>
* flex.texi: Indexing the manual (75% done).
-2002-03-29 16:08 Will Estes <wlestes@users.sourceforge.net>
+2002-03-29 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: unlisted intermediate flex/yacc-created files
-2002-03-29 15:59 Will Estes <wlestes@users.sourceforge.net>
+2002-03-29 Will Estes <wlestes@users.sourceforge.net>
* TODO: millaway has done more work
-2002-03-29 15:03 Will Estes <wlestes@users.sourceforge.net>
+2002-03-29 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, configure.in: ok, one last touch up; users most
likely wont have help2man so we need to insure that's ok
-2002-03-29 14:55 Will Estes <wlestes@users.sourceforge.net>
+2002-03-29 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: fine tune flex.1 some more
-2002-03-29 14:36 Will Estes <wlestes@users.sourceforge.net>
+2002-03-29 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, configure.in: generalize the manpage a bit and tell
autofoo about help2man
-2002-03-29 12:18 Will Estes <wlestes@users.sourceforge.net>
+2002-03-29 Will Estes <wlestes@users.sourceforge.net>
* po/da.po: new danish from translation project robot
-2002-03-28 16:02 John Millaway <millaway@acm.org>
+2002-03-28 John Millaway <john43@users.sourceforge.net>
* flex.texi: Indexing the manual -- it's only half done.
-2002-03-28 15:57 John Millaway <millaway@acm.org>
+2002-03-28 John Millaway <john43@users.sourceforge.net>
* flex.texi: flex manual now uses automake's versioning info.
-2002-03-28 14:55 John Millaway <millaway@acm.org>
+2002-03-28 John Millaway <john43@users.sourceforge.net>
* README.cvs-snapshot: Mentioned requirements for gettext and
help2man.
-2002-03-28 14:52 John Millaway <millaway@acm.org>
+2002-03-28 John Millaway <john43@users.sourceforge.net>
* Makefile.am, main.c: Output of `flex --version` now matches GNU
coding standards. Makefile.am now uses `help2man` to generate
flex.1
-2002-03-27 08:58 Will Estes <wlestes@users.sourceforge.net>
+2002-03-27 Will Estes <wlestes@users.sourceforge.net>
- * TODO: millaway has done a lot on the TODO list; remove those
- items that he has take care of
+ * TODO: millaway has done a lot on the TODO list; remove those items
+ that he has take care of
-2002-03-27 08:45 Will Estes <wlestes@users.sourceforge.net>
+2002-03-27 Will Estes <wlestes@users.sourceforge.net>
* README.cvs-snapshot: edited millaway's initial draft
-2002-03-26 20:09 John Millaway <millaway@acm.org>
+2002-03-27 John Millaway <john43@users.sourceforge.net>
* README.cvs-snapshot: Created file.
-2002-03-26 19:28 John Millaway <millaway@acm.org>
+2002-03-27 John Millaway <john43@users.sourceforge.net>
* flex.texi: Fixed case of node names in flex.texi.
-2002-03-24 16:08 Will Estes <wlestes@users.sourceforge.net>
+2002-03-24 Will Estes <wlestes@users.sourceforge.net>
* TODO: lex- and yacc- generated files
-2002-03-24 14:25 Will Estes <wlestes@users.sourceforge.net>
+2002-03-24 Will Estes <wlestes@users.sourceforge.net>
* po/fr.po: new french
-2002-03-18 08:27 Will Estes <wlestes@users.sourceforge.net>
+2002-03-18 Will Estes <wlestes@users.sourceforge.net>
* NEWS: ending periods in news items removed; mention nounistd
options
-2002-03-18 08:00 Will Estes <wlestes@users.sourceforge.net>
+2002-03-18 Will Estes <wlestes@users.sourceforge.net>
* po/sv.po: updated sweedish translations
-2002-03-18 08:00 Will Estes <wlestes@users.sourceforge.net>
+2002-03-18 Will Estes <wlestes@users.sourceforge.net>
* po/de.po: german translation
-2002-03-18 02:50 John Millaway <millaway@acm.org>
+2002-03-18 John Millaway <john43@users.sourceforge.net>
- * flex.skl, flex.texi, main.c, options.c, options.h, scan.l:
- Removed CFront 1.2 -specific code from skeleton, because CFront now
- defines __cplusplus properly. Removed TurboC-specific code from
- skeleton. Skeleton now includes proper C++ standard headers.
- Relocated "unistd.h" code after user section 1 to allow user to
- overrid it. New option "nounistd" to suppress unistd.h from being
- included.
+ * flex.skl, flex.texi, main.c, options.c, options.h, scan.l: Removed
+ CFront 1.2 -specific code from skeleton, because CFront now defines
+ __cplusplus properly. Removed TurboC-specific code from skeleton.
+ Skeleton now includes proper C++ standard headers. Relocated
+ "unistd.h" code after user section 1 to allow user to overrid it.
+ New option "nounistd" to suppress unistd.h from being included.
-2002-03-15 11:29 Will Estes <wlestes@users.sourceforge.net>
+2002-03-15 Will Estes <wlestes@users.sourceforge.net>
* po/tr.po: new turkish translation
-2002-03-15 10:33 Will Estes <wlestes@users.sourceforge.net>
+2002-03-15 Will Estes <wlestes@users.sourceforge.net>
* NEWS: mention included translations
-2002-03-15 10:32 Will Estes <wlestes@users.sourceforge.net>
+2002-03-15 Will Estes <wlestes@users.sourceforge.net>
* TODO: we've done the gettext thing, but sometime we should get
0.11.1
-2002-03-15 10:30 Will Estes <wlestes@users.sourceforge.net>
+2002-03-15 Will Estes <wlestes@users.sourceforge.net>
* po/ca.po: new catalan translation
-2002-03-14 18:23 John Millaway <millaway@acm.org>
+2002-03-14 John Millaway <john43@users.sourceforge.net>
* flex.texi: Added section on format of comments.
-2002-03-14 17:18 John Millaway <millaway@acm.org>
+2002-03-14 John Millaway <john43@users.sourceforge.net>
* flex.texi: Split format chapter into sections.
-2002-03-14 16:51 John Millaway <millaway@acm.org>
+2002-03-14 John Millaway <john43@users.sourceforge.net>
* flex.texi: Removed explicit pointers in node definitions.
-2002-03-14 16:31 Will Estes <wlestes@users.sourceforge.net>
+2002-03-14 Will Estes <wlestes@users.sourceforge.net>
* configure.in: unistd.h can be problematic
-2002-03-14 09:11 Will Estes <wlestes@users.sourceforge.net>
+2002-03-14 Will Estes <wlestes@users.sourceforge.net>
* tests/README: editing changes to README
-2002-03-13 15:50 Will Estes <wlestes@users.sourceforge.net>
+2002-03-13 Will Estes <wlestes@users.sourceforge.net>
* po/POTFILES.in: scan.l, not scan.c because gettext gets confused
-2002-03-13 12:36 Will Estes <wlestes@users.sourceforge.net>
+2002-03-13 Will Estes <wlestes@users.sourceforge.net>
* scan.l: gettext cruft
-2002-03-13 10:57 Will Estes <wlestes@users.sourceforge.net>
+2002-03-13 Will Estes <wlestes@users.sourceforge.net>
* tests/descriptions: separate out test descriptions
-2002-03-13 09:34 Will Estes <wlestes@users.sourceforge.net>
+2002-03-13 Will Estes <wlestes@users.sourceforge.net>
* po/LINGUAS: french and korean dont crash now
-2002-03-12 16:40 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
- * po/: fr.po, ko.po: remove duplicate messages as per advice from
+ * po/fr.po, po/ko.po: remove duplicate messages as per advice from
Jordi Mallach <jordi@debian.org>
-2002-03-12 14:21 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* gettext.h: yes, more gettext cruft
-2002-03-12 14:12 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
- * m4/codeset.m4, m4/gettext.m4, m4/glibc21.m4, m4/iconv.m4,
- m4/isc-posix.m4, m4/lcmessage.m4, m4/lib-ld.m4, m4/lib-link.m4,
- m4/lib-prefix.m4, m4/progtest.m4, ABOUT-NLS, config.rpath: this is
- gettext cruft
+ * ABOUT-NLS, config.rpath, m4/codeset.m4, m4/gettext.m4,
+ m4/glibc21.m4, m4/iconv.m4, m4/isc-posix.m4, m4/lcmessage.m4,
+ m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4, m4/progtest.m4: this
+ is gettext cruft
-2002-03-12 13:58 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* NEWS: gettext and autofoo are now involved
-2002-03-12 13:29 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, autogen.sh, configure.in, flexdef.h, main.c: mostly,
changes for gettext
-2002-03-12 13:29 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
- * po/: ca.po, da.po, es.po, ru.po, sv.po, tr.po: these sure change
- a lot
+ * po/ca.po, po/da.po, po/es.po, po/ru.po, po/sv.po, po/tr.po: these
+ sure change a lot
-2002-03-12 13:28 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* TODO: note about cvs documentation
-2002-03-12 13:02 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* po/LINGUAS: we now have turkish
-2002-03-12 13:01 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* po/tr.po: updated translations, i think
-2002-03-12 12:42 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
- * po/: ca.po, da.po, es.po, fr.po, ko.po, ru.po, sv.po, tr.po: ok,
- maybe we do keep these things?
+ * po/ca.po, po/da.po, po/es.po, po/fr.po, po/ko.po, po/ru.po,
+ po/sv.po, po/tr.po: ok, maybe we do keep these things?
-2002-03-12 12:26 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* README-alpha: README-alpha for those bad-hair days
-2002-03-12 12:18 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
- * m4/: .cvsignore, Makefile.am: ok,now we kinda have a m4/ subdir
+ * m4/.cvsignore, m4/Makefile.am: ok,now we kinda have a m4/ subdir
for gettext
-2002-03-12 12:13 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
- * po/: .cvsignore, LINGUAS, Makevars, POTFILES.in, da.po, es.po,
- fr.po, ko.po, ru.po, sv.po: now, we have a po/ subdirectory for
- gettext. i hope you're happy
+ * po/.cvsignore, po/LINGUAS, po/Makevars, po/POTFILES.in, po/da.po,
+ po/es.po, po/fr.po, po/ko.po, po/ru.po, po/sv.po: now, we have a po/
+ subdirectory for gettext. i hope you're happy
-2002-03-12 12:06 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* po/ca.po: removing po files, maybe
-2002-03-12 12:01 Will Estes <wlestes@users.sourceforge.net>
+2002-03-12 Will Estes <wlestes@users.sourceforge.net>
* tests/.cvsignore: ignore autom4te.cache
-2002-03-11 09:27 Will Estes <wlestes@users.sourceforge.net>
+2002-03-11 Will Estes <wlestes@users.sourceforge.net>
- * po/: ca.po, da.po, es.po, fr.po, ko.po, ru.po, sv.po: po files
- from debian
+ * po/ca.po, po/da.po, po/es.po, po/fr.po, po/ko.po, po/ru.po,
+ po/sv.po: po files from debian
-2002-03-08 10:00 Will Estes <wlestes@users.sourceforge.net>
+2002-03-08 Will Estes <wlestes@users.sourceforge.net>
- * TODO: add several notes about tasks which need doing; create a
- new top-level entry for generic coding concerns (this is distinct
- from specific API or other such issues)
+ * TODO: add several notes about tasks which need doing; create a new
+ top-level entry for generic coding concerns (this is distinct from
+ specific API or other such issues)
-2002-03-06 16:15 Will Estes <wlestes@users.sourceforge.net>
+2002-03-06 Will Estes <wlestes@users.sourceforge.net>
* README: eliminate to.do and faqs from the README file
-2002-03-06 16:13 Will Estes <wlestes@users.sourceforge.net>
+2002-03-06 Will Estes <wlestes@users.sourceforge.net>
* TODO: more notes on tests/
-2002-03-06 11:32 Will Estes <wlestes@users.sourceforge.net>
+2002-03-06 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: remove subdirectories from EXTRA_DIST; add a SUBDIRS
macro to handle examples/; clean up the dist-hook target
-2002-03-06 11:32 Will Estes <wlestes@users.sourceforge.net>
+2002-03-06 Will Estes <wlestes@users.sourceforge.net>
* configure.in: we want to generate Makefiles in some more
subdirectories; automake will like this
-2002-03-06 11:26 Will Estes <wlestes@users.sourceforge.net>
+2002-03-06 Will Estes <wlestes@users.sourceforge.net>
* TODO: notes on subdirectories
-2002-03-05 09:49 Will Estes <wlestes@users.sourceforge.net>
+2002-03-05 Will Estes <wlestes@users.sourceforge.net>
- * examples/: .cvsignore, Makefile.am: now examples/ fits into
+ * examples/.cvsignore, examples/Makefile.am: now examples/ fits into
automake
-2002-03-05 09:48 Will Estes <wlestes@users.sourceforge.net>
+2002-03-05 Will Estes <wlestes@users.sourceforge.net>
- * examples/fastwc/: .cvsignore, Makefile.am: examples/fastwc now
- fits into automake
+ * examples/fastwc/.cvsignore, examples/fastwc/Makefile.am:
+ examples/fastwc now fits into automake
-2002-03-05 09:47 Will Estes <wlestes@users.sourceforge.net>
+2002-03-05 Will Estes <wlestes@users.sourceforge.net>
- * examples/manual/: .cvsignore, Makefile.am, Makefile.examples,
- README: examples/manual directory now fits into automake
+ * examples/manual/.cvsignore, examples/manual/Makefile.am,
+ examples/manual/Makefile.examples, examples/manual/README:
+ examples/manual directory now fits into automake
-2002-03-05 09:45 Will Estes <wlestes@users.sourceforge.net>
+2002-03-05 Will Estes <wlestes@users.sourceforge.net>
* examples/manual/Makefile: renamed Makefile to Makefile.examples
for automake's sake
-2002-03-04 10:58 Will Estes <wlestes@users.sourceforge.net>
+2002-03-04 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: add parse.c and scan.c to built_sources
-2002-02-24 17:19 John Millaway <millaway@acm.org>
+2002-02-24 John Millaway <john43@users.sourceforge.net>
* Makefile.am: Removed CVS-specific code from 'dist-hook' target so
anybody with a copy of the tree can build a dist.
-2002-02-22 17:50 John Millaway <millaway@acm.org>
+2002-02-22 John Millaway <john43@users.sourceforge.net>
* tests/Makefile.in: Converted test script to portable /bin/sh.
-2002-02-22 17:47 John Millaway <millaway@acm.org>
+2002-02-22 John Millaway <john43@users.sourceforge.net>
* tests/test-bison-yylloc/Makefile.in: Added some spaces in shell
scripts for portability.
-2002-02-22 16:59 John Millaway <millaway@acm.org>
+2002-02-22 John Millaway <john43@users.sourceforge.net>
* tests/create-test.pl: Fixed #! line for portability.
-2002-02-22 16:58 John Millaway <millaway@acm.org>
+2002-02-22 John Millaway <john43@users.sourceforge.net>
* tests/test-bison-yylloc/Makefile.in: Fixed return status code on
bison-lloc test.
-2002-02-21 00:40 John Millaway <millaway@acm.org>
+2002-02-21 John Millaway <john43@users.sourceforge.net>
* tests/create-test.pl: Added script to auto-create tests. Probably
overkill.
-2002-02-21 00:16 John Millaway <millaway@acm.org>
+2002-02-21 John Millaway <john43@users.sourceforge.net>
* flex.skl: Fixed C++ #ifdef problem. Removed mistyped __CPLUSPLUS
- macro. Removed THROW_NIL. Not sure where it came from in the first
+ macro. Removed THROW_NIL. Not sure where it came from in the first
place.
-2002-02-21 00:12 John Millaway <millaway@acm.org>
+2002-02-21 John Millaway <john43@users.sourceforge.net>
- * tests/: README, configure.in, TEMPLATE/Makefile.in,
- test-c-cpp-nr/.cvsignore, test-c-cpp-nr/Makefile.in,
- test-c-cpp-nr/scanner.l, test-c-cpp-nr/test.input,
- test-c-cpp-r/.cvsignore, test-c-cpp-r/Makefile.in,
- test-c-cpp-r/scanner.l, test-c-cpp-r/test.input: Added
+ * tests/README, tests/TEMPLATE/Makefile.in, tests/configure.in,
+ tests/test-c-cpp-nr/.cvsignore, tests/test-c-cpp-nr/Makefile.in,
+ tests/test-c-cpp-nr/scanner.l, tests/test-c-cpp-nr/test.input,
+ tests/test-c-cpp-r/.cvsignore, tests/test-c-cpp-r/Makefile.in,
+ tests/test-c-cpp-r/scanner.l, tests/test-c-cpp-r/test.input: Added
test-c-cpp-nr and test-c-cpp-r.
-2002-02-16 15:26 John Millaway <millaway@acm.org>
+2002-02-16 John Millaway <john43@users.sourceforge.net>
* flex.skl: Added missing #endif.
-2002-02-07 10:19 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: TEMPLATE/.cvsignore, test-array-nr/.cvsignore,
- test-array-r/.cvsignore, test-basic-nr/.cvsignore,
- test-basic-r/.cvsignore, test-bison-yylloc/.cvsignore,
- test-bison-yylval/.cvsignore, test-header-nr/.cvsignore,
- test-header-r/.cvsignore, test-include-by-buffer/.cvsignore,
- test-include-by-reentrant/.cvsignore,
- test-multiple-scanners-nr/.cvsignore,
- test-multiple-scanners-r/.cvsignore, test-prefix-nr/.cvsignore,
- test-prefix-r/.cvsignore, test-pthread/.cvsignore,
- test-string-nr/.cvsignore, test-string-r/.cvsignore,
- test-yyextra/.cvsignore: add OUTPUT to .cvsignore files in test
- directories; it's also in the template directory
+2002-02-07 Will Estes <wlestes@users.sourceforge.net>
-2002-02-06 18:30 Will Estes <wlestes@users.sourceforge.net>
+ * tests/TEMPLATE/.cvsignore, tests/test-array-nr/.cvsignore,
+ tests/test-array-r/.cvsignore, tests/test-basic-nr/.cvsignore,
+ tests/test-basic-r/.cvsignore, tests/test-bison-yylloc/.cvsignore,
+ tests/test-bison-yylval/.cvsignore,
+ tests/test-header-nr/.cvsignore, tests/test-header-r/.cvsignore,
+ tests/test-include-by-buffer/.cvsignore,
+ tests/test-include-by-reentrant/.cvsignore,
+ tests/test-multiple-scanners-nr/.cvsignore,
+ tests/test-multiple-scanners-r/.cvsignore,
+ tests/test-prefix-nr/.cvsignore, tests/test-prefix-r/.cvsignore,
+ tests/test-pthread/.cvsignore, tests/test-string-nr/.cvsignore,
+ tests/test-string-r/.cvsignore, tests/test-yyextra/.cvsignore: add
+ OUTPUT to .cvsignore files in test directories; it's also in the
+ template directory
+
+2002-02-06 Will Estes <wlestes@users.sourceforge.net>
* gen.c: fix interrupted reads and freads; from the debian package
maintainer
-2002-02-06 16:41 Will Estes <wlestes@users.sourceforge.net>
+2002-02-06 Will Estes <wlestes@users.sourceforge.net>
* flex.texi, flexdef.h, main.c, nfa.c: support large flex tables;
from debian package maintainer
-2002-01-29 08:48 Will Estes <wlestes@users.sourceforge.net>
+2002-01-29 Will Estes <wlestes@users.sourceforge.net>
- * tests/configure.in: add more output files to account for new
- tests
+ * tests/configure.in: add more output files to account for new tests
-2002-01-03 15:19 Will Estes <wlestes@users.sourceforge.net>
+2002-01-03 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-array-nr/: .cvsignore, Makefile.in, scanner.l,
- test.input: add this test
+ * tests/test-array-nr/.cvsignore, tests/test-array-nr/Makefile.in,
+ tests/test-array-nr/scanner.l, tests/test-array-nr/test.input: add
+ this test
-2002-01-03 15:17 Will Estes <wlestes@users.sourceforge.net>
+2002-01-03 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-array-r/: .cvsignore, Makefile.in, scanner.l,
- test.input: add this test suite
+ * tests/test-array-r/.cvsignore, tests/test-array-r/Makefile.in,
+ tests/test-array-r/scanner.l, tests/test-array-r/test.input: add
+ this test suite
-2001-11-20 14:58 Will Estes <wlestes@users.sourceforge.net>
+2001-11-20 Will Estes <wlestes@users.sourceforge.net>
* flex.skl, main.c: millaway: Fixed yytext_ptr when using %array in
reentrant scanner
-2001-11-20 14:48 Will Estes <wlestes@users.sourceforge.net>
+2001-11-20 Will Estes <wlestes@users.sourceforge.net>
* buf.c: oops, forgot this one line
-2001-11-19 01:39 John Millaway <millaway@acm.org>
-
- * tests/: test-array-nr/.cvsignore, test-array-r/.cvsignore: file
- .cvsignore was initially added on branch flex-2-5-6-branch.
-
-2001-11-19 01:39 John Millaway <millaway@acm.org>
-
- * tests/: test-array-nr/Makefile.in, test-array-r/Makefile.in: file
- Makefile.in was initially added on branch flex-2-5-6-branch.
-
-2001-11-19 01:39 John Millaway <millaway@acm.org>
-
- * tests/: test-array-nr/scanner.l, test-array-r/scanner.l: file
- scanner.l was initially added on branch flex-2-5-6-branch.
-
-2001-11-19 01:39 John Millaway <millaway@acm.org>
-
- * tests/: test-array-nr/test.input, test-array-r/test.input: file
- test.input was initially added on branch flex-2-5-6-branch.
+2001-11-14 Will Estes <wlestes@users.sourceforge.net>
-2001-11-14 18:09 Will Estes <wlestes@users.sourceforge.net>
+ * tests/test-header-r/.cvsignore, tests/test-header-r/Makefile.in,
+ tests/test-header-r/main.c, tests/test-header-r/scanner.l,
+ tests/test-header-r/test.input: and more fallout
- * tests/test-header-r/: .cvsignore, Makefile.in, main.c, scanner.l,
- test.input: and more fallout
-
-2001-11-14 16:13 Will Estes <wlestes@users.sourceforge.net>
+2001-11-14 Will Estes <wlestes@users.sourceforge.net>
* TODO, flex.skl, flex.texi, flexdef.h, main.c, misc.c,
- tests/README, tests/configure.in, tests/TEMPLATE/Makefile.in,
+ tests/README, tests/TEMPLATE/Makefile.in, tests/configure.in,
tests/test-basic-r/scanner.l, tests/test-bison-yylloc/.cvsignore,
tests/test-bison-yylloc/Makefile.in,
tests/test-bison-yylloc/parser.y,
@@ -3868,587 +4423,505 @@
tests/test-string-r/scanner.l, tests/test-yyextra/scanner.l: more
from the same batch
-2001-11-14 16:12 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: test-bison-yylloc/main.c, test-bison-yylval/main.c,
- test-header-nr/.cvsignore, test-header-nr/Makefile.in,
- test-header-nr/main.c, test-header-nr/scanner.l,
- test-header-nr/test.input, test-multiple-scanners-nr/.cvsignore,
- test-multiple-scanners-nr/Makefile.in,
- test-multiple-scanners-nr/main.c,
- test-multiple-scanners-nr/scanner-1.l,
- test-multiple-scanners-nr/scanner-2.l,
- test-multiple-scanners-r/.cvsignore,
- test-multiple-scanners-r/Makefile.in,
- test-multiple-scanners-r/main.c,
- test-multiple-scanners-r/scanner-1.l,
- test-multiple-scanners-r/scanner-2.l: a big batch from millaway
-
-2001-10-28 01:49 John Millaway <millaway@acm.org>
-
- * tests/: test-bison-yylloc/main.c, test-bison-yylval/main.c: file
- main.c was initially added on branch flex-2-5-6-branch.
-
-2001-10-26 23:59 John Millaway <millaway@acm.org>
-
- * tests/: test-multiple-scanners-nr/.cvsignore,
- test-multiple-scanners-r/.cvsignore: file .cvsignore was initially
- added on branch flex-2-5-6-branch.
-
-2001-10-26 23:59 John Millaway <millaway@acm.org>
-
- * tests/: test-multiple-scanners-nr/Makefile.in,
- test-multiple-scanners-r/Makefile.in: file Makefile.in was
- initially added on branch flex-2-5-6-branch.
-
-2001-10-26 23:59 John Millaway <millaway@acm.org>
-
- * tests/: test-multiple-scanners-nr/main.c,
- test-multiple-scanners-r/main.c: file main.c was initially added on
- branch flex-2-5-6-branch.
-
-2001-10-26 23:59 John Millaway <millaway@acm.org>
-
- * tests/: test-multiple-scanners-nr/scanner-1.l,
- test-multiple-scanners-r/scanner-1.l: file scanner-1.l was
- initially added on branch flex-2-5-6-branch.
-
-2001-10-26 23:59 John Millaway <millaway@acm.org>
-
- * tests/: test-multiple-scanners-nr/scanner-2.l,
- test-multiple-scanners-r/scanner-2.l: file scanner-2.l was
- initially added on branch flex-2-5-6-branch.
+2001-11-14 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/test-bison-yylloc/main.c, tests/test-bison-yylval/main.c,
+ tests/test-header-nr/.cvsignore, tests/test-header-nr/Makefile.in,
+ tests/test-header-nr/main.c, tests/test-header-nr/scanner.l,
+ tests/test-header-nr/test.input,
+ tests/test-multiple-scanners-nr/.cvsignore,
+ tests/test-multiple-scanners-nr/Makefile.in,
+ tests/test-multiple-scanners-nr/main.c,
+ tests/test-multiple-scanners-nr/scanner-1.l,
+ tests/test-multiple-scanners-nr/scanner-2.l,
+ tests/test-multiple-scanners-r/.cvsignore,
+ tests/test-multiple-scanners-r/Makefile.in,
+ tests/test-multiple-scanners-r/main.c,
+ tests/test-multiple-scanners-r/scanner-1.l,
+ tests/test-multiple-scanners-r/scanner-2.l: a big batch from
+ millaway
-2001-10-26 10:30 Will Estes <wlestes@users.sourceforge.net>
+2001-10-26 Will Estes <wlestes@users.sourceforge.net>
* NEWS: now NEWS has forgotten about the _r variables
-2001-10-26 08:59 Will Estes <wlestes@users.sourceforge.net>
+2001-10-26 Will Estes <wlestes@users.sourceforge.net>
* flex.skl, flex.texi, gen.c, main.c,
tests/test-bison-yylloc/scanner.l,
tests/test-bison-yylval/scanner.l,
tests/test-include-by-reentrant/scanner.l,
tests/test-prefix-nr/scanner.l, tests/test-pthread/scanner.l,
- tests/test-string-r/scanner.l, tests/test-yyextra/scanner.l:
+ tests/test-string-r/scanner.l, tests/test-yyextra/scanner.l:
millaway simplified the reentrant api; here's the result
-2001-10-23 17:07 Will Estes <wlestes@users.sourceforge.net>
+2001-10-23 Will Estes <wlestes@users.sourceforge.net>
* main.c, options.c, options.h: more from millaway
-2001-10-22 10:37 Will Estes <wlestes@users.sourceforge.net>
+2001-10-22 Will Estes <wlestes@users.sourceforge.net>
* main.c, options.c, options.h: the last checkin was broken;
millaway fixed it
-2001-10-22 09:42 Will Estes <wlestes@users.sourceforge.net>
+2001-10-22 Will Estes <wlestes@users.sourceforge.net>
- * flex.texi, flex.skl, gen.c, main.c, misc.c, options.h, scan.l,
- scanopt.c, tests/README, tests/configure.in: phew, millaway's
- latest batch
+ * flex.skl, flex.texi, gen.c, main.c, misc.c, options.h, scan.l,
+ scanopt.c, tests/README, tests/configure.in: phew, millaway's latest
+ batch
-2001-10-21 13:24 Will Estes <wlestes@users.sourceforge.net>
+2001-10-21 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: flex.skl should come up in C mode
-2001-10-21 13:23 Will Estes <wlestes@users.sourceforge.net>
-
- * flex.skl: apparently, isatty and c++ need help getting along
- (from octave)
-
-2001-10-19 18:56 John Millaway <millaway@acm.org>
-
- * tests/: test-header-nr/.cvsignore, test-header-r/.cvsignore: file
- .cvsignore was initially added on branch flex-2-5-6-branch.
-
-2001-10-19 18:56 John Millaway <millaway@acm.org>
-
- * tests/: test-header-nr/Makefile.in, test-header-r/Makefile.in:
- file Makefile.in was initially added on branch flex-2-5-6-branch.
+2001-10-21 Will Estes <wlestes@users.sourceforge.net>
-2001-10-19 18:56 John Millaway <millaway@acm.org>
+ * flex.skl: apparently, isatty and c++ need help getting along (from
+ octave)
- * tests/: test-header-nr/main.c, test-header-r/main.c: file main.c
- was initially added on branch flex-2-5-6-branch.
-
-2001-10-19 18:56 John Millaway <millaway@acm.org>
-
- * tests/: test-header-nr/scanner.l, test-header-r/scanner.l: file
- scanner.l was initially added on branch flex-2-5-6-branch.
-
-2001-10-19 18:56 John Millaway <millaway@acm.org>
-
- * tests/: test-header-nr/test.input, test-header-r/test.input: file
- test.input was initially added on branch flex-2-5-6-branch.
-
-2001-10-19 17:13 Will Estes <wlestes@users.sourceforge.net>
+2001-10-19 Will Estes <wlestes@users.sourceforge.net>
* NEWS: document new options and new option handling
-2001-10-19 16:58 Will Estes <wlestes@users.sourceforge.net>
+2001-10-19 Will Estes <wlestes@users.sourceforge.net>
* TODO: tell emacs that TODO is a text/outline mode file
-2001-10-19 16:55 Will Estes <wlestes@users.sourceforge.net>
+2001-10-19 Will Estes <wlestes@users.sourceforge.net>
* TODO: we have new long options; we need to document that
-2001-10-19 16:36 Will Estes <wlestes@users.sourceforge.net>
+2001-10-19 Will Estes <wlestes@users.sourceforge.net>
* NEWS: tell emacs that NEWS is text/outline mode
-2001-10-19 14:04 Will Estes <wlestes@users.sourceforge.net>
+2001-10-19 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: oops, lost a line somewhere in the merge process on
millaway's work
-2001-10-17 10:29 Will Estes <wlestes@users.sourceforge.net>
+2001-10-17 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am, buf.c, flex.skl, flex.texi, flexdef.h, main.c,
- misc.c, options.c, options.h, parse.y, scan.l, scanopt.c,
- scanopt.h: merge latest batch of millaway's changes
-
-2001-10-15 13:26 John Millaway <millaway@acm.org>
-
- * buf.c: file buf.c was initially added on branch
- flex-2-5-6-branch.
-
-2001-10-12 20:44 John Millaway <millaway@acm.org>
-
- * options.c: file options.c was initially added on branch
- flex-2-5-6-branch.
-
-2001-10-12 20:44 John Millaway <millaway@acm.org>
+ misc.c, options.c, options.h, parse.y, scan.l, scanopt.c, scanopt.h:
+ merge latest batch of millaway's changes
- * options.h: file options.h was initially added on branch
- flex-2-5-6-branch.
-
-2001-10-12 20:44 John Millaway <millaway@acm.org>
-
- * scanopt.c: file scanopt.c was initially added on branch
- flex-2-5-6-branch.
-
-2001-10-12 20:44 John Millaway <millaway@acm.org>
-
- * scanopt.h: file scanopt.h was initially added on branch
- flex-2-5-6-branch.
-
-2001-09-22 13:50 Will Estes <wlestes@users.sourceforge.net>
+2001-09-22 Will Estes <wlestes@users.sourceforge.net>
* main.c: Fixed typo in options display
-2001-09-20 15:27 Will Estes <wlestes@users.sourceforge.net>
+2001-09-20 Will Estes <wlestes@users.sourceforge.net>
- * main.c: reentrant and non-reentrant scanners share the same
- yywrap MACRO. millaway
+ * main.c: reentrant and non-reentrant scanners share the same yywrap
+ MACRO. millaway
-2001-09-20 12:32 Will Estes <wlestes@users.sourceforge.net>
+2001-09-20 Will Estes <wlestes@users.sourceforge.net>
* TODO: clarify item on comments in lexical files
-2001-09-20 12:29 Will Estes <wlestes@users.sourceforge.net>
+2001-09-20 Will Estes <wlestes@users.sourceforge.net>
* NEWS, scan.l: now flex recognizes \r as an eol character
-2001-09-20 10:55 Will Estes <wlestes@users.sourceforge.net>
+2001-09-20 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: specify cvsroot so automake distcheck works
-2001-09-19 16:39 Will Estes <wlestes@users.sourceforge.net>
+2001-09-19 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: tex has lost its mind; we remove parentheses to
compensate
-2001-09-19 15:42 Will Estes <wlestes@users.sourceforge.net>
+2001-09-19 Will Estes <wlestes@users.sourceforge.net>
- * NEWS: now that c++ is better supported, let's mention it as a
- news item
+ * NEWS: now that c++ is better supported, let's mention it as a news
+ item
-2001-09-19 15:37 Will Estes <wlestes@users.sourceforge.net>
+2001-09-19 Will Estes <wlestes@users.sourceforge.net>
- * flex.skl, main.c, examples/fastwc/wc1.l, examples/fastwc/wc2.l,
+ * examples/fastwc/wc1.l, examples/fastwc/wc2.l,
examples/fastwc/wc3.l, examples/fastwc/wc4.l,
- examples/fastwc/wc5.l: commit the backwash from the branch merges
+ examples/fastwc/wc5.l, flex.skl, main.c: commit the backwash from
+ the branch merges
-2001-09-19 15:19 Will Estes <wlestes@users.sourceforge.net>
+2001-09-19 Will Estes <wlestes@users.sourceforge.net>
- * FlexLexer.h, flex.skl, examples/testxxLexer.l: made preliminary
+ * FlexLexer.h, examples/testxxLexer.l, flex.skl: made preliminary
c++ fixes; the intent is to make it work with recent c++ compilers
-2001-08-26 12:14 Will Estes <wlestes@users.sourceforge.net>
+2001-08-26 Will Estes <wlestes@users.sourceforge.net>
- * main.c: remove argv_fixup; fix typo in error message; changes
- from millaway's branch
+ * main.c: remove argv_fixup; fix typo in error message; changes from
+ millaway's branch
-2001-08-24 11:54 Will Estes <wlestes@users.sourceforge.net>
+2001-08-24 Will Estes <wlestes@users.sourceforge.net>
* NEWS: mention no more c++ comments in c scanners
-2001-08-21 13:47 John Millaway <millaway@acm.org>
+2001-08-21 John Millaway <john43@users.sourceforge.net>
* flex.skl: Changed // comments to /* */ comments in skeleton.
-2001-08-19 16:34 John Millaway <millaway@acm.org>
+2001-08-19 John Millaway <john43@users.sourceforge.net>
* flex.texi: Changed @var to @code everywhere.
-2001-08-16 14:19 Will Estes <wlestes@users.sourceforge.net>
+2001-08-16 Will Estes <wlestes@users.sourceforge.net>
* to.do/flex.rmail: more mail
-2001-08-16 11:03 Will Estes <wlestes@users.sourceforge.net>
+2001-08-16 Will Estes <wlestes@users.sourceforge.net>
* TODO: the manual now has its own section; we're not adding
comments either
-2001-08-03 21:14 John Millaway <millaway@acm.org>
+2001-08-04 John Millaway <john43@users.sourceforge.net>
- * tests/: Makefile.in, README, TEMPLATE/Makefile.in,
- test-basic-nr/Makefile.in, test-basic-r/Makefile.in,
- test-bison-yylloc/Makefile.in, test-bison-yylval/Makefile.in,
- test-include-by-buffer/Makefile.in,
- test-include-by-reentrant/Makefile.in, test-prefix-nr/Makefile.in,
- test-prefix-r/Makefile.in, test-pthread/Makefile.in,
- test-string-nr/Makefile.in, test-string-r/Makefile.in,
- test-yyextra/Makefile.in: Cleaned up the output of the tests.
+ * tests/Makefile.in, tests/README, tests/TEMPLATE/Makefile.in,
+ tests/test-basic-nr/Makefile.in, tests/test-basic-r/Makefile.in,
+ tests/test-bison-yylloc/Makefile.in,
+ tests/test-bison-yylval/Makefile.in,
+ tests/test-include-by-buffer/Makefile.in,
+ tests/test-include-by-reentrant/Makefile.in,
+ tests/test-prefix-nr/Makefile.in, tests/test-prefix-r/Makefile.in,
+ tests/test-pthread/Makefile.in, tests/test-string-nr/Makefile.in,
+ tests/test-string-r/Makefile.in, tests/test-yyextra/Makefile.in:
+ Cleaned up the output of the tests.
-2001-08-03 16:43 Will Estes <wlestes@users.sourceforge.net>
+2001-08-03 Will Estes <wlestes@users.sourceforge.net>
* TODO: note jason's thoughts on having a manpage
-2001-08-03 16:41 Will Estes <wlestes@users.sourceforge.net>
+2001-08-03 Will Estes <wlestes@users.sourceforge.net>
* TODO: note millaway's assignment and tests to be under flex
license
-2001-08-01 17:14 John Millaway <millaway@acm.org>
+2001-08-01 John Millaway <john43@users.sourceforge.net>
* tests/test-bison-yylval/scanner.l: Fixed semantics of test (the
success or failure of this test should be unaffected by this
change.)
-2001-08-01 16:13 Will Estes <wlestes@users.sourceforge.net>
+2001-08-01 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: fake automake into believing that ChangeLog already
exists
-2001-08-01 16:06 Will Estes <wlestes@users.sourceforge.net>
+2001-08-01 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: millaway needs to be covered in the ChangeLog
-2001-08-01 15:41 Will Estes <wlestes@users.sourceforge.net>
+2001-08-01 Will Estes <wlestes@users.sourceforge.net>
* version.h: automake is supplying version info now so we just pick
it up
-2001-08-01 15:40 Will Estes <wlestes@users.sourceforge.net>
+2001-08-01 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: forgot braces on @copyright
-2001-08-01 15:40 John Millaway <millaway@acm.org>
+2001-08-01 John Millaway <john43@users.sourceforge.net>
* flex.skl: Added missing argument to yy_flex_free.
-2001-08-01 10:05 Will Estes <wlestes@users.sourceforge.net>
+2001-08-01 Will Estes <wlestes@users.sourceforge.net>
* AUTHORS: john millaway wrote the reentrant C support
-2001-08-01 10:05 Will Estes <wlestes@users.sourceforge.net>
+2001-08-01 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: add license node to the manual
-2001-08-01 09:48 Will Estes <wlestes@users.sourceforge.net>
+2001-08-01 Will Estes <wlestes@users.sourceforge.net>
* TODO: c++ ideas
-2001-07-31 17:31 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* parse.y: error messages will now show up the way that emacs likes
them
-2001-07-31 15:56 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: oops, left in an extra backslash
-2001-07-31 15:05 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* TODO: flex.texi is here; clarify tests/ rewrite issue
-2001-07-31 15:04 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* NEWS: hey, we have texinfo, not man
-2001-07-31 15:03 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* flex.1: no more manpage
-2001-07-31 15:01 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: remove flex.1 and rewrite the dist-hook so that we
pick up a couple more directories
-2001-07-31 14:15 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: the namual now compiles; hurray
-2001-07-31 06:13 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: first attempt at including the tests/ directory via
automake, dist-hook target added
-2001-07-31 06:12 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* tests/.cvsignore: ignore config.cache in tests/ directory
-2001-07-31 05:46 Will Estes <wlestes@users.sourceforge.net>
+2001-07-31 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: automake groks the ChangeLog now so we don't have to
remind the maintainer to remake it
-2001-07-30 17:06 Will Estes <wlestes@users.sourceforge.net>
+2001-07-30 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: more corrections to the manual; the end is in site
-2001-07-30 17:06 Will Estes <wlestes@users.sourceforge.net>
+2001-07-30 Will Estes <wlestes@users.sourceforge.net>
* TODO: auto-generated backup?
-2001-07-27 17:12 Will Estes <wlestes@users.sourceforge.net>
+2001-07-27 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: today's tinkering on the manual
-2001-07-27 10:50 Will Estes <wlestes@users.sourceforge.net>
+2001-07-27 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: if we want flex.1 we have to say so in EXTRA_DIST
-2001-07-27 10:49 Will Estes <wlestes@users.sourceforge.net>
+2001-07-27 Will Estes <wlestes@users.sourceforge.net>
* TODO: note future issues with flex.texi
-2001-07-27 10:34 Will Estes <wlestes@users.sourceforge.net>
+2001-07-27 Will Estes <wlestes@users.sourceforge.net>
- * Makefile.am: include flex.1 as it's the only working
- documentation for now
+ * Makefile.am: include flex.1 as it's the only working documentation
+ for now
-2001-07-27 10:32 Will Estes <wlestes@users.sourceforge.net>
+2001-07-27 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: rearrange to work with automake on building the
ChangeLog
-2001-07-27 09:33 Will Estes <wlestes@users.sourceforge.net>
+2001-07-27 Will Estes <wlestes@users.sourceforge.net>
* scan.l: automake is unhappy if we specify the outfile
-2001-07-26 17:18 Will Estes <wlestes@users.sourceforge.net>
+2001-07-26 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: more conversions/corrections
-2001-07-26 10:04 Will Estes <wlestes@users.sourceforge.net>
+2001-07-26 Will Estes <wlestes@users.sourceforge.net>
* README: we removed misc/ so we don't mention it any more
-2001-07-25 16:26 Will Estes <wlestes@users.sourceforge.net>
+2001-07-25 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: begin the manual conversion to texinfo; yes, it's
broken right now
-2001-07-25 16:25 Will Estes <wlestes@users.sourceforge.net>
+2001-07-25 Will Estes <wlestes@users.sourceforge.net>
* AUTHORS, THANKS: copy in manual author and thanks info
-2001-07-25 10:46 Will Estes <wlestes@users.sourceforge.net>
+2001-07-25 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: how to fake the ChangeLog into showing up in the
distribution
-2001-07-25 09:07 Will Estes <wlestes@users.sourceforge.net>
+2001-07-25 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: add YFLAGS so parse.h gets made
-2001-07-24 16:23 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
- * examples/fastwc/: README, mywc.c, wc1.l, wc2.l, wc3.l, wc4.l,
- wc5.l: re-add these files
+ * examples/fastwc/README, examples/fastwc/mywc.c,
+ examples/fastwc/wc1.l, examples/fastwc/wc2.l,
+ examples/fastwc/wc3.l, examples/fastwc/wc4.l, examples/fastwc/wc5.l:
+ re-add these files
-2001-07-24 15:11 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* TODO: reflect recent doings
-2001-07-24 15:07 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* Makefile.in: what with automake, we don't need Makefile.in any
more
-2001-07-24 15:06 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* configure.in: more rearranging for automake
-2001-07-24 15:04 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* to.do/flex.rmail: more mail came in
-2001-07-24 12:44 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: adjust to automake's idea of the world
-2001-07-24 12:43 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: add Vern's misc dependencies; noinst_SCRIPTS was
broken?; list a few last files to be included in the distribution
-2001-07-24 10:48 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* NEWS: rearrange for better order; add automake support as a news
item
-2001-07-24 10:38 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: copyright notice on Makefile.am; document some -D
switches (are they still usable?)
-2001-07-24 10:37 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* TODO: add lex-replacement issue
-2001-07-24 06:13 Will Estes <wlestes@users.sourceforge.net>
+2001-07-24 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: add EXTRA_DIST
-2001-07-23 17:49 Will Estes <wlestes@users.sourceforge.net>
+2001-07-23 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: we need to do the same thing in each directory
-2001-07-23 17:25 Will Estes <wlestes@users.sourceforge.net>
+2001-07-23 Will Estes <wlestes@users.sourceforge.net>
* configure.in: introduce automake into the macro calls
-2001-07-23 17:06 Will Estes <wlestes@users.sourceforge.net>
+2001-07-23 Will Estes <wlestes@users.sourceforge.net>
- * Makefile.am: add AUTOMAKE_OPTIONS, info_TEXINFOS,
- include_HEADERS, noinst_HEADERS; it's libfl.a, not libflex.a
+ * Makefile.am: add AUTOMAKE_OPTIONS, info_TEXINFOS, include_HEADERS,
+ noinst_HEADERS; it's libfl.a, not libflex.a
-2001-07-23 16:16 Will Estes <wlestes@users.sourceforge.net>
+2001-07-23 Will Estes <wlestes@users.sourceforge.net>
* Makefile.am: bin_PROGRAMS and lib_LIBRARIES
-2001-07-23 15:32 Will Estes <wlestes@users.sourceforge.net>
+2001-07-23 Will Estes <wlestes@users.sourceforge.net>
* to.do/streams.mail: streams.mail has moved here
-2001-07-23 15:12 Will Estes <wlestes@users.sourceforge.net>
+2001-07-23 Will Estes <wlestes@users.sourceforge.net>
* TODO: add xref for teximanual
-2001-07-19 10:27 Will Estes <wlestes@users.sourceforge.net>
+2001-07-19 Will Estes <wlestes@users.sourceforge.net>
* flex.1: include typo/punctuation fixes from a patch submitted by
noon@cote-dazur.com (Fabrice Bauzac)
-2001-07-17 14:40 Will Estes <wlestes@users.sourceforge.net>
+2001-07-17 Will Estes <wlestes@users.sourceforge.net>
* TODO: we want gettext
-2001-06-24 19:45 Will Estes <wlestes@users.sourceforge.net>
+2001-06-24 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: include c++ STD fixes from quanstro@quanstro.net
-2001-06-24 18:33 Will Estes <wlestes@users.sourceforge.net>
+2001-06-24 Will Estes <wlestes@users.sourceforge.net>
* flex.skl, gen.c: change some int types to size_t as per FreeBSD
28364 from avn@any.ru
-2001-06-24 18:31 Will Estes <wlestes@users.sourceforge.net>
+2001-06-24 Will Estes <wlestes@users.sourceforge.net>
* TODO: remove parse.[ch] from make clean target; repackage
distribution (not rework)
-2001-06-19 08:44 Will Estes <wlestes@users.sourceforge.net>
+2001-06-19 Will Estes <wlestes@users.sourceforge.net>
* TODO: add memory api and reworking of flex.skl reworking
-2001-06-18 13:18 Will Estes <wlestes@users.sourceforge.net>
+2001-06-18 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: remove extraneous notice from flex.skl
-2001-06-18 08:49 Will Estes <wlestes@users.sourceforge.net>
+2001-06-18 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: patch memory leak as per millaway
-2001-06-17 15:23 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* to.do/flex.rmail: add vern's ok for copyright/license changes and
john's answer on line offsets
-2001-06-17 15:18 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* TODO: remove creation of .cvsignore files (it's done); add other
notes about the test suite
-2001-06-17 15:16 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
- * tests/: TEMPLATE/.cvsignore, test-basic-nr/.cvsignore,
- test-basic-r/.cvsignore, test-bison-yylloc/.cvsignore,
- test-bison-yylval/.cvsignore, test-include-by-buffer/.cvsignore,
- test-include-by-reentrant/.cvsignore, test-prefix-nr/.cvsignore,
- test-prefix-r/.cvsignore, test-pthread/.cvsignore,
- test-string-nr/.cvsignore, test-string-r/.cvsignore,
- test-yyextra/.cvsignore: adding .cvsignore files for existing
- tests/ subdirectories
+ * tests/TEMPLATE/.cvsignore, tests/test-basic-nr/.cvsignore,
+ tests/test-basic-r/.cvsignore, tests/test-bison-yylloc/.cvsignore,
+ tests/test-bison-yylval/.cvsignore,
+ tests/test-include-by-buffer/.cvsignore,
+ tests/test-include-by-reentrant/.cvsignore,
+ tests/test-prefix-nr/.cvsignore, tests/test-prefix-r/.cvsignore,
+ tests/test-pthread/.cvsignore, tests/test-string-nr/.cvsignore,
+ tests/test-string-r/.cvsignore, tests/test-yyextra/.cvsignore:
+ adding .cvsignore files for existing tests/ subdirectories
-2001-06-17 15:12 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* tests/README: reformat, say to add a description to this file and
mention what to do re .cvsignore
-2001-06-17 15:09 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* tests/TEMPLATE/cvsignore: create template for .cvsignore
-2001-06-17 14:59 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* TODO: reorganize for logical reasons; test suite now seems to run
out of the box
-2001-06-17 14:28 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* tests/.cvsignore: we dont want the Makefile either
-2001-06-17 13:40 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
- * tests/test-prefix-nr/test.input: test.input was supposed to be
- here
+ * tests/test-prefix-nr/test.input, tests/test-prefix-r/test.input:
+ test.input was supposed to be here
-2001-06-17 13:36 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/test-prefix-r/test.input: test.input was supposed to be
- here
-
-2001-06-17 13:18 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* tests/.cvsignore: add autoconf legacy files to be ignored
-2001-06-17 13:11 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: clarify usage instructions; prepare tests/ as well
-2001-06-17 13:07 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* tests/.cvsignore: . cvsignore for tests/ subdirectory
-2001-06-17 13:01 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* FlexLexer.h: tell emacs that FlexLexer.h is c++
-2001-06-17 13:00 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* scan.l: tell emacs scan.l is in C mode
-2001-06-17 12:59 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: added punctuation
-2001-06-17 12:17 Will Estes <wlestes@users.sourceforge.net>
+2001-06-17 Will Estes <wlestes@users.sourceforge.net>
* FlexLexer.h, Makefile.in, README, RoadMap, autogen.sh, ccl.c,
configure.in, dfa.c, ecs.c, flex.1, flex.skl, flexdef.h, gen.c,
@@ -4456,2984 +4929,2955 @@
scan.l, sym.c, tblcmp.c, yylex.c: change copyright/license notices
as per Vern's response to Theo
-2001-06-15 16:22 Will Estes <wlestes@users.sourceforge.net>
+2001-06-15 Will Estes <wlestes@users.sourceforge.net>
* to.do/flex.rmail: add bill fenlason's emails
-2001-06-15 16:21 Will Estes <wlestes@users.sourceforge.net>
+2001-06-15 Will Estes <wlestes@users.sourceforge.net>
* COPYING: make changes as per Theo De Raadt; remove tabs
-2001-06-08 08:42 Will Estes <wlestes@users.sourceforge.net>
+2001-06-08 Will Estes <wlestes@users.sourceforge.net>
* flex.skl: save errno as per Theo de Raadt
-2001-06-07 08:44 Will Estes <wlestes@users.sourceforge.net>
+2001-06-07 Will Estes <wlestes@users.sourceforge.net>
* flex.1: correct hyphenation as per openbsd tree
-2001-06-05 16:39 Will Estes <wlestes@users.sourceforge.net>
+2001-06-05 Will Estes <wlestes@users.sourceforge.net>
* Makefile.in, configure.in: change references to TESTS/ to tests/
to account for the directory name changes
-2001-05-27 15:22 Will Estes <wlestes@users.sourceforge.net>
+2001-05-27 Will Estes <wlestes@users.sourceforge.net>
* flex.skl, gen.c: commit john millaway's YY_G wrapper corrections
-2001-05-21 17:44 Will Estes <wlestes@users.sourceforge.net>
+2001-05-21 Will Estes <wlestes@users.sourceforge.net>
* tests/Makefile.in: remove || exit calls
-2001-05-21 15:50 Will Estes <wlestes@users.sourceforge.net>
+2001-05-21 Will Estes <wlestes@users.sourceforge.net>
* gen.c: complete john millaway's reentrant patch
-2001-05-21 13:23 Will Estes <wlestes@users.sourceforge.net>
+2001-05-21 Will Estes <wlestes@users.sourceforge.net>
* to.do/flex.rmail: more flex messages in the queue
-2001-05-18 17:25 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
- * flex.skl, flexdef.h, gen.c, main.c, nfa.c, scan.l: john
- millaway's reentrancy patch
+ * flex.skl, flexdef.h, gen.c, main.c, nfa.c, scan.l: john millaway's
+ reentrancy patch
-2001-05-18 16:30 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* tests/Makefile.in: remove || exit from testing loop
-2001-05-18 16:27 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* Makefile.in: tell make about the tests directory and its
associated targets
-2001-05-18 16:26 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* TODO: rethink the todo list
-2001-05-18 16:13 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* flex.1: describe reentrant api changes
-2001-05-18 16:10 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* TODO: mention work needed for tests/
-2001-05-18 16:09 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* configure.in: tell auto* about the test directory
-2001-05-18 16:04 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
- * README: make punctuation uniform, mention the new tests/
- directory
+ * README: make punctuation uniform, mention the new tests/ directory
-2001-05-18 16:02 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* NEWS: reformat items; cut out old items and move them to ONEWS
-2001-05-18 16:01 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
* ONEWS: move old NEWS items to ONEWS
-2001-05-18 13:22 Will Estes <wlestes@users.sourceforge.net>
-
- * tests/: Makefile.in, README, configure.in, TEMPLATE/Makefile.in,
- TEMPLATE/parser.y, TEMPLATE/scanner.l, TEMPLATE/test.input,
- test-basic-nr/Makefile.in, test-basic-nr/scanner.l,
- test-basic-nr/test.input, test-basic-r/Makefile.in,
- test-basic-r/scanner.l, test-basic-r/test.input,
- test-bison-yylloc/Makefile.in, test-bison-yylloc/parser.y,
- test-bison-yylloc/scanner.l, test-bison-yylloc/test.input,
- test-bison-yylval/Makefile.in, test-bison-yylval/parser.y,
- test-bison-yylval/scanner.l, test-bison-yylval/test.input,
- test-include-by-buffer/Makefile.in,
- test-include-by-buffer/scanner.l,
- test-include-by-buffer/test-1.input,
- test-include-by-buffer/test-2.input,
- test-include-by-buffer/test-3.input,
- test-include-by-reentrant/Makefile.in,
- test-include-by-reentrant/scanner.l,
- test-include-by-reentrant/test-1.input,
- test-include-by-reentrant/test-2.input,
- test-include-by-reentrant/test-3.input, test-prefix-nr/Makefile.in,
- test-prefix-nr/README, test-prefix-nr/scanner.l,
- test-prefix-r/Makefile.in, test-prefix-r/README,
- test-prefix-r/scanner.l, test-pthread/Makefile.in,
- test-pthread/scanner.l, test-pthread/test-1.input,
- test-pthread/test-2.input, test-pthread/test-3.input,
- test-pthread/test-4.input, test-pthread/test-5.input,
- test-string-nr/Makefile.in, test-string-nr/scanner.l,
- test-string-r/Makefile.in, test-string-r/scanner.l,
- test-yyextra/Makefile.in, test-yyextra/scanner.l,
- test-yyextra/test.input: add john millaway's test directory
-
-2001-05-04 16:04 Will Estes <wlestes@users.sourceforge.net>
+2001-05-18 Will Estes <wlestes@users.sourceforge.net>
+
+ * tests/Makefile.in, tests/README, tests/TEMPLATE/Makefile.in,
+ tests/TEMPLATE/parser.y, tests/TEMPLATE/scanner.l,
+ tests/TEMPLATE/test.input, tests/configure.in,
+ tests/test-basic-nr/Makefile.in, tests/test-basic-nr/scanner.l,
+ tests/test-basic-nr/test.input, tests/test-basic-r/Makefile.in,
+ tests/test-basic-r/scanner.l, tests/test-basic-r/test.input,
+ tests/test-bison-yylloc/Makefile.in,
+ tests/test-bison-yylloc/parser.y,
+ tests/test-bison-yylloc/scanner.l,
+ tests/test-bison-yylloc/test.input,
+ tests/test-bison-yylval/Makefile.in,
+ tests/test-bison-yylval/parser.y,
+ tests/test-bison-yylval/scanner.l,
+ tests/test-bison-yylval/test.input,
+ tests/test-include-by-buffer/Makefile.in,
+ tests/test-include-by-buffer/scanner.l,
+ tests/test-include-by-buffer/test-1.input,
+ tests/test-include-by-buffer/test-2.input,
+ tests/test-include-by-buffer/test-3.input,
+ tests/test-include-by-reentrant/Makefile.in,
+ tests/test-include-by-reentrant/scanner.l,
+ tests/test-include-by-reentrant/test-1.input,
+ tests/test-include-by-reentrant/test-2.input,
+ tests/test-include-by-reentrant/test-3.input,
+ tests/test-prefix-nr/Makefile.in, tests/test-prefix-nr/README,
+ tests/test-prefix-nr/scanner.l, tests/test-prefix-r/Makefile.in,
+ tests/test-prefix-r/README, tests/test-prefix-r/scanner.l,
+ tests/test-pthread/Makefile.in, tests/test-pthread/scanner.l,
+ tests/test-pthread/test-1.input, tests/test-pthread/test-2.input,
+ tests/test-pthread/test-3.input, tests/test-pthread/test-4.input,
+ tests/test-pthread/test-5.input, tests/test-string-nr/Makefile.in,
+ tests/test-string-nr/scanner.l, tests/test-string-r/Makefile.in,
+ tests/test-string-r/scanner.l, tests/test-yyextra/Makefile.in,
+ tests/test-yyextra/scanner.l, tests/test-yyextra/test.input: add
+ john millaway's test directory
+
+2001-05-04 Will Estes <wlestes@users.sourceforge.net>
* to.do/flex.rmail: more mail in flex.rmail
-2001-05-03 15:05 Will Estes <wlestes@users.sourceforge.net>
+2001-05-03 Will Estes <wlestes@users.sourceforge.net>
* FlexLexer.h, ccl.c, dfa.c, ecs.c, flex.skl, flexdef.h, gen.c,
libmain.c, libyywrap.c, main.c, misc.c, nfa.c, parse.y, scan.l,
sym.c, tblcmp.c, yylex.c: remove extraneous rcs keywords
-2001-05-03 14:54 Will Estes <wlestes@users.sourceforge.net>
+2001-05-03 Will Estes <wlestes@users.sourceforge.net>
* README: mention RoadMap
-2001-05-01 16:47 Will Estes <wlestes@users.sourceforge.net>
-
- * examples/README, examples/debflex.awk, examples/testxxLexer.l,
- examples/manual/ChangeLog, examples/manual/Makefile,
- examples/manual/README, examples/manual/cat.lex,
- examples/manual/dates.lex, examples/manual/datetest.dat,
- examples/manual/eof_rules.lex, examples/manual/eof_test01.txt,
- examples/manual/eof_test02.txt, examples/manual/eof_test03.txt,
- examples/manual/expr.lex, examples/manual/expr.y,
- examples/manual/front.lex, examples/manual/front.y,
- examples/manual/j2t.lex, examples/manual/myname.lex,
- examples/manual/myname.txt, examples/manual/myname2.lex,
- examples/manual/numbers.lex, examples/manual/pas_include.lex,
- examples/manual/pascal.lex, examples/manual/reject.lex,
- examples/manual/replace.lex, examples/manual/string1.lex,
- examples/manual/string2.lex, examples/manual/strtest.dat,
- examples/manual/unput.lex, examples/manual/user_act.lex,
- examples/manual/userinit.lex, examples/manual/wc.lex,
- examples/manual/yymore.lex, examples/manual/yymore2.lex,
- examples/manual/yymoretest.dat, to.do/README, to.do/Wilhelms.todo,
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
+
+ * examples/README, examples/debflex.awk, examples/manual/ChangeLog,
+ examples/manual/Makefile, examples/manual/README,
+ examples/manual/cat.lex, examples/manual/dates.lex,
+ examples/manual/datetest.dat, examples/manual/eof_rules.lex,
+ examples/manual/eof_test01.txt, examples/manual/eof_test02.txt,
+ examples/manual/eof_test03.txt, examples/manual/expr.lex,
+ examples/manual/expr.y, examples/manual/front.lex,
+ examples/manual/front.y, examples/manual/j2t.lex,
+ examples/manual/myname.lex, examples/manual/myname.txt,
+ examples/manual/myname2.lex, examples/manual/numbers.lex,
+ examples/manual/pas_include.lex, examples/manual/pascal.lex,
+ examples/manual/reject.lex, examples/manual/replace.lex,
+ examples/manual/string1.lex, examples/manual/string2.lex,
+ examples/manual/strtest.dat, examples/manual/unput.lex,
+ examples/manual/user_act.lex, examples/manual/userinit.lex,
+ examples/manual/wc.lex, examples/manual/yymore.lex,
+ examples/manual/yymore2.lex, examples/manual/yymoretest.dat,
+ examples/testxxLexer.l, to.do/README, to.do/Wilhelms.todo,
to.do/Wish-List, to.do/flex.rmail, to.do/unicode/FlexLexer.h,
to.do/unicode/ccl.c, to.do/unicode/changes.txt,
to.do/unicode/ecs.c, to.do/unicode/flex.1, to.do/unicode/flex.skl,
to.do/unicode/flexdef.h, to.do/unicode/gen.c, to.do/unicode/main.c,
- to.do/unicode/misc.c, to.do/unicode/scan.l, to.do/unicode/tblcmp.c:
+ to.do/unicode/misc.c, to.do/unicode/scan.l, to.do/unicode/tblcmp.c:
adding the rest of vern's files
-2001-05-01 16:36 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* README: mention misc/ directory
-2001-05-01 16:32 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* version.h: version is 2.5.5b
-2001-05-01 16:30 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* Makefile.in: remove header from top; add rule to generate
initscan.c just in case
-2001-05-01 16:28 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* configure.in: dont check for initscan.c; check for scan.l instead
-2001-05-01 15:12 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* RoadMap: list of source files
-2001-05-01 15:10 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
- * README: rewrite README to reflect changes in layout of
- directories
+ * README: rewrite README to reflect changes in layout of directories
-2001-05-01 15:08 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* AUTHORS, THANKS, TODO: initial attempt at the files
-2001-05-01 14:03 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* COPYING: add 2001 copyright notice
-2001-05-01 13:38 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* autogen.sh: initial attempt at a bootstrap script for developers
-2001-05-01 13:21 Will Estes <wlestes@users.sourceforge.net>
+2001-05-01 Will Estes <wlestes@users.sourceforge.net>
* flex.texi: texinfo manual, old contributed version
-2000-08-21 12:39 Vern Paxson <vern@ee.lbl.gov>
+2000-08-21 Vern Paxson <vern@ee.lbl.gov>
* flex.1: fixed some bugs in examples of [[:...:]] ccls
-2000-08-21 12:39 Vern Paxson <vern@ee.lbl.gov>
+2000-08-21 Vern Paxson <vern@ee.lbl.gov>
* version.h: version shipped to Dick King
-2000-08-21 12:39 Vern Paxson <vern@ee.lbl.gov>
+2000-08-21 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: explicit include of iostream.h
-2000-08-21 12:38 Vern Paxson <vern@ee.lbl.gov>
+2000-08-21 Vern Paxson <vern@ee.lbl.gov>
* scan.l: if a newline is seen in <ACTION_STRING>, assume it
terminates the string.
-2000-08-21 12:38 Vern Paxson <vern@ee.lbl.gov>
+2000-08-21 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h, sym.c: moved symbol table definitions from flexdef.h
into sym.c
-2000-08-21 12:37 Vern Paxson <vern@ee.lbl.gov>
+2000-08-21 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: fixed underallocation for accset
-1997-06-27 15:36 Vern Paxson <vern@ee.lbl.gov>
+1997-06-27 Vern Paxson <vern@ee.lbl.gov>
* COPYING: revised for rms
-1997-06-23 15:48 Vern Paxson <vern@ee.lbl.gov>
+1997-06-23 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: fixed memory leak
-1997-06-23 15:48 Vern Paxson <vern@ee.lbl.gov>
+1997-06-23 Vern Paxson <vern@ee.lbl.gov>
* flex.1: input() doesn't destroy yytext
-1997-06-23 15:48 Vern Paxson <vern@ee.lbl.gov>
+1997-06-23 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: wrapped with extern "C++"
-1996-12-13 06:22 Vern Paxson <vern@ee.lbl.gov>
+1996-12-13 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: use delete [] for yy_state_buf
-1996-10-29 09:43 Vern Paxson <vern@ee.lbl.gov>
+1996-10-29 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: fixed %option noinput
-1996-10-29 09:39 Vern Paxson <vern@ee.lbl.gov>
+1996-10-29 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: free(char*) fix ... Sigh ...
-1996-10-11 11:33 Vern Paxson <vern@ee.lbl.gov>
+1996-10-11 Vern Paxson <vern@ee.lbl.gov>
* gen.c: bug fix for yymore()/yylineno interaction
-1996-10-11 11:13 Vern Paxson <vern@ee.lbl.gov>
+1996-10-11 Vern Paxson <vern@ee.lbl.gov>
* gen.c: fixed memory leak
-1996-09-10 13:10 Vern Paxson <vern@ee.lbl.gov>
+1996-09-10 Vern Paxson <vern@ee.lbl.gov>
* NEWS: release 2.5.4
-1996-09-10 12:59 Vern Paxson <vern@ee.lbl.gov>
+1996-09-10 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: more stuff for distclean
-1996-09-10 12:58 Vern Paxson <vern@ee.lbl.gov>
+1996-09-10 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: "str" -> "yy_str"
-1996-09-10 12:58 Vern Paxson <vern@ee.lbl.gov>
+1996-09-10 Vern Paxson <vern@ee.lbl.gov>
* version.h: 2.5.4
-1996-07-02 12:35 Vern Paxson <vern@ee.lbl.gov>
+1996-07-02 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: (attempted) fix for input() crossing a file boundary
-1996-05-29 08:25 Vern Paxson <vern@ee.lbl.gov>
+1996-05-29 Vern Paxson <vern@ee.lbl.gov>
* NEWS: don't do Acorn diffs
-1996-05-29 08:15 Vern Paxson <vern@ee.lbl.gov>
+1996-05-29 Vern Paxson <vern@ee.lbl.gov>
* NEWS: some minor additions for 2.5.3
-1996-05-29 08:02 Vern Paxson <vern@ee.lbl.gov>
-
- * NEWS: 2.5.3
-
-1996-05-29 07:59 Vern Paxson <vern@ee.lbl.gov>
+1996-05-29 Vern Paxson <vern@ee.lbl.gov>
- * version.h: 2.5.3
+ * NEWS, version.h: 2.5.3
-1996-05-25 17:02 Vern Paxson <vern@ee.lbl.gov>
+1996-05-25 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: initialize yy_more_offset etc. for yyFlexLexer class
-1996-05-25 16:54 Vern Paxson <vern@ee.lbl.gov>
+1996-05-25 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: niggling cosmetic tweak
-1996-05-25 16:44 Vern Paxson <vern@ee.lbl.gov>
+1996-05-25 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: bug fixes for yymore (especially with %array)
-1996-05-25 16:43 Vern Paxson <vern@ee.lbl.gov>
+1996-05-25 Vern Paxson <vern@ee.lbl.gov>
* gen.c: yymore + %array tweaks
-1996-05-25 16:43 Vern Paxson <vern@ee.lbl.gov>
+1996-05-25 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: added yy_{,prev_}more_offset
-1996-05-25 16:42 Vern Paxson <vern@ee.lbl.gov>
+1996-05-25 Vern Paxson <vern@ee.lbl.gov>
* main.c: removed decl of unused library function
-1996-05-25 11:26 Vern Paxson <vern@ee.lbl.gov>
+1996-05-25 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: snapshot of cscope yymore fixes, prior to switching
yymore-on-%array approach
-1995-12-18 09:20 Vern Paxson <vern@ee.lbl.gov>
+1995-12-18 Vern Paxson <vern@ee.lbl.gov>
* gen.c: don't stack states on NUL-transitions that are jams
-1995-09-27 08:47 Vern Paxson <vern@ee.lbl.gov>
+1995-09-27 Vern Paxson <vern@ee.lbl.gov>
* libmain.c: fixed re Esmond Pitt's ancient suggestion
-1995-04-28 07:39 Vern Paxson <vern@ee.lbl.gov>
+1995-04-28 Vern Paxson <vern@ee.lbl.gov>
* misc.c: ANSI C / Solaris tweak
-1995-04-24 09:26 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* flex.1: credits
-1995-04-24 09:26 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* NEWS: multiple FlexLexer.h includes
-1995-04-24 09:25 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: fix multiple inclusions
-1995-04-24 08:17 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* scan.l: lint tweak
-1995-04-24 07:39 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* flex.1: typo fixed
-1995-04-24 06:49 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* flex.1: credits update
-1995-04-24 06:48 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: (char*) cast for realloc
-1995-04-24 06:46 Vern Paxson <vern@ee.lbl.gov>
+1995-04-24 Vern Paxson <vern@ee.lbl.gov>
* NEWS: (char*) tweak
-1995-04-21 07:53 Vern Paxson <vern@ee.lbl.gov>
+1995-04-21 Vern Paxson <vern@ee.lbl.gov>
* NEWS: VMS update for 2.5.2
-1995-04-21 07:53 Vern Paxson <vern@ee.lbl.gov>
+1995-04-21 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: clarify when 8-bit scanners are created by default,
vs. 7-bit
-1995-04-21 07:51 Vern Paxson <vern@ee.lbl.gov>
+1995-04-21 Vern Paxson <vern@ee.lbl.gov>
* parse.y: reworked alloca() chud, from Francois
-1995-04-20 09:57 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* NEWS, version.h: 2.5.2
-1995-04-20 09:57 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* flex.1: 2.5.2 update
-1995-04-20 09:53 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* dfa.c, main.c: const -> yyconst
-1995-04-20 09:34 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: fixed some old libfl.a references
-1995-04-20 09:09 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: some (but not all) of Francois' tweaks
-1995-04-20 09:08 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* configure.in: tweaks from Francois
-1995-04-20 08:46 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: yy_delete_buffer allows nil buffer pointer
-1995-04-20 08:43 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* main.c: do_stdinit now defaults to false
-1995-04-20 08:43 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: remove first default for yylex(new_in, new_out)
-1995-04-20 08:42 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: rearrange some definitions; fix YY_NO_UNPUT
-1995-04-20 08:42 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* parse.y: more alloca() bullshit
-1995-04-20 07:35 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* misc.c: octal escape sequence must have just digits 0-7
-1995-04-20 07:35 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* scan.l: '-' means stdin octal escape sequence must just be digits
0-7
-1995-04-20 07:34 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* main.c: -- terminates options
-1995-04-20 07:17 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: added dataflush() prototype
-1995-04-20 07:17 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* misc.c: move dataflush, otoi prototypes into flexdef.h
-1995-04-20 07:17 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
- * gen.c, flex.skl: const -> yyconst
+ * flex.skl, gen.c: const -> yyconst
-1995-04-20 06:55 Vern Paxson <vern@ee.lbl.gov>
+1995-04-20 Vern Paxson <vern@ee.lbl.gov>
* gen.c: fixed bug in needing yy_cp for -Cf w/ backing up
-1995-03-28 05:29 Vern Paxson <vern@ee.lbl.gov>
+1995-03-28 Vern Paxson <vern@ee.lbl.gov>
- * flex.1, README: Stan Adermann credit
+ * README, flex.1: Stan Adermann credit
-1995-03-27 09:38 Vern Paxson <vern@ee.lbl.gov>
+1995-03-27 Vern Paxson <vern@ee.lbl.gov>
* README: beta-tester update
-1995-03-27 09:38 Vern Paxson <vern@ee.lbl.gov>
+1995-03-27 Vern Paxson <vern@ee.lbl.gov>
* NEWS, version.h: 2.5.1
-1995-03-27 09:37 Vern Paxson <vern@ee.lbl.gov>
+1995-03-27 Vern Paxson <vern@ee.lbl.gov>
* flex.1: update date for 2.5.1 release, some feedbacker credits
-1995-03-27 09:36 Vern Paxson <vern@ee.lbl.gov>
+1995-03-27 Vern Paxson <vern@ee.lbl.gov>
* gen.c: fixed lint problem with declaring yy_cp unnecessarily
-1995-03-27 09:35 Vern Paxson <vern@ee.lbl.gov>
+1995-03-27 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: {}'s around full-table initializations
-1995-03-21 09:35 Vern Paxson <vern@ee.lbl.gov>
+1995-03-21 Vern Paxson <vern@ee.lbl.gov>
* README: for version 2.5
-1995-03-21 09:13 Vern Paxson <vern@ee.lbl.gov>
+1995-03-21 Vern Paxson <vern@ee.lbl.gov>
* flex.1: added note regarding yylineno should be maintained on a
per-buffer basis
-1995-03-21 09:12 Vern Paxson <vern@ee.lbl.gov>
+1995-03-21 Vern Paxson <vern@ee.lbl.gov>
* NEWS: new C++ member functions
-1995-03-21 08:44 Vern Paxson <vern@ee.lbl.gov>
+1995-03-21 Vern Paxson <vern@ee.lbl.gov>
- * flex.1, NEWS: 2.5.0.8 update
+ * NEWS, flex.1: 2.5.0.8 update
-1995-03-21 08:44 Vern Paxson <vern@ee.lbl.gov>
+1995-03-21 Vern Paxson <vern@ee.lbl.gov>
* main.c: rename yylineno if -P
-1995-03-20 09:03 Vern Paxson <vern@ee.lbl.gov>
+1995-03-20 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: do_yylineno MARKER_DIFFERENCE depends on MAXIMUM_MNS
-1995-03-20 09:02 Vern Paxson <vern@ee.lbl.gov>
+1995-03-20 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: removed redundant skel.c from DISTFILES
-1995-03-20 09:02 Vern Paxson <vern@ee.lbl.gov>
+1995-03-20 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: debug(), setdebug(), lineno()
-1995-03-20 09:02 Vern Paxson <vern@ee.lbl.gov>
+1995-03-20 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: %option yylineno support
-1995-03-20 09:02 Vern Paxson <vern@ee.lbl.gov>
+1995-03-20 Vern Paxson <vern@ee.lbl.gov>
* gen.c: read up to newline for interactive reads, rather than one
char
-1995-03-20 09:01 Vern Paxson <vern@ee.lbl.gov>
+1995-03-20 Vern Paxson <vern@ee.lbl.gov>
- * scan.l, main.c: added %option yylineno
+ * main.c, scan.l: added %option yylineno
-1995-03-18 04:27 Vern Paxson <vern@ee.lbl.gov>
+1995-03-18 Vern Paxson <vern@ee.lbl.gov>
* gen.c: added do_yylineno
-1995-03-06 10:53 Vern Paxson <vern@ee.lbl.gov>
+1995-03-06 Vern Paxson <vern@ee.lbl.gov>
- * flex.1, NEWS: 2.5.0.7
+ * NEWS, flex.1: 2.5.0.7
-1995-03-05 16:37 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: realclean -> maintainer-clean
-1995-03-05 16:35 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added yy_flush_buffer
-1995-03-05 16:35 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: added yy_flush_buffer
-1995-03-05 16:35 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* main.c: prefix support for yy_flush_buffer
-1995-03-05 15:37 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* parse.y: added %option yyclass
-1995-03-05 15:37 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
- * scan.l, flexdef.h, main.c: added yyclass
+ * flexdef.h, main.c, scan.l: added yyclass
-1995-03-05 11:50 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: Added switch_streams
-1995-03-05 11:50 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: added switch_streams
-1995-03-05 11:37 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* main.c: don't rename yy_flex_debug for C++
-1995-03-05 11:37 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* gen.c: yy_flex_debug extern only if not C++
-1995-03-05 11:37 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: added yy_flex_debug member variable
-1995-03-05 11:36 Vern Paxson <vern@ee.lbl.gov>
+1995-03-05 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: yyFlexLexer initialization of yy_flex_debug
-1995-03-04 13:06 Vern Paxson <vern@ee.lbl.gov>
+1995-03-04 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h, main.c: VMS POSIX stuff
-1995-03-04 11:36 Vern Paxson <vern@ee.lbl.gov>
+1995-03-04 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: moved position of yy_init = 0
-1995-03-04 11:15 Vern Paxson <vern@ee.lbl.gov>
+1995-03-04 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: added YY_EXIT_FAILURE
-1995-03-04 11:14 Vern Paxson <vern@ee.lbl.gov>
+1995-03-04 Vern Paxson <vern@ee.lbl.gov>
* main.c: removed VMS-specific exit
-1995-03-04 11:09 Vern Paxson <vern@ee.lbl.gov>
+1995-03-04 Vern Paxson <vern@ee.lbl.gov>
- * flexdef.h, dfa.c, yylex.c, sym.c, scan.l, nfa.c, misc.c, gen.c,
- main.c: internationalization aids
+ * dfa.c, flexdef.h, gen.c, main.c, misc.c, nfa.c, scan.l, sym.c,
+ yylex.c: internationalization aids
-1995-03-04 11:07 Vern Paxson <vern@ee.lbl.gov>
+1995-03-04 Vern Paxson <vern@ee.lbl.gov>
* main.c: do yy_flex_debug prefix for both C++ and C
-1995-02-06 04:38 Vern Paxson <vern@ee.lbl.gov>
+1995-02-06 Vern Paxson <vern@ee.lbl.gov>
* main.c: fixed program_name tweak again
-1995-01-11 06:00 Vern Paxson <vern@ee.lbl.gov>
+1995-01-11 Vern Paxson <vern@ee.lbl.gov>
* main.c: oops, fixed program_name tweak
-1995-01-11 05:53 Vern Paxson <vern@ee.lbl.gov>
+1995-01-11 Vern Paxson <vern@ee.lbl.gov>
* main.c: program_name is "flex" if argv[0] nil
-1995-01-10 05:43 Vern Paxson <vern@ee.lbl.gov>
+1995-01-10 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.5.0.5
-1995-01-10 05:43 Vern Paxson <vern@ee.lbl.gov>
+1995-01-10 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Documented YY_NUM_RULES
-1995-01-10 05:42 Vern Paxson <vern@ee.lbl.gov>
+1995-01-10 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: added formatted man page to MISC
-1995-01-10 05:42 Vern Paxson <vern@ee.lbl.gov>
+1995-01-10 Vern Paxson <vern@ee.lbl.gov>
* main.c: help messages to stdout
-1995-01-09 17:05 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Added YY_NUM_RULES
-1995-01-09 16:02 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: better fix for #pragma problem
-1995-01-09 16:02 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: better fix for #pragma portability problem
-1995-01-09 07:54 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* misc.c: "# line" -> #line
-1995-01-09 07:41 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* flex.skl, flexdef.h: comment out Turbo C #pragma's
-1995-01-09 07:35 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* scan.l: reset linenum on new file
-1995-01-09 07:13 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: isatty() extern
-1995-01-09 07:13 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* NEWS, flex.1: 2.5.0.4
-1995-01-09 07:12 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* main.c: long options, VMS tweaks
-1995-01-09 07:12 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added parse.c, parse.h for dist MISC directory
-1995-01-09 07:11 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: some "const" cleansing
-1995-01-09 07:11 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* mkskel.sh: skel[] is now const
-1995-01-09 07:11 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* misc.c: some const cleansing
-1995-01-09 07:10 Vern Paxson <vern@ee.lbl.gov>
+1995-01-09 Vern Paxson <vern@ee.lbl.gov>
* scan.l: #line in section 1
-1995-01-05 17:04 Vern Paxson <vern@ee.lbl.gov>
+1995-01-05 Vern Paxson <vern@ee.lbl.gov>
* sym.c: preen
-1994-12-29 10:58 Vern Paxson <vern@ee.lbl.gov>
+1994-12-29 Vern Paxson <vern@ee.lbl.gov>
* configure.in: config.h from conf.in
-1994-12-29 10:58 Vern Paxson <vern@ee.lbl.gov>
+1994-12-29 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: for VMS, delete -> remove
-1994-12-29 10:57 Vern Paxson <vern@ee.lbl.gov>
+1994-12-29 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: config.h.in -> conf.in rm config.h on distclean
-1994-12-29 10:57 Vern Paxson <vern@ee.lbl.gov>
+1994-12-29 Vern Paxson <vern@ee.lbl.gov>
* main.c: stdinit tweaks
-1994-12-29 10:48 Vern Paxson <vern@ee.lbl.gov>
+1994-12-29 Vern Paxson <vern@ee.lbl.gov>
* scan.l: added nostdinit
-1994-12-28 13:47 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* NEWS: added MS-DOS note for 2.5.0.2
-1994-12-28 13:16 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: typos, tweaks
-1994-12-28 10:40 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: removed flexdoc
-1994-12-28 10:35 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: flexdoc/flex merge
-1994-12-28 08:50 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: typos
-1994-12-28 08:45 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* NEWS: typo
-1994-12-28 08:42 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: 2.5 update
-1994-12-28 08:41 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.5.0.2
-1994-12-28 06:55 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* scan.l: fixed sense of %option main implying %option noyywrap
-1994-12-28 06:54 Vern Paxson <vern@ee.lbl.gov>
+1994-12-28 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: YY_FLEX_{MAJOR,MINOR}_VERSION fixed bug in unput
trashing yytext even with %array
-1994-12-17 17:08 Vern Paxson <vern@ee.lbl.gov>
+1994-12-17 Vern Paxson <vern@ee.lbl.gov>
* flex.1: prior to 2.5 update
-1994-12-17 13:41 Vern Paxson <vern@ee.lbl.gov>
+1994-12-17 Vern Paxson <vern@ee.lbl.gov>
* main.c: C++/-P fixes
-1994-12-17 13:40 Vern Paxson <vern@ee.lbl.gov>
+1994-12-17 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: -P fixes constructor, destructor moved to flex.skl
-1994-12-17 13:40 Vern Paxson <vern@ee.lbl.gov>
+1994-12-17 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: YY_SKIP_YYWRAP yyFlexLexer constructor, destructor
-1994-12-15 09:34 Vern Paxson <vern@ee.lbl.gov>
+1994-12-15 Vern Paxson <vern@ee.lbl.gov>
* gen.c: formatting
-1994-12-15 09:30 Vern Paxson <vern@ee.lbl.gov>
+1994-12-15 Vern Paxson <vern@ee.lbl.gov>
* gen.c: fixed bug in adjusting yytext before backing up
-1994-12-10 17:24 Vern Paxson <vern@ee.lbl.gov>
+1994-12-10 Vern Paxson <vern@ee.lbl.gov>
* scan.l: switched scanner itself over to [:xxx:]
-1994-12-10 12:53 Vern Paxson <vern@ee.lbl.gov>
+1994-12-10 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: added YY_FLEX_VERSION
-1994-12-10 12:53 Vern Paxson <vern@ee.lbl.gov>
+1994-12-10 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Fixed CCL-match pattern for [:whatever:]
-1994-12-10 12:52 Vern Paxson <vern@ee.lbl.gov>
+1994-12-10 Vern Paxson <vern@ee.lbl.gov>
* parse.y: treat [:upper:] as [:lower:] if -i
-1994-12-06 16:59 Vern Paxson <vern@ee.lbl.gov>
+1994-12-06 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.5.0.1
-1994-12-06 16:28 Vern Paxson <vern@ee.lbl.gov>
+1994-12-06 Vern Paxson <vern@ee.lbl.gov>
* flex.skl, gen.c: input() maintains BOL
-1994-12-06 16:20 Vern Paxson <vern@ee.lbl.gov>
+1994-12-06 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: check size of buffer in yy_scan_buffer
-1994-12-06 16:08 Vern Paxson <vern@ee.lbl.gov>
+1994-12-06 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: added %option main, fixed missing %*
-1994-12-06 16:08 Vern Paxson <vern@ee.lbl.gov>
+1994-12-06 Vern Paxson <vern@ee.lbl.gov>
* parse.y: added ccl exprs
-1994-12-06 16:07 Vern Paxson <vern@ee.lbl.gov>
+1994-12-06 Vern Paxson <vern@ee.lbl.gov>
* scan.l: added ccl exprs, %option main
-1994-12-06 16:07 Vern Paxson <vern@ee.lbl.gov>
+1994-12-06 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: added %options, ccl exprs
-1994-12-05 16:18 Vern Paxson <vern@ee.lbl.gov>
+1994-12-05 Vern Paxson <vern@ee.lbl.gov>
* misc.c: undid previous change
-1994-12-04 10:30 Vern Paxson <vern@ee.lbl.gov>
+1994-12-04 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Makefile.in from srcdir
-1994-12-04 04:14 Vern Paxson <vern@ee.lbl.gov>
+1994-12-04 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: added skel.c to DISTFILES
-1994-12-04 03:56 Vern Paxson <vern@ee.lbl.gov>
+1994-12-04 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: added YYSTATE alias
-1994-12-04 03:28 Vern Paxson <vern@ee.lbl.gov>
+1994-12-04 Vern Paxson <vern@ee.lbl.gov>
* scan.l: NL is now \r?\n
-1994-12-04 03:28 Vern Paxson <vern@ee.lbl.gov>
+1994-12-04 Vern Paxson <vern@ee.lbl.gov>
* gen.c: use cerr for C++ diagnostics
-1994-12-03 15:16 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: undid YY_UNIX_NEWLINE
-1994-12-03 08:44 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: STDC_HEADERS to check for stdlib
-1994-12-03 08:43 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* configure.in: AC_STDC_HEADERS -> AC_HEADER_STDC
-1994-12-03 08:43 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* misc.c: \n -> '\012'
-1994-12-03 07:20 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added YY_UNIX_NEWLINE
-1994-12-03 06:29 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: BOL changes
-1994-12-03 06:29 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: fixed bug with caseins but not ecs
-1994-12-03 06:27 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* gen.c: BOL changes some casts for Turbo C
-1994-12-03 06:27 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* main.c: messages identify filenames
-1994-12-03 06:26 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Increase slowly if realloc double overflows
-1994-12-03 06:26 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: YY_RULE_SETUP
-1994-12-03 06:26 Vern Paxson <vern@ee.lbl.gov>
+1994-12-03 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Added yy_XX_state %option's Added yy_set_bol
-1994-11-29 11:14 Vern Paxson <vern@ee.lbl.gov>
+1994-11-29 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: don't remove ~ files
-1994-11-24 11:50 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: get CFLAGS from autoconf
-1994-11-24 11:42 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
- * dfa.c, flex.skl, flexdef.h, gen.c, misc.c, parse.y, scan.l,
- sym.c: Brian Madsen's tweaks for Borland
+ * dfa.c, flex.skl, flexdef.h, gen.c, misc.c, parse.y, scan.l, sym.c:
+ Brian Madsen's tweaks for Borland
-1994-11-24 10:50 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
* version.h: 2.5.0
-1994-11-24 10:50 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added do_stdinit
-1994-11-24 10:49 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: Added yy_delete_buffer() in destructor
-1994-11-24 10:48 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added yy_set_interactive, YY_ALWAYS_INTERACTIVE,
- YY_NEVER_INTERACTIVE, YY_NO_INPUT, YY_NO_UNPUT, YY_NO_*_STATE
+ YY_NEVER_INTERACTIVE, YY_NO_INPUT, YY_NO_UNPUT, YY_NO_*_STATE
-1994-11-24 10:48 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
* main.c: Added do_stdinit, Think C hacks
-1994-11-24 10:47 Vern Paxson <vern@ee.lbl.gov>
+1994-11-24 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Added %options for input, always-interactive,
never-interactive, yy_scan_{buffer,bytes,string}
-1994-11-05 12:13 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: size_t #ifdef's for not compiling some statics
-1994-11-05 12:13 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: $(FLEX) config.h
-1994-11-05 12:11 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* configure.in: config.h, size_t, malloc.h, sys/types.h
-1994-11-05 12:10 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: config.h, size_t
-1994-11-05 12:10 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* main.c: yywrap option, no stdin/out init for VMS, mundane tweaks
-1994-11-05 12:09 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* parse.y: alloca, lint tweaks
-1994-11-05 12:09 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* scan.l: %option yywrap size_t tweaks
-1994-11-05 12:08 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: size_t tweaks
-1994-11-05 12:08 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* misc.c: size_t, STDC tweaks
-1994-11-05 10:17 Vern Paxson <vern@ee.lbl.gov>
+1994-11-05 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added yy_scan_{buffer,bytes,string}, plus tweaks
-1994-10-12 17:13 Vern Paxson <vern@ee.lbl.gov>
+1994-10-12 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: made stack code conditional on "stack" option
-1994-10-12 17:13 Vern Paxson <vern@ee.lbl.gov>
+1994-10-12 Vern Paxson <vern@ee.lbl.gov>
* scan.l: added use of "stack" %option
-1994-08-03 07:38 Vern Paxson <vern@ee.lbl.gov>
+1994-08-03 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Fixed fencepost in call to yy_flex_strncpy
-1994-07-25 18:05 Vern Paxson <vern@ee.lbl.gov>
+1994-07-25 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: yy_eof_status -> yy_buffer_status
-1994-07-25 17:22 Vern Paxson <vern@ee.lbl.gov>
+1994-07-25 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: yy_flex_strcpy -> yy_flex_strncpy minor prototype tweak
-1994-07-25 17:21 Vern Paxson <vern@ee.lbl.gov>
+1994-07-25 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Bug fix for matching NUL's at end of token when
interactive. yy_flex_strcpy -> yy_flex_strncpy
-1994-07-25 16:49 Vern Paxson <vern@ee.lbl.gov>
+1994-07-25 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: No YY_USER_ACTION if continued action
-1994-03-16 07:18 Vern Paxson <vern@ee.lbl.gov>
+1994-03-16 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added fix for 8-bit chars returned by input()
-1994-03-16 07:09 Vern Paxson <vern@ee.lbl.gov>
+1994-03-16 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Move definition of yy_flex_strcpy to come after #define
of yytext_ptr
-1994-01-08 05:17 Vern Paxson <vern@ee.lbl.gov>
+1994-01-08 Vern Paxson <vern@ee.lbl.gov>
* mkskel.sh: flex.skel -> flex.skl
-1994-01-08 05:13 Vern Paxson <vern@ee.lbl.gov>
+1994-01-08 Vern Paxson <vern@ee.lbl.gov>
* mkskel.sh: Initial revision
-1993-12-29 12:09 Vern Paxson <vern@ee.lbl.gov>
+1993-12-29 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Fixed scan.c target so "make" detects flex failure
-1993-12-27 10:14 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Added %option's
-1993-12-27 09:57 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Nuked FLEX_FLAGS that are now done using %option
-1993-12-27 09:41 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* parse.y, scan.l: %option
-1993-12-27 09:41 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* main.c: Reworked for %option
-1993-12-27 09:40 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added "unspecified", globals for %option
-1993-12-27 09:40 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* sym.c: start condition #define's go to action file
-1993-12-27 09:40 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Added action_define()
-1993-12-27 05:59 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Minor consolidation using scon scopes etc
-1993-12-27 05:36 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Modified to use scon scopes
-1993-12-27 05:20 Vern Paxson <vern@ee.lbl.gov>
+1993-12-27 Vern Paxson <vern@ee.lbl.gov>
* scan.l: indented rules
-1993-12-26 17:22 Vern Paxson <vern@ee.lbl.gov>
+1993-12-26 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Added scon_stk stuff, format_warn
-1993-12-26 17:22 Vern Paxson <vern@ee.lbl.gov>
+1993-12-26 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added format_warn
-1993-12-26 10:04 Vern Paxson <vern@ee.lbl.gov>
+1993-12-26 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Working checkpoint prior to adding <scon>{ stuff
-1993-12-26 10:04 Vern Paxson <vern@ee.lbl.gov>
+1993-12-26 Vern Paxson <vern@ee.lbl.gov>
- * main.c, flexdef.h: Added in_rule, deleted actvsc
+ * flexdef.h, main.c: Added in_rule, deleted actvsc
-1993-12-26 10:03 Vern Paxson <vern@ee.lbl.gov>
+1993-12-26 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Added doubling of '\'s in filenames
-1993-12-26 10:02 Vern Paxson <vern@ee.lbl.gov>
+1993-12-26 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Added in_rule, doing_rule_action
-1993-12-26 10:02 Vern Paxson <vern@ee.lbl.gov>
+1993-12-26 Vern Paxson <vern@ee.lbl.gov>
* sym.c: Removed actvsc
-1993-12-23 15:44 Vern Paxson <vern@ee.lbl.gov>
+1993-12-23 Vern Paxson <vern@ee.lbl.gov>
* flex.1: -ooutput #line directives credits
-1993-12-23 15:43 Vern Paxson <vern@ee.lbl.gov>
+1993-12-23 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Fixsed sense of test for %array
-1993-12-23 15:42 Vern Paxson <vern@ee.lbl.gov>
+1993-12-23 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.5.0 snapshot for Craig
-1993-12-23 15:41 Vern Paxson <vern@ee.lbl.gov>
+1993-12-23 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Added beginnings of <SCON>{ ... }
-1993-12-23 15:41 Vern Paxson <vern@ee.lbl.gov>
+1993-12-23 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Simplified scanning {}'s
-1993-12-20 04:41 Vern Paxson <vern@ee.lbl.gov>
+1993-12-20 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added <stdlib.h>
-1993-12-17 05:31 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: prototypes for alloc/string routines
-1993-12-17 05:06 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: alloc, string routines internal
-1993-12-17 05:05 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Nuked lib{string,alloc}.c, added dependency of
yylex.o on parse.h
-1993-12-17 05:05 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
* configure.in: Check for string.h
-1993-12-17 05:04 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Use autoconf for string/strings.h yy_flex_XXX ->
flex_XXX
-1993-12-17 05:04 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Added flex_XXX -> yy_flex_XXX wrappers
-1993-12-17 05:04 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
- * sym.c, misc.c, dfa.c: yy_flex_XXX -> flex_XXX
+ * dfa.c, misc.c, sym.c: yy_flex_XXX -> flex_XXX
-1993-12-17 05:03 Vern Paxson <vern@ee.lbl.gov>
+1993-12-17 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: No more WHITESPACE token
-1993-12-16 15:46 Vern Paxson <vern@ee.lbl.gov>
+1993-12-16 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl, FlexLexer.h: Added yy_top_state()
+ * FlexLexer.h, flex.skl: Added yy_top_state()
-1993-12-16 15:44 Vern Paxson <vern@ee.lbl.gov>
+1993-12-16 Vern Paxson <vern@ee.lbl.gov>
* scan.l: simplified comment-scanning using push/pop states
-1993-12-16 15:44 Vern Paxson <vern@ee.lbl.gov>
+1993-12-16 Vern Paxson <vern@ee.lbl.gov>
* parse.y: removed crufty WHITESPACE token, some uses of '\n' token
-1993-12-15 05:23 Vern Paxson <vern@ee.lbl.gov>
+1993-12-15 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: start stack, extern "C++" moved
-1993-12-15 05:23 Vern Paxson <vern@ee.lbl.gov>
+1993-12-15 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: Bug fix for -CF
-1993-12-15 05:23 Vern Paxson <vern@ee.lbl.gov>
+1993-12-15 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h, misc.c: alloc routines take unsigned
-1993-12-15 05:23 Vern Paxson <vern@ee.lbl.gov>
+1993-12-15 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: start-state stacks, alloc routines take unsigned
-1993-12-15 05:08 Vern Paxson <vern@ee.lbl.gov>
+1993-12-15 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h, misc.c: bracket -CF table elements
-1993-12-13 07:33 Vern Paxson <vern@ee.lbl.gov>
+1993-12-13 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Do #bytes computation in {re,}allocate_array() only once
-1993-12-11 12:06 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
- * flexdef.h, gen.c, main.c, misc.c, scan.l, flex.skl, sym.c:
+ * flex.skl, flexdef.h, gen.c, main.c, misc.c, scan.l, sym.c:
yy_str*() -> str*()
-1993-12-11 09:40 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in, dfa.c, flexdef.h, gen.c, main.c, misc.c, nfa.c,
parse.y, scan.l, sym.c: -o option
-1993-12-11 06:09 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* gen.c: lint tweak
-1993-12-11 06:00 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Expanded on extern "C++" news item
-1993-12-11 05:58 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.4.5
-1993-12-11 05:56 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added yy_fill_buffer
-1993-12-11 05:56 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* gen.c: is_interactive -> yy_is_interactive
-1993-12-11 05:34 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Updated credits
-1993-12-11 05:33 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Fixed typo in "uninstall" target
-1993-12-11 05:33 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Updated comment regarding 0-based vs. 1-based arrays for
-CF.
-1993-12-11 05:30 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: Initialize dfaacc[0] for -CF representation Fixed minor
memory leak
-1993-12-11 05:29 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* main.c: #include "FlexLexer.h" -> <FlexLexer.h>
-1993-12-11 05:27 Vern Paxson <vern@ee.lbl.gov>
+1993-12-11 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: Added extern "C++" wrapper
-1993-12-09 08:58 Vern Paxson <vern@ee.lbl.gov>
+1993-12-09 Vern Paxson <vern@ee.lbl.gov>
* main.c: Detect REJECT etc. before generating YY_USES_REJECT!
-1993-12-09 08:58 Vern Paxson <vern@ee.lbl.gov>
+1993-12-09 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Fixed bug in interactive reads where char is unsigned
-1993-12-09 08:57 Vern Paxson <vern@ee.lbl.gov>
+1993-12-09 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Fixed bug in treating '$' as variable trailing context
-1993-12-09 08:57 Vern Paxson <vern@ee.lbl.gov>
+1993-12-09 Vern Paxson <vern@ee.lbl.gov>
* version.h: 2.4.5
-1993-12-07 08:08 Vern Paxson <vern@ee.lbl.gov>
+1993-12-07 Vern Paxson <vern@ee.lbl.gov>
* README: pretester update
-1993-12-07 06:16 Vern Paxson <vern@ee.lbl.gov>
+1993-12-07 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.4.4
-1993-12-07 06:15 Vern Paxson <vern@ee.lbl.gov>
+1993-12-07 Vern Paxson <vern@ee.lbl.gov>
* flex.1: LexError(), C++ experiment warning, credits
-1993-12-07 06:11 Vern Paxson <vern@ee.lbl.gov>
+1993-12-07 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Fixed 8-bit bug
-1993-12-07 06:10 Vern Paxson <vern@ee.lbl.gov>
+1993-12-07 Vern Paxson <vern@ee.lbl.gov>
- * gen.c, flex.skl: Fixed nasty 8-bit bugs
+ * flex.skl, gen.c: Fixed nasty 8-bit bugs
-1993-12-07 05:18 Vern Paxson <vern@ee.lbl.gov>
+1993-12-07 Vern Paxson <vern@ee.lbl.gov>
- * dfa.c, ecs.c, flexdef.h, gen.c, main.c, nfa.c, tblcmp.c:
+ * dfa.c, ecs.c, flexdef.h, gen.c, main.c, nfa.c, tblcmp.c:
{min,max,abs} -> {MIN,MAX,ABS}
-1993-12-07 05:11 Vern Paxson <vern@ee.lbl.gov>
+1993-12-07 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h, flex.skl: Support for yyFlexLexer::LexerError
-1993-12-06 04:43 Vern Paxson <vern@ee.lbl.gov>
+1993-12-06 Vern Paxson <vern@ee.lbl.gov>
* version.h: 2.4.4
-1993-12-05 12:11 Vern Paxson <vern@ee.lbl.gov>
+1993-12-05 Vern Paxson <vern@ee.lbl.gov>
* flex.1: credits update
-1993-12-05 12:08 Vern Paxson <vern@ee.lbl.gov>
+1993-12-05 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: very minor "install" tweaks
-1993-12-05 12:07 Vern Paxson <vern@ee.lbl.gov>
+1993-12-05 Vern Paxson <vern@ee.lbl.gov>
* flex.skl, nfa.c: YY_USER_ACTION generated now for each case in
action switch
-1993-12-04 17:02 Vern Paxson <vern@ee.lbl.gov>
+1993-12-04 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Fixed bug in pointing yyin at a new file and resuming
scanning
-1993-12-03 17:45 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Added note regarding g++ 2.5.X
-1993-12-03 17:20 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* flex.1: updated credits
-1993-12-03 17:20 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* NEWS: ranlib addition for 2.4.3
-1993-12-03 17:19 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Minor tweak to last change
-1993-12-03 17:18 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: run ranlib on libfl.a
-1993-12-03 17:02 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Hopefully last update prior to 2.4.3
-1993-12-03 16:59 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h, gen.c, misc.c, sym.c: lint tweaks
-1993-12-03 16:35 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added exec_prefix
-1993-12-03 16:35 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* flex.1: credit update
-1993-12-03 16:35 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: lint tweak
-1993-12-03 07:50 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* NEWS: FlexLexer.h fixed for separate inclusion
-1993-12-03 07:49 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl, FlexLexer.h, main.c: mods so FlexLexer.h can be
- included separately
+ * FlexLexer.h, flex.skl, main.c: mods so FlexLexer.h can be included
+ separately
-1993-12-03 07:47 Vern Paxson <vern@ee.lbl.gov>
+1993-12-03 Vern Paxson <vern@ee.lbl.gov>
* flex.1: -F incompatible with -+
-1993-12-02 17:18 Vern Paxson <vern@ee.lbl.gov>
+1993-12-02 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Elaborated comments for 2.4.3
-1993-12-02 16:59 Vern Paxson <vern@ee.lbl.gov>
+1993-12-02 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.4.3
-1993-12-02 16:58 Vern Paxson <vern@ee.lbl.gov>
+1993-12-02 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Updated message regarding missing libfl.a routines Added
thanks to Noah Friedman
-1993-12-02 16:52 Vern Paxson <vern@ee.lbl.gov>
+1993-12-02 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added libstring.c Modified "lint" target to use
-Dconst= Added a.out, lex.yy.cc to sundry clean targets
-1993-12-02 16:52 Vern Paxson <vern@ee.lbl.gov>
+1993-12-02 Vern Paxson <vern@ee.lbl.gov>
- * gen.c, scan.l, sym.c, misc.c, main.c, flexdef.h, flex.skl: Use
+ * flex.skl, flexdef.h, gen.c, main.c, misc.c, scan.l, sym.c: Use
yy_strXXX() routines instead of <string.h>
-1993-12-01 06:58 Vern Paxson <vern@ee.lbl.gov>
+1993-12-01 Vern Paxson <vern@ee.lbl.gov>
* version.h: 2.4.3
-1993-12-01 06:58 Vern Paxson <vern@ee.lbl.gov>
+1993-12-01 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h, misc.c: yy_flex_xmalloc() moved to misc.c
-1993-12-01 06:58 Vern Paxson <vern@ee.lbl.gov>
+1993-12-01 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Fixed bug in yy_fatal_error()
-1993-12-01 02:59 Vern Paxson <vern@ee.lbl.gov>
+1993-12-01 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: ... and remove plain tar file after compression
-1993-12-01 02:57 Vern Paxson <vern@ee.lbl.gov>
+1993-12-01 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.4.2
-1993-12-01 02:56 Vern Paxson <vern@ee.lbl.gov>
+1993-12-01 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Produce both compress'd and gzip'd distribution tar
files
-1993-12-01 02:52 Vern Paxson <vern@ee.lbl.gov>
+1993-12-01 Vern Paxson <vern@ee.lbl.gov>
* version.h: Release 2.4.2
-1993-11-30 18:37 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* NEWS: -a -> -Ca
-1993-11-30 15:59 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* README: described configuration files in manifest
-1993-11-30 15:58 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added intermediate step of copying MISC/alloca.c ->
alloca.c Included CPPFLAGS when compiling alloca.c
-1993-11-30 10:51 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* README: Credit to 2.4 pre-testers.
-1993-11-30 08:01 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Fixed nasty bug in short/long decl decision
-1993-11-30 08:01 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
- * flexdef.h: Lowered MAX_SHORT out of increased general paranoia.
+ * flexdef.h: Lowered MAX_SHORT out of increased general paranoia.
Added yy_flex_xmalloc() proto
-1993-11-30 08:00 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* main.c: Fixed very minor typo in -v output
-1993-11-30 08:00 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Removed vestigal cast to (char) in isupper() call
-1993-11-30 07:59 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Added casts to unsigned Char for isascii() calls
-1993-11-30 07:59 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Added #ifdef chud for alloca()
-1993-11-30 07:59 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added alloca
-1993-11-30 07:35 Vern Paxson <vern@ee.lbl.gov>
+1993-11-30 Vern Paxson <vern@ee.lbl.gov>
* configure.in: Add AC_ALLOCA if using bison
-1993-11-29 16:35 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added intermediate file going scan.l -> scan.c
-1993-11-29 12:18 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Removed parse.{c,h} from distribution files, since
- they may not be all that portable.
+ they may not be all that portable.
-1993-11-29 12:13 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Fixed %array YYLMAX headaches, added error message if
- buffer needs growing but REJECT used
+ buffer needs growing but REJECT used
-1993-11-29 12:13 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* gen.c, main.c: Fixed YYLMAX headaches
-1993-11-29 12:13 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Documented that buffer can't grow if REJECT used
-1993-11-29 12:12 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added parse.{c,h} to dist files
-1993-11-29 11:40 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* flex.skl, flexdef.h, gen.c, main.c, misc.c, scan.l: Fixed to
buffer section 1 definitions
-1993-11-29 11:38 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* sym.c: Fixed ANSI-C glitch with '%' operator
-1993-11-29 09:57 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Fixed mis-definition of ndlookup()
-1993-11-29 06:04 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.4 -> 2.4.1
-1993-11-29 06:02 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
- * Makefile.in: Added install.sh, mkinstalldirs to distribution
- files
+ * Makefile.in: Added install.sh, mkinstalldirs to distribution files
-1993-11-29 05:51 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Added Nathan Zelle, "promoted" Francois
-1993-11-29 05:37 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: only "realclean" removes flex dist depends on flex
-1993-11-29 05:37 Vern Paxson <vern@ee.lbl.gov>
+1993-11-29 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h, misc.c: myctoi takes char[] instead of Char[]
-1993-11-28 11:46 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: -a -> -Ca all_lower, all_upper -> work on char*
-1993-11-28 11:46 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added -Ca to bigcheck
-1993-11-28 11:45 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
* main.c: -a -> -Ca; fixed help output
-1993-11-28 11:45 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
* dfa.c, flex.1: -a -> -Ca
-1993-11-28 11:44 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
* misc.c: all_lower, all_upper work on char*
-1993-11-28 11:44 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
- * scan.l: Fixed some casts now that yytext is always char* and
- never unsigned char*
+ * scan.l: Fixed some casts now that yytext is always char* and never
+ unsigned char*
-1993-11-28 11:42 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Francois' tweaks
-1993-11-28 11:39 Vern Paxson <vern@ee.lbl.gov>
+1993-11-28 Vern Paxson <vern@ee.lbl.gov>
* configure.in: AC_LN_S, AC_STDC_HEADERS (but not AC_ALLOCA)
-1993-11-27 10:10 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* NEWS: fixed typo
-1993-11-27 10:03 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Don't remove dist directory
-1993-11-27 10:01 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Include liballoc.c in lint targets
-1993-11-27 10:01 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* misc.c: lint tweak
-1993-11-27 09:14 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Added -l compression to bigcheck
-1993-11-27 09:07 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: permission tweaking for "dist"
-1993-11-27 09:02 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: more "dist" tweaks
-1993-11-27 08:59 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Changed "make dist" to use version.h, include scan.c
in initial dir copy
-1993-11-27 08:44 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* version.h: 2.4.1
-1993-11-27 08:44 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* README: Revised as per Francois Pinard
-1993-11-27 08:41 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* COPYING: flex.skel -> flex.skl
-1993-11-27 08:37 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Updated date of 2.4 release
-1993-11-27 08:29 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Removed manual & nroff output from distribution
-1993-11-27 08:20 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.4.1 release
-1993-11-27 07:57 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* configure.in: Initial revision
-1993-11-27 07:56 Vern Paxson <vern@ee.lbl.gov>
+1993-11-27 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Merge w/ 2.4.1 changes added "dist2" target
-1993-11-26 12:02 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
* Makefile.in: Initial revision
-1993-11-26 11:59 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Removed #ifndef FILE protection from include of stdio
-1993-11-26 11:40 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Added Francois Pinard to distribution headache helpers
-1993-11-26 11:10 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: Modified C++ scanners to get input a character at a
- time for interactive scanners.
+ * flex.skl: Modified C++ scanners to get input a character at a time
+ for interactive scanners.
-1993-11-26 11:09 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
* main.c: Added YY_INTERACTIVE.
-1993-11-26 11:09 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Put definitions inside ()'s so we can test -l option for
"make bigcheck"
-1993-11-26 11:09 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Documented YY_INTERACTIVE.
-1993-11-26 10:08 Vern Paxson <vern@ee.lbl.gov>
+1993-11-26 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl, flexdef.h, flex.1, gen.c, main.c, parse.y, scan.l: -l
+ * flex.1, flex.skl, flexdef.h, gen.c, main.c, parse.y, scan.l: -l
lex compatibility flag
-1993-11-20 10:05 Vern Paxson <vern@ee.lbl.gov>
+1993-11-20 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: Support for read()/fread() section 1 definitions
- precede default macro definitions
+ * flex.skl: Support for read()/fread() section 1 definitions precede
+ default macro definitions
-1993-11-20 10:05 Vern Paxson <vern@ee.lbl.gov>
+1993-11-20 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added use_read global
-1993-11-20 10:04 Vern Paxson <vern@ee.lbl.gov>
+1993-11-20 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Cleaner definition for yymore() Fixed string broken across
multiple lines
-1993-11-20 10:04 Vern Paxson <vern@ee.lbl.gov>
+1993-11-20 Vern Paxson <vern@ee.lbl.gov>
* main.c: Added -Cr
-1993-11-20 10:03 Vern Paxson <vern@ee.lbl.gov>
+1993-11-20 Vern Paxson <vern@ee.lbl.gov>
* misc.c: K&R declaration for check_char()
-1993-11-20 09:56 Vern Paxson <vern@ee.lbl.gov>
+1993-11-20 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Documented -Cr
-1993-11-20 09:31 Vern Paxson <vern@ee.lbl.gov>
+1993-11-20 Vern Paxson <vern@ee.lbl.gov>
* flex.1: No need to #undef before redefining prior to -Cr
documentation
-1993-11-10 05:27 Vern Paxson <vern@ee.lbl.gov>
+1993-11-10 Vern Paxson <vern@ee.lbl.gov>
* README: Heavily massaged for 2.4
-1993-11-10 05:27 Vern Paxson <vern@ee.lbl.gov>
+1993-11-10 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Added Landon Noll to thanks.
-1993-11-10 05:07 Vern Paxson <vern@ee.lbl.gov>
+1993-11-10 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.4 release
-1993-11-10 05:06 Vern Paxson <vern@ee.lbl.gov>
+1993-11-10 Vern Paxson <vern@ee.lbl.gov>
* flex.1: 2.4 documentation
-1993-11-10 05:05 Vern Paxson <vern@ee.lbl.gov>
+1993-11-10 Vern Paxson <vern@ee.lbl.gov>
- * main.c: Added global to remember -P prefix so it can be written
- in -v summary. Alphabetized prefix generation, added yywrap
+ * main.c: Added global to remember -P prefix so it can be written in
+ -v summary. Alphabetized prefix generation, added yywrap
-1993-11-09 16:11 Vern Paxson <vern@ee.lbl.gov>
+1993-11-09 Vern Paxson <vern@ee.lbl.gov>
* version.h: updated date for 2.4.0 :-(
-1993-10-10 11:28 Vern Paxson <vern@ee.lbl.gov>
+1993-10-10 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: Whitespace tweaking
-1993-10-10 10:52 Vern Paxson <vern@ee.lbl.gov>
+1993-10-10 Vern Paxson <vern@ee.lbl.gov>
* main.c: Use DEFAULT_CSIZE only if not using equivalence classes.
-1993-10-10 10:47 Vern Paxson <vern@ee.lbl.gov>
+1993-10-10 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Checkpoint prior to final 2.4 update
-1993-10-04 17:15 Vern Paxson <vern@ee.lbl.gov>
+1993-10-04 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Raw 2.4 changes
-1993-10-04 12:44 Vern Paxson <vern@ee.lbl.gov>
+1993-10-04 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: osfcn.h -> unistd.h
-1993-10-04 06:56 Vern Paxson <vern@ee.lbl.gov>
+1993-10-04 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added "static" to definition of yy_fatal_error as well
as fwd decl.
-1993-10-04 06:17 Vern Paxson <vern@ee.lbl.gov>
+1993-10-04 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added yy_fatal_error function.
-1993-10-03 13:38 Vern Paxson <vern@ee.lbl.gov>
-
- * flex.skl: Got rid of (char *) casts of yytext, no longer needed.
+1993-10-03 Vern Paxson <vern@ee.lbl.gov>
-1993-10-03 13:34 Vern Paxson <vern@ee.lbl.gov>
+ * flex.skl, gen.c: Got rid of (char *) casts of yytext, no longer
+ needed.
- * gen.c: Got rid of (char *) casts of yytext, no longer needed.
-
-1993-10-03 12:05 Vern Paxson <vern@ee.lbl.gov>
+1993-10-03 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: YY_CHAR -> char added YYText(), YYLeng()
-1993-10-03 12:01 Vern Paxson <vern@ee.lbl.gov>
+1993-10-03 Vern Paxson <vern@ee.lbl.gov>
- * gen.c, flex.skl: Minimized use of YY_CHAR
+ * flex.skl, gen.c: Minimized use of YY_CHAR
-1993-10-03 12:01 Vern Paxson <vern@ee.lbl.gov>
+1993-10-03 Vern Paxson <vern@ee.lbl.gov>
* main.c: Added "flex++" feature Minimized use of YY_CHAR
-1993-10-02 11:25 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
* main.c: Clarified help message for -S
-1993-10-02 11:23 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
* libyywrap.c, version.h: Initial revision
-1993-10-02 11:20 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
* main.c: If -+ used, output to lex.yy.cc
-1993-10-02 11:19 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h, flex.skl: Switched from FILE*'s to stream's
-1993-10-02 09:44 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added expand_nxt_chk() extern.
-1993-10-02 09:38 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added dynamic buffer growing. Added yyless() for
section 3.
-1993-10-02 09:37 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
- * main.c, flexdef.h, dfa.c, gen.c: Added -a option for long-align.
+ * dfa.c, flexdef.h, gen.c, main.c: Added -a option for long-align.
-1993-10-02 09:36 Vern Paxson <vern@ee.lbl.gov>
+1993-10-02 Vern Paxson <vern@ee.lbl.gov>
* scan.l: formfeed no longer considered whitespace
-1993-09-21 16:45 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Nuked FILENAMESIZE
-1993-09-21 16:45 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* main.c: yyflexlexer.h -> FlexLexer.h minor portability tweak
-1993-09-21 16:45 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Added start condition to EOF trace output
-1993-09-21 16:44 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: Added YY_START changed yyFlexLexer to define yylex()
+ * flex.skl: Added YY_START changed yyFlexLexer to define yylex()
-1993-09-21 16:44 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Minor portability tweaks
-1993-09-21 16:43 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: Split into two classes, one fully abstract. yylex()
no longer abstract in yyFlexLexer
-1993-09-21 16:42 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* scan.l: PC lint tweak
-1993-09-21 16:42 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* parse.y: YYSTYPE #define'd to int
-1993-09-21 16:42 Vern Paxson <vern@ee.lbl.gov>
+1993-09-21 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: minor lint tweak
-1993-09-16 16:53 Vern Paxson <vern@ee.lbl.gov>
+1993-09-16 Vern Paxson <vern@ee.lbl.gov>
* FlexLexer.h: Initial revision
-1993-09-16 16:38 Vern Paxson <vern@ee.lbl.gov>
+1993-09-16 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Delete prototypes for Unix system calls.
-1993-09-16 16:31 Vern Paxson <vern@ee.lbl.gov>
+1993-09-16 Vern Paxson <vern@ee.lbl.gov>
- * yylex.c, tblcmp.c, sym.c, nfa.c, misc.c, main.c, gen.c, ecs.c,
- ccl.c, dfa.c, scan.l, parse.y: nuked static RCS string
+ * ccl.c, dfa.c, ecs.c, gen.c, main.c, misc.c, nfa.c, parse.y,
+ scan.l, sym.c, tblcmp.c, yylex.c: nuked static RCS string
-1993-09-16 16:28 Vern Paxson <vern@ee.lbl.gov>
+1993-09-16 Vern Paxson <vern@ee.lbl.gov>
* main.c: %array not allowed with C++ scanners
-1993-09-16 16:27 Vern Paxson <vern@ee.lbl.gov>
+1993-09-16 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Fixed bugs regarding %{%} code in section 2 prolog %array
not allowed with C++ scanners
-1993-08-25 13:11 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added C_plus_plus flag.
-1993-08-25 13:11 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: First version of C/C++ skeleton
-1993-08-25 13:10 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* gen.c: yy_state_type declared earlier. Made a bunch of statics
only output if not -+
-1993-08-25 12:59 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* main.c: Added -+ option, updated usage() output, rearranged some
- generated code to come at the right point in the output for
+ generated code to come at the right point in the output for
yyflexlexer.h.
-1993-08-25 12:52 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Added %+/%-/%* to skelout()
-1993-08-25 12:51 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* scan.l: EOF in section 2 prolog leads to section 0, not section 3
-1993-08-25 12:40 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: Dump promotion of EOF in section 2 to turn on section 3;
- instead just treat it like a final EOF
+ instead just treat it like a final EOF
-1993-08-25 12:40 Vern Paxson <vern@ee.lbl.gov>
+1993-08-25 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: yy_nxt table should be "const"
-1993-08-24 16:46 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
- * flexdef.h: Removed a lot of #ifdef chud "backtracking" ->
- "backing up"
+ * flexdef.h: Removed a lot of #ifdef chud "backtracking" -> "backing
+ up"
-1993-08-24 16:45 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
* main.c: "backtracking" -> "backing up" got rid of time reports
-1993-08-24 16:44 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
* gen.c: "backtracking" -> "backing up" some portability tweaks
fixed to only call flexscan() when done if known to be in section 3
-1993-08-24 16:43 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
* misc.c: isascii() moved to flexdef.h nuked flex_gettime()
-1993-08-24 16:43 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Fixed bug with empty section 2
-1993-08-24 16:42 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: Chucked definition of isascii()
-1993-08-24 16:40 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: preserve yytext on input() bug fix when combining
yyless() with yymore() checkpoint prior to C++ option
-1993-08-24 16:37 Vern Paxson <vern@ee.lbl.gov>
+1993-08-24 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: "backtracking" -> "backing up"
-1993-07-09 15:47 Vern Paxson <vern@ee.lbl.gov>
+1993-07-09 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Fixed to not generate extra EOF's after reading one.
-1993-07-05 17:52 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* main.c: Spit out definition of YY_CHAR early
-1993-07-05 17:52 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: Some rearranging to make sure things get declared in
- the right order
+ * flex.skl: Some rearranging to make sure things get declared in the
+ right order
-1993-07-05 17:37 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: Some comment fixes as per Wilhelms
-1993-07-05 17:37 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Nuked #undef of yywrap, now that it's a function
-1993-07-05 17:36 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Fixed bug with Z-a character classes as per Wilhelms
-1993-07-05 17:36 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: added check_char call in mkstate() to prevent bad xtion
chars
-1993-07-05 17:35 Vern Paxson <vern@ee.lbl.gov>
-
- * misc.c: Added check_char()
-
-1993-07-05 17:35 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Fixed some reallocation bugs, etc. as per Wilhelms
-1993-07-05 17:34 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added check_char(), readable_form()
-1993-07-05 17:34 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added #ifndef's around #define's to let user override
Moved a bunch of definitions prior to section 1
-1993-07-05 17:32 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: Wilhems bug fixes.
-1993-07-05 17:31 Vern Paxson <vern@ee.lbl.gov>
+1993-07-05 Vern Paxson <vern@ee.lbl.gov>
- * ccl.c: Added check_char()
+ * ccl.c, misc.c: Added check_char()
-1993-06-12 09:44 Vern Paxson <vern@ee.lbl.gov>
+1993-06-12 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Changed to use yy_flex_alloc() and friends
-1993-06-12 09:43 Vern Paxson <vern@ee.lbl.gov>
+1993-06-12 Vern Paxson <vern@ee.lbl.gov>
* main.c: Added -P flag
-1993-06-12 09:42 Vern Paxson <vern@ee.lbl.gov>
+1993-06-12 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Fixed bug in lex % directives
-1993-06-12 09:42 Vern Paxson <vern@ee.lbl.gov>
+1993-06-12 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Modified to use yy_flex_alloc() and friends
-1993-06-12 09:42 Vern Paxson <vern@ee.lbl.gov>
+1993-06-12 Vern Paxson <vern@ee.lbl.gov>
* sym.c: Modified to use yy_flex_alloc()
-1993-06-12 09:41 Vern Paxson <vern@ee.lbl.gov>
+1993-06-12 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Modified to use yy_flex_alloc() and friends Moved some
globals earlier in the file to permit access in section 1
-1993-06-12 09:40 Vern Paxson <vern@ee.lbl.gov>
+1993-06-12 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: Got rid of code needed for %t
-1993-04-14 18:41 Vern Paxson <vern@ee.lbl.gov>
+1993-04-14 Vern Paxson <vern@ee.lbl.gov>
* ccl.c, dfa.c, ecs.c, flex.skl, flexdef.h, gen.c, libmain.c,
- main.c, misc.c, nfa.c, parse.y, scan.l, sym.c, tblcmp.c, yylex.c:
+ main.c, misc.c, nfa.c, parse.y, scan.l, sym.c, tblcmp.c, yylex.c:
Reformatting.
-1993-04-05 16:38 Vern Paxson <vern@ee.lbl.gov>
+1993-04-05 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Fixed bug in description of backtracking
-1993-04-05 16:37 Vern Paxson <vern@ee.lbl.gov>
+1993-04-05 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.3.8
-1993-04-05 16:37 Vern Paxson <vern@ee.lbl.gov>
+1993-04-05 Vern Paxson <vern@ee.lbl.gov>
- * main.c, flex.skl: %array support
+ * flex.skl, main.c: %array support
-1993-04-05 16:36 Vern Paxson <vern@ee.lbl.gov>
+1993-04-05 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Added non-STDC clause for '\a'
-1993-04-05 16:35 Vern Paxson <vern@ee.lbl.gov>
+1993-04-05 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Fixed subtle problems regarding '*'s in comments
%pointer/%array match entire lines
-1993-04-05 16:35 Vern Paxson <vern@ee.lbl.gov>
+1993-04-05 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Added %array support
-1993-02-06 16:08 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* README: Finally updated email addr
-1993-02-06 16:08 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Mostly .LP -> .PP
-1993-02-06 16:06 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: [no log message]
-1993-02-06 16:05 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* main.c, scan.l: A lot of tweaks ...
-1993-02-06 16:04 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: reallocate_character_array -> reallocate_Character_array
-1993-02-06 16:04 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
- * gen.c: Bug/lint fixes Modified to work with "action" array
- instead of temp file
+ * gen.c: Bug/lint fixes Modified to work with "action" array instead
+ of temp file
-1993-02-06 16:03 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* sym.c: Fixed bug in 8-bit hashing
-1993-02-06 16:03 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* parse.y: numerous bug fixes extra formatting of error/warning
messages added support of <*>, partial support for nested start
conditions
-1993-02-06 16:01 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* ecs.c: Remove %t cruft
-1993-02-06 16:01 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Beginning of %pointer/%array support
-1993-02-06 16:00 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: Added keeping track of which rules are useful fixed a
fencepost error in checking for scanners that require -8
-1993-02-06 15:59 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: Added checking for whether rules are useful modified to
work with internal "action" array
-1993-02-06 15:58 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Added internal "action" array, internal skeleton,
zero_out() in lieu of bzero
-1993-02-06 15:58 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: Fixed a bunch of fencepost errors in increasing tables.
-1993-02-06 15:57 Vern Paxson <vern@ee.lbl.gov>
+1993-02-06 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: -Wall fix
-1991-03-28 07:01 Vern Paxson <vern@ee.lbl.gov>
+1991-03-28 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Fixed out-of-bounds access bug; patch #7 for release 2.3
-1991-03-28 07:00 Vern Paxson <vern@ee.lbl.gov>
+1991-03-28 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Patch #7 for 2.3
-1990-10-23 10:51 Vern Paxson <vern@ee.lbl.gov>
+1990-10-23 Vern Paxson <vern@ee.lbl.gov>
* gen.c: fixed missing "rule_type" entry for end-of-buffer action
-1990-08-29 08:11 Vern Paxson <vern@ee.lbl.gov>
+1990-08-29 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Fixed yymore() but in not resetting yy_more_len
-1990-08-29 08:10 Vern Paxson <vern@ee.lbl.gov>
+1990-08-29 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Patch #6 for 2.3
-1990-08-16 16:22 Vern Paxson <vern@ee.lbl.gov>
+1990-08-16 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Patch #5
-1990-08-13 20:10 Vern Paxson <vern@ee.lbl.gov>
+1990-08-14 Vern Paxson <vern@ee.lbl.gov>
* misc.c: fixed comment in myesc()
-1990-08-13 20:07 Vern Paxson <vern@ee.lbl.gov>
+1990-08-14 Vern Paxson <vern@ee.lbl.gov>
* NEWS: fixed date in patch #4
-1990-08-13 20:05 Vern Paxson <vern@ee.lbl.gov>
+1990-08-14 Vern Paxson <vern@ee.lbl.gov>
* NEWS: patch #4
-1990-08-13 20:01 Vern Paxson <vern@ee.lbl.gov>
+1990-08-14 Vern Paxson <vern@ee.lbl.gov>
* misc.c: fixed hexadecimal escapes; added is_hex_digit()
-1990-08-03 10:12 Vern Paxson <vern@ee.lbl.gov>
+1990-08-03 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Patch #3
-1990-08-03 10:09 Vern Paxson <vern@ee.lbl.gov>
+1990-08-03 Vern Paxson <vern@ee.lbl.gov>
* flex.skl, flexdef.h: changed to include <stddef.h> for __GNUC__
-1990-08-01 21:03 Vern Paxson <vern@ee.lbl.gov>
+1990-08-02 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.3 patch #2
-1990-08-01 21:01 Vern Paxson <vern@ee.lbl.gov>
+1990-08-02 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: Another try at getting the malloc() definitions
- correct; this time for g++, too
+ * flex.skl: Another try at getting the malloc() definitions correct;
+ this time for g++, too
-1990-08-01 20:30 Vern Paxson <vern@ee.lbl.gov>
+1990-08-02 Vern Paxson <vern@ee.lbl.gov>
* flex.skl, flexdef.h: fixed to declare malloc() and free() by hand
if __GNUC__
-1990-07-28 12:53 Vern Paxson <vern@ee.lbl.gov>
+1990-07-28 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Changed to get malloc definition in identical fashion
to that used by flex.skel
-1990-06-27 20:43 Vern Paxson <vern@ee.lbl.gov>
+1990-06-28 Vern Paxson <vern@ee.lbl.gov>
* NEWS: [no log message]
-1990-06-27 20:40 Vern Paxson <vern@ee.lbl.gov>
+1990-06-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Fixed bug in mini-scanner examle Fixed bug in YY_INPUT
redefinition yylineno defense reentrancy documentation Something
else which I forget.
-1990-06-27 19:47 Vern Paxson <vern@ee.lbl.gov>
+1990-06-27 Vern Paxson <vern@ee.lbl.gov>
* COPYING, ccl.c, dfa.c, ecs.c, flexdef.h, gen.c, main.c, misc.c,
nfa.c, parse.y, scan.l, sym.c, tblcmp.c, yylex.c: 4.4 BSD copyright
-1990-05-26 13:31 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* README: Changed prolog to reflect 2.3 release.
-1990-05-26 13:29 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* NEWS: pointed reader at Makefile instead of README for porting
considerations added Makefile comments: support for SCO Unix;
parameterization
-1990-05-26 13:24 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added DONT_HAVE_STDLIB_H and declarations of malloc()
-1990-05-26 13:16 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.3 changes
-1990-05-26 13:02 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
- * flex.1: documentation on new features Comment regarding Ove's
- work ^foo|bar difference between flex / lex yyin initialization
+ * flex.1: documentation on new features Comment regarding Ove's work
+ ^foo|bar difference between flex / lex yyin initialization
difference documented that yy_switch_to_buffer can be used in
yywrap() documented that # comments are deprecated
-1990-05-26 12:56 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* main.c: declared void functions as such added prototypes for
forward references changed to check for error status when closing
files
-1990-05-26 12:54 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: Added macro definition for isascii() if not already
present
-1990-05-26 12:53 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* sym.c: declared void functions as such added prototypes for
forward references changed to use format_pinpoint_message where
appropriate
-1990-05-26 12:53 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* scan.l: declared void functions as such changed to strip #
comments, as documented moved #undef of yywrap() to before include
- of flexdef, so prototype doesn't get screwed up
+ of flexdef, so prototype doesn't get screwed up
-1990-05-26 12:52 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* parse.y: introduced format_pinpoint_message() declared void
functions as such changed lone <<EOF>> to apply to all outstanding
start conditions
-1990-05-26 12:51 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* nfa.c, tblcmp.c: declared void functions as such added prototypes
for forward references
-1990-05-26 12:50 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* misc.c: declared void functions as such prototypes for forward
- references shuffled around some routines to make the order perhaps
- a little more logical changed memory references to use void*
- instead of char*
+ references shuffled around some routines to make the order perhaps a
+ little more logical changed memory references to use void* instead
+ of char*
-1990-05-26 12:50 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* libmain.c: Added declaration of arguments made yylex() a function
-1990-05-26 12:48 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* gen.c: prototypes for forward references declared void functions
as such yy_flex_debug testing of error on file closes casts to void
for sprintf() and strcpy()
-1990-05-26 12:42 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added prototypes changed memory allocation routines to
deal with void*'s instead of char*'s some rearranging for VMS
-1990-05-26 12:40 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Added YY_USER_INIT Added yy_new_buffer() alias for
yy_create_buffer() fixed (hopefully) malloc declaration headaches
-1990-05-26 12:40 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* ecs.c: declared void functions as such declared void functions as
such
-1990-05-26 12:39 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: prototypes for forward references declared void functions
as such
-1990-05-26 12:38 Vern Paxson <vern@ee.lbl.gov>
+1990-05-26 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: Declared void functions as such
-1990-04-12 07:03 Vern Paxson <vern@ee.lbl.gov>
+1990-04-12 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: added fix for allowing yy_switch_to_buffer() in
- yywrap()
+ * flex.skl: added fix for allowing yy_switch_to_buffer() in yywrap()
-1990-04-03 10:09 Vern Paxson <vern@ee.lbl.gov>
+1990-04-03 Vern Paxson <vern@ee.lbl.gov>
* NEWS: patch #3 - -I fix
-1990-03-29 21:43 Vern Paxson <vern@ee.lbl.gov>
+1990-03-30 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Changed generation of archaic "continue" to "goto
yy_find_action"
-1990-03-27 07:06 Vern Paxson <vern@ee.lbl.gov>
+1990-03-27 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Patch #2 changes
-1990-03-27 07:03 Vern Paxson <vern@ee.lbl.gov>
+1990-03-27 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: fixed fencepost errors with yy_buf_size and detecting
NUL's
-1990-03-26 11:41 Vern Paxson <vern@ee.lbl.gov>
+1990-03-26 Vern Paxson <vern@ee.lbl.gov>
* NEWS: [no log message]
-1990-03-26 11:38 Vern Paxson <vern@ee.lbl.gov>
+1990-03-26 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: g++ tweaks
-1990-03-23 09:25 Vern Paxson <vern@ee.lbl.gov>
+1990-03-23 Vern Paxson <vern@ee.lbl.gov>
* NEWS: Changes for Patch #1.
-1990-03-23 09:20 Vern Paxson <vern@ee.lbl.gov>
+1990-03-23 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: fix for g++
-1990-03-23 09:18 Vern Paxson <vern@ee.lbl.gov>
+1990-03-23 Vern Paxson <vern@ee.lbl.gov>
* flex.1: minor typos and formatting changes. Removed BITNET
address.
-1990-03-23 09:16 Vern Paxson <vern@ee.lbl.gov>
+1990-03-23 Vern Paxson <vern@ee.lbl.gov>
* README: nuked BITNET address.
-1990-03-20 09:54 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* README: 2.2 README
-1990-03-20 09:33 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* NEWS: USG alias.
-1990-03-20 09:32 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added USG alias for SYS_V
-1990-03-20 09:25 Vern Paxson <vern@ee.lbl.gov>
-
- * flex.1: [no log message]
-
-1990-03-20 09:17 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
- * flex.1: Added Earle Horton for 8-bit chars.
+ * : [no log message]
-1990-03-20 08:52 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Tweaks for lint and C++
-1990-03-20 08:52 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* flex.1: -ll => -lfl
-1990-03-20 08:52 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* NEWS: 2.2 changes
-1990-03-20 08:17 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Changed to use YY_BUFFER_STATE everywhere.
-1990-03-20 08:16 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* flex.1: [no log message]
-1990-03-20 08:16 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: "associated rules" changed to "associated rule line
numbers".
-1990-03-20 08:15 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* scan.l: cast added to malloc() call to keep lint happy.
-1990-03-20 06:36 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: Fixed handling of premature EOF's.
-1990-03-20 06:36 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* sym.c: Removed declaration of malloc()
-1990-03-20 06:36 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Removed malloc() declaration. Added detection of EOF in
actions.
-1990-03-20 06:35 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Rules rewritten so '/' and '$' parsed correctly.
-1990-03-20 06:34 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: Corrected line numbers for continued actions.
-1990-03-20 06:33 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Removed declarations of malloc() and realloc().
-1990-03-20 06:32 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
- * main.c: Summary of generation flags. Minor -8 tweaks.
+ * main.c: Summary of generation flags. Minor -8 tweaks.
-1990-03-20 06:32 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* gen.c: full support for -d
-1990-03-20 06:31 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: defines for malloc() and realloc() conditional defines
for abs(), min(), and max()
-1990-03-20 06:31 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Many multiple-buffer additions.
-1990-03-20 06:30 Vern Paxson <vern@ee.lbl.gov>
+1990-03-20 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: -8 tweaks.
-1990-03-19 11:34 Vern Paxson <vern@ee.lbl.gov>
-
- * flex.skl: Proto hacks. NUL hacks. Debugging hacks. C++ hacks.
-
-1990-03-16 12:40 Vern Paxson <vern@ee.lbl.gov>
+1990-03-19 Vern Paxson <vern@ee.lbl.gov>
- * scan.l: RCS won't let me unedit! gets "Missing access list"
+ * flex.skl: Proto hacks. NUL hacks. Debugging hacks. C++ hacks.
-1990-03-16 11:55 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
- * ecs.c: Many hacks for NUL's. Hope they're right.
+ * : RCS won't let me unedit! gets "Missing access list"
-1990-03-16 11:53 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: Minor tweaks for NUL's.
-1990-03-16 11:53 Vern Paxson <vern@ee.lbl.gov>
-
- * scan.l: no changes -- had checked out for testing smaller read
- buffer sizes
-
-1990-03-16 11:52 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
- * parse.y: Nuked some extraneous whitespace. NUL's hacks.
+ * : no changes -- had checked out for testing smaller read buffer
+ sizes
-1990-03-16 11:52 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: hack for NUL's.
-1990-03-16 11:51 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Hack to cshell for NUL's.
-1990-03-16 11:51 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* main.c: NUL's. -8
-1990-03-16 11:51 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* gen.c: NUL's.
-1990-03-16 11:50 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: NUL's. 8-bit chars.
-1990-03-16 11:50 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: NUL's; indenting
-1990-03-16 11:50 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: more thrashing around with NUL's
-1990-03-16 11:49 Vern Paxson <vern@ee.lbl.gov>
+1990-03-16 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: removed NUL hack
-1990-03-14 08:41 Vern Paxson <vern@ee.lbl.gov>
+1990-03-14 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: Added <<EOF>> token
-1990-03-14 08:39 Vern Paxson <vern@ee.lbl.gov>
+1990-03-14 Vern Paxson <vern@ee.lbl.gov>
* ecs.c, flexdef.h: Tweaks for NUL chars.
-1990-03-14 08:39 Vern Paxson <vern@ee.lbl.gov>
+1990-03-14 Vern Paxson <vern@ee.lbl.gov>
* dfa.c, gen.c, main.c, misc.c, parse.y, scan.l, tblcmp.c: Tweaks
for NUL chars.
-1990-03-14 08:39 Vern Paxson <vern@ee.lbl.gov>
+1990-03-14 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: Tweaks for handling NUL's.
-1990-02-28 13:10 Vern Paxson <vern@ee.lbl.gov>
+1990-02-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: [no log message]
-1990-02-28 11:59 Vern Paxson <vern@ee.lbl.gov>
+1990-02-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Changed .so options.man to inlined version since flex.1
will have a different (shorter) options description.
-1990-02-28 10:09 Vern Paxson <vern@ee.lbl.gov>
+1990-02-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: [no log message]
-1990-02-28 06:10 Vern Paxson <vern@ee.lbl.gov>
+1990-02-28 Vern Paxson <vern@ee.lbl.gov>
* flex.1: [no log message]
-1990-02-26 12:59 Vern Paxson <vern@ee.lbl.gov>
+1990-02-26 Vern Paxson <vern@ee.lbl.gov>
* flex.1: [no log message]
-1990-02-25 14:47 Vern Paxson <vern@ee.lbl.gov>
+1990-02-25 Vern Paxson <vern@ee.lbl.gov>
* flex.1: [no log message]
-1990-02-24 20:28 Vern Paxson <vern@ee.lbl.gov>
+1990-02-25 Vern Paxson <vern@ee.lbl.gov>
* flex.1: Initial revision
-1990-01-16 06:17 Vern Paxson <vern@ee.lbl.gov>
+1990-01-16 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Restored EOB accepting list for REJECT. Second try at 2.2
Release.
-1990-01-16 05:39 Vern Paxson <vern@ee.lbl.gov>
+1990-01-16 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Added missing ',' in error message. 2.2 Release, second
try.
-1990-01-16 05:29 Vern Paxson <vern@ee.lbl.gov>
+1990-01-16 Vern Paxson <vern@ee.lbl.gov>
- * yylex.c: 8-bit char support. 2.2 Release.
+ * yylex.c: 8-bit char support. 2.2 Release.
-1990-01-15 13:02 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* scan.l: 8-bit char support. Arbitrary indented/%{} code allowed
in section 2. \x escapes. %t support. Minor POSIX-compliance
- changes. BEGIN(0) -> BEGIN(INITIAL). yywrap() and
- set_input_file() for multiple input files. C_COMMENT_2 removed.
- 2.2 Release.
+ changes. BEGIN(0) -> BEGIN(INITIAL). yywrap() and set_input_file()
+ for multiple input files. C_COMMENT_2 removed. 2.2 Release.
-1990-01-15 13:00 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
- * flexdef.h: 8-bit char support. SYS_V / Atari portability fixes.
- Removed generated array names. CSIZE now only defined if not
+ * flexdef.h: 8-bit char support. SYS_V / Atari portability fixes.
+ Removed generated array names. CSIZE now only defined if not
already defined. Added "csize" global. Added "input_files",
- "num_input_files", and "program_name" globals. %t support globals.
- 2.2 Release.
+ "num_input_files", and "program_name" globals. %t support globals.
+ 2.2 Release.
-1990-01-15 12:58 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Removed unused EOB_accepting_list array. 2.2 Release.
-1990-01-15 12:53 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
- * gen.c: Bug in -F table generation fixed. 8-bit char support.
- Hardwired generated array names. "const"'s added to generated
- code. Fixed yymore() / trailing context bug.
+ * gen.c: Bug in -F table generation fixed. 8-bit char support.
+ Hardwired generated array names. "const"'s added to generated code.
+ Fixed yymore() / trailing context bug.
-1990-01-15 12:53 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
- * parse.y: 8-bit char support. Error-message pinpointing. 2.2
+ * parse.y: 8-bit char support. Error-message pinpointing. 2.2
Release.
-1990-01-15 12:49 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* main.c: Unsigned char support. %t support. Removed hard-wiring
of program name "flex". -c changed to -C; -c now deprecated. -n
added. :-( Multiple input files. SYSV tmpnam() use. Removed old
- #define's from output. Identified error messages w/ filename and
+ #define's from output. Identified error messages w/ filename and
line. 2.2 Release.
-1990-01-15 12:49 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* sym.c: Unsigned char support. 2.2 Release.
-1990-01-15 12:48 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: Removed redundant test. 2.2 Release.
-1990-01-15 12:48 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* misc.c: Unsigned char support. \x support. 2.2 Release.
-1990-01-15 12:47 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: 8-bit char support. 2.2 Release.
-1990-01-15 12:44 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: C++ support. Turbo-C support. 8-bit char support.
- yyleng is an int. unput() callable in section 3. yymore hacks.
+ * flex.skl: C++ support. Turbo-C support. 8-bit char support.
+ yyleng is an int. unput() callable in section 3. yymore hacks.
yyrestart() no longer closes stdin. 2.2 Release.
-1990-01-15 12:41 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* ecs.c: %t support. 8-bit/unsigned char support. 2.2 Release.
-1990-01-15 12:40 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: %t hacks. minor cosmetics. 2.2 Relase.
-1990-01-15 12:37 Vern Paxson <vern@ee.lbl.gov>
+1990-01-15 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: Changes for unsigned/8-bit chars. 2.2 Release.
-1990-01-10 10:10 Vern Paxson <vern@ee.lbl.gov>
+1990-01-10 Vern Paxson <vern@ee.lbl.gov>
* libmain.c: Initial revision
-1989-12-30 10:34 Vern Paxson <vern@ee.lbl.gov>
+1989-12-30 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: removed gratuitous trailing context code
-1989-12-30 10:34 Vern Paxson <vern@ee.lbl.gov>
+1989-12-30 Vern Paxson <vern@ee.lbl.gov>
* main.c: made -c<compression flags> case-sensitive
-1989-12-30 10:33 Vern Paxson <vern@ee.lbl.gov>
+1989-12-30 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: unput() bug fix
-1989-12-30 10:32 Vern Paxson <vern@ee.lbl.gov>
+1989-12-30 Vern Paxson <vern@ee.lbl.gov>
* README: [no log message]
-1989-06-20 13:24 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
- * scan.l: changed to not use '|' and trailing context combo so
- users can test using -F ...
+ * scan.l: changed to not use '|' and trailing context combo so users
+ can test using -F ...
-1989-06-20 13:23 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
* parse.y: made trailing context combined with '|' warning always
come out
-1989-06-20 13:12 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
* README: [no log message]
-1989-06-20 12:47 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
* COPYING: Initial revision
-1989-06-20 12:36 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
- * main.c, README, NEWS: [no log message]
+ * NEWS, README, main.c: [no log message]
-1989-06-20 12:27 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
* README: [no log message]
-1989-06-20 12:02 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
* NEWS, README, main.c: [no log message]
-1989-06-20 11:49 Vern Paxson <vern@ee.lbl.gov>
-
- * ccl.c, dfa.c, ecs.c, flex.skl, flexdef.h, gen.c, misc.c, nfa.c,
- parse.y, scan.l, sym.c, tblcmp.c, yylex.c: Beta release
-
-1989-06-20 11:48 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
- * NEWS, README, main.c: 2.1 beta release
+ * : Beta release
-1989-06-20 11:44 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
- * main.c, NEWS: [no log message]
+ * NEWS, main.c: [no log message]
-1989-06-20 11:38 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl, flexdef.h, gen.c, misc.c, nfa.c, parse.y, scan.l,
- sym.c: 2.0.1 beta
+ * flex.skl, flexdef.h, gen.c, misc.c, nfa.c, parse.y, scan.l, sym.c:
+ 2.0.1 beta
-1989-06-20 11:37 Vern Paxson <vern@ee.lbl.gov>
+1989-06-20 Vern Paxson <vern@ee.lbl.gov>
* README: [no log message]
-1989-05-25 08:21 Vern Paxson <vern@ee.lbl.gov>
+1989-05-25 Vern Paxson <vern@ee.lbl.gov>
* gen.c: fixsed bug with -I and backtracking
-1989-05-25 07:49 Vern Paxson <vern@ee.lbl.gov>
+1989-05-25 Vern Paxson <vern@ee.lbl.gov>
- * flex.skl: Cleaned up forward declarations of yyunput() and
- input()
+ * flex.skl: Cleaned up forward declarations of yyunput() and input()
-1989-05-25 07:48 Vern Paxson <vern@ee.lbl.gov>
+1989-05-25 Vern Paxson <vern@ee.lbl.gov>
* parse.y: Split copyright string.
-1989-05-25 07:48 Vern Paxson <vern@ee.lbl.gov>
+1989-05-25 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: Split copyright string. Added check for empty machine in
dupmachine().
-1989-05-25 07:46 Vern Paxson <vern@ee.lbl.gov>
+1989-05-25 Vern Paxson <vern@ee.lbl.gov>
- * ccl.c, main.c, misc.c, scan.l, ecs.c, sym.c, yylex.c, dfa.c,
- tblcmp.c, gen.c: Split copyright string into two to avoid tempting
+ * ccl.c, dfa.c, ecs.c, gen.c, main.c, misc.c, scan.l, sym.c,
+ tblcmp.c, yylex.c: Split copyright string into two to avoid tempting
fate with \<newline> sequences ...
-1989-05-24 08:48 Vern Paxson <vern@ee.lbl.gov>
+1989-05-24 Vern Paxson <vern@ee.lbl.gov>
* README: updated for 2nd release Beta test added RCS header
-1989-05-24 07:48 Vern Paxson <vern@ee.lbl.gov>
+1989-05-24 Vern Paxson <vern@ee.lbl.gov>
- * flexdef.h: removed static char copyright
+ * flexdef.h: removed static char copyright
-1989-05-24 07:45 Vern Paxson <vern@ee.lbl.gov>
+1989-05-24 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added BSD copyright notice. Removed
FAST_SKELETON_FILE.
-1989-05-24 07:44 Vern Paxson <vern@ee.lbl.gov>
+1989-05-24 Vern Paxson <vern@ee.lbl.gov>
* main.c: added BSD copyright notice. Removed references to
FAST_SKELETON_FILE.
-1989-05-24 07:44 Vern Paxson <vern@ee.lbl.gov>
+1989-05-24 Vern Paxson <vern@ee.lbl.gov>
- * nfa.c, gen.c, ecs.c: Added BSD copyright notice
+ * ecs.c, gen.c, nfa.c: Added BSD copyright notice
-1989-05-24 07:42 Vern Paxson <vern@ee.lbl.gov>
+1989-05-24 Vern Paxson <vern@ee.lbl.gov>
- * ccl.c, dfa.c, misc.c, yylex.c, sym.c, tblcmp.c, scan.l, parse.y:
+ * ccl.c, dfa.c, misc.c, parse.y, scan.l, sym.c, tblcmp.c, yylex.c:
added BSD copyright notice
-1989-05-23 20:32 Vern Paxson <vern@ee.lbl.gov>
+1989-05-24 Vern Paxson <vern@ee.lbl.gov>
* flex.skl: Initial revision
-1989-05-19 10:13 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: renamed accnum to num_rules
-1989-05-19 10:12 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: moved table generation code to gen.c moved ntod() to
dfa.c
-1989-05-19 10:11 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* sym.c: the most piddling format change imaginable
-1989-05-19 10:10 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* scan.l: changed to look for yymore, REJECT, %used and %unused
removed gross magic for dealing with section 3
-1989-05-19 10:08 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* nfa.c, parse.y: changes for variable trailing context
-1989-05-19 10:07 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* misc.c: added all_lower() and all_upper()
-1989-05-19 10:07 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* main.c: added checking for features being Really used
backtracking, performance reports misc. cleanup
-1989-05-19 10:06 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* gen.c: major overhaul for merged skeleton
-1989-05-19 10:05 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: a zillion changes/additions/cleanups
-1989-05-19 10:01 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: added backtrack report added checking for dangerous
trailing context considerable minor cleanup
-1989-05-19 09:56 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: list_character_set() modified to take a FILE to write to
...
-1989-05-19 09:56 Vern Paxson <vern@ee.lbl.gov>
+1989-05-19 Vern Paxson <vern@ee.lbl.gov>
* README: updated for beta release
-1988-11-25 16:30 Vern Paxson <vern@ee.lbl.gov>
+1988-11-25 Vern Paxson <vern@ee.lbl.gov>
* main.c: added -p flag generation of #define's for scanner
-1988-11-25 16:28 Vern Paxson <vern@ee.lbl.gov>
+1988-11-25 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: Added END_OF_BUFFER_ACTION and bol_needed
-1988-11-25 16:27 Vern Paxson <vern@ee.lbl.gov>
+1988-11-25 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: added ntod()
-1988-05-09 13:01 Vern Paxson <vern@ee.lbl.gov>
+1988-05-09 Vern Paxson <vern@ee.lbl.gov>
* gen.c: Initial revision
-1988-05-08 16:13 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
- * yylex.c: RCS header changed display style of non-printings from
- ^x to \0xx
+ * yylex.c: RCS header changed display style of non-printings from ^x
+ to \0xx
-1988-05-08 16:08 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: RCS header MAX_XTIONS_FOR_FULL_INTERIOR_FIT ->
MAX_XTIONS_FULL_INTERIOR_FIT made back-tracking accepting number be
- one greater than the last legit accepting number, instead of 0.
- This way, end-of-buffer can take 0 and no negative accepting
- numbers are needed. added genftbl() changed last ftl references to
- C added check for UNSIGNED_CHAR's added back-track logic to
- make_tables() added checking and report for backtracking fixed
- fence-post error with onesp stack pointer
+ one greater than the last legit accepting number, instead of 0.
+ This way, end-of-buffer can take 0 and no negative accepting numbers
+ are needed. added genftbl() changed last ftl references to C added
+ check for UNSIGNED_CHAR's added back-track logic to make_tables()
+ added checking and report for backtracking fixed fence-post error
+ with onesp stack pointer
-1988-05-08 16:08 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
- * sym.c: RCS header changed "entry" to "sym_entry" to avoid
- conflict with old keyword
+ * sym.c: RCS header changed "entry" to "sym_entry" to avoid conflict
+ with old keyword
-1988-05-08 16:07 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* scan.l: RCS header removed \^ from ESCSEQ
-1988-05-08 16:06 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* parse.y: RCS header bug fix due to missing default rule, could
- have to backtrack when backtrack variables haven't been set up
+ have to backtrack when backtrack variables haven't been set up
-1988-05-08 16:05 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: RCS ident yy_cp, yy_bp support name shortenings assoc_rule
support
-1988-05-08 16:04 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* misc.c: RCS header check before malloc()'ing for 16 bit overflow
MS_DOS, VMS ifdef's removed commented-out \^ code removed FTLSOURCE
code added readable_form()
-1988-05-08 16:03 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* main.c: Added RCS header removed revision history misc additions
and fixes to globals VMS ifdef's backtracking statistics -p flag
name shortenings
-1988-05-08 15:59 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: removed revision history added RCS header added VMS,
MS_DOS ifdef's removed DEFAULT_ACTION, changed END_OF_BUFFER_ACTION
shortened MAX_XTIONS_FOR_FULL_INTERIOR_FIT to
MAX_XTIONS_FULL_INTERIOR_FIT added MAX_ASSOC_RULES added
- performance_report, assoc_rule gloabls added num_backtracking
- gloabl shortened allocate_integer_pointer_array,
+ performance_report, assoc_rule gloabls added num_backtracking gloabl
+ shortened allocate_integer_pointer_array,
reallocate_integer_pointer_array
-1988-05-08 15:53 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* ecs.c: added RCS id added PROCFLG to avoid assumption of signed
char's
-1988-05-08 15:51 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: added RCS id added check_for_backtracking() added
dump_associated_rules() added dump_transitions() shortened
- reallocate_integer_pointer_array to reallocate_int_ptr_array
- removed some dfaacc_{state,set} abuses
+ reallocate_integer_pointer_array to reallocate_int_ptr_array removed
+ some dfaacc_{state,set} abuses
-1988-05-08 15:51 Vern Paxson <vern@ee.lbl.gov>
+1988-05-08 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: Added list_character_set()
-1988-05-06 20:06 Vern Paxson <vern@ee.lbl.gov>
+1988-05-07 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: added RCS id
-1988-04-10 17:57 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* README: minor tweaks
-1988-04-10 17:42 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* README: forgot sh flex.shar
-1988-04-10 17:27 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* README: final tweaking
-1988-04-10 17:27 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: removed minor lint fluff
-1988-04-10 17:27 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* NEWS: [no log message]
-1988-04-10 16:55 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* NEWS, README: Initial revision
-1988-04-10 16:54 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* yylex.c: added identifying comment. changed to include "parse.h"
instead of "y.tab.h"
-1988-04-10 16:53 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* tblcmp.c: Changed name from flexcmp.c -> tblcmp.c fixed misc.
typos made generating ec tables be a routine
-1988-04-10 16:52 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* sym.c: changed name from flexsym.c -> sym.c revamped calling
- sequences, etc., for extended table struct definition which now
- has both char * and int fields.
+ sequences, etc., for extended table struct definition which now has
+ both char * and int fields.
-1988-04-10 16:51 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* scan.l: Changed name from flexscan.l -> scan.l fixed bug in
<RECOVER> added block comments between rules.
-1988-04-10 16:50 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* parse.y: changed name from flexparse.y -> parse.y added start
condition "INITIAL" made a{3} have "variable length"
-1988-04-10 16:48 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* nfa.c: changed name from flexnfa.c -> nfa.c corrected some typos.
-1988-04-10 16:48 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* misc.c: changed name from flexmisc.c -> misc.c
-1988-04-10 16:46 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* main.c: fixed bug causing core dumps if skeleton files could not
- be opened. Added -cF. Added fullspd to be equivalent to fulltbl
- for which options is cannot be mixed with.
+ be opened. Added -cF. Added fullspd to be equivalent to fulltbl
+ for which options is cannot be mixed with.
-1988-04-10 16:45 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* flexdef.h: fixed typos, enhanced symbol table definition.
-1988-04-10 16:42 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* ecs.c: changed name from flexecs.c to ecs.c
-1988-04-10 16:42 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* dfa.c: changed name from flexdfa.c to dfa.c
-1988-04-10 16:42 Vern Paxson <vern@ee.lbl.gov>
+1988-04-10 Vern Paxson <vern@ee.lbl.gov>
* ccl.c: changed name from flexccl.c -> ccl.c
-1988-02-13 06:00 Vern Paxson <vern@ee.lbl.gov>
+1988-02-13 Vern Paxson <vern@ee.lbl.gov>
- * ccl.c, tblcmp.c, dfa.c, ecs.c, main.c, misc.c, nfa.c, sym.c,
- yylex.c, flexdef.h, parse.y, scan.l: Beta Release.
+ * ccl.c, dfa.c, ecs.c, flexdef.h, main.c, misc.c, nfa.c, parse.y,
+ scan.l, sym.c, tblcmp.c, yylex.c: Beta Release.
-1987-11-08 17:24 Vern Paxson <vern@ee.lbl.gov>
+1987-11-08 Vern Paxson <vern@ee.lbl.gov>
- * ccl.c, tblcmp.c, flexdef.h, dfa.c, ecs.c, main.c, misc.c, nfa.c,
- parse.y, scan.l, sym.c, yylex.c: Initial revision
+ * Initial revision
diff --git a/INSTALL b/INSTALL
index 23e5f25d0e5f..7d1c323beae7 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,16 +1,25 @@
Installation Instructions
*************************
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
-Software Foundation, Inc.
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006, 2007, 2008, 2009 Free Software Foundation, Inc.
-This file is free documentation; the Free Software Foundation gives
-unlimited permission to copy, distribute and modify it.
+ Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved. This file is offered as-is,
+without warranty of any kind.
Basic Installation
==================
-These are generic installation instructions.
+ Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package. The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package. Some packages provide this
+`INSTALL' file but do not implement all of the features documented
+below. The lack of an optional feature in a given package is not
+necessarily a bug. More recommendations for GNU packages can be found
+in *note Makefile Conventions: (standards)Makefile Conventions.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
@@ -23,9 +32,9 @@ debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring. (Caching is
+the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale
-cache files.)
+cache files.
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
@@ -35,30 +44,37 @@ some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'. You only need
-`configure.ac' if you want to change it or regenerate `configure' using
-a newer version of `autoconf'.
+`configure' by a program called `autoconf'. You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
-The simplest way to compile this package is:
+ The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
- `./configure' to configure the package for your system. If you're
- using `csh' on an old version of System V, you might need to type
- `sh ./configure' instead to prevent `csh' from trying to execute
- `configure' itself.
+ `./configure' to configure the package for your system.
- Running `configure' takes awhile. While running, it prints some
- messages telling which features it is checking for.
+ Running `configure' might take a while. While running, it prints
+ some messages telling which features it is checking for.
2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with
- the package.
+ the package, generally using the just-built uninstalled binaries.
4. Type `make install' to install the programs and any data files and
- documentation.
-
- 5. You can remove the program binaries and object files from the
+ documentation. When installing into a prefix owned by root, it is
+ recommended that the package be configured and built as a regular
+ user, and only the `make install' phase executed with root
+ privileges.
+
+ 5. Optionally, type `make installcheck' to repeat any self-tests, but
+ this time using the binaries in their final installed location.
+ This target does not install anything. Running this target as a
+ regular user, particularly if the prior `make install' required
+ root privileges, verifies that the installation completed
+ correctly.
+
+ 6. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
@@ -67,45 +83,69 @@ The simplest way to compile this package is:
all sorts of other programs in order to regenerate files that came
with the distribution.
+ 7. Often, you can also type `make uninstall' to remove the installed
+ files again. In practice, not all packages have tested that
+ uninstallation works correctly, even though it is required by the
+ GNU Coding Standards.
+
+ 8. Some packages, particularly those that use Automake, provide `make
+ distcheck', which can by used by developers to test that all other
+ targets like `make install' and `make uninstall' work correctly.
+ This target is generally not run by end users.
+
Compilers and Options
=====================
-Some systems require unusual options for compilation or linking that the
-`configure' script does not know about. Run `./configure --help' for
-details on some of the pertinent environment variables.
+ Some systems require unusual options for compilation or linking that
+the `configure' script does not know about. Run `./configure --help'
+for details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here
is an example:
- ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
*Note Defining Variables::, for more details.
Compiling For Multiple Architectures
====================================
-You can compile the package for more than one kind of computer at the
+ You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
-own directory. To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'. `cd' to the
+own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.
+source code in the directory that `configure' is in and in `..'. This
+is known as a "VPATH" build.
+
+ With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory. After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
- If you have to use a `make' that does not support the `VPATH'
-variable, you have to compile the package for one architecture at a
-time in the source code directory. After you have installed the
-package for one architecture, use `make distclean' before reconfiguring
-for another architecture.
+ On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple `-arch' options to the
+compiler but only a single `-arch' option to the preprocessor. Like
+this:
+
+ ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+ CPP="gcc -E" CXXCPP="g++ -E"
+
+ This is not guaranteed to produce working output in all cases, you
+may have to build one architecture at a time and combine the results
+using the `lipo' tool if you have problems.
Installation Names
==================
-By default, `make install' installs the package's commands under
+ By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
-`configure' the option `--prefix=PREFIX'.
+`configure' the option `--prefix=PREFIX', where PREFIX must be an
+absolute file name.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
@@ -116,16 +156,47 @@ Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.
+you can set and what kinds of files go in them. In general, the
+default for these options is expressed in terms of `${prefix}', so that
+specifying just `--prefix' will affect all of the other directory
+specifications that were not explicitly provided.
+
+ The most portable way to affect installation locations is to pass the
+correct locations to `configure'; however, many packages provide one or
+both of the following shortcuts of passing variable assignments to the
+`make install' command line to change installation locations without
+having to reconfigure or recompile.
+
+ The first method involves providing an override variable for each
+affected directory. For example, `make install
+prefix=/alternate/directory' will choose an alternate location for all
+directory configuration variables that were expressed in terms of
+`${prefix}'. Any directories that were specified during `configure',
+but not in terms of `${prefix}', must each be overridden at install
+time for the entire installation to be relocated. The approach of
+makefile variable overrides for each directory variable is required by
+the GNU Coding Standards, and ideally causes no recompilation.
+However, some platforms have known limitations with the semantics of
+shared libraries that end up requiring recompilation when using this
+method, particularly noticeable in packages that use GNU Libtool.
+
+ The second method involves providing the `DESTDIR' variable. For
+example, `make install DESTDIR=/alternate/directory' will prepend
+`/alternate/directory' before all installation names. The approach of
+`DESTDIR' overrides is not required by the GNU Coding Standards, and
+does not work on platforms that have drive letters. On the other hand,
+it does better at avoiding recompilation issues, and works well even
+when some directory options were not specified in terms of `${prefix}'
+at `configure' time.
+
+Optional Features
+=================
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
-Optional Features
-=================
-
-Some packages pay attention to `--enable-FEATURE' options to
+ Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
@@ -137,14 +208,53 @@ find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
+ Some packages offer the ability to configure how verbose the
+execution of `make' will be. For these packages, running `./configure
+--enable-silent-rules' sets the default to minimal output, which can be
+overridden with `make V=1'; while running `./configure
+--disable-silent-rules' sets the default to verbose, which can be
+overridden with `make V=0'.
+
+Particular systems
+==================
+
+ On HP-UX, the default C compiler is not ANSI C compatible. If GNU
+CC is not installed, it is recommended to use the following options in
+order to use an ANSI C compiler:
+
+ ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+
+ On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its `<wchar.h>' header file. The option `-nodtk' can be used as
+a workaround. If GNU CC is not installed, it is therefore recommended
+to try
+
+ ./configure CC="cc"
+
+and if that doesn't work, try
+
+ ./configure CC="cc -nodtk"
+
+ On Solaris, don't put `/usr/ucb' early in your `PATH'. This
+directory contains several dysfunctional programs; working variants of
+these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
+in your `PATH', put it _after_ `/usr/bin'.
+
+ On Haiku, software installed for all users goes in `/boot/common',
+not `/usr/local'. It is recommended to use the following options:
+
+ ./configure --prefix=/boot/common
+
Specifying the System Type
==========================
-There may be some features `configure' cannot figure out automatically,
-but needs to determine by the type of machine the package will run on.
-Usually, assuming the package is built to be run on the _same_
-architectures, `configure' can figure that out, but if it prints a
-message saying it cannot guess the machine type, give it the
+ There may be some features `configure' cannot figure out
+automatically, but needs to determine by the type of machine the package
+will run on. Usually, assuming the package is built to be run on the
+_same_ architectures, `configure' can figure that out, but if it prints
+a message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
@@ -152,7 +262,8 @@ type, such as `sun4', or a canonical name which has the form:
where SYSTEM can have one of these forms:
- OS KERNEL-OS
+ OS
+ KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
@@ -170,9 +281,9 @@ eventually be run) with `--host=TYPE'.
Sharing Defaults
================
-If you want to set default values for `configure' scripts to share, you
-can create a site shell script called `config.site' that gives default
-values for variables like `CC', `cache_file', and `prefix'.
+ If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
@@ -181,7 +292,7 @@ A warning: not all `configure' scripts look for a site script.
Defining Variables
==================
-Variables not defined in a site shell script can be set in the
+ Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
@@ -190,21 +301,29 @@ them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
causes the specified `gcc' to be used as the C compiler (unless it is
-overridden in the site shell script). Here is a another example:
+overridden in the site shell script).
- /bin/bash ./configure CONFIG_SHELL=/bin/bash
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug. Until the bug is fixed you can use this workaround:
-Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
-configuration-related scripts to be executed by `/bin/bash'.
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
`configure' Invocation
======================
-`configure' recognizes the following options to control how it operates.
+ `configure' recognizes the following options to control how it
+operates.
`--help'
`-h'
- Print a summary of the options to `configure', and exit.
+ Print a summary of all of the options to `configure', and exit.
+
+`--help=short'
+`--help=recursive'
+ Print a summary of the options unique to this package's
+ `configure', and exit. The `short' variant lists options used
+ only in the top level, while the `recursive' variant lists options
+ also present in any nested packages.
`--version'
`-V'
@@ -231,6 +350,16 @@ configuration-related scripts to be executed by `/bin/bash'.
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
+`--prefix=DIR'
+ Use DIR as the installation prefix. *note Installation Names::
+ for more details, including other options available for fine-tuning
+ the installation locations.
+
+`--no-create'
+`-n'
+ Run the configure checks, but stop before creating any output
+ files.
+
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.
diff --git a/Makefile.am b/Makefile.am
index 5bad6071e80e..63e5e65ce512 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -66,6 +66,9 @@ flex_SOURCES = \
filter.c \
regex.c
+
+LDADD = lib/libcompat.a
+
libfl_a_SOURCES = \
libmain.c \
libyywrap.c
@@ -90,21 +93,22 @@ noinst_HEADERS = \
include_HEADERS = \
FlexLexer.h
-EXTRA_DIST = \
- .indent.pro \
+dist_doc_DATA = \
AUTHORS \
COPYING \
- INSTALL \
NEWS \
ONEWS \
README \
README.cvs \
- THANKS \
- TODO \
+ TODO
+
+EXTRA_DIST = \
+ .indent.pro \
+ ABOUT-NLS \
+ INSTALL \
autogen.sh \
flex.skl \
mkskel.sh \
- ABOUT-NLS \
config.rpath \
gettext.h
@@ -112,9 +116,9 @@ BUILT_SOURCES = \
skel.c
SUBDIRS = \
+ lib \
. \
doc \
- m4 \
examples \
po \
tools \
@@ -154,11 +158,11 @@ tblcmp.o: tblcmp.c flexdef.h flexint.h
yylex.o: yylex.c flexdef.h flexint.h parse.h
filter.o: filter.c flexdef.h flexint.h
-# Create the ChangeLog, but only if we're inside a cvs working directory
+# Create the ChangeLog, but only if we're inside a git working directory
-ChangeLog: $(srcdir)/tools/cvsauthors $(srcdir)/tools/cvs2cl.pl
- if [ -d CVS ] ; then \
- sh $(srcdir)/tools/cvs2cl.pl -F trunk -U $(srcdir)/tools/cvsauthors \
+ChangeLog: $(srcdir)/tools/git2cl
+ if [ -d $(srcdir)/.git ] ; then \
+ $(srcdir)/tools/git2cl > $@ \
; fi
# Run GNU indent on sources. Don't run this unless all the sources compile cleanly.
@@ -205,4 +209,8 @@ indent:
done \
fi
+install-exec-hook:
+ cd $(DESTDIR)/$(bindir) && \
+ $(LN_S) -f flex$(EXEEXT) flex++$(EXEEXT)
+
.PHONY: ChangeLog tags indent
diff --git a/Makefile.in b/Makefile.in
index 2f8d444dc261..4004c4235446 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -51,15 +52,13 @@
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
+
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = .
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
@@ -74,13 +73,14 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
bin_PROGRAMS = flex$(EXEEXT)
-DIST_COMMON = README $(am__configure_deps) $(include_HEADERS) \
- $(noinst_HEADERS) $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- $(srcdir)/conf.in $(top_srcdir)/configure ABOUT-NLS AUTHORS \
- COPYING ChangeLog INSTALL NEWS README-alpha THANKS TODO \
- compile config.guess config.rpath config.sub depcomp \
- install-sh missing mkinstalldirs parse.c parse.h scan.c
subdir = .
+DIST_COMMON = README $(am__configure_deps) $(dist_doc_DATA) \
+ $(include_HEADERS) $(noinst_HEADERS) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in $(srcdir)/conf.in \
+ $(top_srcdir)/configure ABOUT-NLS AUTHORS COPYING ChangeLog \
+ INSTALL NEWS README-alpha THANKS TODO compile config.guess \
+ config.rpath config.sub depcomp install-sh missing \
+ mkinstalldirs parse.c parse.h scan.c ylwrap
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
$(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -90,19 +90,34 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno configure.status.lineno
+ configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
- "$(DESTDIR)$(includedir)"
-libLIBRARIES_INSTALL = $(INSTALL_DATA)
+ "$(DESTDIR)$(docdir)" "$(DESTDIR)$(includedir)"
LIBRARIES = $(lib_LIBRARIES)
AR = ar
ARFLAGS = cru
@@ -115,7 +130,6 @@ libfl_pic_a_LIBADD =
am_libfl_pic_a_OBJECTS = libfl_pic_a-libmain.$(OBJEXT) \
libfl_pic_a-libyywrap.$(OBJEXT)
libfl_pic_a_OBJECTS = $(am_libfl_pic_a_OBJECTS)
-binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
PROGRAMS = $(bin_PROGRAMS)
am_flex_OBJECTS = ccl.$(OBJEXT) dfa.$(OBJEXT) ecs.$(OBJEXT) \
scanflags.$(OBJEXT) gen.$(OBJEXT) main.$(OBJEXT) \
@@ -126,26 +140,35 @@ am_flex_OBJECTS = ccl.$(OBJEXT) dfa.$(OBJEXT) ecs.$(OBJEXT) \
regex.$(OBJEXT)
flex_OBJECTS = $(am_flex_OBJECTS)
flex_LDADD = $(LDADD)
-DEFAULT_INCLUDES = -I. -I$(srcdir) -I.
+flex_DEPENDENCIES = lib/libcompat.a
+DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
+am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
LEXCOMPILE = $(LEX) $(LFLAGS) $(AM_LFLAGS)
+YLWRAP = $(top_srcdir)/ylwrap
YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
SOURCES = $(libfl_a_SOURCES) $(libfl_pic_a_SOURCES) $(flex_SOURCES)
DIST_SOURCES = $(libfl_a_SOURCES) $(libfl_pic_a_SOURCES) \
$(flex_SOURCES)
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
- install-exec-recursive install-info-recursive \
- install-recursive installcheck-recursive installdirs-recursive \
- pdf-recursive ps-recursive uninstall-info-recursive \
- uninstall-recursive
-includeHEADERS_INSTALL = $(INSTALL_HEADER)
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+DATA = $(dist_doc_DATA)
HEADERS = $(include_HEADERS) $(noinst_HEADERS)
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir dist dist-all distcheck
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
@@ -153,17 +176,40 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
- { test ! -d $(distdir) \
- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -fr $(distdir); }; }
+ { test ! -d "$(distdir)" \
+ || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+ && rm -fr "$(distdir)"; }; }
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
@@ -187,8 +233,10 @@ ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
GMSGFMT = @GMSGFMT@
+GREP = @GREP@
HELP2MAN = @HELP2MAN@
INDENT = @INDENT@
+INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
@@ -208,6 +256,7 @@ LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
M4 = @M4@
MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGMERGE = @MSGMERGE@
@@ -217,6 +266,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@
POSUB = @POSUB@
@@ -228,14 +278,13 @@ USE_NLS = @USE_NLS@
VERSION = @VERSION@
XGETTEXT = @XGETTEXT@
YACC = @YACC@
+YFLAGS = @YFLAGS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
-ac_ct_RANLIB = @ac_ct_RANLIB@
-ac_ct_STRIP = @ac_ct_STRIP@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
@@ -247,28 +296,40 @@ build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
+builddir = @builddir@
datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
+htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
+localedir = $(datadir)/locale
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
+psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
AM_YFLAGS = -d
ACLOCAL_AMFLAGS = -I m4
m4 = @M4@
@@ -300,6 +361,7 @@ flex_SOURCES = \
filter.c \
regex.c
+LDADD = lib/libcompat.a
libfl_a_SOURCES = \
libmain.c \
libyywrap.c
@@ -324,21 +386,22 @@ noinst_HEADERS = \
include_HEADERS = \
FlexLexer.h
-EXTRA_DIST = \
- .indent.pro \
+dist_doc_DATA = \
AUTHORS \
COPYING \
- INSTALL \
NEWS \
ONEWS \
README \
README.cvs \
- THANKS \
- TODO \
+ TODO
+
+EXTRA_DIST = \
+ .indent.pro \
+ ABOUT-NLS \
+ INSTALL \
autogen.sh \
flex.skl \
mkskel.sh \
- ABOUT-NLS \
config.rpath \
gettext.h
@@ -346,15 +409,14 @@ BUILT_SOURCES = \
skel.c
SUBDIRS = \
+ lib \
. \
doc \
- m4 \
examples \
po \
tools \
tests
-localedir = $(datadir)/locale
AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I$(top_srcdir)/intl
# Run GNU indent on sources. Don't run this unless all the sources compile cleanly.
@@ -403,15 +465,15 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
- echo ' cd $(srcdir) && $(AUTOMAKE) --gnits '; \
- cd $(srcdir) && $(AUTOMAKE) --gnits \
+ echo ' cd $(srcdir) && $(AUTOMAKE) --gnits'; \
+ $(am__cd) $(srcdir) && $(AUTOMAKE) --gnits \
&& exit 0; \
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnits Makefile
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnits Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -427,21 +489,22 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENC
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: $(am__configure_deps)
- cd $(srcdir) && $(AUTOCONF)
+ $(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+ $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+$(am__aclocal_m4_deps):
config.h: stamp-h1
@if test ! -f $@; then \
rm -f stamp-h1; \
- $(MAKE) stamp-h1; \
+ $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
else :; fi
stamp-h1: $(srcdir)/conf.in $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status config.h
$(srcdir)/conf.in: $(am__configure_deps)
- cd $(top_srcdir) && $(AUTOHEADER)
+ ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
rm -f stamp-h1
touch $@
@@ -449,30 +512,33 @@ distclean-hdr:
-rm -f config.h stamp-h1
install-libLIBRARIES: $(lib_LIBRARIES)
@$(NORMAL_INSTALL)
- test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ list2=; for p in $$list; do \
if test -f $$p; then \
- f=$(am__strip_dir) \
- echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
- $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+ list2="$$list2 $$p"; \
else :; fi; \
- done
+ done; \
+ test -z "$$list2" || { \
+ echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \
+ $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; }
@$(POST_INSTALL)
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ for p in $$list; do \
if test -f $$p; then \
- p=$(am__strip_dir) \
- echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
- $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+ $(am__strip_dir) \
+ echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \
+ ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \
else :; fi; \
done
uninstall-libLIBRARIES:
@$(NORMAL_UNINSTALL)
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
- p=$(am__strip_dir) \
- echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
- rm -f "$(DESTDIR)$(libdir)/$$p"; \
- done
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(libdir)' && rm -f "$$files" )"; \
+ cd "$(DESTDIR)$(libdir)" && rm -f $$files
clean-libLIBRARIES:
-test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
@@ -486,24 +552,38 @@ libfl_pic.a: $(libfl_pic_a_OBJECTS) $(libfl_pic_a_DEPENDENCIES)
$(RANLIB) libfl_pic.a
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
- test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
- @list='$(bin_PROGRAMS)'; for p in $$list; do \
- p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
- if test -f $$p \
- ; then \
- f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
- echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
- $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
- else :; fi; \
- done
+ test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed 's/$(EXEEXT)$$//' | \
+ while read p p1; do if test -f $$p; \
+ then echo "$$p"; echo "$$p"; else :; fi; \
+ done | \
+ sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+ sed 'N;N;N;s,\n, ,g' | \
+ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+ if ($$2 == $$4) files[d] = files[d] " " $$1; \
+ else { print "f", $$3 "/" $$4, $$1; } } \
+ END { for (d in files) print "f", d, files[d] }' | \
+ while read type dir files; do \
+ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+ test -z "$$files" || { \
+ echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+ $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+ } \
+ ; done
uninstall-binPROGRAMS:
@$(NORMAL_UNINSTALL)
- @list='$(bin_PROGRAMS)'; for p in $$list; do \
- f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
- echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
- rm -f "$(DESTDIR)$(bindir)/$$f"; \
- done
+ @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+ files=`for p in $$list; do echo "$$p"; done | \
+ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+ -e 's/$$/$(EXEEXT)/' `; \
+ test -n "$$list" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(bindir)" && rm -f $$files
clean-binPROGRAMS:
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
@@ -526,11 +606,11 @@ installcheck-binPROGRAMS: $(bin_PROGRAMS)
parse.h: parse.c
@if test ! -f $@; then \
rm -f parse.c; \
- $(MAKE) parse.c; \
+ $(MAKE) $(AM_MAKEFLAGS) parse.c; \
else :; fi
flex$(EXEEXT): $(flex_OBJECTS) $(flex_DEPENDENCIES)
@rm -f flex$(EXEEXT)
- $(LINK) $(flex_LDFLAGS) $(flex_OBJECTS) $(flex_LDADD) $(LIBS)
+ $(LINK) $(flex_OBJECTS) $(flex_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -565,90 +645,92 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/yylex.Po@am__quote@
.c.o:
-@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c $<
.c.obj:
-@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
libfl_pic_a-libmain.o: libmain.c
-@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libmain.o -MD -MP -MF "$(DEPDIR)/libfl_pic_a-libmain.Tpo" -c -o libfl_pic_a-libmain.o `test -f 'libmain.c' || echo '$(srcdir)/'`libmain.c; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libfl_pic_a-libmain.Tpo" "$(DEPDIR)/libfl_pic_a-libmain.Po"; else rm -f "$(DEPDIR)/libfl_pic_a-libmain.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libmain.o -MD -MP -MF $(DEPDIR)/libfl_pic_a-libmain.Tpo -c -o libfl_pic_a-libmain.o `test -f 'libmain.c' || echo '$(srcdir)/'`libmain.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libfl_pic_a-libmain.Tpo $(DEPDIR)/libfl_pic_a-libmain.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libmain.c' object='libfl_pic_a-libmain.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -c -o libfl_pic_a-libmain.o `test -f 'libmain.c' || echo '$(srcdir)/'`libmain.c
libfl_pic_a-libmain.obj: libmain.c
-@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libmain.obj -MD -MP -MF "$(DEPDIR)/libfl_pic_a-libmain.Tpo" -c -o libfl_pic_a-libmain.obj `if test -f 'libmain.c'; then $(CYGPATH_W) 'libmain.c'; else $(CYGPATH_W) '$(srcdir)/libmain.c'; fi`; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libfl_pic_a-libmain.Tpo" "$(DEPDIR)/libfl_pic_a-libmain.Po"; else rm -f "$(DEPDIR)/libfl_pic_a-libmain.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libmain.obj -MD -MP -MF $(DEPDIR)/libfl_pic_a-libmain.Tpo -c -o libfl_pic_a-libmain.obj `if test -f 'libmain.c'; then $(CYGPATH_W) 'libmain.c'; else $(CYGPATH_W) '$(srcdir)/libmain.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libfl_pic_a-libmain.Tpo $(DEPDIR)/libfl_pic_a-libmain.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libmain.c' object='libfl_pic_a-libmain.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -c -o libfl_pic_a-libmain.obj `if test -f 'libmain.c'; then $(CYGPATH_W) 'libmain.c'; else $(CYGPATH_W) '$(srcdir)/libmain.c'; fi`
libfl_pic_a-libyywrap.o: libyywrap.c
-@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libyywrap.o -MD -MP -MF "$(DEPDIR)/libfl_pic_a-libyywrap.Tpo" -c -o libfl_pic_a-libyywrap.o `test -f 'libyywrap.c' || echo '$(srcdir)/'`libyywrap.c; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libfl_pic_a-libyywrap.Tpo" "$(DEPDIR)/libfl_pic_a-libyywrap.Po"; else rm -f "$(DEPDIR)/libfl_pic_a-libyywrap.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libyywrap.o -MD -MP -MF $(DEPDIR)/libfl_pic_a-libyywrap.Tpo -c -o libfl_pic_a-libyywrap.o `test -f 'libyywrap.c' || echo '$(srcdir)/'`libyywrap.c
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libfl_pic_a-libyywrap.Tpo $(DEPDIR)/libfl_pic_a-libyywrap.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libyywrap.c' object='libfl_pic_a-libyywrap.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -c -o libfl_pic_a-libyywrap.o `test -f 'libyywrap.c' || echo '$(srcdir)/'`libyywrap.c
libfl_pic_a-libyywrap.obj: libyywrap.c
-@am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libyywrap.obj -MD -MP -MF "$(DEPDIR)/libfl_pic_a-libyywrap.Tpo" -c -o libfl_pic_a-libyywrap.obj `if test -f 'libyywrap.c'; then $(CYGPATH_W) 'libyywrap.c'; else $(CYGPATH_W) '$(srcdir)/libyywrap.c'; fi`; \
-@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libfl_pic_a-libyywrap.Tpo" "$(DEPDIR)/libfl_pic_a-libyywrap.Po"; else rm -f "$(DEPDIR)/libfl_pic_a-libyywrap.Tpo"; exit 1; fi
+@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -MT libfl_pic_a-libyywrap.obj -MD -MP -MF $(DEPDIR)/libfl_pic_a-libyywrap.Tpo -c -o libfl_pic_a-libyywrap.obj `if test -f 'libyywrap.c'; then $(CYGPATH_W) 'libyywrap.c'; else $(CYGPATH_W) '$(srcdir)/libyywrap.c'; fi`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/libfl_pic_a-libyywrap.Tpo $(DEPDIR)/libfl_pic_a-libyywrap.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libyywrap.c' object='libfl_pic_a-libyywrap.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfl_pic_a_CFLAGS) $(CFLAGS) -c -o libfl_pic_a-libyywrap.obj `if test -f 'libyywrap.c'; then $(CYGPATH_W) 'libyywrap.c'; else $(CYGPATH_W) '$(srcdir)/libyywrap.c'; fi`
.l.c:
- $(LEXCOMPILE) $<
- sed '/^#/ s|$(LEX_OUTPUT_ROOT)\.c|$@|' $(LEX_OUTPUT_ROOT).c >$@
- rm -f $(LEX_OUTPUT_ROOT).c
+ $(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
.y.c:
- $(YACCCOMPILE) $<
- if test -f y.tab.h; then \
- to=`echo "$*_H" | sed \
- -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
- -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`; \
- sed -e "/^#/!b" -e "s/Y_TAB_H/$$to/g" -e "s|y\.tab\.h|$*.h|" \
- y.tab.h >$*.ht; \
- rm -f y.tab.h; \
- if cmp -s $*.ht $*.h; then \
- rm -f $*.ht ;\
- else \
- mv $*.ht $*.h; \
- fi; \
- fi
- if test -f y.output; then \
- mv y.output $*.output; \
- fi
- sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >$@t && mv $@t $@
- rm -f y.tab.c
-uninstall-info-am:
+ $(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE)
+install-dist_docDATA: $(dist_doc_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(docdir)" || $(MKDIR_P) "$(DESTDIR)$(docdir)"
+ @list='$(dist_doc_DATA)'; test -n "$(docdir)" || list=; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docdir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(docdir)" || exit $$?; \
+ done
+
+uninstall-dist_docDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(dist_doc_DATA)'; test -n "$(docdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(docdir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(docdir)" && rm -f $$files
install-includeHEADERS: $(include_HEADERS)
@$(NORMAL_INSTALL)
- test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)"
- @list='$(include_HEADERS)'; for p in $$list; do \
+ test -z "$(includedir)" || $(MKDIR_P) "$(DESTDIR)$(includedir)"
+ @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
+ for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(am__strip_dir) \
- echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \
- $(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includedir)'"; \
+ $(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \
done
uninstall-includeHEADERS:
@$(NORMAL_UNINSTALL)
- @list='$(include_HEADERS)'; for p in $$list; do \
- f=$(am__strip_dir) \
- echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \
- rm -f "$(DESTDIR)$(includedir)/$$f"; \
- done
+ @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(includedir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(includedir)" && rm -f $$files
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
@@ -657,7 +739,7 @@ uninstall-includeHEADERS:
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
- @failcom='exit 1'; \
+ @fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -674,16 +756,15 @@ $(RECURSIVE_TARGETS):
else \
local_target="$$target"; \
fi; \
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
-mostlyclean-recursive clean-recursive distclean-recursive \
-maintainer-clean-recursive:
- @failcom='exit 1'; \
+$(RECURSIVE_CLEAN_TARGETS):
+ @fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
@@ -709,16 +790,16 @@ maintainer-clean-recursive:
else \
local_target="$$target"; \
fi; \
- (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -726,14 +807,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) conf.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
+ set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
@@ -745,39 +826,43 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) conf.in $(TAGS_DEPENDENCIES) \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
- tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) conf.in $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$tags $$unique; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) conf.in $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
- here=`pwd`; \
list='$(SOURCES) $(HEADERS) conf.in $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$tags $$unique
+ $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
- && cd $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) $$here
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -790,54 +875,71 @@ distdir: $(DISTFILES)
exit 1;; \
esac
$(am__remove_distdir)
- mkdir $(distdir)
- $(mkdir_p) $(distdir)/m4 $(distdir)/po
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
+ test -d "$(distdir)" || mkdir "$(distdir)"
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
- list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
- || $(mkdir_p) "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
- distdir=`$(am__cd) $(distdir) && pwd`; \
- top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
- (cd $$subdir && \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$top_distdir" \
- distdir="$$distdir/$$subdir" \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
- -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+ -test -n "$(am__skip_mode_fix)" \
+ || find "$(distdir)" -type d ! -perm -755 \
+ -exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r $(distdir)
+ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
+ || chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
@@ -845,6 +947,14 @@ dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
+dist-lzma: distdir
+ tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
+ $(am__remove_distdir)
+
+dist-xz: distdir
+ tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
+ $(am__remove_distdir)
+
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir)
@@ -869,13 +979,17 @@ dist dist-all: distdir
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+ GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
- bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
+ *.tar.lzma*) \
+ lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
+ *.tar.xz*) \
+ xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
- GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+ GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
@@ -883,9 +997,11 @@ distcheck: dist
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
+ test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && cd $(distdir)/_build \
+ && am__cwd=`pwd` \
+ && $(am__cd) $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
@@ -907,13 +1023,15 @@ distcheck: dist
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
+ && cd "$$am__cwd" \
+ || exit 1
$(am__remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
+ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
- @cd $(distuninstallcheck_dir) \
+ @$(am__cd) '$(distuninstallcheck_dir)' \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
@@ -933,11 +1051,11 @@ distcleancheck: distclean
check-am: all-am
check: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) check-recursive
-all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(HEADERS) config.h
+all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(DATA) $(HEADERS) config.h
installdirs: installdirs-recursive
installdirs-am:
- for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(includedir)"; do \
- test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(includedir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-recursive
@@ -960,6 +1078,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -986,18 +1105,39 @@ dvi-am:
html: html-recursive
+html-am:
+
info: info-recursive
info-am:
-install-data-am: install-includeHEADERS
+install-data-am: install-dist_docDATA install-includeHEADERS
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
install-exec-am: install-binPROGRAMS install-libLIBRARIES
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
+install-html: install-html-recursive
+
+install-html-am:
install-info: install-info-recursive
+install-info-am:
+
install-man:
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
installcheck-am: installcheck-binPROGRAMS
maintainer-clean: maintainer-clean-recursive
@@ -1019,29 +1159,33 @@ ps: ps-recursive
ps-am:
-uninstall-am: uninstall-binPROGRAMS uninstall-includeHEADERS \
- uninstall-info-am uninstall-libLIBRARIES
-
-uninstall-info: uninstall-info-recursive
-
-.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
- check-am clean clean-binPROGRAMS clean-generic \
- clean-libLIBRARIES clean-recursive ctags ctags-recursive dist \
- dist-all dist-bzip2 dist-gzip dist-shar dist-tarZ dist-zip \
- distcheck distclean distclean-compile distclean-generic \
- distclean-hdr distclean-recursive distclean-tags \
- distcleancheck distdir distuninstallcheck dvi dvi-am html \
- html-am info info-am install install-am install-binPROGRAMS \
- install-data install-data-am install-exec install-exec-am \
- install-includeHEADERS install-info install-info-am \
- install-libLIBRARIES install-man install-strip installcheck \
- installcheck-am installcheck-binPROGRAMS installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- maintainer-clean-recursive mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-recursive pdf pdf-am ps ps-am \
+uninstall-am: uninstall-binPROGRAMS uninstall-dist_docDATA \
+ uninstall-includeHEADERS uninstall-libLIBRARIES
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check \
+ ctags-recursive install install-am install-exec-am \
+ install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am am--refresh check check-am clean clean-binPROGRAMS \
+ clean-generic clean-libLIBRARIES ctags ctags-recursive dist \
+ dist-all dist-bzip2 dist-gzip dist-lzma dist-shar dist-tarZ \
+ dist-xz dist-zip distcheck distclean distclean-compile \
+ distclean-generic distclean-hdr distclean-tags distcleancheck \
+ distdir distuninstallcheck dvi dvi-am html html-am info \
+ info-am install install-am install-binPROGRAMS install-data \
+ install-data-am install-dist_docDATA install-dvi \
+ install-dvi-am install-exec install-exec-am install-exec-hook \
+ install-html install-html-am install-includeHEADERS \
+ install-info install-info-am install-libLIBRARIES install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am \
+ installcheck-binPROGRAMS installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
tags tags-recursive uninstall uninstall-am \
- uninstall-binPROGRAMS uninstall-includeHEADERS \
- uninstall-info-am uninstall-libLIBRARIES
+ uninstall-binPROGRAMS uninstall-dist_docDATA \
+ uninstall-includeHEADERS uninstall-libLIBRARIES
skel.c: flex.skl mkskel.sh flexint.h tables_shared.h
@@ -1074,11 +1218,11 @@ tblcmp.o: tblcmp.c flexdef.h flexint.h
yylex.o: yylex.c flexdef.h flexint.h parse.h
filter.o: filter.c flexdef.h flexint.h
-# Create the ChangeLog, but only if we're inside a cvs working directory
+# Create the ChangeLog, but only if we're inside a git working directory
-ChangeLog: $(srcdir)/tools/cvsauthors $(srcdir)/tools/cvs2cl.pl
- if [ -d CVS ] ; then \
- sh $(srcdir)/tools/cvs2cl.pl -F trunk -U $(srcdir)/tools/cvsauthors \
+ChangeLog: $(srcdir)/tools/git2cl
+ if [ -d $(srcdir)/.git ] ; then \
+ $(srcdir)/tools/git2cl > $@ \
; fi
indent:
@@ -1090,7 +1234,12 @@ indent:
done \
fi
+install-exec-hook:
+ cd $(DESTDIR)/$(bindir) && \
+ $(LN_S) -f flex$(EXEEXT) flex++$(EXEEXT)
+
.PHONY: ChangeLog tags indent
+
# 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.
.NOEXPORT:
diff --git a/NEWS b/NEWS
index 19783b7cab9e..62d260d2c14c 100644
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,36 @@ changes between releases of flex.
See the file COPYING for copying conditions.
+* version 2.5.37 released 2012-08-03
+
+** Import flex into git. See
+ git://flex.git.sourceforge.net/gitroot/flex/flex.
+
+** Fix make install target to not fail when the flex++ program is
+ already installed
+
+** New translations from the translation project: de, fi, pl, vi
+
+* version 2.5.36 released 2012-07-20
+
+** various portability fixes that quiet compiler warnings on 64-bit
+ hosts
+
+** various manual fixes, including correcting the name of a %option and
+ updating some simple examples to use ANSI C syntax
+
+** various bug fixes that prevent certain error conditions from
+ persisting when they should not persist
+
+** improvements to the test suite so it behaves better when linking
+ compiled files
+
+** new translations from the translation project: ca, da, es, fi, fr,
+ ga, ko, pt_br, ro, ru, sv, tr, zh_cn
+
+** the flex distribution is now built with automake 1.10.1 and automake
+ 2.61
+
* version 2.5.35 released 2008-02-26
** fixed bug that prevented flex from accepting certain comments in the
diff --git a/README.cvs b/README.cvs
index 65d557617ad3..9544b24d6917 100644
--- a/README.cvs
+++ b/README.cvs
@@ -16,15 +16,15 @@ files needed to make building flex easy are included. You don't have
that in the cvs tree.
You will need various external tools in order to build the distribution. Here is
-a (hopefully complete and correct) list of the required tools. Always get the latest
-version of each tool; we list the versions used in development of
+a (hopefully complete and correct) list of the required tools. Always get the
+latest version of each tool; we list the versions used in development of
flex, but the listed versions may not work for you.
compiler suite; e.g., gcc
bash or some other fairly robust sh-style shell
GNU bison; to generate parse.c from parse.y
GNU m4 1.4; required by GNU autoconf (yes, it *must* be GNU m4)
-GNU autoconf 2.59 and GNU automake 1.9.6; for generating Makefiles etc.
+GNU autoconf 2.60 and GNU automake 1.10; for generating Makefiles etc.
GNU gettext 0.14.5; for i18n
flex (latest beta release); for bootstrap of scan.l
help2man 1.36; to generate the flex man page
diff --git a/buf.c b/buf.c
index 33a5a9f0b2b3..e5deb4e81c3a 100644
--- a/buf.c
+++ b/buf.c
@@ -74,6 +74,8 @@ struct Buf *buf_prints (struct Buf *buf, const char *fmt, const char *s)
size_t tsz;
t = flex_alloc (tsz = strlen (fmt) + strlen (s) + 1);
+ if (!t)
+ flexfatal (_("Allocation of buffer to print string failed"));
snprintf (t, tsz, fmt, s);
buf = buf_strappend (buf, t);
flex_free (t);
@@ -88,11 +90,20 @@ struct Buf *buf_prints (struct Buf *buf, const char *fmt, const char *s)
*/
struct Buf *buf_linedir (struct Buf *buf, const char* filename, int lineno)
{
- char *t, *fmt = "#line %d \"%s\"\n";
- size_t tsz;
-
- t = flex_alloc (tsz = strlen (fmt) + strlen (filename) + (int)(1 + log10(lineno>=0?lineno:-lineno)) + 1);
- snprintf (t, tsz, fmt, lineno, filename);
+ char *dst, *src, *t;
+
+ t = flex_alloc (strlen ("#line \"\"\n") + /* constant parts */
+ 2 * strlen (filename) + /* filename with possibly all backslashes escaped */
+ (int) (1 + log10 (abs (lineno))) + /* line number */
+ 1); /* NUL */
+ if (!t)
+ flexfatal (_("Allocation of buffer for line directive failed"));
+ for (dst = t + sprintf (t, "#line %d \"", lineno), src = filename; *src; *dst++ = *src++)
+ if (*src == '\\') /* escape backslashes */
+ *dst++ = '\\';
+ *dst++ = '"';
+ *dst++ = '\n';
+ *dst = '\0';
buf = buf_strappend (buf, t);
flex_free (t);
return buf;
@@ -162,6 +173,8 @@ struct Buf *buf_m4_define (struct Buf *buf, const char* def, const char* val)
val = val?val:"";
str = (char*)flex_alloc(strsz = strlen(fmt) + strlen(def) + strlen(val) + 2);
+ if (!str)
+ flexfatal (_("Allocation of buffer for m4 def failed"));
snprintf(str, strsz, fmt, def, val);
buf_append(buf, &str, 1);
@@ -180,6 +193,8 @@ struct Buf *buf_m4_undefine (struct Buf *buf, const char* def)
size_t strsz;
str = (char*)flex_alloc(strsz = strlen(fmt) + strlen(def) + 2);
+ if (!str)
+ flexfatal (_("Allocation of buffer for m4 undef failed"));
snprintf(str, strsz, fmt, def);
buf_append(buf, &str, 1);
diff --git a/compile b/compile
index 1b1d23216958..c0096a7b5632 100755
--- a/compile
+++ b/compile
@@ -1,9 +1,10 @@
#! /bin/sh
# Wrapper for compilers which do not understand `-c -o'.
-scriptversion=2005-05-14.22
+scriptversion=2009-10-06.20; # UTC
-# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009 Free Software
+# Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
@@ -17,8 +18,7 @@ scriptversion=2005-05-14.22
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -103,13 +103,13 @@ if test -z "$ofile" || test -z "$cfile"; then
fi
# Name of file we expect compiler to create.
-cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
+cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
-# Note: use `[/.-]' here to ensure that we don't use the same name
+# Note: use `[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
-lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
+lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
@@ -124,9 +124,9 @@ trap "rmdir '$lockdir'; exit 1" 1 2 15
ret=$?
if test -f "$cofile"; then
- mv "$cofile" "$ofile"
+ test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
- mv "${cofile}bj" "$ofile"
+ test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
@@ -138,5 +138,6 @@ exit $ret
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
diff --git a/conf.in b/conf.in
index 7f73b843a07d..984b5436844a 100644
--- a/conf.in
+++ b/conf.in
@@ -85,6 +85,9 @@
/* Define to 1 if you have the `regcomp' function. */
#undef HAVE_REGCOMP
+/* Define to 1 if you have the <regex.h> header file. */
+#undef HAVE_REGEX_H
+
/* Define to 1 if you have the `setlocale' function. */
#undef HAVE_SETLOCALE
@@ -139,9 +142,12 @@
/* Define to 1 if the system has the type `_Bool'. */
#undef HAVE__BOOL
-/* Define to the GNU M4 executable name. */
+/* Define to the m4 executable name. */
#undef M4
+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
+#undef NO_MINUS_C_MINUS_O
+
/* Name of package */
#undef PACKAGE
@@ -157,12 +163,15 @@
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
+/* Define to the home page for this package. */
+#undef PACKAGE_URL
+
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
- automatically deduced at run-time.
+ automatically deduced at runtime.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
@@ -190,7 +199,7 @@
/* Define to rpl_realloc if the replacement function should be used. */
#undef realloc
-/* Define to `unsigned' if <sys/types.h> does not define. */
+/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
/* Define as `fork' if `vfork' does not work. */
diff --git a/config.guess b/config.guess
index ad5281e66e9d..e3a2116a7dcd 100755
--- a/config.guess
+++ b/config.guess
@@ -1,9 +1,10 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+# Free Software Foundation, Inc.
-timestamp='2005-08-03'
+timestamp='2009-06-10'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -55,8 +56,8 @@ version="\
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -106,7 +107,7 @@ set_cc_for_build='
trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
{ test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
{ tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
{ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
@@ -160,6 +161,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
arm*) machine=arm-unknown ;;
sh3el) machine=shl-unknown ;;
sh3eb) machine=sh-unknown ;;
+ sh5el) machine=sh5le-unknown ;;
*) machine=${UNAME_MACHINE_ARCH}-unknown ;;
esac
# The Operating System including object format, if it has switched
@@ -168,7 +170,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep __ELF__ >/dev/null
+ | grep -q __ELF__
then
# Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
# Return netbsd for either. FIX?
@@ -206,8 +208,11 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:ekkoBSD:*:*)
echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
exit ;;
+ *:SolidBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+ exit ;;
macppc:MirBSD:*:*)
- echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+ echo powerpc-unknown-mirbsd${UNAME_RELEASE}
exit ;;
*:MirBSD:*:*)
echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
@@ -319,14 +324,30 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
case `/usr/bin/uname -p` in
sparc) echo sparc-icl-nx7; exit ;;
esac ;;
+ s390x:SunOS:*:*)
+ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
- i86pc:SunOS:5.*:*)
- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
+ eval $set_cc_for_build
+ SUN_ARCH="i386"
+ # If there is a compiler, see if it is configured for 64-bit objects.
+ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
+ # This test works for both compilers.
+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ SUN_ARCH="x86_64"
+ fi
+ fi
+ echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
@@ -527,7 +548,7 @@ EOF
echo rs6000-ibm-aix3.2
fi
exit ;;
- *:AIX:*:[45])
+ *:AIX:*:[456])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
@@ -635,7 +656,7 @@ EOF
# => hppa64-hp-hpux11.23
if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
- grep __LP64__ >/dev/null
+ grep -q __LP64__
then
HP_ARCH="hppa2.0w"
else
@@ -764,12 +785,19 @@ EOF
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit ;;
*:FreeBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ case ${UNAME_MACHINE} in
+ pc98)
+ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ amd64)
+ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ *)
+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+ esac
exit ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
exit ;;
- i*:MINGW*:*)
+ *:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit ;;
i*:windows32*:*)
@@ -779,12 +807,24 @@ EOF
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
exit ;;
- x86:Interix*:[34]*)
- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
- exit ;;
+ *:Interix*:[3456]*)
+ case ${UNAME_MACHINE} in
+ x86)
+ echo i586-pc-interix${UNAME_RELEASE}
+ exit ;;
+ EM64T | authenticamd | genuineintel)
+ echo x86_64-unknown-interix${UNAME_RELEASE}
+ exit ;;
+ IA64)
+ echo ia64-unknown-interix${UNAME_RELEASE}
+ exit ;;
+ esac ;;
[345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
echo i${UNAME_MACHINE}-pc-mks
exit ;;
+ 8664:Windows_NT:*)
+ echo x86_64-pc-mks
+ exit ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
@@ -815,6 +855,16 @@ EOF
echo ${UNAME_MACHINE}-pc-minix
exit ;;
arm*:Linux:*:*)
+ eval $set_cc_for_build
+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_EABI__
+ then
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ else
+ echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ fi
+ exit ;;
+ avr32*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit ;;
cris:Linux:*:*)
@@ -835,42 +885,27 @@ EOF
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit ;;
- mips:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef mips
- #undef mipsel
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mipsel
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
- ;;
- mips64:Linux:*:*)
+ mips:Linux:*:* | mips64:Linux:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c
#undef CPU
- #undef mips64
- #undef mips64el
+ #undef ${UNAME_MACHINE}
+ #undef ${UNAME_MACHINE}el
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=mips64el
+ CPU=${UNAME_MACHINE}el
#else
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=mips64
+ CPU=${UNAME_MACHINE}
#else
CPU=
#endif
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^CPU/{
+ s: ::g
+ p
+ }'`"
test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
;;
or32:Linux:*:*)
@@ -892,10 +927,13 @@ EOF
EV67) UNAME_MACHINE=alphaev67 ;;
EV68*) UNAME_MACHINE=alphaev68 ;;
esac
- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+ objdump --private-headers /bin/sh | grep -q ld.so.1
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
exit ;;
+ padre:Linux:*:*)
+ echo sparc-unknown-linux-gnu
+ exit ;;
parisc:Linux:*:* | hppa:Linux:*:*)
# Look for CPU level
case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
@@ -919,9 +957,15 @@ EOF
sparc:Linux:*:* | sparc64:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit ;;
+ vax:Linux:*:*)
+ echo ${UNAME_MACHINE}-dec-linux-gnu
+ exit ;;
x86_64:Linux:*:*)
echo x86_64-unknown-linux-gnu
exit ;;
+ xtensa*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
i*86:Linux:*:*)
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
@@ -937,17 +981,6 @@ EOF
elf32-i386)
TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
;;
- a.out-i386-linux)
- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
- exit ;;
- coff-i386)
- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
- exit ;;
- "")
- # Either a pre-BFD a.out linker (linux-gnuoldld) or
- # one that does not give us useful --help.
- echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
- exit ;;
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
@@ -964,7 +997,7 @@ EOF
LIBC=gnulibc1
# endif
#else
- #ifdef __INTEL_COMPILER
+ #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
LIBC=gnu
#else
LIBC=gnuaout
@@ -974,7 +1007,11 @@ EOF
LIBC=dietlibc
#endif
EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+ /^LIBC/{
+ s: ::g
+ p
+ }'`"
test x"${LIBC}" != x && {
echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
exit
@@ -1009,7 +1046,7 @@ EOF
i*86:syllable:*:*)
echo ${UNAME_MACHINE}-pc-syllable
exit ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit ;;
i*86:*DOS:*:*)
@@ -1053,8 +1090,11 @@ EOF
pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i386.
- echo i386-pc-msdosdjgpp
+ # the processor, so we play safe by assuming i586.
+ # Note: whatever this is, it MUST be the same as what config.sub
+ # prints for the "djgpp" host, or else GDB configury will decide that
+ # this is a cross-build.
+ echo i586-pc-msdosdjgpp
exit ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
@@ -1092,6 +1132,16 @@ EOF
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& { echo i486-ncr-sysv4; exit; } ;;
+ NCR*:*:4.2:* | MPRAS*:*:4.2:*)
+ OS_REL='.3'
+ test -r /etc/.relid \
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
exit ;;
@@ -1104,7 +1154,7 @@ EOF
rs6000:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
exit ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
echo powerpc-unknown-lynxos${UNAME_RELEASE}
exit ;;
SM[BE]S:UNIX_SV:*:*)
@@ -1167,6 +1217,9 @@ EOF
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
exit ;;
+ BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
+ echo i586-pc-haiku
+ exit ;;
SX-4:SUPER-UX:*:*)
echo sx4-nec-superux${UNAME_RELEASE}
exit ;;
@@ -1176,6 +1229,15 @@ EOF
SX-6:SUPER-UX:*:*)
echo sx6-nec-superux${UNAME_RELEASE}
exit ;;
+ SX-7:SUPER-UX:*:*)
+ echo sx7-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-8:SUPER-UX:*:*)
+ echo sx8-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-8R:SUPER-UX:*:*)
+ echo sx8r-nec-superux${UNAME_RELEASE}
+ exit ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit ;;
@@ -1185,7 +1247,6 @@ EOF
*:Darwin:*:*)
UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
case $UNAME_PROCESSOR in
- *86) UNAME_PROCESSOR=i686 ;;
unknown) UNAME_PROCESSOR=powerpc ;;
esac
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
@@ -1264,6 +1325,12 @@ EOF
i*86:skyos:*:*)
echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
exit ;;
+ i*86:rdos:*:*)
+ echo ${UNAME_MACHINE}-pc-rdos
+ exit ;;
+ i*86:AROS:*:*)
+ echo ${UNAME_MACHINE}-pc-aros
+ exit ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1424,9 +1491,9 @@ This script, last modified $timestamp, has failed to recognize
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
and
- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
If the version you run ($0) is already up to date, please
send the following data and any information you think might be
diff --git a/config.sub b/config.sub
index 1c366dfde9ab..eb0389a693f3 100755
--- a/config.sub
+++ b/config.sub
@@ -1,9 +1,10 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+# Free Software Foundation, Inc.
-timestamp='2005-07-08'
+timestamp='2009-06-11'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -71,8 +72,8 @@ Report bugs and patches to <config-patches@gnu.org>."
version="\
GNU config.sub ($timestamp)
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -119,8 +120,10 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
- kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+ kopensolaris*-gnu* | \
+ storm-chaos* | os2-emx* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
@@ -150,6 +153,9 @@ case $os in
os=
basic_machine=$1
;;
+ -bluegene*)
+ os=-cnk
+ ;;
-sim | -cisco | -oki | -wec | -winbond)
os=
basic_machine=$1
@@ -171,6 +177,10 @@ case $os in
-hiux*)
os=-hiuxwe2
;;
+ -sco6)
+ os=-sco5v6
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
-sco5)
os=-sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -187,6 +197,10 @@ case $os in
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
+ -sco5v6*)
+ # Don't forget version if it is 3.2v4 or newer.
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
-sco*)
os=-sco3.2v2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -231,20 +245,24 @@ case $basic_machine in
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
| bfin \
| c4x | clipper \
| d10v | d30v | dlx | dsp16xx \
- | fr30 | frv \
+ | fido | fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
- | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
+ | lm32 \
+ | m32c | m32r | m32rle | m68000 | m68k | m88k \
+ | maxq | mb | microblaze | mcore | mep | metag \
| mips | mipsbe | mipseb | mipsel | mipsle \
| mips16 \
| mips64 | mips64el \
- | mips64vr | mips64vrel \
+ | mips64octeon | mips64octeonel \
| mips64orion | mips64orionel \
+ | mips64r5900 | mips64r5900el \
+ | mips64vr | mips64vrel \
| mips64vr4100 | mips64vr4100el \
| mips64vr4300 | mips64vr4300el \
| mips64vr5000 | mips64vr5000el \
@@ -257,26 +275,26 @@ case $basic_machine in
| mipsisa64sr71k | mipsisa64sr71kel \
| mipstx39 | mipstx39el \
| mn10200 | mn10300 \
- | ms1 \
+ | moxie \
+ | mt \
| msp430 \
+ | nios | nios2 \
| ns16k | ns32k \
| or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
- | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+ | score \
+ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
| sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b \
- | strongarm \
+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+ | spu | strongarm \
| tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \
| we32k \
- | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
- | z8k)
- basic_machine=$basic_machine-unknown
- ;;
- m32c)
+ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
+ | z8k | z80)
basic_machine=$basic_machine-unknown
;;
m6811 | m68hc11 | m6812 | m68hc12)
@@ -286,6 +304,9 @@ case $basic_machine in
;;
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
;;
+ ms1)
+ basic_machine=mt-unknown
+ ;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
@@ -305,25 +326,28 @@ case $basic_machine in
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* \
+ | avr-* | avr32-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
| clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
- | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
- | m32r-* | m32rle-* \
+ | lm32-* \
+ | m32c-* | m32r-* | m32rle-* \
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* \
+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
| mips16-* \
| mips64-* | mips64el-* \
- | mips64vr-* | mips64vrel-* \
+ | mips64octeon-* | mips64octeonel-* \
| mips64orion-* | mips64orionel-* \
+ | mips64r5900-* | mips64r5900el-* \
+ | mips64vr-* | mips64vrel-* \
| mips64vr4100-* | mips64vr4100el-* \
| mips64vr4300-* | mips64vr4300el-* \
| mips64vr5000-* | mips64vr5000el-* \
@@ -336,30 +360,33 @@ case $basic_machine in
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
| mipstx39-* | mipstx39el-* \
| mmix-* \
- | ms1-* \
+ | mt-* \
| msp430-* \
+ | nios-* | nios2-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
| sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
| tahoe-* | thumb-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
| tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
- | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
- | xstormy16-* | xtensa-* \
+ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
+ | xstormy16-* | xtensa*-* \
| ymp-* \
- | z8k-*)
+ | z8k-* | z80-*)
;;
- m32c-*)
+ # Recognize the basic CPU types without company name, with glob match.
+ xtensa*)
+ basic_machine=$basic_machine-unknown
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
@@ -423,6 +450,10 @@ case $basic_machine in
basic_machine=m68k-apollo
os=-bsd
;;
+ aros)
+ basic_machine=i386-pc
+ os=-aros
+ ;;
aux)
basic_machine=m68k-apple
os=-aux
@@ -431,10 +462,26 @@ case $basic_machine in
basic_machine=ns32k-sequent
os=-dynix
;;
+ blackfin)
+ basic_machine=bfin-unknown
+ os=-linux
+ ;;
+ blackfin-*)
+ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
+ bluegene*)
+ basic_machine=powerpc-ibm
+ os=-cnk
+ ;;
c90)
basic_machine=c90-cray
os=-unicos
;;
+ cegcc)
+ basic_machine=arm-unknown
+ os=-cegcc
+ ;;
convex-c1)
basic_machine=c1-convex
os=-bsd
@@ -463,8 +510,8 @@ case $basic_machine in
basic_machine=craynv-cray
os=-unicosmp
;;
- cr16c)
- basic_machine=cr16c-unknown
+ cr16)
+ basic_machine=cr16-unknown
os=-elf
;;
crds | unos)
@@ -502,6 +549,10 @@ case $basic_machine in
basic_machine=m88k-motorola
os=-sysv3
;;
+ dicos)
+ basic_machine=i686-pc
+ os=-dicos
+ ;;
djgpp)
basic_machine=i586-pc
os=-msdosdjgpp
@@ -656,6 +707,14 @@ case $basic_machine in
basic_machine=m68k-isi
os=-sysv
;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ os=-linux
+ ;;
+ m68knommu-*)
+ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
m88k-omron*)
basic_machine=m88k-omron
;;
@@ -671,6 +730,10 @@ case $basic_machine in
basic_machine=i386-pc
os=-mingw32
;;
+ mingw32ce)
+ basic_machine=arm-unknown
+ os=-mingw32ce
+ ;;
miniframe)
basic_machine=m68000-convergent
;;
@@ -696,6 +759,9 @@ case $basic_machine in
basic_machine=i386-pc
os=-msdos
;;
+ ms1-*)
+ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+ ;;
mvs)
basic_machine=i370-ibm
os=-mvs
@@ -794,6 +860,14 @@ case $basic_machine in
basic_machine=i860-intel
os=-osf
;;
+ parisc)
+ basic_machine=hppa-unknown
+ os=-linux
+ ;;
+ parisc-*)
+ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
pbd)
basic_machine=sparc-tti
;;
@@ -803,6 +877,12 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
+ pc98)
+ basic_machine=i386-pc
+ ;;
+ pc98-*)
+ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
@@ -859,6 +939,10 @@ case $basic_machine in
basic_machine=i586-unknown
os=-pw32
;;
+ rdos)
+ basic_machine=i386-pc
+ os=-rdos
+ ;;
rom68k)
basic_machine=m68k-rom68k
os=-coff
@@ -885,6 +969,10 @@ case $basic_machine in
sb1el)
basic_machine=mipsisa64sb1el-unknown
;;
+ sde)
+ basic_machine=mipsisa32-sde
+ os=-elf
+ ;;
sei)
basic_machine=mips-sei
os=-seiux
@@ -896,6 +984,9 @@ case $basic_machine in
basic_machine=sh-hitachi
os=-hms
;;
+ sh5el)
+ basic_machine=sh5le-unknown
+ ;;
sh64)
basic_machine=sh64-unknown
;;
@@ -985,6 +1076,10 @@ case $basic_machine in
basic_machine=tic6x-unknown
os=-coff
;;
+ tile*)
+ basic_machine=tile-unknown
+ os=-linux-gnu
+ ;;
tx39)
basic_machine=mipstx39-unknown
;;
@@ -1060,6 +1155,10 @@ case $basic_machine in
basic_machine=z8k-unknown
os=-sim
;;
+ z80-*-coff)
+ basic_machine=z80-unknown
+ os=-sim
+ ;;
none)
basic_machine=none-none
os=-none
@@ -1098,10 +1197,10 @@ case $basic_machine in
we32k)
basic_machine=we32k-att
;;
- sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
+ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
basic_machine=sh-unknown
;;
- sparc | sparcv8 | sparcv9 | sparcv9b)
+ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
basic_machine=sparc-sun
;;
cydra)
@@ -1168,27 +1267,30 @@ case $os in
# Each alternative MUST END IN A *, to match a version number.
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+ | -kopensolaris* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* \
+ | -aos* | -aros* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+ | -openbsd* | -solidbsd* \
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* \
+ | -chorusos* | -chorusrdb* | -cegcc* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+ | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku*)
+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
@@ -1318,6 +1420,9 @@ case $os in
-zvmoe)
os=-zvmoe
;;
+ -dicos*)
+ os=-dicos
+ ;;
-none)
;;
*)
@@ -1340,6 +1445,12 @@ else
# system, and we'll never get to this point.
case $basic_machine in
+ score-*)
+ os=-elf
+ ;;
+ spu-*)
+ os=-elf
+ ;;
*-acorn)
os=-riscix1.2
;;
@@ -1349,9 +1460,9 @@ case $basic_machine in
arm*-semi)
os=-aout
;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
+ c4x-* | tic4x-*)
+ os=-coff
+ ;;
# This must come before the *-dec entry.
pdp10-*)
os=-tops20
@@ -1377,6 +1488,9 @@ case $basic_machine in
m68*-cisco)
os=-aout
;;
+ mep-*)
+ os=-elf
+ ;;
mips*-cisco)
os=-elf
;;
@@ -1506,7 +1620,7 @@ case $basic_machine in
-sunos*)
vendor=sun
;;
- -aix*)
+ -cnk*|-aix*)
vendor=ibm
;;
-beos*)
diff --git a/configure b/configure
index 5fefb23eefaa..30106ae713fe 100755
--- a/configure
+++ b/configure
@@ -1,83 +1,418 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for the fast lexical analyser generator 2.5.35.
+# Generated by GNU Autoconf 2.65 for the fast lexical analyser generator 2.5.37.
#
# Report bugs to <flex-help@lists.sourceforge.net>.
#
-# Copyright (C) 2003 Free Software Foundation, Inc.
+#
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
+# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+#
+#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
fi
-DUALCASE=1; export DUALCASE # for MKS sh
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
+
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
+ else
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in #(
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
+ fi
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
fi
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
+# IFS
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+IFS=" "" $as_nl"
+
+# Find who we are. Look in the path if we contain no directory separator.
+case $0 in #((
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
+IFS=$as_save_IFS
+
+ ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+ as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ exit 1
+fi
+
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
PS1='$ '
PS2='> '
PS4='+ '
# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+if test "x$CONFIG_SHELL" = x; then
+ as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+ emulate sh
+ NULLCMD=:
+ # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
+ setopt NO_GLOB_SUBST
+else
+ case \`(set -o) 2>/dev/null\` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
+fi
+"
+ as_required="as_fn_return () { (exit \$1); }
+as_fn_success () { as_fn_return 0; }
+as_fn_failure () { as_fn_return 1; }
+as_fn_ret_success () { return 0; }
+as_fn_ret_failure () { return 1; }
+
+exitcode=0
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+
+else
+ exitcode=1; echo positional parameters were not saved.
+fi
+test x\$exitcode = x0 || exit 1"
+ as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
+ as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
+ eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
+ test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+ if (eval "$as_required") 2>/dev/null; then :
+ as_have_required=yes
+else
+ as_have_required=no
+fi
+ if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ as_found=:
+ case $as_dir in #(
+ /*)
+ for as_base in sh bash ksh sh5; do
+ # Try only shells that exist, to save several forks.
+ as_shell=$as_dir/$as_base
+ if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ CONFIG_SHELL=$as_shell as_have_required=yes
+ if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+ break 2
+fi
+fi
+ done;;
+ esac
+ as_found=false
+done
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+ CONFIG_SHELL=$SHELL as_have_required=yes
+fi; }
+IFS=$as_save_IFS
+
+
+ if test "x$CONFIG_SHELL" != x; then :
+ # We cannot yet assume a decent shell, so we have to provide a
+ # neutralization value for shells without unset; and this also
+ # works around shells that cannot unset nonexistent variables.
+ BASH_ENV=/dev/null
+ ENV=/dev/null
+ (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"}
+fi
+
+ if test x$as_have_required = xno; then :
+ $as_echo "$0: This script requires a shell more modern than all"
+ $as_echo "$0: the shells that I found on your system."
+ if test x${ZSH_VERSION+set} = xset ; then
+ $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+ $as_echo "$0: be upgraded to zsh 4.3.4 or later."
else
- $as_unset $as_var
+ $as_echo "$0: Please tell bug-autoconf@gnu.org and
+$0: flex-help@lists.sourceforge.net about your system,
+$0: including any error possibly output before this
+$0: message. Then install a modern shell, or manually run
+$0: the script under such a shell if you do have one."
fi
-done
+ exit 1
+fi
+fi
+fi
+SHELL=${CONFIG_SHELL-/bin/sh}
+export SHELL
+# Unset more variables known to interfere with behavior of common tools.
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
+
+## --------------------- ##
+## M4sh Shell Functions. ##
+## --------------------- ##
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
+else
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
+else
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
+
+
+# as_fn_error ERROR [LINENO LOG_FD]
+# ---------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with status $?, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$?; test $as_status -eq 0 && as_status=1
+ if test "$3"; then
+ as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3
+ fi
+ $as_echo "$as_me: error: $1" >&2
+ as_fn_exit $as_status
+} # as_fn_error
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
else
as_expr=false
fi
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
as_basename=basename
else
as_basename=false
fi
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
-# Name of the executable.
-as_me=`$as_basename "$0" ||
+as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
-
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
-# PATH needs CR, and LINENO needs CR and PATH.
# Avoid depending upon Character Ranges.
as_cr_letters='abcdefghijklmnopqrstuvwxyz'
as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
@@ -85,146 +420,107 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
+ as_lineno_1=$LINENO as_lineno_1a=$LINENO
+ as_lineno_2=$LINENO as_lineno_2a=$LINENO
+ eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+ test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+ # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
+ sed -n '
+ p
+ /[$]LINENO/=
+ ' <$as_myself |
sed '
+ s/[$]LINENO.*/&-/
+ t lineno
+ b
+ :lineno
N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+ :loop
+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
+ s/-\n.*//
' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
- { (exit 1); exit 1; }; }
+ chmod +x "$as_me.lineno" ||
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
# Don't try to exec as it changes $[0], causing all sort of problems
# (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
+ # original and so on. Autoconf is especially sensitive to this).
+ . "./$as_me.lineno"
# Exit status is that of the last command.
exit
}
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in #(((((
+-n*)
+ case `echo 'xy\c'` in
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
+ esac;;
+*)
+ ECHO_N='-n';;
esac
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+ rm -f conf$$.dir/conf$$.file
else
- as_expr=false
+ rm -f conf$$.dir
+ mkdir conf$$.dir 2>/dev/null
fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
+ as_ln_s='cp -p'
fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
else
as_ln_s='cp -p'
fi
-rm -f conf$$ conf$$.exe conf$$.file
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
+ as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
fi
-as_executable_p="test -f"
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in #(
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -233,90 +529,225 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
+test -n "$DJDIR" || exec 7<&0 </dev/null
+exec 6>&1
# Name of the host.
# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
# so uname gets run too.
ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-exec 6>&1
-
#
# Initializations.
#
ac_default_prefix=/usr/local
+ac_clean_files=
ac_config_libobj_dir=.
+LIBOBJS=
cross_compiling=no
subdirs=
MFLAGS=
MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-
-# Maximum number of lines to put in a shell here document.
-# This variable seems obsolete. It should probably be removed, and
-# only ac_max_sed_lines should be used.
-: ${ac_max_here_lines=38}
# Identity of this package.
PACKAGE_NAME='the fast lexical analyser generator'
PACKAGE_TARNAME='flex'
-PACKAGE_VERSION='2.5.35'
-PACKAGE_STRING='the fast lexical analyser generator 2.5.35'
+PACKAGE_VERSION='2.5.37'
+PACKAGE_STRING='the fast lexical analyser generator 2.5.37'
PACKAGE_BUGREPORT='flex-help@lists.sourceforge.net'
+PACKAGE_URL=''
ac_unique_file="scan.l"
+ac_config_libobj_dir=lib
# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
-#if HAVE_SYS_TYPES_H
+#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
-#if HAVE_SYS_STAT_H
+#ifdef HAVE_SYS_STAT_H
# include <sys/stat.h>
#endif
-#if STDC_HEADERS
+#ifdef STDC_HEADERS
# include <stdlib.h>
# include <stddef.h>
#else
-# if HAVE_STDLIB_H
+# ifdef HAVE_STDLIB_H
# include <stdlib.h>
# endif
#endif
-#if HAVE_STRING_H
-# if !STDC_HEADERS && HAVE_MEMORY_H
+#ifdef HAVE_STRING_H
+# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
# include <memory.h>
# endif
# include <string.h>
#endif
-#if HAVE_STRINGS_H
+#ifdef HAVE_STRINGS_H
# include <strings.h>
#endif
-#if HAVE_INTTYPES_H
+#ifdef HAVE_INTTYPES_H
# include <inttypes.h>
-#else
-# if HAVE_STDINT_H
-# include <stdint.h>
-# endif
#endif
-#if HAVE_UNISTD_H
+#ifdef HAVE_STDINT_H
+# include <stdint.h>
+#endif
+#ifdef HAVE_UNISTD_H
# include <unistd.h>
#endif"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os LIBICONV LTLIBICONV INTLLIBS LIBINTL LTLIBINTL POSUB YACC LEX LEXLIB LEX_OUTPUT_ROOT CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE LN_S RANLIB ac_ct_RANLIB BISON HELP2MAN M4 INDENT ALLOCA CPP EGREP LIBOBJS LTLIBOBJS'
+ac_subst_vars='am__EXEEXT_FALSE
+am__EXEEXT_TRUE
+LTLIBOBJS
+LIBOBJS
+ALLOCA
+EGREP
+GREP
+CPP
+INDENT
+M4
+HELP2MAN
+BISON
+RANLIB
+LN_S
+am__fastdepCXX_FALSE
+am__fastdepCXX_TRUE
+CXXDEPMODE
+ac_ct_CXX
+CXXFLAGS
+CXX
+LEXLIB
+LEX_OUTPUT_ROOT
+LEX
+YFLAGS
+YACC
+POSUB
+LTLIBINTL
+LIBINTL
+INTLLIBS
+LTLIBICONV
+LIBICONV
+host_os
+host_vendor
+host_cpu
+host
+build_os
+build_vendor
+build_cpu
+build
+am__fastdepCC_FALSE
+am__fastdepCC_TRUE
+CCDEPMODE
+AMDEPBACKSLASH
+AMDEP_FALSE
+AMDEP_TRUE
+am__quote
+am__include
+DEPDIR
+OBJEXT
+EXEEXT
+ac_ct_CC
+CPPFLAGS
+LDFLAGS
+CFLAGS
+CC
+MSGMERGE
+XGETTEXT
+GMSGFMT
+MSGFMT
+USE_NLS
+MKINSTALLDIRS
+am__untar
+am__tar
+AMTAR
+am__leading_dot
+SET_MAKE
+AWK
+mkdir_p
+MKDIR_P
+INSTALL_STRIP_PROGRAM
+STRIP
+install_sh
+MAKEINFO
+AUTOHEADER
+AUTOMAKE
+AUTOCONF
+ACLOCAL
+VERSION
+PACKAGE
+CYGPATH_W
+am__isrc
+INSTALL_DATA
+INSTALL_SCRIPT
+INSTALL_PROGRAM
+target_alias
+host_alias
+build_alias
+LIBS
+ECHO_T
+ECHO_N
+ECHO_C
+DEFS
+mandir
+localedir
+libdir
+psdir
+pdfdir
+dvidir
+htmldir
+infodir
+docdir
+oldincludedir
+includedir
+localstatedir
+sharedstatedir
+sysconfdir
+datadir
+datarootdir
+libexecdir
+sbindir
+bindir
+program_transform_name
+prefix
+exec_prefix
+PACKAGE_URL
+PACKAGE_BUGREPORT
+PACKAGE_STRING
+PACKAGE_VERSION
+PACKAGE_TARNAME
+PACKAGE_NAME
+PATH_SEPARATOR
+SHELL'
ac_subst_files=''
+ac_user_opts='
+enable_option_checking
+enable_nls
+enable_dependency_tracking
+with_gnu_ld
+enable_rpath
+with_libiconv_prefix
+with_libintl_prefix
+'
+ ac_precious_vars='build_alias
+host_alias
+target_alias
+CC
+CFLAGS
+LDFLAGS
+LIBS
+CPPFLAGS
+YACC
+YFLAGS
+CXX
+CXXFLAGS
+CCC
+CPP'
+
# Initialize some variables set by options.
ac_init_help=
ac_init_version=false
+ac_unrecognized_opts=
+ac_unrecognized_sep=
# The variables have the same names as the options, with
# dashes changed to underlines.
cache_file=/dev/null
@@ -339,34 +770,48 @@ x_libraries=NONE
# and all the variables that are supposed to be based on exec_prefix
# by default will actually change.
# Use braces instead of parens because sh, perl, etc. also accept them.
+# (The list follows the same order as the GNU Coding Standards.)
bindir='${exec_prefix}/bin'
sbindir='${exec_prefix}/sbin'
libexecdir='${exec_prefix}/libexec'
-datadir='${prefix}/share'
+datarootdir='${prefix}/share'
+datadir='${datarootdir}'
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
-libdir='${exec_prefix}/lib'
includedir='${prefix}/include'
oldincludedir='/usr/include'
-infodir='${prefix}/info'
-mandir='${prefix}/man'
+docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
+infodir='${datarootdir}/info'
+htmldir='${docdir}'
+dvidir='${docdir}'
+pdfdir='${docdir}'
+psdir='${docdir}'
+libdir='${exec_prefix}/lib'
+localedir='${datarootdir}/locale'
+mandir='${datarootdir}/man'
ac_prev=
+ac_dashdash=
for ac_option
do
# If the previous option needs an argument, assign it.
if test -n "$ac_prev"; then
- eval "$ac_prev=\$ac_option"
+ eval $ac_prev=\$ac_option
ac_prev=
continue
fi
- ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
+ case $ac_option in
+ *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+ *) ac_optarg=yes ;;
+ esac
# Accept the important Cygnus configure options, so we can diagnose typos.
- case $ac_option in
+ case $ac_dashdash$ac_option in
+ --)
+ ac_dashdash=yes ;;
-bindir | --bindir | --bindi | --bind | --bin | --bi)
ac_prev=bindir ;;
@@ -388,33 +833,59 @@ do
--config-cache | -C)
cache_file=config.cache ;;
- -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+ -datadir | --datadir | --datadi | --datad)
ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
- | --da=*)
+ -datadir=* | --datadir=* | --datadi=* | --datad=*)
datadir=$ac_optarg ;;
+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
+ | --dataroo | --dataro | --datar)
+ ac_prev=datarootdir ;;
+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
+ datarootdir=$ac_optarg ;;
+
-disable-* | --disable-*)
- ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- eval "enable_$ac_feature=no" ;;
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid feature name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval enable_$ac_useropt=no ;;
+
+ -docdir | --docdir | --docdi | --doc | --do)
+ ac_prev=docdir ;;
+ -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
+ docdir=$ac_optarg ;;
+
+ -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
+ ac_prev=dvidir ;;
+ -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
+ dvidir=$ac_optarg ;;
-enable-* | --enable-*)
- ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid feature name: $ac_feature" >&2
- { (exit 1); exit 1; }; }
- ac_feature=`echo $ac_feature | sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid feature name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"enable_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
esac
- eval "enable_$ac_feature='$ac_optarg'" ;;
+ eval enable_$ac_useropt=\$ac_optarg ;;
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
| --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
@@ -441,6 +912,12 @@ do
-host=* | --host=* | --hos=* | --ho=*)
host_alias=$ac_optarg ;;
+ -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
+ ac_prev=htmldir ;;
+ -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
+ | --ht=*)
+ htmldir=$ac_optarg ;;
+
-includedir | --includedir | --includedi | --included | --include \
| --includ | --inclu | --incl | --inc)
ac_prev=includedir ;;
@@ -465,13 +942,16 @@ do
| --libexe=* | --libex=* | --libe=*)
libexecdir=$ac_optarg ;;
+ -localedir | --localedir | --localedi | --localed | --locale)
+ ac_prev=localedir ;;
+ -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
+ localedir=$ac_optarg ;;
+
-localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst \
- | --locals | --local | --loca | --loc | --lo)
+ | --localstate | --localstat | --localsta | --localst | --locals)
ac_prev=localstatedir ;;
-localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* \
- | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
localstatedir=$ac_optarg ;;
-mandir | --mandir | --mandi | --mand | --man | --ma | --m)
@@ -536,6 +1016,16 @@ do
| --progr-tra=* | --program-tr=* | --program-t=*)
program_transform_name=$ac_optarg ;;
+ -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
+ ac_prev=pdfdir ;;
+ -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
+ pdfdir=$ac_optarg ;;
+
+ -psdir | --psdir | --psdi | --psd | --ps)
+ ac_prev=psdir ;;
+ -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
+ psdir=$ac_optarg ;;
+
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
@@ -586,26 +1076,36 @@ do
ac_init_version=: ;;
-with-* | --with-*)
- ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package| sed 's/-/_/g'`
- case $ac_option in
- *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
- *) ac_optarg=yes ;;
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid package name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
esac
- eval "with_$ac_package='$ac_optarg'" ;;
+ eval with_$ac_useropt=\$ac_optarg ;;
-without-* | --without-*)
- ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
# Reject names that are not valid shell variable names.
- expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid package name: $ac_package" >&2
- { (exit 1); exit 1; }; }
- ac_package=`echo $ac_package | sed 's/-/_/g'`
- eval "with_$ac_package=no" ;;
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+ as_fn_error "invalid package name: $ac_useropt"
+ ac_useropt_orig=$ac_useropt
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+ case $ac_user_opts in
+ *"
+"with_$ac_useropt"
+"*) ;;
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
+ ac_unrecognized_sep=', ';;
+ esac
+ eval with_$ac_useropt=no ;;
--x)
# Obsolete; use --with-x.
@@ -625,26 +1125,25 @@ do
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
x_libraries=$ac_optarg ;;
- -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
- { (exit 1); exit 1; }; }
+ -*) as_fn_error "unrecognized option: \`$ac_option'
+Try \`$0 --help' for more information."
;;
*=*)
ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
# Reject names that are not valid shell variable names.
- expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
- { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
- { (exit 1); exit 1; }; }
- ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
- eval "$ac_envvar='$ac_optarg'"
+ case $ac_envvar in #(
+ '' | [0-9]* | *[!_$as_cr_alnum]* )
+ as_fn_error "invalid variable name: \`$ac_envvar'" ;;
+ esac
+ eval $ac_envvar=\$ac_optarg
export $ac_envvar ;;
*)
# FIXME: should be removed in autoconf 3.0.
- echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+ $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+ $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
: ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
;;
@@ -653,31 +1152,36 @@ done
if test -n "$ac_prev"; then
ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- { echo "$as_me: error: missing argument to $ac_option" >&2
- { (exit 1); exit 1; }; }
+ as_fn_error "missing argument to $ac_option"
fi
-# Be sure to have absolute paths.
-for ac_var in exec_prefix prefix
-do
- eval ac_val=$`echo $ac_var`
- case $ac_val in
- [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
+if test -n "$ac_unrecognized_opts"; then
+ case $enable_option_checking in
+ no) ;;
+ fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;;
+ *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
esac
-done
+fi
-# Be sure to have absolute paths.
-for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
- localstatedir libdir includedir oldincludedir infodir mandir
+# Check all directory arguments for consistency.
+for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
+ datadir sysconfdir sharedstatedir localstatedir includedir \
+ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
+ libdir localedir mandir
do
- eval ac_val=$`echo $ac_var`
+ eval ac_val=\$$ac_var
+ # Remove trailing slashes.
+ case $ac_val in
+ */ )
+ ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
+ eval $ac_var=\$ac_val;;
+ esac
+ # Be sure to have absolute directory names.
case $ac_val in
- [\\/$]* | ?:[\\/]* ) ;;
- *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
- { (exit 1); exit 1; }; };;
+ [\\/$]* | ?:[\\/]* ) continue;;
+ NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
esac
+ as_fn_error "expected an absolute directory name for --$ac_var: $ac_val"
done
# There might be people who depend on the old broken behavior: `$host'
@@ -691,7 +1195,7 @@ target=$target_alias
if test "x$host_alias" != x; then
if test "x$build_alias" = x; then
cross_compiling=maybe
- echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+ $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used." >&2
elif test "x$build_alias" != "x$host_alias"; then
cross_compiling=yes
@@ -704,82 +1208,72 @@ test -n "$host_alias" && ac_tool_prefix=$host_alias-
test "$silent" = yes && exec 6>/dev/null
+ac_pwd=`pwd` && test -n "$ac_pwd" &&
+ac_ls_di=`ls -di .` &&
+ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
+ as_fn_error "working directory cannot be determined"
+test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
+ as_fn_error "pwd does not report name of working directory"
+
+
# Find the source files, if location was not specified.
if test -z "$srcdir"; then
ac_srcdir_defaulted=yes
- # Try the directory containing this script, then its parent.
- ac_confdir=`(dirname "$0") 2>/dev/null ||
-$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$0" : 'X\(//\)[^/]' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$0" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
+ # Try the directory containing this script, then the parent directory.
+ ac_confdir=`$as_dirname -- "$as_myself" ||
+$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_myself" : 'X\(//\)[^/]' \| \
+ X"$as_myself" : 'X\(//\)$' \| \
+ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_myself" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
srcdir=$ac_confdir
- if test ! -r $srcdir/$ac_unique_file; then
+ if test ! -r "$srcdir/$ac_unique_file"; then
srcdir=..
fi
else
ac_srcdir_defaulted=no
fi
-if test ! -r $srcdir/$ac_unique_file; then
- if test "$ac_srcdir_defaulted" = yes; then
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
- { (exit 1); exit 1; }; }
- else
- { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
- { (exit 1); exit 1; }; }
- fi
-fi
-(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
- { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
- { (exit 1); exit 1; }; }
-srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
-ac_env_build_alias_set=${build_alias+set}
-ac_env_build_alias_value=$build_alias
-ac_cv_env_build_alias_set=${build_alias+set}
-ac_cv_env_build_alias_value=$build_alias
-ac_env_host_alias_set=${host_alias+set}
-ac_env_host_alias_value=$host_alias
-ac_cv_env_host_alias_set=${host_alias+set}
-ac_cv_env_host_alias_value=$host_alias
-ac_env_target_alias_set=${target_alias+set}
-ac_env_target_alias_value=$target_alias
-ac_cv_env_target_alias_set=${target_alias+set}
-ac_cv_env_target_alias_value=$target_alias
-ac_env_CC_set=${CC+set}
-ac_env_CC_value=$CC
-ac_cv_env_CC_set=${CC+set}
-ac_cv_env_CC_value=$CC
-ac_env_CFLAGS_set=${CFLAGS+set}
-ac_env_CFLAGS_value=$CFLAGS
-ac_cv_env_CFLAGS_set=${CFLAGS+set}
-ac_cv_env_CFLAGS_value=$CFLAGS
-ac_env_LDFLAGS_set=${LDFLAGS+set}
-ac_env_LDFLAGS_value=$LDFLAGS
-ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
-ac_cv_env_LDFLAGS_value=$LDFLAGS
-ac_env_CPPFLAGS_set=${CPPFLAGS+set}
-ac_env_CPPFLAGS_value=$CPPFLAGS
-ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
-ac_cv_env_CPPFLAGS_value=$CPPFLAGS
-ac_env_CXX_set=${CXX+set}
-ac_env_CXX_value=$CXX
-ac_cv_env_CXX_set=${CXX+set}
-ac_cv_env_CXX_value=$CXX
-ac_env_CXXFLAGS_set=${CXXFLAGS+set}
-ac_env_CXXFLAGS_value=$CXXFLAGS
-ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set}
-ac_cv_env_CXXFLAGS_value=$CXXFLAGS
-ac_env_CPP_set=${CPP+set}
-ac_env_CPP_value=$CPP
-ac_cv_env_CPP_set=${CPP+set}
-ac_cv_env_CPP_value=$CPP
+if test ! -r "$srcdir/$ac_unique_file"; then
+ test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
+ as_fn_error "cannot find sources ($ac_unique_file) in $srcdir"
+fi
+ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
+ac_abs_confdir=`(
+ cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg"
+ pwd)`
+# When building in place, set srcdir=.
+if test "$ac_abs_confdir" = "$ac_pwd"; then
+ srcdir=.
+fi
+# Remove unnecessary trailing slashes from srcdir.
+# Double slashes in file names in object file debugging info
+# mess up M-x gdb in Emacs.
+case $srcdir in
+*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
+esac
+for ac_var in $ac_precious_vars; do
+ eval ac_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_env_${ac_var}_value=\$${ac_var}
+ eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
+ eval ac_cv_env_${ac_var}_value=\$${ac_var}
+done
#
# Report the --help message.
@@ -788,7 +1282,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures the fast lexical analyser generator 2.5.35 to adapt to many kinds of systems.
+\`configure' configures the fast lexical analyser generator 2.5.37 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -808,14 +1302,11 @@ Configuration:
-n, --no-create do not create output files
--srcdir=DIR find the sources in DIR [configure dir or \`..']
-_ACEOF
-
- cat <<_ACEOF
Installation directories:
--prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
+ [$ac_default_prefix]
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
+ [PREFIX]
By default, \`make install' will install all the files in
\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
@@ -825,18 +1316,25 @@ for instance \`--prefix=\$HOME'.
For better control, use the options below.
Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --datadir=DIR read-only architecture-independent data [PREFIX/share]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --infodir=DIR info documentation [PREFIX/info]
- --mandir=DIR man documentation [PREFIX/man]
+ --bindir=DIR user executables [EPREFIX/bin]
+ --sbindir=DIR system admin executables [EPREFIX/sbin]
+ --libexecdir=DIR program executables [EPREFIX/libexec]
+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --libdir=DIR object code libraries [EPREFIX/lib]
+ --includedir=DIR C header files [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc [/usr/include]
+ --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
+ --infodir=DIR info documentation [DATAROOTDIR/info]
+ --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
+ --mandir=DIR man documentation [DATAROOTDIR/man]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/flex]
+ --htmldir=DIR html documentation [DOCDIR]
+ --dvidir=DIR dvi documentation [DOCDIR]
+ --pdfdir=DIR pdf documentation [DOCDIR]
+ --psdir=DIR ps documentation [DOCDIR]
_ACEOF
cat <<\_ACEOF
@@ -854,11 +1352,12 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of the fast lexical analyser generator 2.5.35:";;
+ short | recursive ) echo "Configuration of the fast lexical analyser generator 2.5.37:";;
esac
cat <<\_ACEOF
Optional Features:
+ --disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--disable-nls do not use Native Language Support
@@ -880,8 +1379,14 @@ Some influential environment variables:
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
- CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
- headers in a nonstandard directory <include dir>
+ LIBS libraries to pass to the linker, e.g. -l<library>
+ CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
+ you have headers in a nonstandard directory <include dir>
+ YACC The `Yet Another C Compiler' implementation to use. Defaults to
+ the first program found out of: `bison -y', `byacc', `yacc'.
+ YFLAGS The list of arguments that will be passed by default to $YACC.
+ This script will default YFLAGS to the empty string to avoid a
+ default value of `-d' given by some make applications.
CXX C++ compiler command
CXXFLAGS C++ compiler flags
CPP C preprocessor
@@ -891,120 +1396,537 @@ it to find libraries and programs with nonstandard names/locations.
Report bugs to <flex-help@lists.sourceforge.net>.
_ACEOF
+ac_status=$?
fi
if test "$ac_init_help" = "recursive"; then
# If there are subdirs, report their specific --help.
- ac_popdir=`pwd`
for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d $ac_dir || continue
+ test -d "$ac_dir" ||
+ { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
+ continue
ac_builddir=.
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
case $srcdir in
- .) # No --srcdir option. We are building in place.
+ .) # We are building in place.
ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
esac
-
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
- case "$ac_dir" in
- .) ac_abs_builddir=`pwd`;;
- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
- *) ac_abs_builddir=`pwd`/"$ac_dir";;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
- case ${ac_top_builddir}. in
- .) ac_abs_top_builddir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
- case $ac_srcdir in
- .) ac_abs_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
- case $ac_top_srcdir in
- .) ac_abs_top_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
- esac;;
-esac
-
- cd $ac_dir
- # Check for guested configure; otherwise get Cygnus style configure.
- if test -f $ac_srcdir/configure.gnu; then
- echo
- $SHELL $ac_srcdir/configure.gnu --help=recursive
- elif test -f $ac_srcdir/configure; then
- echo
- $SHELL $ac_srcdir/configure --help=recursive
- elif test -f $ac_srcdir/configure.ac ||
- test -f $ac_srcdir/configure.in; then
- echo
- $ac_configure --help
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
+
+ cd "$ac_dir" || { ac_status=$?; continue; }
+ # Check for guested configure.
+ if test -f "$ac_srcdir/configure.gnu"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure.gnu" --help=recursive
+ elif test -f "$ac_srcdir/configure"; then
+ echo &&
+ $SHELL "$ac_srcdir/configure" --help=recursive
else
- echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi
- cd "$ac_popdir"
+ $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+ fi || ac_status=$?
+ cd "$ac_pwd" || { ac_status=$?; break; }
done
fi
-test -n "$ac_init_help" && exit 0
+test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-the fast lexical analyser generator configure 2.5.35
-generated by GNU Autoconf 2.59
+the fast lexical analyser generator configure 2.5.37
+generated by GNU Autoconf 2.65
-Copyright (C) 2003 Free Software Foundation, Inc.
+Copyright (C) 2009 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
- exit 0
+ exit
fi
-exec 5>config.log
-cat >&5 <<_ACEOF
+
+## ------------------------ ##
+## Autoconf initialization. ##
+## ------------------------ ##
+
+# ac_fn_c_try_compile LINENO
+# --------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext
+ if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_compile
+
+# ac_fn_c_try_link LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_link ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext && {
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+ # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+ # interfere with the next link command; also delete a directory that is
+ # left behind by Apple's compiler. We do this before executing the actions.
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_link
+
+# ac_fn_cxx_try_compile LINENO
+# ----------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_cxx_try_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ rm -f conftest.$ac_objext
+ if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && {
+ test -z "$ac_cxx_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_cxx_try_compile
+
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+ ac_status=$?
+ if test -s conftest.err; then
+ grep -v '^ *+' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ mv -f conftest.er1 conftest.err
+ fi
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } >/dev/null && {
+ test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=1
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_cpp
+
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then :
+ ac_retval=0
+else
+ $as_echo "$as_me: program exited with status $ac_status" >&5
+ $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_retval=$ac_status
+fi
+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+ as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists, giving a warning if it cannot be compiled using
+# the include files in INCLUDES and setting the cache variable VAR
+# accordingly.
+ac_fn_c_check_header_mongrel ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+ # Is the header compilable?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
+$as_echo_n "checking $2 usability... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_header_compiler=yes
+else
+ ac_header_compiler=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
+$as_echo_n "checking $2 presence... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <$2>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+ ac_header_preproc=yes
+else
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
+ yes:no: )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+ ;;
+ no:yes:* )
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+( cat <<\_ASBOX
+## ---------------------------------------------- ##
+## Report this to flex-help@lists.sourceforge.net ##
+## ---------------------------------------------- ##
+_ASBOX
+ ) | sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=\$ac_header_compiler"
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+fi
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_header_mongrel
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_header_compile
+
+# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
+# -------------------------------------------
+# Tests whether TYPE exists after having included INCLUDES, setting cache
+# variable VAR accordingly.
+ac_fn_c_check_type ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ eval "$3=no"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+if (sizeof ($2))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$4
+int
+main ()
+{
+if (sizeof (($2)))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ eval "$3=yes"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_type
+
+# ac_fn_c_check_func LINENO FUNC VAR
+# ----------------------------------
+# Tests whether FUNC exists, setting the cache variable VAR accordingly
+ac_fn_c_check_func ()
+{
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $2 innocuous_$2
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $2 (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $2
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $2 ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined __stub_$2 || defined __stub___$2
+choke me
+#endif
+
+int
+main ()
+{
+return $2 ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ eval "$3=yes"
+else
+ eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+ eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;}
+
+} # ac_fn_c_check_func
+cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by the fast lexical analyser generator $as_me 2.5.35, which was
-generated by GNU Autoconf 2.59. Invocation command line was
+It was created by the fast lexical analyser generator $as_me 2.5.37, which was
+generated by GNU Autoconf 2.65. Invocation command line was
$ $0 $@
_ACEOF
+exec 5>>config.log
{
cat <<_ASUNAME
## --------- ##
@@ -1023,7 +1945,7 @@ uname -v = `(uname -v) 2>/dev/null || echo unknown`
/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-hostinfo = `(hostinfo) 2>/dev/null || echo unknown`
+/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
@@ -1035,8 +1957,9 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- echo "PATH: $as_dir"
-done
+ $as_echo "PATH: $as_dir"
+ done
+IFS=$as_save_IFS
} >&5
@@ -1058,7 +1981,6 @@ _ACEOF
ac_configure_args=
ac_configure_args0=
ac_configure_args1=
-ac_sep=
ac_must_keep_next=false
for ac_pass in 1 2
do
@@ -1069,13 +1991,13 @@ do
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil)
continue ;;
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *\'*)
+ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
esac
case $ac_pass in
- 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+ 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
2)
- ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+ as_fn_append ac_configure_args1 " '$ac_arg'"
if test $ac_must_keep_next = true; then
ac_must_keep_next=false # Got value, back to normal.
else
@@ -1091,21 +2013,19 @@ do
-* ) ac_must_keep_next=true ;;
esac
fi
- ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
- # Get rid of the leading space.
- ac_sep=" "
+ as_fn_append ac_configure_args " '$ac_arg'"
;;
esac
done
done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+{ ac_configure_args0=; unset ac_configure_args0;}
+{ ac_configure_args1=; unset ac_configure_args1;}
# When interrupted or exit'd, cleanup temporary files, and complete
# config.log. We remove comments because anyway the quotes in there
# would cause problems or look ugly.
-# WARNING: Be sure not to use single quotes in there, as some shells,
-# such as our DU 5.0 friend, will then `close' the trap.
+# WARNING: Use '\'' to represent an apostrophe within the trap.
+# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
trap 'exit_status=$?
# Save into config.log some information that might help in debugging.
{
@@ -1118,20 +2038,35 @@ trap 'exit_status=$?
_ASBOX
echo
# The following way of writing the cache mishandles newlines in values,
-{
+(
+ for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
+ eval ac_val=\$$ac_var
+ case $ac_val in #(
+ *${as_nl}*)
+ case $ac_var in #(
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ esac
+ case $ac_var in #(
+ _ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+ *) { eval $ac_var=; unset $ac_var;} ;;
+ esac ;;
+ esac
+ done
(set) 2>&1 |
- case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
+ case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
+ *${as_nl}ac_space=\ *)
sed -n \
- "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
- ;;
+ "s/'\''/'\''\\\\'\'''\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
+ ;; #(
*)
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
;;
- esac;
-}
+ esac |
+ sort
+)
echo
cat <<\_ASBOX
@@ -1142,22 +2077,28 @@ _ASBOX
echo
for ac_var in $ac_subst_vars
do
- eval ac_val=$`echo $ac_var`
- echo "$ac_var='"'"'$ac_val'"'"'"
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ $as_echo "$ac_var='\''$ac_val'\''"
done | sort
echo
if test -n "$ac_subst_files"; then
cat <<\_ASBOX
-## ------------- ##
-## Output files. ##
-## ------------- ##
+## ------------------- ##
+## File substitutions. ##
+## ------------------- ##
_ASBOX
echo
for ac_var in $ac_subst_files
do
- eval ac_val=$`echo $ac_var`
- echo "$ac_var='"'"'$ac_val'"'"'"
+ eval ac_val=\$$ac_var
+ case $ac_val in
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+ esac
+ $as_echo "$ac_var='\''$ac_val'\''"
done | sort
echo
fi
@@ -1169,26 +2110,26 @@ _ASBOX
## ----------- ##
_ASBOX
echo
- sed "/^$/d" confdefs.h | sort
+ cat confdefs.h
echo
fi
test "$ac_signal" != 0 &&
- echo "$as_me: caught signal $ac_signal"
- echo "$as_me: exit $exit_status"
+ $as_echo "$as_me: caught signal $ac_signal"
+ $as_echo "$as_me: exit $exit_status"
} >&5
- rm -f core *.core &&
- rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
+ rm -f core *.core core.conftest.* &&
+ rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
exit $exit_status
- ' 0
+' 0
for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+ trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
done
ac_signal=0
# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo >confdefs.h
+rm -f -r conftest* confdefs.h
+
+$as_echo "/* confdefs.h */" > confdefs.h
# Predefined preprocessor variables.
@@ -1196,112 +2137,128 @@ cat >>confdefs.h <<_ACEOF
#define PACKAGE_NAME "$PACKAGE_NAME"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_VERSION "$PACKAGE_VERSION"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_STRING "$PACKAGE_STRING"
_ACEOF
-
cat >>confdefs.h <<_ACEOF
#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
_ACEOF
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_URL "$PACKAGE_URL"
+_ACEOF
+
# Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
-if test -z "$CONFIG_SITE"; then
- if test "x$prefix" != xNONE; then
- CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
- else
- CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
- fi
-fi
-for ac_site_file in $CONFIG_SITE; do
- if test -r "$ac_site_file"; then
- { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-echo "$as_me: loading site script $ac_site_file" >&6;}
+# Prefer an explicitly selected file to automatically selected ones.
+ac_site_file1=NONE
+ac_site_file2=NONE
+if test -n "$CONFIG_SITE"; then
+ ac_site_file1=$CONFIG_SITE
+elif test "x$prefix" != xNONE; then
+ ac_site_file1=$prefix/share/config.site
+ ac_site_file2=$prefix/etc/config.site
+else
+ ac_site_file1=$ac_default_prefix/share/config.site
+ ac_site_file2=$ac_default_prefix/etc/config.site
+fi
+for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+do
+ test "x$ac_site_file" = xNONE && continue
+ if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+$as_echo "$as_me: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file"
fi
done
if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special
- # files actually), so we avoid doing that.
- if test -f "$cache_file"; then
- { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
+ # Some versions of bash will fail to source /dev/null (special files
+ # actually), so we avoid doing that. DJGPP emulates it as a regular file.
+ if test /dev/null != "$cache_file" && test -f "$cache_file"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+$as_echo "$as_me: loading cache $cache_file" >&6;}
case $cache_file in
- [\\/]* | ?:[\\/]* ) . $cache_file;;
- *) . ./$cache_file;;
+ [\\/]* | ?:[\\/]* ) . "$cache_file";;
+ *) . "./$cache_file";;
esac
fi
else
- { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+$as_echo "$as_me: creating cache $cache_file" >&6;}
>$cache_file
fi
# Check that the precious variables saved in the cache have kept the same
# value.
ac_cache_corrupted=false
-for ac_var in `(set) 2>&1 |
- sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+for ac_var in $ac_precious_vars; do
eval ac_old_set=\$ac_cv_env_${ac_var}_set
eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val="\$ac_cv_env_${ac_var}_value"
- eval ac_new_val="\$ac_env_${ac_var}_value"
+ eval ac_old_val=\$ac_cv_env_${ac_var}_value
+ eval ac_new_val=\$ac_env_${ac_var}_value
case $ac_old_set,$ac_new_set in
set,)
- { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
ac_cache_corrupted=: ;;
,set)
- { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
ac_cache_corrupted=: ;;
,);;
*)
if test "x$ac_old_val" != "x$ac_new_val"; then
- { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
-echo "$as_me: former value: $ac_old_val" >&2;}
- { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
-echo "$as_me: current value: $ac_new_val" >&2;}
- ac_cache_corrupted=:
+ # differences in whitespace do not lead to failure.
+ ac_old_val_w=`echo x $ac_old_val`
+ ac_new_val_w=`echo x $ac_new_val`
+ if test "$ac_old_val_w" != "$ac_new_val_w"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+ ac_cache_corrupted=:
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+ eval $ac_var=\$ac_old_val
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
+$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
+$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
fi;;
esac
# Pass precious variables to config.status.
if test "$ac_new_set" = set; then
case $ac_new_val in
- *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
- ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
*) ac_arg=$ac_var=$ac_new_val ;;
esac
case " $ac_configure_args " in
*" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ *) as_fn_append ac_configure_args " '$ac_arg'" ;;
esac
fi
done
if $ac_cache_corrupted; then
- { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
- { (exit 1); exit 1; }; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+ as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
fi
+## -------------------- ##
+## Main body of script. ##
+## -------------------- ##
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
@@ -1311,56 +2268,30 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+am__api_version='1.11'
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-am__api_version="1.9"
ac_aux_dir=
-for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
- if test -f $ac_dir/install-sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f $ac_dir/install.sh; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f $ac_dir/shtool; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
+for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
+ for ac_t in install-sh install.sh shtool; do
+ if test -f "$ac_dir/$ac_t"; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/$ac_t -c"
+ break 2
+ fi
+ done
done
if test -z "$ac_aux_dir"; then
- { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
-echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
fi
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"
-ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
+ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
+ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
+
# Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
@@ -1375,22 +2306,23 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
# OS/2's system install, which has a completely different semantic
# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+# Reject install programs that cannot install multiple files.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+if test "${ac_cv_path_install+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
- ./ | .// | /cC/* | \
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in #((
+ ./ | .// | /[cC]/* | \
/etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
/usr/ucb/* ) ;;
*)
# OSF1 and SCO ODT 3.0 have their own names for install.
@@ -1398,7 +2330,7 @@ case $as_dir/ in
# by default.
for ac_prog in ginstall scoinst install; do
for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+ if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
if test $ac_prog = install &&
grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
# AIX install. It has an incompatible calling convention.
@@ -1408,30 +2340,43 @@ case $as_dir/ in
# program-specific install script used by HP pwplus--don't use.
:
else
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
+ rm -rf conftest.one conftest.two conftest.dir
+ echo one > conftest.one
+ echo two > conftest.two
+ mkdir conftest.dir
+ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+ test -s conftest.one && test -s conftest.two &&
+ test -s conftest.dir/conftest.one &&
+ test -s conftest.dir/conftest.two
+ then
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
fi
fi
done
done
;;
esac
-done
+ done
+IFS=$as_save_IFS
+
+rm -rf conftest.one conftest.two conftest.dir
fi
if test "${ac_cv_path_install+set}" = set; then
INSTALL=$ac_cv_path_install
else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for INSTALL within a source directory, because that will
# break other packages using the cache if that directory is
- # removed, or if the path is relative.
+ # removed, or if the value is a relative name.
INSTALL=$ac_install_sh
fi
fi
-echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+$as_echo "$INSTALL" >&6; }
# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
# It thinks the first close brace ends the variable substitution.
@@ -1441,21 +2386,34 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-echo "$as_me:$LINENO: checking whether build environment is sane" >&5
-echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
+$as_echo_n "checking whether build environment is sane... " >&6; }
# Just in case
sleep 1
echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name. Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+ *[\\\"\#\$\&\'\`$am_lf]*)
+ as_fn_error "unsafe absolute working directory name" "$LINENO" 5;;
+esac
+case $srcdir in
+ *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
+ as_fn_error "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
+esac
+
# Do `set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
- set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
if test "$*" = "X"; then
# -L didn't work.
- set X `ls -t $srcdir/configure conftest.file`
+ set X `ls -t "$srcdir/configure" conftest.file`
fi
rm -f conftest.file
if test "$*" != "X $srcdir/configure conftest.file" \
@@ -1465,11 +2423,8 @@ if (
# if, for instance, CONFIG_SHELL is bash and it inherits a
# broken ls alias from the environment. This has actually
# happened. Such a system could not be considered "sane".
- { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken
-alias in your environment" >&5
-echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken
-alias in your environment" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error "ls -t appears to fail. Make sure there is not a broken
+alias in your environment" "$LINENO" 5
fi
test "$2" = conftest.file
@@ -1478,81 +2433,206 @@ then
# Ok.
:
else
- { { echo "$as_me:$LINENO: error: newly created file is older than distributed files!
-Check your system clock" >&5
-echo "$as_me: error: newly created file is older than distributed files!
-Check your system clock" >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error "newly created file is older than distributed files!
+Check your system clock" "$LINENO" 5
fi
-echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
test "$program_prefix" != NONE &&
- program_transform_name="s,^,$program_prefix,;$program_transform_name"
+ program_transform_name="s&^&$program_prefix&;$program_transform_name"
# Use a double $ so make ignores it.
test "$program_suffix" != NONE &&
- program_transform_name="s,\$,$program_suffix,;$program_transform_name"
-# Double any \ or $. echo might interpret backslashes.
+ program_transform_name="s&\$&$program_suffix&;$program_transform_name"
+# Double any \ or $.
# By default was `s,x,x', remove it if useless.
-cat <<\_ACEOF >conftest.sed
-s/[\\$]/&&/g;s/;s,x,x,$//
-_ACEOF
-program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
-rm conftest.sed
+ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
+program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
# expand $ac_aux_dir to an absolute path
am_aux_dir=`cd $ac_aux_dir && pwd`
-test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+if test x"${MISSING+set}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+ *)
+ MISSING="\${SHELL} $am_aux_dir/missing" ;;
+ esac
+fi
# Use eval to expand $SHELL
if eval "$MISSING --run true"; then
am_missing_run="$MISSING --run "
else
am_missing_run=
- { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
-echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
-fi
-
-if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
- # We used to keeping the `.' as first argument, in order to
- # allow $(mkdir_p) to be used without argument. As in
- # $(mkdir_p) $(somedir)
- # where $(somedir) is conditionally defined. However this is wrong
- # for two reasons:
- # 1. if the package is installed by a user who cannot write `.'
- # make install will fail,
- # 2. the above comment should most certainly read
- # $(mkdir_p) $(DESTDIR)$(somedir)
- # so it does not work when $(somedir) is undefined and
- # $(DESTDIR) is not.
- # To support the latter case, we have to write
- # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
- # so the `.' trick is pointless.
- mkdir_p='mkdir -p --'
-else
- # On NextStep and OpenStep, the `mkdir' command does not
- # recognize any option. It will interpret all options as
- # directories to create, and then abort because `.' already
- # exists.
- for d in ./-p ./--version;
- do
- test -d $d && rmdir $d
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if test x"${install_sh}" != xset; then
+ case $am_aux_dir in
+ *\ * | *\ *)
+ install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+ *)
+ install_sh="\${SHELL} $am_aux_dir/install-sh"
+ esac
+fi
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_STRIP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$STRIP"; then
+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+ ac_ct_STRIP=$STRIP
+ # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$ac_ct_STRIP"; then
+ ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_ac_ct_STRIP="strip"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+ if test "x$ac_ct_STRIP" = x; then
+ STRIP=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ STRIP=$ac_ct_STRIP
+ fi
+else
+ STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
+$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
+if test -z "$MKDIR_P"; then
+ if test "${ac_cv_path_mkdir+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in mkdir gmkdir; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+ case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
+ 'mkdir (GNU coreutils) '* | \
+ 'mkdir (coreutils) '* | \
+ 'mkdir (fileutils) '4.1*)
+ ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
+ break 3;;
+ esac
+ done
+ done
done
- # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
- if test -f "$ac_aux_dir/mkinstalldirs"; then
- mkdir_p='$(mkinstalldirs)'
+IFS=$as_save_IFS
+
+fi
+
+ test -d ./--version && rmdir ./--version
+ if test "${ac_cv_path_mkdir+set}" = set; then
+ MKDIR_P="$ac_cv_path_mkdir -p"
else
- mkdir_p='$(install_sh) -d'
+ # As a last resort, use the slow shell script. Don't cache a
+ # value for MKDIR_P within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the value is a relative name.
+ MKDIR_P="$ac_install_sh -d"
fi
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
+$as_echo "$MKDIR_P" >&6; }
+
+mkdir_p="$MKDIR_P"
+case $mkdir_p in
+ [\\/$]* | ?:[\\/]*) ;;
+ */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
+esac
for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_AWK+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_AWK+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$AWK"; then
ac_cv_prog_AWK="$AWK" # Let the user override the test.
@@ -1562,55 +2642,59 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_AWK="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- echo "$as_me:$LINENO: result: $AWK" >&5
-echo "${ECHO_T}$AWK" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+$as_echo "$AWK" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$AWK" && break
done
-echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
-if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
else
cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
all:
- @echo 'ac_maketemp="$(MAKE)"'
+ @echo '@@@%%%=$(MAKE)=@@@%%%'
_ACEOF
# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
-if test -n "$ac_maketemp"; then
- eval ac_cv_prog_make_${ac_make}_set=yes
-else
- eval ac_cv_prog_make_${ac_make}_set=no
-fi
+case `${MAKE-make} -f conftest.make 2>/dev/null` in
+ *@@@%%%=?*=@@@%%%*)
+ eval ac_cv_prog_make_${ac_make}_set=yes;;
+ *)
+ eval ac_cv_prog_make_${ac_make}_set=no;;
+esac
rm -f conftest.make
fi
-if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
- echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
+if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
SET_MAKE=
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
SET_MAKE="MAKE=${MAKE-make}"
fi
@@ -1623,12 +2707,14 @@ else
fi
rmdir .tst 2>/dev/null
-# test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" &&
- test -f $srcdir/config.status; then
- { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
-echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
- { (exit 1); exit 1; }; }
+if test "`cd $srcdir && pwd`" != "`pwd`"; then
+ # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
+ # is not polluted with repeated "-I."
+ am__isrc=' -I$(srcdir)'
+ # test to see if srcdir already configured
+ if test -f $srcdir/config.status; then
+ as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
+ fi
fi
# test whether we have cygpath
@@ -1643,7 +2729,7 @@ fi
# Define the identity of the package.
PACKAGE='flex'
- VERSION='2.5.35'
+ VERSION='2.5.37'
cat >>confdefs.h <<_ACEOF
@@ -1671,96 +2757,6 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-install_sh=${install_sh-"$am_aux_dir/install-sh"}
-
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'. However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_STRIP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- echo "$as_me:$LINENO: result: $STRIP" >&5
-echo "${ECHO_T}$STRIP" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_STRIP="strip"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
- test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
-echo "${ECHO_T}$ac_ct_STRIP" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- STRIP=$ac_ct_STRIP
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
-
# We need awk for the "check" target. The system "awk" is bad on
# some platforms.
# Always define AMTAR for backward compatibility.
@@ -1773,7 +2769,8 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
- ac_config_headers="$ac_config_headers config.h:conf.in"
+ac_config_headers="$ac_config_headers config.h:conf.in"
+
# checks for programs
@@ -1792,17 +2789,17 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
- echo "$as_me:$LINENO: checking whether NLS is requested" >&5
-echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6
- # Check whether --enable-nls or --disable-nls was given.
-if test "${enable_nls+set}" = set; then
- enableval="$enable_nls"
- USE_NLS=$enableval
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
+$as_echo_n "checking whether NLS is requested... " >&6; }
+ # Check whether --enable-nls was given.
+if test "${enable_nls+set}" = set; then :
+ enableval=$enable_nls; USE_NLS=$enableval
else
USE_NLS=yes
-fi;
- echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+$as_echo "$USE_NLS" >&6; }
@@ -1839,10 +2836,10 @@ rm -f conf$$.file
# Extract the first word of "msgfmt", so it can be a program name with args.
set dummy msgfmt; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_MSGFMT+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_path_MSGFMT+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
case "$MSGFMT" in
[\\/]* | ?:[\\/]*)
@@ -1870,19 +2867,19 @@ esac
fi
MSGFMT="$ac_cv_path_MSGFMT"
if test "$MSGFMT" != ":"; then
- echo "$as_me:$LINENO: result: $MSGFMT" >&5
-echo "${ECHO_T}$MSGFMT" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
+$as_echo "$MSGFMT" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
# Extract the first word of "gmsgfmt", so it can be a program name with args.
set dummy gmsgfmt; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_GMSGFMT+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_path_GMSGFMT+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
case $GMSGFMT in
[\\/]* | ?:[\\/]*)
@@ -1894,31 +2891,32 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
;;
esac
fi
GMSGFMT=$ac_cv_path_GMSGFMT
-
if test -n "$GMSGFMT"; then
- echo "$as_me:$LINENO: result: $GMSGFMT" >&5
-echo "${ECHO_T}$GMSGFMT" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
+$as_echo "$GMSGFMT" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
# Prepare PATH_SEPARATOR.
# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
@@ -1949,10 +2947,10 @@ rm -f conf$$.file
# Extract the first word of "xgettext", so it can be a program name with args.
set dummy xgettext; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_XGETTEXT+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_path_XGETTEXT+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
case "$XGETTEXT" in
[\\/]* | ?:[\\/]*)
@@ -1980,11 +2978,11 @@ esac
fi
XGETTEXT="$ac_cv_path_XGETTEXT"
if test "$XGETTEXT" != ":"; then
- echo "$as_me:$LINENO: result: $XGETTEXT" >&5
-echo "${ECHO_T}$XGETTEXT" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
+$as_echo "$XGETTEXT" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
rm -f messages.po
@@ -2020,10 +3018,10 @@ rm -f conf$$.file
# Extract the first word of "msgmerge", so it can be a program name with args.
set dummy msgmerge; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_MSGMERGE+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_path_MSGMERGE+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
case "$MSGMERGE" in
[\\/]* | ?:[\\/]*)
@@ -2050,11 +3048,11 @@ esac
fi
MSGMERGE="$ac_cv_path_MSGMERGE"
if test "$MSGMERGE" != ":"; then
- echo "$as_me:$LINENO: result: $MSGMERGE" >&5
-echo "${ECHO_T}$MSGMERGE" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
+$as_echo "$MSGMERGE" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
@@ -2064,8 +3062,8 @@ fi
: ;
else
GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
- echo "$as_me:$LINENO: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5
-echo "${ECHO_T}found $GMSGFMT program is not GNU msgfmt; ignore it" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5
+$as_echo "found $GMSGFMT program is not GNU msgfmt; ignore it" >&6; }
GMSGFMT=":"
fi
fi
@@ -2075,14 +3073,14 @@ echo "${ECHO_T}found $GMSGFMT program is not GNU msgfmt; ignore it" >&6
(if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
: ;
else
- echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5
-echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: found xgettext program is not GNU xgettext; ignore it" >&5
+$as_echo "found xgettext program is not GNU xgettext; ignore it" >&6; }
XGETTEXT=":"
fi
rm -f messages.po
fi
- ac_config_commands="$ac_config_commands default-1"
+ ac_config_commands="$ac_config_commands default-1"
@@ -2103,60 +3101,58 @@ echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6
DEPDIR="${am__leading_dot}deps"
- ac_config_commands="$ac_config_commands depfiles"
+ac_config_commands="$ac_config_commands depfiles"
am_make=${MAKE-make}
cat > confinc << 'END'
am__doit:
- @echo done
+ @echo this is the am__doit target
.PHONY: am__doit
END
# If we don't find an include directive, just comment out the code.
-echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
-echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
+$as_echo_n "checking for style of include used by $am_make... " >&6; }
am__include="#"
am__quote=
_am_result=none
# First try GNU make style include.
echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
- am__include=include
- am__quote=
- _am_result=GNU
-fi
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+ am__include=include
+ am__quote=
+ _am_result=GNU
+ ;;
+esac
# Now try BSD make style include.
if test "$am__include" = "#"; then
echo '.include "confinc"' > confmf
- if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
- am__include=.include
- am__quote="\""
- _am_result=BSD
- fi
+ case `$am_make -s -f confmf 2> /dev/null` in #(
+ *the\ am__doit\ target*)
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ ;;
+ esac
fi
-echo "$as_me:$LINENO: result: $_am_result" >&5
-echo "${ECHO_T}$_am_result" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
+$as_echo "$_am_result" >&6; }
rm -f confinc confmf
-# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then
- enableval="$enable_dependency_tracking"
+# Check whether --enable-dependency-tracking was given.
+if test "${enable_dependency_tracking+set}" = set; then :
+ enableval=$enable_dependency_tracking;
+fi
-fi;
if test "x$enable_dependency_tracking" != xno; then
am_depcomp="$ac_aux_dir/depcomp"
AMDEPBACKSLASH='\'
fi
-
-
-if test "x$enable_dependency_tracking" != xno; then
+ if test "x$enable_dependency_tracking" != xno; then
AMDEP_TRUE=
AMDEP_FALSE='#'
else
@@ -2165,7 +3161,6 @@ else
fi
-
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2174,10 +3169,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2187,35 +3182,37 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
fi
if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
@@ -2225,39 +3222,50 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
- CC=$ac_ct_CC
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
else
CC="$ac_cv_prog_CC"
fi
if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2267,77 +3275,37 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
- CC=$ac_ct_CC
-else
- CC="$ac_cv_prog_CC"
-fi
+ fi
fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2348,18 +3316,19 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
fi
ac_cv_prog_CC="cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
if test $ac_prog_rejected = yes; then
# We found a bogon in the path, so make sure we never use it.
@@ -2377,24 +3346,25 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
fi
if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
- for ac_prog in cl
+ for ac_prog in cl.exe
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -2404,39 +3374,41 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$CC" && break
done
fi
if test -z "$CC"; then
ac_ct_CC=$CC
- for ac_prog in cl
+ for ac_prog in cl.exe
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
@@ -2446,66 +3418,78 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$ac_ct_CC" && break
done
- CC=$ac_ct_CC
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
fi
fi
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "no acceptable C compiler found in \$PATH
+See \`config.log' for more details." "$LINENO" 5; }
# Provide some information about the compiler.
-echo "$as_me:$LINENO:" \
- "checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+for ac_option in --version -v -V -qversion; do
+ { { ac_try="$ac_compiler $ac_option >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compiler $ac_option >&5") 2>conftest.err
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
+ if test -s conftest.err; then
+ sed '10a\
+... rest of stderr output deleted ...
+ 10q' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ fi
+ rm -f conftest.er1 conftest.err
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+done
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2517,112 +3501,109 @@ main ()
}
_ACEOF
ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.exe b.out"
+ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
# Try to create an executable without -o first, disregard a.out.
# It will help us diagnose broken compilers, and finding out an intuition
# of exeext.
-echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
- (eval $ac_link_default) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- # Find the output, starting from the most likely. This scheme is
-# not robust to junk in `.', hence go to wildcards (a.*) only as a last
-# resort.
-
-# Be careful to initialize this variable, since it used to be cached.
-# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
-ac_cv_exeext=
-# b.out is created by i960 compilers.
-for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+$as_echo_n "checking whether the C compiler works... " >&6; }
+ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+
+# The possible output files:
+ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
+
+ac_rmfiles=
+for ac_file in $ac_files
+do
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
+ * ) ac_rmfiles="$ac_rmfiles $ac_file";;
+ esac
+done
+rm -f $ac_rmfiles
+
+if { { ac_try="$ac_link_default"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link_default") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
+ # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
+# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
+# in a Makefile. We should not override ac_cv_exeext if it was cached,
+# so that the user can short-circuit this test for compilers unknown to
+# Autoconf.
+for ac_file in $ac_files ''
do
test -f "$ac_file" || continue
case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
- ;;
- conftest.$ac_ext )
- # This is the source file.
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
;;
[ab].out )
# We found the default executable, but exeext='' is most
# certainly right.
break;;
*.* )
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- # FIXME: I believe we export ac_cv_exeext for Libtool,
- # but it would be cool to find out if it's true. Does anybody
- # maintain Libtool? --akim.
- export ac_cv_exeext
+ if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+ then :; else
+ ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ fi
+ # We set ac_cv_exeext here because the later test for it is not
+ # safe: cross compilers may not add the suffix if given an `-o'
+ # argument, so we may need to know it at that point already.
+ # Even if this section looks crufty: it has the advantage of
+ # actually working.
break;;
* )
break;;
esac
done
+test "$ac_cv_exeext" = no && ac_cv_exeext=
+
else
- echo "$as_me: failed program was:" >&5
+ ac_file=''
+fi
+if test -z "$ac_file"; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
-See \`config.log' for more details." >&5
-echo "$as_me: error: C compiler cannot create executables
-See \`config.log' for more details." >&2;}
- { (exit 77); exit 77; }; }
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ as_fn_set_status 77
+as_fn_error "C compiler cannot create executables
+See \`config.log' for more details." "$LINENO" 5; }; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
ac_exeext=$ac_cv_exeext
-echo "$as_me:$LINENO: result: $ac_file" >&5
-echo "${ECHO_T}$ac_file" >&6
-
-# Check the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
-# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-# If not cross compiling, check that we can run a simple program.
-if test "$cross_compiling" != yes; then
- if { ac_try='./$ac_file'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
- fi
- fi
-fi
-echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
-rm -f a.out a.exe conftest$ac_cv_exeext b.out
+rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
ac_clean_files=$ac_clean_files_save
-# Check the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:$LINENO: result: $cross_compiling" >&5
-echo "${ECHO_T}$cross_compiling" >&6
-
-echo "$as_me:$LINENO: checking for suffix of executables" >&5
-echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+$as_echo_n "checking for suffix of executables... " >&6; }
+if { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
# If both `conftest.exe' and `conftest' are `present' (well, observable)
# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
# work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -2630,38 +3611,90 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
for ac_file in conftest.exe conftest conftest.*; do
test -f "$ac_file" || continue
case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
*.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- export ac_cv_exeext
break;;
* ) break;;
esac
done
else
- { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." "$LINENO" 5; }
fi
-
-rm -f conftest$ac_cv_exeext
-echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-echo "${ECHO_T}$ac_cv_exeext" >&6
+rm -f conftest conftest$ac_cv_exeext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+$as_echo "$ac_cv_exeext" >&6; }
rm -f conftest.$ac_ext
EXEEXT=$ac_cv_exeext
ac_exeext=$EXEEXT
-echo "$as_me:$LINENO: checking for suffix of object files" >&5
-echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
-if test "${ac_cv_objext+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#include <stdio.h>
+int
+main ()
+{
+FILE *f = fopen ("conftest.out", "w");
+ return ferror (f) || fclose (f) != 0;
+
+ ;
+ return 0;
+}
_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ac_clean_files="$ac_clean_files conftest.out"
+# Check that the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+if test "$cross_compiling" != yes; then
+ { { ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_link") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+ if { ac_try='./conftest$ac_cv_exeext'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then
+ cross_compiling=no
+ else
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." "$LINENO" 5; }
+ fi
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
+
+rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
+ac_clean_files=$ac_clean_files_save
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+$as_echo_n "checking for suffix of object files... " >&6; }
+if test "${ac_cv_objext+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2673,45 +3706,46 @@ main ()
}
_ACEOF
rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; then
- for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+if { { ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compile") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then :
+ for ac_file in conftest.o conftest.obj conftest.*; do
+ test -f "$ac_file" || continue;
case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
*) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
break;;
esac
done
else
- echo "$as_me: failed program was:" >&5
+ $as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." "$LINENO" 5; }
fi
-
rm -f conftest.$ac_cv_objext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
-echo "${ECHO_T}$ac_cv_objext" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+$as_echo "$ac_cv_objext" >&6; }
OBJEXT=$ac_cv_objext
ac_objext=$OBJEXT
-echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
+if test "${ac_cv_c_compiler_gnu+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2725,54 +3759,34 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_compiler_gnu=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_compiler_gnu=no
+ ac_compiler_gnu=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
-GCC=`test $ac_compiler_gnu = yes && echo yes`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GCC=yes
+else
+ GCC=
+fi
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
-CFLAGS="-g"
-echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_g+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
+if test "${ac_cv_prog_cc_g+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ ac_cv_prog_cc_g=no
+ CFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -2783,38 +3797,49 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_g=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ CFLAGS=""
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
-ac_cv_prog_cc_g=no
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ ac_c_werror_flag=$ac_save_c_werror_flag
+ CFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_prog_cc_g=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_c_werror_flag=$ac_save_c_werror_flag
fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+$as_echo "$ac_cv_prog_cc_g" >&6; }
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
elif test $ac_cv_prog_cc_g = yes; then
@@ -2830,18 +3855,14 @@ else
CFLAGS=
fi
fi
-echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
-echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_stdc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
+if test "${ac_cv_prog_cc_c89+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- ac_cv_prog_cc_stdc=no
+ ac_cv_prog_cc_c89=no
ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
@@ -2869,12 +3890,17 @@ static char *f (char * (*g) (char **, int), char **p, ...)
/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
function prototypes and stuff, but not '\xHH' hex character constants.
These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std1 is added to get
+ as 'x'. The following induces an error, until -std is added to get
proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std1. */
+ that's true only with -std. */
int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+ inside strings and character constants. */
+#define FOO(x) 'x'
+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+
int test (int i, double x);
struct s1 {int (*f) (int a);};
struct s2 {int (*f) (double a);};
@@ -2889,201 +3915,37 @@ return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
return 0;
}
_ACEOF
-# Don't try gcc -ansi; that turns off useful extensions and
-# breaks some systems' header files.
-# AIX -qlanglvl=ansi
-# Ultrix and OSF/1 -std1
-# HP-UX 10.20 and later -Ae
-# HP-UX older versions -Aa -D_HPUX_SOURCE
-# SVR4 -Xc -D__EXTENSIONS__
-for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cc_stdc=$ac_arg
-break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
+ if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_prog_cc_c89=$ac_arg
fi
-rm -f conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext
+ test "x$ac_cv_prog_cc_c89" != "xno" && break
done
-rm -f conftest.$ac_ext conftest.$ac_objext
+rm -f conftest.$ac_ext
CC=$ac_save_CC
fi
-
-case "x$ac_cv_prog_cc_stdc" in
- x|xno)
- echo "$as_me:$LINENO: result: none needed" >&5
-echo "${ECHO_T}none needed" >&6 ;;
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+ x)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
+ xno)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
*)
- echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
- CC="$CC $ac_cv_prog_cc_stdc" ;;
+ CC="$CC $ac_cv_prog_cc_c89"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
-# Some people use a C++ compiler to compile C. Since we use `exit',
-# in C++ we need to declare it. In case someone uses the same compiler
-# for both compiling C and C++ we need to have the C++ compiler decide
-# the declaration of exit, since it's the most demanding environment.
-cat >conftest.$ac_ext <<_ACEOF
-#ifndef __cplusplus
- choke me
-#endif
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- for ac_declaration in \
- '' \
- 'extern "C" void std::exit (int) throw (); using std::exit;' \
- 'extern "C" void std::exit (int); using std::exit;' \
- 'extern "C" void exit (int) throw ();' \
- 'extern "C" void exit (int);' \
- 'void exit (int);'
-do
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-#include <stdlib.h>
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-continue
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-rm -f conftest*
-if test -n "$ac_declaration"; then
- echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
- echo '#endif' >>confdefs.h
fi
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -3092,10 +3954,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
depcc="$CC" am_compiler_list=
-echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
-echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
# We make a subdir and do the tests there. Otherwise we can end up
@@ -3120,6 +3982,11 @@ else
if test "$am_compiler_list" = ""; then
am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
fi
+ am__universal=false
+ case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac
+
for depmode in $am_compiler_list; do
# Setup a source with many dependencies, because some compilers
# like to wrap large dependency lists on column 80 (with \), and
@@ -3137,7 +4004,17 @@ else
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
nosideeffect)
# after this tag, mechanisms are not by side-effect, so they'll
# only be used when explicitly requested
@@ -3147,18 +4024,23 @@ else
break
fi
;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
none) break ;;
esac
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this.
if depmode=$depmode \
- source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ source=sub/conftest.c object=$am__obj \
depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
>/dev/null 2>conftest.err &&
+ grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
# icc doesn't choke on unknown options, it will just issue warnings
# or remarks (even with -Werror). So we grep stderr for any message
@@ -3182,13 +4064,11 @@ else
fi
fi
-echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
-echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
-
-if
+ if
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
am__fastdepCC_TRUE=
@@ -3200,67 +4080,84 @@ fi
# Make sure we can run config.sub.
-$ac_config_sub sun4 >/dev/null 2>&1 ||
- { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
-echo "$as_me: error: cannot run $ac_config_sub" >&2;}
- { (exit 1); exit 1; }; }
-
-echo "$as_me:$LINENO: checking build system type" >&5
-echo $ECHO_N "checking build system type... $ECHO_C" >&6
-if test "${ac_cv_build+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_cv_build_alias=$build_alias
-test -z "$ac_cv_build_alias" &&
- ac_cv_build_alias=`$ac_config_guess`
-test -z "$ac_cv_build_alias" &&
- { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
- { (exit 1); exit 1; }; }
-ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5
-echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
- { (exit 1); exit 1; }; }
-
-fi
-echo "$as_me:$LINENO: result: $ac_cv_build" >&5
-echo "${ECHO_T}$ac_cv_build" >&6
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+ as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+$as_echo_n "checking build system type... " >&6; }
+if test "${ac_cv_build+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_build_alias=$build_alias
+test "x$ac_build_alias" = x &&
+ ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+test "x$ac_build_alias" = x &&
+ as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+ as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+$as_echo "$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) as_fn_error "invalid value of canonical build" "$LINENO" 5;;
+esac
build=$ac_cv_build
-build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_build
+shift
+build_cpu=$1
+build_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+build_os=$*
+IFS=$ac_save_IFS
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-echo "$as_me:$LINENO: checking host system type" >&5
-echo $ECHO_N "checking host system type... $ECHO_C" >&6
-if test "${ac_cv_host+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+$as_echo_n "checking host system type... " >&6; }
+if test "${ac_cv_host+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- ac_cv_host_alias=$host_alias
-test -z "$ac_cv_host_alias" &&
- ac_cv_host_alias=$ac_cv_build_alias
-ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
- { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
-echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
- { (exit 1); exit 1; }; }
+ if test "x$host_alias" = x; then
+ ac_cv_host=$ac_cv_build
+else
+ ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
+ as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+fi
fi
-echo "$as_me:$LINENO: result: $ac_cv_host" >&5
-echo "${ECHO_T}$ac_cv_host" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+$as_echo "$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) as_fn_error "invalid value of canonical host" "$LINENO" 5;;
+esac
host=$ac_cv_host
-host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_host
+shift
+host_cpu=$1
+host_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+host_os=$*
+IFS=$ac_save_IFS
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-# Check whether --with-gnu-ld or --without-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then
- withval="$with_gnu_ld"
- test "$withval" = no || with_gnu_ld=yes
+# Check whether --with-gnu-ld was given.
+if test "${with_gnu_ld+set}" = set; then :
+ withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
else
with_gnu_ld=no
-fi;
+fi
+
# Prepare PATH_SEPARATOR.
# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
@@ -3277,8 +4174,8 @@ fi
ac_prog=ld
if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
- echo "$as_me:$LINENO: checking for ld used by GCC" >&5
-echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by GCC" >&5
+$as_echo_n "checking for ld used by GCC... " >&6; }
case $host in
*-*-mingw*)
# gcc leaves a trailing carriage return which upsets mingw
@@ -3307,14 +4204,14 @@ echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6
;;
esac
elif test "$with_gnu_ld" = yes; then
- echo "$as_me:$LINENO: checking for GNU ld" >&5
-echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+$as_echo_n "checking for GNU ld... " >&6; }
else
- echo "$as_me:$LINENO: checking for non-GNU ld" >&5
-echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+$as_echo_n "checking for non-GNU ld... " >&6; }
fi
-if test "${acl_cv_path_LD+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+if test "${acl_cv_path_LD+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -z "$LD"; then
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
@@ -3340,19 +4237,17 @@ fi
LD="$acl_cv_path_LD"
if test -n "$LD"; then
- echo "$as_me:$LINENO: result: $LD" >&5
-echo "${ECHO_T}$LD" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+$as_echo "$LD" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
-test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5
-echo "$as_me: error: no acceptable ld found in \$PATH" >&2;}
- { (exit 1); exit 1; }; }
-echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5
-echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6
-if test "${acl_cv_prog_gnu_ld+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+test -z "$LD" && as_fn_error "no acceptable ld found in \$PATH" "$LINENO" 5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
+if test "${acl_cv_prog_gnu_ld+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
# I'd rather use --version here, but apparently some GNU ld's only accept -v.
if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
@@ -3361,16 +4256,16 @@ else
acl_cv_prog_gnu_ld=no
fi
fi
-echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5
-echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
+$as_echo "$acl_cv_prog_gnu_ld" >&6; }
with_gnu_ld=$acl_cv_prog_gnu_ld
- echo "$as_me:$LINENO: checking for shared library run path origin" >&5
-echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6
-if test "${acl_cv_rpath+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
+$as_echo_n "checking for shared library run path origin... " >&6; }
+if test "${acl_cv_rpath+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
@@ -3380,8 +4275,8 @@ else
acl_cv_rpath=done
fi
-echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5
-echo "${ECHO_T}$acl_cv_rpath" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
+$as_echo "$acl_cv_rpath" >&6; }
wl="$acl_cv_wl"
libext="$acl_cv_libext"
shlibext="$acl_cv_shlibext"
@@ -3389,13 +4284,13 @@ echo "${ECHO_T}$acl_cv_rpath" >&6
hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
hardcode_direct="$acl_cv_hardcode_direct"
hardcode_minus_L="$acl_cv_hardcode_minus_L"
- # Check whether --enable-rpath or --disable-rpath was given.
-if test "${enable_rpath+set}" = set; then
- enableval="$enable_rpath"
- :
+ # Check whether --enable-rpath was given.
+if test "${enable_rpath+set}" = set; then :
+ enableval=$enable_rpath; :
else
enable_rpath=yes
-fi;
+fi
+
@@ -3417,10 +4312,9 @@ fi;
prefix="$acl_save_prefix"
-# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then
- withval="$with_libiconv_prefix"
-
+# Check whether --with-libiconv-prefix was given.
+if test "${with_libiconv_prefix+set}" = set; then :
+ withval=$with_libiconv_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
else
@@ -3443,7 +4337,8 @@ if test "${with_libiconv_prefix+set}" = set; then
fi
fi
-fi;
+fi
+
LIBICONV=
LTLIBICONV=
INCICONV=
@@ -3797,17 +4692,17 @@ fi;
- echo "$as_me:$LINENO: checking whether NLS is requested" >&5
-echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6
- # Check whether --enable-nls or --disable-nls was given.
-if test "${enable_nls+set}" = set; then
- enableval="$enable_nls"
- USE_NLS=$enableval
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
+$as_echo_n "checking whether NLS is requested... " >&6; }
+ # Check whether --enable-nls was given.
+if test "${enable_nls+set}" = set; then :
+ enableval=$enable_nls; USE_NLS=$enableval
else
USE_NLS=yes
-fi;
- echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6
+fi
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+$as_echo "$USE_NLS" >&6; }
@@ -3824,16 +4719,12 @@ echo "${ECHO_T}$USE_NLS" >&6
- echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5
-echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6
-if test "${gt_cv_func_gnugettext1_libc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
+$as_echo_n "checking for GNU gettext in libc... " >&6; }
+if test "${gt_cv_func_gnugettext1_libc+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <libintl.h>
extern int _nl_msg_cat_cntr;
@@ -3847,39 +4738,16 @@ return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
gt_cv_func_gnugettext1_libc=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-gt_cv_func_gnugettext1_libc=no
+ gt_cv_func_gnugettext1_libc=no
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libc" >&5
-echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext1_libc" >&5
+$as_echo "$gt_cv_func_gnugettext1_libc" >&6; }
if test "$gt_cv_func_gnugettext1_libc" != "yes"; then
@@ -3912,19 +4780,15 @@ echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6
done
- echo "$as_me:$LINENO: checking for iconv" >&5
-echo $ECHO_N "checking for iconv... $ECHO_C" >&6
-if test "${am_cv_func_iconv+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
+$as_echo_n "checking for iconv... " >&6; }
+if test "${am_cv_func_iconv+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
am_cv_func_iconv="no, consider installing GNU libiconv"
am_cv_lib_iconv=no
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
#include <iconv.h>
@@ -3938,43 +4802,15 @@ iconv_t cd = iconv_open("","");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
am_cv_func_iconv=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
if test "$am_cv_func_iconv" != yes; then
am_save_LIBS="$LIBS"
LIBS="$LIBS $LIBICONV"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
#include <iconv.h>
@@ -3988,54 +4824,28 @@ iconv_t cd = iconv_open("","");
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
am_cv_lib_iconv=yes
am_cv_func_iconv=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS="$am_save_LIBS"
fi
fi
-echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5
-echo "${ECHO_T}$am_cv_func_iconv" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
+$as_echo "$am_cv_func_iconv" >&6; }
if test "$am_cv_func_iconv" = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ICONV 1
-_ACEOF
+$as_echo "#define HAVE_ICONV 1" >>confdefs.h
fi
if test "$am_cv_lib_iconv" = yes; then
- echo "$as_me:$LINENO: checking how to link with libiconv" >&5
-echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6
- echo "$as_me:$LINENO: result: $LIBICONV" >&5
-echo "${ECHO_T}$LIBICONV" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
+$as_echo_n "checking how to link with libiconv... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
+$as_echo "$LIBICONV" >&6; }
else
CPPFLAGS="$am_save_CPPFLAGS"
LIBICONV=
@@ -4061,10 +4871,9 @@ echo "${ECHO_T}$LIBICONV" >&6
prefix="$acl_save_prefix"
-# Check whether --with-libintl-prefix or --without-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then
- withval="$with_libintl_prefix"
-
+# Check whether --with-libintl-prefix was given.
+if test "${with_libintl_prefix+set}" = set; then :
+ withval=$with_libintl_prefix;
if test "X$withval" = "Xno"; then
use_additional=no
else
@@ -4087,7 +4896,8 @@ if test "${with_libintl_prefix+set}" = set; then
fi
fi
-fi;
+fi
+
LIBINTL=
LTLIBINTL=
INCINTL=
@@ -4423,20 +5233,16 @@ fi;
done
fi
- echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5
-echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6
-if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
+$as_echo_n "checking for GNU gettext in libintl... " >&6; }
+if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
gt_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $INCINTL"
gt_save_LIBS="$LIBS"
LIBS="$LIBS $LIBINTL"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <libintl.h>
extern int _nl_msg_cat_cntr;
@@ -4454,43 +5260,16 @@ return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias (0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
gt_cv_func_gnugettext1_libintl=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-gt_cv_func_gnugettext1_libintl=no
+ gt_cv_func_gnugettext1_libintl=no
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
if test "$gt_cv_func_gnugettext1_libintl" != yes && test -n "$LIBICONV"; then
LIBS="$LIBS $LIBICONV"
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <libintl.h>
extern int _nl_msg_cat_cntr;
@@ -4508,44 +5287,20 @@ return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias (0)
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
LIBINTL="$LIBINTL $LIBICONV"
LTLIBINTL="$LTLIBINTL $LTLIBICONV"
gt_cv_func_gnugettext1_libintl=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
CPPFLAGS="$gt_save_CPPFLAGS"
LIBS="$gt_save_LIBS"
fi
-echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libintl" >&5
-echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_gnugettext1_libintl" >&5
+$as_echo "$gt_cv_func_gnugettext1_libintl" >&6; }
fi
if test "$gt_cv_func_gnugettext1_libc" = "yes" \
@@ -4564,22 +5319,20 @@ echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6
if test "$gt_use_preinstalled_gnugettext" = "yes" \
|| test "$nls_cv_use_gnu_gettext" = "yes"; then
-cat >>confdefs.h <<\_ACEOF
-#define ENABLE_NLS 1
-_ACEOF
+$as_echo "#define ENABLE_NLS 1" >>confdefs.h
else
USE_NLS=no
fi
fi
- echo "$as_me:$LINENO: checking whether to use NLS" >&5
-echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6
- echo "$as_me:$LINENO: result: $USE_NLS" >&5
-echo "${ECHO_T}$USE_NLS" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
+$as_echo_n "checking whether to use NLS... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+$as_echo "$USE_NLS" >&6; }
if test "$USE_NLS" = "yes"; then
- echo "$as_me:$LINENO: checking where the gettext function comes from" >&5
-echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
+$as_echo_n "checking where the gettext function comes from... " >&6; }
if test "$gt_use_preinstalled_gnugettext" = "yes"; then
if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then
gt_source="external libintl"
@@ -4589,18 +5342,18 @@ echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6
else
gt_source="included intl directory"
fi
- echo "$as_me:$LINENO: result: $gt_source" >&5
-echo "${ECHO_T}$gt_source" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
+$as_echo "$gt_source" >&6; }
fi
if test "$USE_NLS" = "yes"; then
if test "$gt_use_preinstalled_gnugettext" = "yes"; then
if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then
- echo "$as_me:$LINENO: checking how to link with libintl" >&5
-echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6
- echo "$as_me:$LINENO: result: $LIBINTL" >&5
-echo "${ECHO_T}$LIBINTL" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
+$as_echo_n "checking how to link with libintl... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
+$as_echo "$LIBINTL" >&6; }
for element in $INCINTL; do
haveit=
@@ -4627,14 +5380,10 @@ echo "${ECHO_T}$LIBINTL" >&6
fi
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_GETTEXT 1
-_ACEOF
+$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DCGETTEXT 1
-_ACEOF
+$as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h
fi
@@ -4651,15 +5400,14 @@ _ACEOF
-
for ac_prog in 'bison -y' byacc
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_YACC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_YACC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$YACC"; then
ac_cv_prog_YACC="$YACC" # Let the user override the test.
@@ -4669,26 +5417,28 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_YACC="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
YACC=$ac_cv_prog_YACC
if test -n "$YACC"; then
- echo "$as_me:$LINENO: result: $YACC" >&5
-echo "${ECHO_T}$YACC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5
+$as_echo "$YACC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$YACC" && break
done
test -n "$YACC" || YACC="yacc"
@@ -4697,10 +5447,10 @@ for ac_prog in flex lex
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_LEX+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_LEX+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$LEX"; then
ac_cv_prog_LEX="$LEX" # Let the user override the test.
@@ -4710,258 +5460,144 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_LEX="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
LEX=$ac_cv_prog_LEX
if test -n "$LEX"; then
- echo "$as_me:$LINENO: result: $LEX" >&5
-echo "${ECHO_T}$LEX" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LEX" >&5
+$as_echo "$LEX" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$LEX" && break
done
test -n "$LEX" || LEX=":"
-if test -z "$LEXLIB"
-then
- echo "$as_me:$LINENO: checking for yywrap in -lfl" >&5
-echo $ECHO_N "checking for yywrap in -lfl... $ECHO_C" >&6
-if test "${ac_cv_lib_fl_yywrap+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lfl $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
+if test "x$LEX" != "x:"; then
+ cat >conftest.l <<_ACEOF
+%%
+a { ECHO; }
+b { REJECT; }
+c { yymore (); }
+d { yyless (1); }
+e { yyless (input () != 0); }
+f { unput (yytext[0]); }
+. { BEGIN INITIAL; }
+%%
+#ifdef YYTEXT_POINTER
+extern char *yytext;
#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char yywrap ();
int
-main ()
+main (void)
{
-yywrap ();
- ;
- return 0;
+ return ! yylex () + ! yywrap ();
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
+{ { ac_try="$LEX conftest.l"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$LEX conftest.l") 2>&5
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_fl_yywrap=yes
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking lex output file root" >&5
+$as_echo_n "checking lex output file root... " >&6; }
+if test "${ac_cv_prog_lex_root+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-ac_cv_lib_fl_yywrap=no
+if test -f lex.yy.c; then
+ ac_cv_prog_lex_root=lex.yy
+elif test -f lexyy.c; then
+ ac_cv_prog_lex_root=lexyy
+else
+ as_fn_error "cannot find output from $LEX; giving up" "$LINENO" 5
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_fl_yywrap" >&5
-echo "${ECHO_T}$ac_cv_lib_fl_yywrap" >&6
-if test $ac_cv_lib_fl_yywrap = yes; then
- LEXLIB="-lfl"
-else
- echo "$as_me:$LINENO: checking for yywrap in -ll" >&5
-echo $ECHO_N "checking for yywrap in -ll... $ECHO_C" >&6
-if test "${ac_cv_lib_l_yywrap+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-ll $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_root" >&5
+$as_echo "$ac_cv_prog_lex_root" >&6; }
+LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char yywrap ();
-int
-main ()
-{
-yywrap ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_l_yywrap=yes
+if test -z "${LEXLIB+set}"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking lex library" >&5
+$as_echo_n "checking lex library... " >&6; }
+if test "${ac_cv_lib_lex+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-ac_cv_lib_l_yywrap=no
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_l_yywrap" >&5
-echo "${ECHO_T}$ac_cv_lib_l_yywrap" >&6
-if test $ac_cv_lib_l_yywrap = yes; then
- LEXLIB="-ll"
+ ac_save_LIBS=$LIBS
+ ac_cv_lib_lex='none needed'
+ for ac_lib in '' -lfl -ll; do
+ LIBS="$ac_lib $ac_save_LIBS"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+`cat $LEX_OUTPUT_ROOT.c`
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_lex=$ac_lib
fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ test "$ac_cv_lib_lex" != 'none needed' && break
+ done
+ LIBS=$ac_save_LIBS
fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lex" >&5
+$as_echo "$ac_cv_lib_lex" >&6; }
+ test "$ac_cv_lib_lex" != 'none needed' && LEXLIB=$ac_cv_lib_lex
fi
-if test "x$LEX" != "x:"; then
- echo "$as_me:$LINENO: checking lex output file root" >&5
-echo $ECHO_N "checking lex output file root... $ECHO_C" >&6
-if test "${ac_cv_prog_lex_root+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- # The minimal lex program is just a single line: %%. But some broken lexes
-# (Solaris, I think it was) want two %% lines, so accommodate them.
-cat >conftest.l <<_ACEOF
-%%
-%%
-_ACEOF
-{ (eval echo "$as_me:$LINENO: \"$LEX conftest.l\"") >&5
- (eval $LEX conftest.l) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-if test -f lex.yy.c; then
- ac_cv_prog_lex_root=lex.yy
-elif test -f lexyy.c; then
- ac_cv_prog_lex_root=lexyy
-else
- { { echo "$as_me:$LINENO: error: cannot find output from $LEX; giving up" >&5
-echo "$as_me: error: cannot find output from $LEX; giving up" >&2;}
- { (exit 1); exit 1; }; }
-fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_lex_root" >&5
-echo "${ECHO_T}$ac_cv_prog_lex_root" >&6
-rm -f conftest.l
-LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
-echo "$as_me:$LINENO: checking whether yytext is a pointer" >&5
-echo $ECHO_N "checking whether yytext is a pointer... $ECHO_C" >&6
-if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether yytext is a pointer" >&5
+$as_echo_n "checking whether yytext is a pointer... " >&6; }
+if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
# POSIX says lex can declare yytext either as a pointer or an array; the
-# default is implementation-dependent. Figure out which it is, since
+# default is implementation-dependent. Figure out which it is, since
# not all implementations provide the %pointer and %array declarations.
ac_cv_prog_lex_yytext_pointer=no
-echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c
ac_save_LIBS=$LIBS
-LIBS="$LIBS $LEXLIB"
-cat >conftest.$ac_ext <<_ACEOF
+LIBS="$LEXLIB $ac_save_LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#define YYTEXT_POINTER 1
`cat $LEX_OUTPUT_ROOT.c`
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_prog_lex_yytext_pointer=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_save_LIBS
-rm -f "${LEX_OUTPUT_ROOT}.c"
fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_lex_yytext_pointer" >&5
-echo "${ECHO_T}$ac_cv_prog_lex_yytext_pointer" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_yytext_pointer" >&5
+$as_echo "$ac_cv_prog_lex_yytext_pointer" >&6; }
if test $ac_cv_prog_lex_yytext_pointer = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define YYTEXT_POINTER 1
-_ACEOF
+$as_echo "#define YYTEXT_POINTER 1" >>confdefs.h
fi
+rm -f conftest.l $LEX_OUTPUT_ROOT.c
fi
if test "$LEX" = :; then
@@ -4975,10 +5611,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -4988,35 +5624,37 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
fi
if test -z "$ac_cv_prog_CC"; then
ac_ct_CC=$CC
# Extract the first word of "gcc", so it can be a program name with args.
set dummy gcc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
@@ -5026,39 +5664,50 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="gcc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
- CC=$ac_ct_CC
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
else
CC="$ac_cv_prog_CC"
fi
if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -5068,77 +5717,37 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="${ac_tool_prefix}cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- CC=$ac_ct_CC
-else
- CC="$ac_cv_prog_CC"
-fi
+ fi
fi
if test -z "$CC"; then
# Extract the first word of "cc", so it can be a program name with args.
set dummy cc; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -5149,18 +5758,19 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
ac_prog_rejected=yes
continue
fi
ac_cv_prog_CC="cc"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
if test $ac_prog_rejected = yes; then
# We found a bogon in the path, so make sure we never use it.
@@ -5178,24 +5788,25 @@ fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
fi
if test -z "$CC"; then
if test -n "$ac_tool_prefix"; then
- for ac_prog in cl
+ for ac_prog in cl.exe
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
@@ -5205,39 +5816,41 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
CC=$ac_cv_prog_CC
if test -n "$CC"; then
- echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$CC" && break
done
fi
if test -z "$CC"; then
ac_ct_CC=$CC
- for ac_prog in cl
+ for ac_prog in cl.exe
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CC"; then
ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
@@ -5247,71 +5860,83 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CC="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
ac_ct_CC=$ac_cv_prog_ac_ct_CC
if test -n "$ac_ct_CC"; then
- echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-echo "${ECHO_T}$ac_ct_CC" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$ac_ct_CC" && break
done
- CC=$ac_ct_CC
+ if test "x$ac_ct_CC" = x; then
+ CC=""
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CC=$ac_ct_CC
+ fi
fi
fi
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "no acceptable C compiler found in \$PATH
+See \`config.log' for more details." "$LINENO" 5; }
# Provide some information about the compiler.
-echo "$as_me:$LINENO:" \
- "checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+for ac_option in --version -v -V -qversion; do
+ { { ac_try="$ac_compiler $ac_option >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compiler $ac_option >&5") 2>conftest.err
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
+ if test -s conftest.err; then
+ sed '10a\
+... rest of stderr output deleted ...
+ 10q' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ fi
+ rm -f conftest.er1 conftest.err
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+done
-echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
+if test "${ac_cv_c_compiler_gnu+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -5325,54 +5950,34 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_compiler_gnu=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_compiler_gnu=no
+ ac_compiler_gnu=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_c_compiler_gnu=$ac_compiler_gnu
fi
-echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
-GCC=`test $ac_compiler_gnu = yes && echo yes`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GCC=yes
+else
+ GCC=
+fi
ac_test_CFLAGS=${CFLAGS+set}
ac_save_CFLAGS=$CFLAGS
-CFLAGS="-g"
-echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_g+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
+if test "${ac_cv_prog_cc_g+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_c_werror_flag=$ac_c_werror_flag
+ ac_c_werror_flag=yes
+ ac_cv_prog_cc_g=no
+ CFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -5383,38 +5988,49 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_prog_cc_g=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ CFLAGS=""
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ ac_c_werror_flag=$ac_save_c_werror_flag
+ CFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
-ac_cv_prog_cc_g=no
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_prog_cc_g=yes
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_c_werror_flag=$ac_save_c_werror_flag
fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+$as_echo "$ac_cv_prog_cc_g" >&6; }
if test "$ac_test_CFLAGS" = set; then
CFLAGS=$ac_save_CFLAGS
elif test $ac_cv_prog_cc_g = yes; then
@@ -5430,18 +6046,14 @@ else
CFLAGS=
fi
fi
-echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
-echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
-if test "${ac_cv_prog_cc_stdc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
+if test "${ac_cv_prog_cc_c89+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- ac_cv_prog_cc_stdc=no
+ ac_cv_prog_cc_c89=no
ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdarg.h>
#include <stdio.h>
@@ -5469,12 +6081,17 @@ static char *f (char * (*g) (char **, int), char **p, ...)
/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
function prototypes and stuff, but not '\xHH' hex character constants.
These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std1 is added to get
+ as 'x'. The following induces an error, until -std is added to get
proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std1. */
+ that's true only with -std. */
int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+ inside strings and character constants. */
+#define FOO(x) 'x'
+int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
+
int test (int i, double x);
struct s1 {int (*f) (int a);};
struct s2 {int (*f) (double a);};
@@ -5489,201 +6106,37 @@ return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
return 0;
}
_ACEOF
-# Don't try gcc -ansi; that turns off useful extensions and
-# breaks some systems' header files.
-# AIX -qlanglvl=ansi
-# Ultrix and OSF/1 -std1
-# HP-UX 10.20 and later -Ae
-# HP-UX older versions -Aa -D_HPUX_SOURCE
-# SVR4 -Xc -D__EXTENSIONS__
-for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
do
CC="$ac_save_CC $ac_arg"
- rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_prog_cc_stdc=$ac_arg
-break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
+ if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_prog_cc_c89=$ac_arg
fi
-rm -f conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext
+ test "x$ac_cv_prog_cc_c89" != "xno" && break
done
-rm -f conftest.$ac_ext conftest.$ac_objext
+rm -f conftest.$ac_ext
CC=$ac_save_CC
fi
-
-case "x$ac_cv_prog_cc_stdc" in
- x|xno)
- echo "$as_me:$LINENO: result: none needed" >&5
-echo "${ECHO_T}none needed" >&6 ;;
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+ x)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
+ xno)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
*)
- echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
-echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
- CC="$CC $ac_cv_prog_cc_stdc" ;;
+ CC="$CC $ac_cv_prog_cc_c89"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
-# Some people use a C++ compiler to compile C. Since we use `exit',
-# in C++ we need to declare it. In case someone uses the same compiler
-# for both compiling C and C++ we need to have the C++ compiler decide
-# the declaration of exit, since it's the most demanding environment.
-cat >conftest.$ac_ext <<_ACEOF
-#ifndef __cplusplus
- choke me
-#endif
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- for ac_declaration in \
- '' \
- 'extern "C" void std::exit (int) throw (); using std::exit;' \
- 'extern "C" void std::exit (int); using std::exit;' \
- 'extern "C" void exit (int) throw ();' \
- 'extern "C" void exit (int);' \
- 'void exit (int);'
-do
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-#include <stdlib.h>
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-continue
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_declaration
-int
-main ()
-{
-exit (42);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-rm -f conftest*
-if test -n "$ac_declaration"; then
- echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
- echo '#endif' >>confdefs.h
-fi
-
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -5692,10 +6145,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
depcc="$CC" am_compiler_list=
-echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
-echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
# We make a subdir and do the tests there. Otherwise we can end up
@@ -5720,6 +6173,11 @@ else
if test "$am_compiler_list" = ""; then
am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
fi
+ am__universal=false
+ case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac
+
for depmode in $am_compiler_list; do
# Setup a source with many dependencies, because some compilers
# like to wrap large dependency lists on column 80 (with \), and
@@ -5737,7 +6195,17 @@ else
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
nosideeffect)
# after this tag, mechanisms are not by side-effect, so they'll
# only be used when explicitly requested
@@ -5747,18 +6215,23 @@ else
break
fi
;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
none) break ;;
esac
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this.
if depmode=$depmode \
- source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ source=sub/conftest.c object=$am__obj \
depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
>/dev/null 2>conftest.err &&
+ grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
# icc doesn't choke on unknown options, it will just issue warnings
# or remarks (even with -Werror). So we grep stderr for any message
@@ -5782,13 +6255,11 @@ else
fi
fi
-echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
-echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
-
-if
+ if
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
am__fastdepCC_TRUE=
@@ -5799,20 +6270,24 @@ else
fi
-ac_ext=cc
+ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
+if test -z "$CXX"; then
+ if test -n "$CCC"; then
+ CXX=$CCC
+ else
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
do
# Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_CXX+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_CXX+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$CXX"; then
ac_cv_prog_CXX="$CXX" # Let the user override the test.
@@ -5822,39 +6297,41 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
CXX=$ac_cv_prog_CXX
if test -n "$CXX"; then
- echo "$as_me:$LINENO: result: $CXX" >&5
-echo "${ECHO_T}$CXX" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
+$as_echo "$CXX" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$CXX" && break
done
fi
if test -z "$CXX"; then
ac_ct_CXX=$CXX
- for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
+ for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_CXX"; then
ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
@@ -5864,64 +6341,77 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_CXX="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
if test -n "$ac_ct_CXX"; then
- echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
-echo "${ECHO_T}$ac_ct_CXX" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
+$as_echo "$ac_ct_CXX" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
test -n "$ac_ct_CXX" && break
done
-test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
- CXX=$ac_ct_CXX
+ if test "x$ac_ct_CXX" = x; then
+ CXX="g++"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ CXX=$ac_ct_CXX
+ fi
fi
-
+ fi
+fi
# Provide some information about the compiler.
-echo "$as_me:$LINENO:" \
- "checking for C++ compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
- (eval $ac_compiler --version </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
- (eval $ac_compiler -v </dev/null >&5) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
-{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
- (eval $ac_compiler -V </dev/null >&5) 2>&5
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+for ac_option in --version -v -V -qversion; do
+ { { ac_try="$ac_compiler $ac_option >&5"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_compiler $ac_option >&5") 2>conftest.err
ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }
+ if test -s conftest.err; then
+ sed '10a\
+... rest of stderr output deleted ...
+ 10q' conftest.err >conftest.er1
+ cat conftest.er1 >&5
+ fi
+ rm -f conftest.er1 conftest.err
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }
+done
-echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
-echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
+$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
+if test "${ac_cv_cxx_compiler_gnu+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -5935,54 +6425,34 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_cxx_try_compile "$LINENO"; then :
ac_compiler_gnu=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_compiler_gnu=no
+ ac_compiler_gnu=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
fi
-echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
-echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
-GXX=`test $ac_compiler_gnu = yes && echo yes`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
+$as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+ GXX=yes
+else
+ GXX=
+fi
ac_test_CXXFLAGS=${CXXFLAGS+set}
ac_save_CXXFLAGS=$CXXFLAGS
-CXXFLAGS="-g"
-echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
-echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
-if test "${ac_cv_prog_cxx_g+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
+$as_echo_n "checking whether $CXX accepts -g... " >&6; }
+if test "${ac_cv_prog_cxx_g+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ ac_save_cxx_werror_flag=$ac_cxx_werror_flag
+ ac_cxx_werror_flag=yes
+ ac_cv_prog_cxx_g=no
+ CXXFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -5993,157 +6463,64 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_cxx_try_compile "$LINENO"; then :
ac_cv_prog_cxx_g=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_prog_cxx_g=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
-echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
-if test "$ac_test_CXXFLAGS" = set; then
- CXXFLAGS=$ac_save_CXXFLAGS
-elif test $ac_cv_prog_cxx_g = yes; then
- if test "$GXX" = yes; then
- CXXFLAGS="-g -O2"
- else
- CXXFLAGS="-g"
- fi
-else
- if test "$GXX" = yes; then
- CXXFLAGS="-O2"
- else
- CXXFLAGS=
- fi
-fi
-for ac_declaration in \
- '' \
- 'extern "C" void std::exit (int) throw (); using std::exit;' \
- 'extern "C" void std::exit (int); using std::exit;' \
- 'extern "C" void exit (int) throw ();' \
- 'extern "C" void exit (int);' \
- 'void exit (int);'
-do
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ CXXFLAGS=""
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-$ac_declaration
-#include <stdlib.h>
+
int
main ()
{
-exit (42);
+
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_cxx_try_compile "$LINENO"; then :
-continue
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+else
+ ac_cxx_werror_flag=$ac_save_cxx_werror_flag
+ CXXFLAGS="-g"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-$ac_declaration
+
int
main ()
{
-exit (42);
+
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- break
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
+if ac_fn_cxx_try_compile "$LINENO"; then :
+ ac_cv_prog_cxx_g=yes
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-done
-rm -f conftest*
-if test -n "$ac_declaration"; then
- echo '#ifdef __cplusplus' >>confdefs.h
- echo $ac_declaration >>confdefs.h
- echo '#endif' >>confdefs.h
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ac_cxx_werror_flag=$ac_save_cxx_werror_flag
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
+$as_echo "$ac_cv_prog_cxx_g" >&6; }
+if test "$ac_test_CXXFLAGS" = set; then
+ CXXFLAGS=$ac_save_CXXFLAGS
+elif test $ac_cv_prog_cxx_g = yes; then
+ if test "$GXX" = yes; then
+ CXXFLAGS="-g -O2"
+ else
+ CXXFLAGS="-g"
+ fi
+else
+ if test "$GXX" = yes; then
+ CXXFLAGS="-O2"
+ else
+ CXXFLAGS=
+ fi
fi
-
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -6152,10 +6529,10 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
depcc="$CXX" am_compiler_list=
-echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
-echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
# We make a subdir and do the tests there. Otherwise we can end up
@@ -6180,6 +6557,11 @@ else
if test "$am_compiler_list" = ""; then
am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
fi
+ am__universal=false
+ case " $depcc " in #(
+ *\ -arch\ *\ -arch\ *) am__universal=true ;;
+ esac
+
for depmode in $am_compiler_list; do
# Setup a source with many dependencies, because some compilers
# like to wrap large dependency lists on column 80 (with \), and
@@ -6197,7 +6579,17 @@ else
done
echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this. Also, some Intel
+ # versions had trouble with output in subdirs
+ am__obj=sub/conftest.${OBJEXT-o}
+ am__minus_obj="-o $am__obj"
case $depmode in
+ gcc)
+ # This depmode causes a compiler race in universal mode.
+ test "$am__universal" = false || continue
+ ;;
nosideeffect)
# after this tag, mechanisms are not by side-effect, so they'll
# only be used when explicitly requested
@@ -6207,18 +6599,23 @@ else
break
fi
;;
+ msvisualcpp | msvcmsys)
+ # This compiler won't grok `-c -o', but also, the minuso test has
+ # not run yet. These depmodes are late enough in the game, and
+ # so weak that their functioning should not be impacted.
+ am__obj=conftest.${OBJEXT-o}
+ am__minus_obj=
+ ;;
none) break ;;
esac
- # We check with `-c' and `-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle `-M -o', and we need to detect this.
if depmode=$depmode \
- source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ source=sub/conftest.c object=$am__obj \
depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
>/dev/null 2>conftest.err &&
+ grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
${MAKE-make} -s -f confmf > /dev/null 2>&1; then
# icc doesn't choke on unknown options, it will just issue warnings
# or remarks (even with -Werror). So we grep stderr for any message
@@ -6242,13 +6639,11 @@ else
fi
fi
-echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5
-echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
-
-
-if
+ if
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
am__fastdepCXX_TRUE=
@@ -6259,24 +6654,150 @@ else
fi
-echo "$as_me:$LINENO: checking whether ln -s works" >&5
-echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
+if test "x$CC" != xcc; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC and cc understand -c and -o together" >&5
+$as_echo_n "checking whether $CC and cc understand -c and -o together... " >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether cc understands -c and -o together" >&5
+$as_echo_n "checking whether cc understands -c and -o together... " >&6; }
+fi
+set dummy $CC; ac_cc=`$as_echo "$2" |
+ sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
+if { as_var=ac_cv_prog_cc_${ac_cc}_c_o; eval "test \"\${$as_var+set}\" = set"; }; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+# Make sure it works both with $CC and with simple cc.
+# We do the test twice because some compilers refuse to overwrite an
+# existing .o file with -o, though they will create one.
+ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
+rm -f conftest2.*
+if { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } &&
+ test -f conftest2.$ac_objext && { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; };
+then
+ eval ac_cv_prog_cc_${ac_cc}_c_o=yes
+ if test "x$CC" != xcc; then
+ # Test first that cc exists at all.
+ if { ac_try='cc -c conftest.$ac_ext >&5'
+ { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }; then
+ ac_try='cc -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
+ rm -f conftest2.*
+ if { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; } &&
+ test -f conftest2.$ac_objext && { { case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+ (eval "$ac_try") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; };
+ then
+ # cc works too.
+ :
+ else
+ # cc exists but doesn't like -o.
+ eval ac_cv_prog_cc_${ac_cc}_c_o=no
+ fi
+ fi
+ fi
+else
+ eval ac_cv_prog_cc_${ac_cc}_c_o=no
+fi
+rm -f core conftest*
+
+fi
+if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h
+
+fi
+
+# FIXME: we rely on the cache variable name because
+# there is no other way.
+set dummy $CC
+am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
+eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
+if test "$am_t" != yes; then
+ # Losing compiler, so override with the script.
+ # FIXME: It is wrong to rewrite CC.
+ # But if we don't then we get into trouble of one sort or another.
+ # A longer-term fix would be to have automake use am__CC in this case,
+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
+ CC="$am_aux_dir/compile $CC"
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
+$as_echo_n "checking whether ln -s works... " >&6; }
LN_S=$as_ln_s
if test "$LN_S" = "ln -s"; then
- echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
else
- echo "$as_me:$LINENO: result: no, using $LN_S" >&5
-echo "${ECHO_T}no, using $LN_S" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
+$as_echo "no, using $LN_S" >&6; }
fi
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_RANLIB+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_RANLIB+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$RANLIB"; then
ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
@@ -6286,35 +6807,37 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
RANLIB=$ac_cv_prog_RANLIB
if test -n "$RANLIB"; then
- echo "$as_me:$LINENO: result: $RANLIB" >&5
-echo "${ECHO_T}$RANLIB" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
+$as_echo "$RANLIB" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
fi
if test -z "$ac_cv_prog_RANLIB"; then
ac_ct_RANLIB=$RANLIB
# Extract the first word of "ranlib", so it can be a program name with args.
set dummy ranlib; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$ac_ct_RANLIB"; then
ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
@@ -6324,28 +6847,38 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_ac_ct_RANLIB="ranlib"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
- test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
fi
fi
ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
if test -n "$ac_ct_RANLIB"; then
- echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5
-echo "${ECHO_T}$ac_ct_RANLIB" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
+$as_echo "$ac_ct_RANLIB" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
- RANLIB=$ac_ct_RANLIB
+ if test "x$ac_ct_RANLIB" = x; then
+ RANLIB=":"
+ else
+ case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+ RANLIB=$ac_ct_RANLIB
+ fi
else
RANLIB="$ac_cv_prog_RANLIB"
fi
@@ -6354,10 +6887,10 @@ for ac_prog in gawk mawk nawk awk
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_prog_AWK+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_AWK+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
if test -n "$AWK"; then
ac_cv_prog_AWK="$AWK" # Let the user override the test.
@@ -6367,115 +6900,39 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_prog_AWK="$ac_prog"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
fi
fi
AWK=$ac_cv_prog_AWK
if test -n "$AWK"; then
- echo "$as_me:$LINENO: result: $AWK" >&5
-echo "${ECHO_T}$AWK" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+$as_echo "$AWK" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
- test -n "$AWK" && break
-done
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
- ./ | .// | /cC/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- done
- done
- ;;
-esac
+ test -n "$AWK" && break
done
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. We don't cache a
- # path for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the path is relative.
- INSTALL=$ac_install_sh
- fi
-fi
-echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
# Extract the first word of "bison", so it can be a program name with args.
set dummy bison; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_BISON+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_path_BISON+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
case $BISON in
[\\/]* | ?:[\\/]*)
@@ -6487,35 +6944,36 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_BISON="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
test -z "$ac_cv_path_BISON" && ac_cv_path_BISON="bison"
;;
esac
fi
BISON=$ac_cv_path_BISON
-
if test -n "$BISON"; then
- echo "$as_me:$LINENO: result: $BISON" >&5
-echo "${ECHO_T}$BISON" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BISON" >&5
+$as_echo "$BISON" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
# Extract the first word of "help2man", so it can be a program name with args.
set dummy help2man; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_HELP2MAN+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_path_HELP2MAN+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
case $HELP2MAN in
[\\/]* | ?:[\\/]*)
@@ -6527,95 +6985,69 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_HELP2MAN="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
test -z "$ac_cv_path_HELP2MAN" && ac_cv_path_HELP2MAN="help2man"
;;
esac
fi
HELP2MAN=$ac_cv_path_HELP2MAN
-
if test -n "$HELP2MAN"; then
- echo "$as_me:$LINENO: result: $HELP2MAN" >&5
-echo "${ECHO_T}$HELP2MAN" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $HELP2MAN" >&5
+$as_echo "$HELP2MAN" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
-# Check for a GNU m4 that supports --prefix-builtins
-for ac_prog in gm4 gnum4 m4
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_M4+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+# Check for a m4 that supports -P
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for m4 that supports -P" >&5
+$as_echo_n "checking for m4 that supports -P... " >&6; }
+if test "${ac_cv_path_M4+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- case $M4 in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_M4="$M4" # Let the user override the test with a path.
- ;;
- *)
+ if test -z "$M4"; then
+ ac_path_M4_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_M4="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
+ for ac_prog in gm4 gnum4 m4; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_M4="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_M4" && $as_test_x "$ac_path_M4"; } || continue
+m4out=`echo 'm''4_divnum' | $ac_path_M4 -P`
+ test "x$m4out" = x0 \
+ && ac_cv_path_M4=$ac_path_M4 ac_path_M4_found=:
+ $ac_path_M4_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_M4"; then
+ as_fn_error "could not find m4 that supports -P" "$LINENO" 5
fi
-done
-done
-
- ;;
-esac
-fi
-M4=$ac_cv_path_M4
-
-if test -n "$M4"; then
- echo "$as_me:$LINENO: result: $M4" >&5
-echo "${ECHO_T}$M4" >&6
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ ac_cv_path_M4=$M4
fi
- test -n "$M4" && break
-done
-test -n "$M4" || M4="m4"
-
-
-if test x"$M4" != x; then
- echo "$as_me:$LINENO: checking for GNU m4" >&5
-echo $ECHO_N "checking for GNU m4... $ECHO_C" >&6
- case `$M4 --help < /dev/null 2>&1` in
- *prefix-builtins*) echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6 ;;
- *) echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6 ;
- { { echo "$as_me:$LINENO: error: GNU M4 1.4 is required" >&5
-echo "$as_me: error: GNU M4 1.4 is required" >&2;}
- { (exit 1); exit 1; }; } ;;
- esac
-else
- { { echo "$as_me:$LINENO: error: GNU M4 1.4 is required" >&5
-echo "$as_me: error: GNU M4 1.4 is required" >&2;}
- { (exit 1); exit 1; }; } ;
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_M4" >&5
+$as_echo "$ac_cv_path_M4" >&6; }
+M4=$ac_cv_path_M4
cat >>confdefs.h <<_ACEOF
@@ -6625,10 +7057,10 @@ _ACEOF
# Extract the first word of "indent", so it can be a program name with args.
set dummy indent; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_INDENT+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_path_INDENT+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
case $INDENT in
[\\/]* | ?:[\\/]*)
@@ -6640,63 +7072,64 @@ for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
ac_cv_path_INDENT="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
-done
+ done
+IFS=$as_save_IFS
test -z "$ac_cv_path_INDENT" && ac_cv_path_INDENT="indent"
;;
esac
fi
INDENT=$ac_cv_path_INDENT
-
if test -n "$INDENT"; then
- echo "$as_me:$LINENO: result: $INDENT" >&5
-echo "${ECHO_T}$INDENT" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INDENT" >&5
+$as_echo "$INDENT" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
# if INDENT is set to 'indent' then we didn't find indent
if test "$INDENT" != indent ; then
- echo "$as_me:$LINENO: checking if $INDENT is GNU indent" >&5
-echo $ECHO_N "checking if $INDENT is GNU indent... $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $INDENT is GNU indent" >&5
+$as_echo_n "checking if $INDENT is GNU indent... " >&6; }
if $INDENT --version 2>/dev/null | head -n 1|grep "GNU indent" > /dev/null ; then
- echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
- { echo "$as_me:$LINENO: WARNING: $INDENT does not appear to be GNU indent." >&5
-echo "$as_me: WARNING: $INDENT does not appear to be GNU indent." >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $INDENT does not appear to be GNU indent." >&5
+$as_echo "$as_me: WARNING: $INDENT does not appear to be GNU indent." >&2;}
fi
else
- { echo "$as_me:$LINENO: WARNING: no indent program found: make indent target will not function" >&5
-echo "$as_me: WARNING: no indent program found: make indent target will not function" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: no indent program found: make indent target will not function" >&5
+$as_echo "$as_me: WARNING: no indent program found: make indent target will not function" >&2;}
fi
-# checks for libraries
+# checks for headers
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
-echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
# On Suns, sometimes $CPP names a directory.
if test -n "$CPP" && test -d "$CPP"; then
CPP=
fi
if test -z "$CPP"; then
- if test "${ac_cv_prog_CPP+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ if test "${ac_cv_prog_CPP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
# Double quotes because CPP needs to be expanded
for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
@@ -6710,11 +7143,7 @@ do
# <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef __STDC__
# include <limits.h>
@@ -6723,68 +7152,24 @@ cat >>conftest.$ac_ext <<_ACEOF
#endif
Syntax error
_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
- :
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
+else
# Broken: fails on valid input.
continue
fi
rm -f conftest.err conftest.$ac_ext
- # OK, works on sane cases. Now check whether non-existent headers
+ # OK, works on sane cases. Now check whether nonexistent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
+if ac_fn_c_try_cpp "$LINENO"; then :
# Broken: success on invalid input.
continue
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
# Passes both tests.
ac_preproc_ok=:
break
@@ -6794,7 +7179,7 @@ rm -f conftest.err conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
+if $ac_preproc_ok; then :
break
fi
@@ -6806,8 +7191,8 @@ fi
else
ac_cv_prog_CPP=$CPP
fi
-echo "$as_me:$LINENO: result: $CPP" >&5
-echo "${ECHO_T}$CPP" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+$as_echo "$CPP" >&6; }
ac_preproc_ok=false
for ac_c_preproc_warn_flag in '' yes
do
@@ -6817,11 +7202,7 @@ do
# <limits.h> exists even on freestanding compilers.
# On the NeXT, cc -E runs the code through the compiler's parser,
# not just through cpp. "Syntax error" is here to catch this case.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifdef __STDC__
# include <limits.h>
@@ -6830,68 +7211,24 @@ cat >>conftest.$ac_ext <<_ACEOF
#endif
Syntax error
_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
- :
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_cpp "$LINENO"; then :
+else
# Broken: fails on valid input.
continue
fi
rm -f conftest.err conftest.$ac_ext
- # OK, works on sane cases. Now check whether non-existent headers
+ # OK, works on sane cases. Now check whether nonexistent headers
# can be detected and how.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ac_nonexistent.h>
_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
+if ac_fn_c_try_cpp "$LINENO"; then :
# Broken: success on invalid input.
continue
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
# Passes both tests.
ac_preproc_ok=:
break
@@ -6901,14 +7238,13 @@ rm -f conftest.err conftest.$ac_ext
done
# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
- :
+if $ac_preproc_ok; then :
+
else
- { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
- { (exit 1); exit 1; }; }
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." "$LINENO" 5; }
fi
ac_ext=c
@@ -6918,387 +7254,142 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
ac_compiler_gnu=$ac_cv_c_compiler_gnu
-echo "$as_me:$LINENO: checking for egrep" >&5
-echo $ECHO_N "checking for egrep... $ECHO_C" >&6
-if test "${ac_cv_prog_egrep+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if test "${ac_cv_path_GREP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- if echo a | (grep -E '(a|b)') >/dev/null 2>&1
- then ac_cv_prog_egrep='grep -E'
- else ac_cv_prog_egrep='egrep'
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
-echo "${ECHO_T}$ac_cv_prog_egrep" >&6
- EGREP=$ac_cv_prog_egrep
-
-
-# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
-# for constant arguments. Useless!
-echo "$as_me:$LINENO: checking for working alloca.h" >&5
-echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6
-if test "${ac_cv_working_alloca_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <alloca.h>
-int
-main ()
-{
-char *p = (char *) alloca (2 * sizeof (int));
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_working_alloca_h=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_working_alloca_h=no
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5
-echo "${ECHO_T}$ac_cv_working_alloca_h" >&6
-if test $ac_cv_working_alloca_h = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ALLOCA_H 1
-_ACEOF
-
-fi
-
-echo "$as_me:$LINENO: checking for alloca" >&5
-echo $ECHO_N "checking for alloca... $ECHO_C" >&6
-if test "${ac_cv_func_alloca_works+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# ifdef _MSC_VER
-# include <malloc.h>
-# define alloca _alloca
-# else
-# if HAVE_ALLOCA_H
-# include <alloca.h>
-# else
-# ifdef _AIX
- #pragma alloca
-# else
-# ifndef alloca /* predefined by HP cc +Olibcalls */
-char *alloca ();
-# endif
-# endif
-# endif
-# endif
-#endif
-
-int
-main ()
-{
-char *p = (char *) alloca (1);
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_func_alloca_works=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_func_alloca_works=no
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5
-echo "${ECHO_T}$ac_cv_func_alloca_works" >&6
-
-if test $ac_cv_func_alloca_works = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ALLOCA 1
-_ACEOF
-
-else
- # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-# that cause trouble. Some versions do not even contain alloca or
-# contain a buggy version. If you still want to use their alloca,
-# use ar to extract alloca.o from them instead of compiling alloca.c.
-
-ALLOCA=alloca.$ac_objext
-
-cat >>confdefs.h <<\_ACEOF
-#define C_ALLOCA 1
-_ACEOF
-
-
-echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5
-echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6
-if test "${ac_cv_os_cray+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#if defined(CRAY) && ! defined(CRAY2)
-webecray
-#else
-wenotbecray
-#endif
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "webecray" >/dev/null 2>&1; then
- ac_cv_os_cray=yes
+ $ac_path_GREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_GREP"; then
+ as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
else
- ac_cv_os_cray=no
+ ac_cv_path_GREP=$GREP
fi
-rm -f conftest*
fi
-echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5
-echo "${ECHO_T}$ac_cv_os_cray" >&6
-if test $ac_cv_os_cray = yes; then
- for ac_func in _getb67 GETB67 getb67; do
- as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if test "${ac_cv_path_EGREP+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define CRAY_STACKSEG_END $ac_func
-_ACEOF
-
- break
-fi
-
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
done
-fi
-
-echo "$as_me:$LINENO: checking stack direction for C alloca" >&5
-echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6
-if test "${ac_cv_c_stack_direction+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- if test "$cross_compiling" = yes; then
- ac_cv_c_stack_direction=0
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-int
-find_stack_direction ()
-{
- static char *addr = 0;
- auto char dummy;
- if (addr == 0)
- {
- addr = &dummy;
- return find_stack_direction ();
- }
- else
- return (&dummy > addr) ? 1 : -1;
-}
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
-int
-main ()
-{
- exit (find_stack_direction () < 0);
-}
-_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_c_stack_direction=1
+ $ac_path_EGREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_c_stack_direction=-1
-fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+ ac_cv_path_EGREP=$EGREP
fi
-fi
-echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5
-echo "${ECHO_T}$ac_cv_c_stack_direction" >&6
-
-cat >>confdefs.h <<_ACEOF
-#define STACK_DIRECTION $ac_cv_c_stack_direction
-_ACEOF
-
+ fi
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
-echo "$as_me:$LINENO: checking for ANSI C header files" >&5
-echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
-if test "${ac_cv_header_stdc+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
+$as_echo_n "checking for ANSI C header files... " >&6; }
+if test "${ac_cv_header_stdc+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
#include <stdarg.h>
@@ -7313,50 +7404,23 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_header_stdc=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_header_stdc=no
+ ac_cv_header_stdc=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <string.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "memchr" >/dev/null 2>&1; then
- :
+ $EGREP "memchr" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -7366,18 +7430,14 @@ fi
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdlib.h>
_ACEOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
- $EGREP "free" >/dev/null 2>&1; then
- :
+ $EGREP "free" >/dev/null 2>&1; then :
+
else
ac_cv_header_stdc=no
fi
@@ -7387,16 +7447,13 @@ fi
if test $ac_cv_header_stdc = yes; then
# /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
:
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <ctype.h>
+#include <stdlib.h>
#if ((' ' & 0x0FF) == 0x020)
# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
@@ -7416,59 +7473,40 @@ main ()
for (i = 0; i < 256; i++)
if (XOR (islower (i), ISLOWER (i))
|| toupper (i) != TOUPPER (i))
- exit(2);
- exit (0);
+ return 2;
+ return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- :
-else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if ac_fn_c_try_run "$LINENO"; then :
-( exit $ac_status )
-ac_cv_header_stdc=no
+else
+ ac_cv_header_stdc=no
fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
fi
-echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
-echo "${ECHO_T}$ac_cv_header_stdc" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
+$as_echo "$ac_cv_header_stdc" >&6; }
if test $ac_cv_header_stdc = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
fi
-echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5
-echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6
-if test "${ac_cv_header_sys_wait_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys/wait.h that is POSIX.1 compatible" >&5
+$as_echo_n "checking for sys/wait.h that is POSIX.1 compatible... " >&6; }
+if test "${ac_cv_header_sys_wait_h+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/types.h>
#include <sys/wait.h>
#ifndef WEXITSTATUS
-# define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8)
+# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8)
#endif
#ifndef WIFEXITED
# define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
@@ -7484,110 +7522,32 @@ main ()
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_header_sys_wait_h=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_header_sys_wait_h=no
+ ac_cv_header_sys_wait_h=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5
-echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_sys_wait_h" >&5
+$as_echo "$ac_cv_header_sys_wait_h" >&6; }
if test $ac_cv_header_sys_wait_h = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SYS_WAIT_H 1
-_ACEOF
+$as_echo "#define HAVE_SYS_WAIT_H 1" >>confdefs.h
fi
# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_Header=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_Header=no"
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+eval as_val=\$$as_ac_Header
+ if test "x$as_val" = x""yes; then :
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -7595,159 +7555,14 @@ fi
done
-
-
-
-
-
-
-
-
-
-
-
-for ac_header in inttypes.h libintl.h limits.h locale.h malloc.h netinet/in.h stddef.h stdlib.h string.h strings.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
- # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
-## ---------------------------------------------- ##
-## Report this to flex-help@lists.sourceforge.net ##
-## ---------------------------------------------- ##
-_ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+for ac_header in inttypes.h libintl.h limits.h locale.h malloc.h netinet/in.h regex.h stddef.h stdlib.h string.h strings.h unistd.h
+do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+eval as_val=\$$as_ac_Header
+ if test "x$as_val" = x""yes; then :
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
_ACEOF
fi
@@ -7755,343 +7570,146 @@ fi
done
-echo "$as_me:$LINENO: checking for log10 in -lm" >&5
-echo $ECHO_N "checking for log10 in -lm... $ECHO_C" >&6
-if test "${ac_cv_lib_m_log10+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lm $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char log10 ();
-int
-main ()
-{
-log10 ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_m_log10=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_m_log10=no
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_m_log10" >&5
-echo "${ECHO_T}$ac_cv_lib_m_log10" >&6
-if test $ac_cv_lib_m_log10 = yes; then
- cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBM 1
-_ACEOF
-
- LIBS="-lm $LIBS"
-
-fi
-
+# checks for libraries
# The test test-pthread uses libpthread, so we check for it here, but
# all we need is the preprocessor symbol defined since we don't need
# LIBS to include libpthread for building flex.
-echo "$as_me:$LINENO: checking for pthread_mutex_lock in -lpthread" >&5
-echo $ECHO_N "checking for pthread_mutex_lock in -lpthread... $ECHO_C" >&6
-if test "${ac_cv_lib_pthread_pthread_mutex_lock+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_mutex_lock in -lpthread" >&5
+$as_echo_n "checking for pthread_mutex_lock in -lpthread... " >&6; }
+if test "${ac_cv_lib_pthread_pthread_mutex_lock+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
LIBS="-lpthread $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-/* Override any gcc2 internal prototype to avoid an error. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
char pthread_mutex_lock ();
int
main ()
{
-pthread_mutex_lock ();
+return pthread_mutex_lock ();
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_link "$LINENO"; then :
ac_cv_lib_pthread_pthread_mutex_lock=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_pthread_pthread_mutex_lock=no
+ ac_cv_lib_pthread_pthread_mutex_lock=no
fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_mutex_lock" >&5
-echo "${ECHO_T}$ac_cv_lib_pthread_pthread_mutex_lock" >&6
-if test $ac_cv_lib_pthread_pthread_mutex_lock = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_mutex_lock" >&5
+$as_echo "$ac_cv_lib_pthread_pthread_mutex_lock" >&6; }
+if test "x$ac_cv_lib_pthread_pthread_mutex_lock" = x""yes; then :
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_LIBPTHREAD 1
-_ACEOF
+$as_echo "#define HAVE_LIBPTHREAD 1" >>confdefs.h
else
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_LIBPTHREAD 0
-_ACEOF
+$as_echo "#define HAVE_LIBPTHREAD 0" >>confdefs.h
fi
-
for ac_header in pthread.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
- # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
+if test "x$ac_cv_header_pthread_h" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_PTHREAD_H 1
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-ac_header_compiler=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+done
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
-## ---------------------------------------------- ##
-## Report this to flex-help@lists.sourceforge.net ##
-## ---------------------------------------------- ##
-_ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for log10 in -lm" >&5
+$as_echo_n "checking for log10 in -lm... " >&6; }
+if test "${ac_cv_lib_m_log10+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lm $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char log10 ();
+int
+main ()
+{
+return log10 ();
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_lib_m_log10=yes
+else
+ ac_cv_lib_m_log10=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_log10" >&5
+$as_echo "$ac_cv_lib_m_log10" >&6; }
+if test "x$ac_cv_lib_m_log10" = x""yes; then :
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_LIBM 1
_ACEOF
-fi
+ LIBS="-lm $LIBS"
-done
+fi
# Checks for typedefs, structures, and compiler characteristics.
-echo "$as_me:$LINENO: checking for stdbool.h that conforms to C99" >&5
-echo $ECHO_N "checking for stdbool.h that conforms to C99... $ECHO_C" >&6
-if test "${ac_cv_header_stdbool_h+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdbool.h that conforms to C99" >&5
+$as_echo_n "checking for stdbool.h that conforms to C99... " >&6; }
+if test "${ac_cv_header_stdbool_h+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <stdbool.h>
#ifndef bool
-# error bool is not defined
+ "error: bool is not defined"
#endif
#ifndef false
-# error false is not defined
+ "error: false is not defined"
#endif
#if false
-# error false is not 0
+ "error: false is not 0"
#endif
#ifndef true
-# error true is not defined
+ "error: true is not defined"
#endif
#if true != 1
-# error true is not 1
+ "error: true is not 1"
#endif
#ifndef __bool_true_false_are_defined
-# error __bool_true_false_are_defined is not defined
+ "error: __bool_true_false_are_defined is not defined"
#endif
struct s { _Bool s: 1; _Bool t; } s;
@@ -8099,109 +7717,69 @@ cat >>conftest.$ac_ext <<_ACEOF
char a[true == 1 ? 1 : -1];
char b[false == 0 ? 1 : -1];
char c[__bool_true_false_are_defined == 1 ? 1 : -1];
- char d[(bool) -0.5 == true ? 1 : -1];
+ char d[(bool) 0.5 == true ? 1 : -1];
bool e = &s;
- char f[(_Bool) -0.0 == false ? 1 : -1];
+ char f[(_Bool) 0.0 == false ? 1 : -1];
char g[true];
char h[sizeof (_Bool)];
char i[sizeof s.t];
+ enum { j = false, k = true, l = false * true, m = true * 256 };
+ /* The following fails for
+ HP aC++/ANSI C B3910B A.05.55 [Dec 04 2003]. */
+ _Bool n[m];
+ char o[sizeof n == m * sizeof n[0] ? 1 : -1];
+ char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1];
+# if defined __xlc__ || defined __GNUC__
+ /* Catch a bug in IBM AIX xlc compiler version 6.0.0.0
+ reported by James Lemley on 2005-10-05; see
+ http://lists.gnu.org/archive/html/bug-coreutils/2005-10/msg00086.html
+ This test is not quite right, since xlc is allowed to
+ reject this program, as the initializer for xlcbug is
+ not one of the forms that C requires support for.
+ However, doing the test right would require a runtime
+ test, and that would make cross-compilation harder.
+ Let us hope that IBM fixes the xlc bug, and also adds
+ support for this kind of constant expression. In the
+ meantime, this test will reject xlc, which is OK, since
+ our stdbool.h substitute should suffice. We also test
+ this with GCC, where it should work, to detect more
+ quickly whether someone messes up the test in the
+ future. */
+ char digs[] = "0123456789";
+ int xlcbug = 1 / (&(digs + 5)[-2 + (bool) 1] == &digs[4] ? 1 : -1);
+# endif
+ /* Catch a bug in an HP-UX C compiler. See
+ http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html
+ http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html
+ */
+ _Bool q = true;
+ _Bool *pq = &q;
int
main ()
{
- return !a + !b + !c + !d + !e + !f + !g + !h + !i;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_header_stdbool_h=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-ac_cv_header_stdbool_h=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: $ac_cv_header_stdbool_h" >&5
-echo "${ECHO_T}$ac_cv_header_stdbool_h" >&6
-echo "$as_me:$LINENO: checking for _Bool" >&5
-echo $ECHO_N "checking for _Bool... $ECHO_C" >&6
-if test "${ac_cv_type__Bool+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-int
-main ()
-{
-if ((_Bool *) 0)
- return 0;
-if (sizeof (_Bool))
- return 0;
+ *pq |= q;
+ *pq |= ! q;
+ /* Refer to every declared value, to avoid compiler optimizations. */
+ return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l
+ + !m + !n + !o + !p + !q + !pq);
+
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_type__Bool=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+ ac_cv_header_stdbool_h=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type__Bool=no
+ ac_cv_header_stdbool_h=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: $ac_cv_type__Bool" >&5
-echo "${ECHO_T}$ac_cv_type__Bool" >&6
-if test $ac_cv_type__Bool = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdbool_h" >&5
+$as_echo "$ac_cv_header_stdbool_h" >&6; }
+ac_fn_c_check_type "$LINENO" "_Bool" "ac_cv_type__Bool" "$ac_includes_default"
+if test "x$ac_cv_type__Bool" = x""yes; then :
cat >>confdefs.h <<_ACEOF
#define HAVE__BOOL 1
@@ -8212,22 +7790,16 @@ fi
if test $ac_cv_header_stdbool_h = yes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_STDBOOL_H 1
-_ACEOF
+$as_echo "#define HAVE_STDBOOL_H 1" >>confdefs.h
fi
-echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5
-echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6
-if test "${ac_cv_c_const+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
+$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
+if test "${ac_cv_c_const+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
@@ -8237,10 +7809,10 @@ main ()
#ifndef __cplusplus
/* Ultrix mips cc rejects this. */
typedef int charset[2];
- const charset x;
+ const charset cs;
/* SunOS 4.1.1 cc rejects this. */
- char const *const *ccp;
- char **p;
+ char const *const *pcpcc;
+ char **ppc;
/* NEC SVR4.0.2 mips cc rejects this. */
struct point {int x, y;};
static struct point const zero = {0,0};
@@ -8249,16 +7821,17 @@ main ()
an arm of an if-expression whose if-part is not a constant
expression */
const char *g = "string";
- ccp = &g + (g ? g-g : 0);
+ pcpcc = &g + (g ? g-g : 0);
/* HPUX 7.0 cc rejects these. */
- ++ccp;
- p = (char**) ccp;
- ccp = (char const *const *) p;
+ ++pcpcc;
+ ppc = (char**) pcpcc;
+ pcpcc = (char const *const *) ppc;
{ /* SCO 3.2v4 cc rejects this. */
char *t;
char const *s = 0 ? (char *) 0 : (char const *) 0;
*t++ = 0;
+ if (s) return 0;
}
{ /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */
int x[] = {25, 17};
@@ -8277,452 +7850,280 @@ main ()
}
{ /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
const int foo = 10;
+ if (!foo) return 0;
}
+ return !cs[0] && !zero.x;
#endif
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_c_const=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_c_const=no
+ ac_cv_c_const=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5
-echo "${ECHO_T}$ac_cv_c_const" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
+$as_echo "$ac_cv_c_const" >&6; }
if test $ac_cv_c_const = no; then
-cat >>confdefs.h <<\_ACEOF
-#define const
-_ACEOF
+$as_echo "#define const /**/" >>confdefs.h
fi
-echo "$as_me:$LINENO: checking for size_t" >&5
-echo $ECHO_N "checking for size_t... $ECHO_C" >&6
-if test "${ac_cv_type_size_t+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
+if test "x$ac_cv_type_size_t" = x""yes; then :
+
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
+
+cat >>confdefs.h <<_ACEOF
+#define size_t unsigned int
_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+
+fi
+
+
+# Checks for library functions.
+
+# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
+# for constant arguments. Useless!
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5
+$as_echo_n "checking for working alloca.h... " >&6; }
+if test "${ac_cv_working_alloca_h+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-$ac_includes_default
+#include <alloca.h>
int
main ()
{
-if ((size_t *) 0)
- return 0;
-if (sizeof (size_t))
- return 0;
+char *p = (char *) alloca (2 * sizeof (int));
+ if (p) return 0;
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_type_size_t=yes
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_working_alloca_h=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_size_t=no
+ ac_cv_working_alloca_h=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5
-echo "${ECHO_T}$ac_cv_type_size_t" >&6
-if test $ac_cv_type_size_t = yes; then
- :
-else
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5
+$as_echo "$ac_cv_working_alloca_h" >&6; }
+if test $ac_cv_working_alloca_h = yes; then
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned
-_ACEOF
+$as_echo "#define HAVE_ALLOCA_H 1" >>confdefs.h
fi
-
-# Checks for library functions.
-
-echo "$as_me:$LINENO: checking for pid_t" >&5
-echo $ECHO_N "checking for pid_t... $ECHO_C" >&6
-if test "${ac_cv_type_pid_t+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5
+$as_echo_n "checking for alloca... " >&6; }
+if test "${ac_cv_func_alloca_works+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-$ac_includes_default
+#ifdef __GNUC__
+# define alloca __builtin_alloca
+#else
+# ifdef _MSC_VER
+# include <malloc.h>
+# define alloca _alloca
+# else
+# ifdef HAVE_ALLOCA_H
+# include <alloca.h>
+# else
+# ifdef _AIX
+ #pragma alloca
+# else
+# ifndef alloca /* predefined by HP cc +Olibcalls */
+char *alloca ();
+# endif
+# endif
+# endif
+# endif
+#endif
+
int
main ()
{
-if ((pid_t *) 0)
- return 0;
-if (sizeof (pid_t))
- return 0;
+char *p = (char *) alloca (1);
+ if (p) return 0;
;
return 0;
}
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_type_pid_t=yes
+if ac_fn_c_try_link "$LINENO"; then :
+ ac_cv_func_alloca_works=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_type_pid_t=no
+ ac_cv_func_alloca_works=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5
-echo "${ECHO_T}$ac_cv_type_pid_t" >&6
-if test $ac_cv_type_pid_t = yes; then
- :
-else
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5
+$as_echo "$ac_cv_func_alloca_works" >&6; }
-cat >>confdefs.h <<_ACEOF
-#define pid_t int
-_ACEOF
+if test $ac_cv_func_alloca_works = yes; then
-fi
+$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h
+else
+ # The SVR3 libPW and SVR4 libucb both contain incompatible functions
+# that cause trouble. Some versions do not even contain alloca or
+# contain a buggy version. If you still want to use their alloca,
+# use ar to extract alloca.o from them instead of compiling alloca.c.
+ALLOCA=\${LIBOBJDIR}alloca.$ac_objext
-for ac_header in unistd.h vfork.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+$as_echo "#define C_ALLOCA 1" >>confdefs.h
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5
+$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; }
+if test "${ac_cv_os_cray+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
+#if defined CRAY && ! defined CRAY2
+webecray
+#else
+wenotbecray
+#endif
+
_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_header_compiler=yes
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "webecray" >/dev/null 2>&1; then :
+ ac_cv_os_cray=yes
else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+ ac_cv_os_cray=no
+fi
+rm -f conftest*
-ac_header_compiler=no
fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5
+$as_echo "$ac_cv_os_cray" >&6; }
+if test $ac_cv_os_cray = yes; then
+ for ac_func in _getb67 GETB67 getb67; do
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+eval as_val=\$$as_ac_var
+ if test "x$as_val" = x""yes; then :
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
+cat >>confdefs.h <<_ACEOF
+#define CRAY_STACKSEG_END $ac_func
_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
+
+ break
fi
-if test -z "$ac_cpp_err"; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
- ac_header_preproc=no
+ done
fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
-## ---------------------------------------------- ##
-## Report this to flex-help@lists.sourceforge.net ##
-## ---------------------------------------------- ##
-_ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5
+$as_echo_n "checking stack direction for C alloca... " >&6; }
+if test "${ac_cv_c_stack_direction+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test "$cross_compiling" = yes; then :
+ ac_cv_c_stack_direction=0
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+$ac_includes_default
+int
+find_stack_direction ()
+{
+ static char *addr = 0;
+ auto char dummy;
+ if (addr == 0)
+ {
+ addr = &dummy;
+ return find_stack_direction ();
+ }
+ else
+ return (&dummy > addr) ? 1 : -1;
+}
+
+int
+main ()
+{
+ return find_stack_direction () < 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+ ac_cv_c_stack_direction=1
else
- eval "$as_ac_Header=\$ac_header_preproc"
+ ac_cv_c_stack_direction=-1
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
- cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5
+$as_echo "$ac_cv_c_stack_direction" >&6; }
+cat >>confdefs.h <<_ACEOF
+#define STACK_DIRECTION $ac_cv_c_stack_direction
_ACEOF
-fi
-done
+fi
+ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
+if test "x$ac_cv_type_pid_t" = x""yes; then :
+else
-for ac_func in fork vfork
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
+cat >>confdefs.h <<_ACEOF
+#define pid_t int
_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
+fi
-int
-main ()
-{
-return f != $ac_func;
- ;
- return 0;
-}
+for ac_header in vfork.h
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "vfork.h" "ac_cv_header_vfork_h" "$ac_includes_default"
+if test "x$ac_cv_header_vfork_h" = x""yes; then :
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_VFORK_H 1
_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+
+done
+
+for ac_func in fork vfork
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+eval as_val=\$$as_ac_var
+ if test "x$as_val" = x""yes; then :
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
done
if test "x$ac_cv_func_fork" = xyes; then
- echo "$as_me:$LINENO: checking for working fork" >&5
-echo $ECHO_N "checking for working fork... $ECHO_C" >&6
-if test "${ac_cv_func_fork_works+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working fork" >&5
+$as_echo_n "checking for working fork... " >&6; }
+if test "${ac_cv_func_fork_works+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
ac_cv_func_fork_works=cross
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
$ac_includes_default
int
@@ -8730,39 +8131,24 @@ main ()
{
/* By Ruediger Kuhlmann. */
- if (fork() < 0)
- exit (1);
- exit (0);
+ return fork () < 0;
;
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
ac_cv_func_fork_works=yes
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_fork_works=no
+ ac_cv_func_fork_works=no
fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
-echo "$as_me:$LINENO: result: $ac_cv_func_fork_works" >&5
-echo "${ECHO_T}$ac_cv_func_fork_works" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_fork_works" >&5
+$as_echo "$ac_cv_func_fork_works" >&6; }
else
ac_cv_func_fork_works=$ac_cv_func_fork
@@ -8777,35 +8163,25 @@ if test "x$ac_cv_func_fork_works" = xcross; then
ac_cv_func_fork_works=yes
;;
esac
- { echo "$as_me:$LINENO: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&5
-echo "$as_me: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&5
+$as_echo "$as_me: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&2;}
fi
ac_cv_func_vfork_works=$ac_cv_func_vfork
if test "x$ac_cv_func_vfork" = xyes; then
- echo "$as_me:$LINENO: checking for working vfork" >&5
-echo $ECHO_N "checking for working vfork... $ECHO_C" >&6
-if test "${ac_cv_func_vfork_works+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working vfork" >&5
+$as_echo_n "checking for working vfork... " >&6; }
+if test "${ac_cv_func_vfork_works+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
ac_cv_func_vfork_works=cross
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Thanks to Paul Eggert for this test. */
-#include <stdio.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+$ac_includes_default
#include <sys/wait.h>
-#if HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-#if HAVE_VFORK_H
+#ifdef HAVE_VFORK_H
# include <vfork.h>
#endif
/* On some sparc systems, changes by the child to local and incoming
@@ -8876,7 +8252,7 @@ main ()
while (wait(&status) != child)
;
- exit(
+ return (
/* Was there some problem with vforking? */
child < 0
@@ -8892,224 +8268,64 @@ main ()
}
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
ac_cv_func_vfork_works=yes
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_vfork_works=no
+ ac_cv_func_vfork_works=no
fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
-echo "$as_me:$LINENO: result: $ac_cv_func_vfork_works" >&5
-echo "${ECHO_T}$ac_cv_func_vfork_works" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_vfork_works" >&5
+$as_echo "$ac_cv_func_vfork_works" >&6; }
fi;
if test "x$ac_cv_func_fork_works" = xcross; then
ac_cv_func_vfork_works=$ac_cv_func_vfork
- { echo "$as_me:$LINENO: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&5
-echo "$as_me: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&5
+$as_echo "$as_me: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&2;}
fi
if test "x$ac_cv_func_vfork_works" = xyes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_WORKING_VFORK 1
-_ACEOF
+$as_echo "#define HAVE_WORKING_VFORK 1" >>confdefs.h
else
-cat >>confdefs.h <<\_ACEOF
-#define vfork fork
-_ACEOF
+$as_echo "#define vfork fork" >>confdefs.h
fi
if test "x$ac_cv_func_fork_works" = xyes; then
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_WORKING_FORK 1
-_ACEOF
+$as_echo "#define HAVE_WORKING_FORK 1" >>confdefs.h
fi
-
for ac_header in stdlib.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
- # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
-## ---------------------------------------------- ##
-## Report this to flex-help@lists.sourceforge.net ##
-## ---------------------------------------------- ##
-_ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdlib_h" = x""yes; then :
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_STDLIB_H 1
_ACEOF
fi
done
-echo "$as_me:$LINENO: checking for GNU libc compatible malloc" >&5
-echo $ECHO_N "checking for GNU libc compatible malloc... $ECHO_C" >&6
-if test "${ac_cv_func_malloc_0_nonnull+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
+$as_echo_n "checking for GNU libc compatible malloc... " >&6; }
+if test "${ac_cv_func_malloc_0_nonnull+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
ac_cv_func_malloc_0_nonnull=no
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#if STDC_HEADERS || HAVE_STDLIB_H
+#if defined STDC_HEADERS || defined HAVE_STDLIB_H
# include <stdlib.h>
#else
char *malloc ();
@@ -9118,228 +8334,65 @@ char *malloc ();
int
main ()
{
-exit (malloc (0) ? 0 : 1);
+return ! malloc (0);
;
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
ac_cv_func_malloc_0_nonnull=yes
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_malloc_0_nonnull=no
+ ac_cv_func_malloc_0_nonnull=no
fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
-echo "$as_me:$LINENO: result: $ac_cv_func_malloc_0_nonnull" >&5
-echo "${ECHO_T}$ac_cv_func_malloc_0_nonnull" >&6
-if test $ac_cv_func_malloc_0_nonnull = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
+$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; }
+if test $ac_cv_func_malloc_0_nonnull = yes; then :
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_MALLOC 1
-_ACEOF
+$as_echo "#define HAVE_MALLOC 1" >>confdefs.h
else
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_MALLOC 0
-_ACEOF
+ $as_echo "#define HAVE_MALLOC 0" >>confdefs.h
- case $LIBOBJS in
- "malloc.$ac_objext" | \
- *" malloc.$ac_objext" | \
- "malloc.$ac_objext "* | \
+ case " $LIBOBJS " in
*" malloc.$ac_objext "* ) ;;
- *) LIBOBJS="$LIBOBJS malloc.$ac_objext" ;;
+ *) LIBOBJS="$LIBOBJS malloc.$ac_objext"
+ ;;
esac
-cat >>confdefs.h <<\_ACEOF
-#define malloc rpl_malloc
-_ACEOF
+$as_echo "#define malloc rpl_malloc" >>confdefs.h
fi
-
-
for ac_header in stdlib.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-else
- # Is the header compilable?
-echo "$as_me:$LINENO: checking $ac_header usability" >&5
-echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
- (eval $ac_compile) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest.$ac_objext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_header_compiler=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_header_compiler=no
-fi
-rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-echo "${ECHO_T}$ac_header_compiler" >&6
-
-# Is the header present?
-echo "$as_me:$LINENO: checking $ac_header presence" >&5
-echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-#include <$ac_header>
-_ACEOF
-if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
- (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } >/dev/null; then
- if test -s conftest.err; then
- ac_cpp_err=$ac_c_preproc_warn_flag
- ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
- else
- ac_cpp_err=
- fi
-else
- ac_cpp_err=yes
-fi
-if test -z "$ac_cpp_err"; then
- ac_header_preproc=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_header_preproc=no
-fi
-rm -f conftest.err conftest.$ac_ext
-echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-echo "${ECHO_T}$ac_header_preproc" >&6
-
-# So? What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
- yes:no: )
- { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
- ac_header_preproc=yes
- ;;
- no:yes:* )
- { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
- { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
- (
- cat <<\_ASBOX
-## ---------------------------------------------- ##
-## Report this to flex-help@lists.sourceforge.net ##
-## ---------------------------------------------- ##
-_ASBOX
- ) |
- sed "s/^/$as_me: WARNING: /" >&2
- ;;
-esac
-echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-if eval "test \"\${$as_ac_Header+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- eval "$as_ac_Header=\$ac_header_preproc"
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-
-fi
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
+do :
+ ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdlib_h" = x""yes; then :
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_STDLIB_H 1
_ACEOF
fi
done
-echo "$as_me:$LINENO: checking for GNU libc compatible realloc" >&5
-echo $ECHO_N "checking for GNU libc compatible realloc... $ECHO_C" >&6
-if test "${ac_cv_func_realloc_0_nonnull+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5
+$as_echo_n "checking for GNU libc compatible realloc... " >&6; }
+if test "${ac_cv_func_realloc_0_nonnull+set}" = set; then :
+ $as_echo_n "(cached) " >&6
else
- if test "$cross_compiling" = yes; then
+ if test "$cross_compiling" = yes; then :
ac_cv_func_realloc_0_nonnull=no
else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#if STDC_HEADERS || HAVE_STDLIB_H
+#if defined STDC_HEADERS || defined HAVE_STDLIB_H
# include <stdlib.h>
#else
char *realloc ();
@@ -9348,174 +8401,57 @@ char *realloc ();
int
main ()
{
-exit (realloc (0, 0) ? 0 : 1);
+return ! realloc (0, 0);
;
return 0;
}
_ACEOF
-rm -f conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
+if ac_fn_c_try_run "$LINENO"; then :
ac_cv_func_realloc_0_nonnull=yes
else
- echo "$as_me: program exited with status $ac_status" >&5
-echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-( exit $ac_status )
-ac_cv_func_realloc_0_nonnull=no
+ ac_cv_func_realloc_0_nonnull=no
fi
-rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+ conftest.$ac_objext conftest.beam conftest.$ac_ext
fi
+
fi
-echo "$as_me:$LINENO: result: $ac_cv_func_realloc_0_nonnull" >&5
-echo "${ECHO_T}$ac_cv_func_realloc_0_nonnull" >&6
-if test $ac_cv_func_realloc_0_nonnull = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_realloc_0_nonnull" >&5
+$as_echo "$ac_cv_func_realloc_0_nonnull" >&6; }
+if test $ac_cv_func_realloc_0_nonnull = yes; then :
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_REALLOC 1
-_ACEOF
+$as_echo "#define HAVE_REALLOC 1" >>confdefs.h
else
- cat >>confdefs.h <<\_ACEOF
-#define HAVE_REALLOC 0
-_ACEOF
+ $as_echo "#define HAVE_REALLOC 0" >>confdefs.h
- case $LIBOBJS in
- "realloc.$ac_objext" | \
- *" realloc.$ac_objext" | \
- "realloc.$ac_objext "* | \
+ case " $LIBOBJS " in
*" realloc.$ac_objext "* ) ;;
- *) LIBOBJS="$LIBOBJS realloc.$ac_objext" ;;
+ *) LIBOBJS="$LIBOBJS realloc.$ac_objext"
+ ;;
esac
-cat >>confdefs.h <<\_ACEOF
-#define realloc rpl_realloc
-_ACEOF
+$as_echo "#define realloc rpl_realloc" >>confdefs.h
fi
-
-
-
-
-
-
-
-
-
for ac_func in dup2 isascii memset pow regcomp setlocale strchr strtol
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-if eval "test \"\${$as_ac_var+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
- For example, HP-UX 11i <limits.h> declares gettimeofday. */
-#define $ac_func innocuous_$ac_func
-
-/* System header to define __stub macros and hopefully few prototypes,
- which can conflict with char $ac_func (); below.
- Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
- <limits.h> exists even on freestanding compilers. */
-
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any gcc2 internal prototype to avoid an error. */
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-/* We use char because int might match the return type of a gcc2
- builtin and then its argument prototype would still apply. */
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
- to always fail with ENOSYS. Some functions are actually named
- something starting with __ and the normal name is an alias. */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-char (*f) () = $ac_func;
-#endif
-#ifdef __cplusplus
-}
-#endif
-
-int
-main ()
-{
-return f != $ac_func;
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "$as_ac_var=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "$as_ac_var=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-fi
-echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-if test `eval echo '${'$as_ac_var'}'` = yes; then
+do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+eval as_val=\$$as_ac_var
+ if test "x$as_val" = x""yes; then :
cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
done
- ac_config_files="$ac_config_files Makefile doc/Makefile examples/Makefile examples/fastwc/Makefile examples/manual/Makefile m4/Makefile po/Makefile.in tools/Makefile tests/Makefile tests/TEMPLATE/Makefile tests/test-array-nr/Makefile tests/test-array-r/Makefile tests/test-basic-nr/Makefile tests/test-basic-r/Makefile tests/test-bison-yylloc/Makefile tests/test-bison-yylval/Makefile tests/test-c-cpp-nr/Makefile tests/test-c-cpp-r/Makefile tests/test-header-nr/Makefile tests/test-header-r/Makefile tests/test-include-by-buffer/Makefile tests/test-include-by-push/Makefile tests/test-include-by-reentrant/Makefile tests/test-multiple-scanners-nr/Makefile tests/test-multiple-scanners-r/Makefile tests/test-noansi-nr/Makefile tests/test-noansi-r/Makefile tests/test-prefix-nr/Makefile tests/test-prefix-r/Makefile tests/test-pthread/Makefile tests/test-string-nr/Makefile tests/test-string-r/Makefile tests/test-yyextra/Makefile tests/test-alloc-extra/Makefile tests/test-lineno-nr/Makefile tests/test-lineno-r/Makefile tests/test-linedir-r/Makefile tests/test-debug-r/Makefile tests/test-debug-nr/Makefile tests/test-mem-nr/Makefile tests/test-mem-r/Makefile tests/test-posix/Makefile tests/test-posixly-correct/Makefile tests/test-table-opts/Makefile tests/test-c++-basic/Makefile tests/test-bison-nr/Makefile tests/test-reject/Makefile tests/test-c++-multiple-scanners/Makefile tests/test-top/Makefile tests/test-rescan-nr/Makefile tests/test-rescan-r/Makefile tests/test-quotes/Makefile tests/test-ccl/Makefile tests/test-extended/Makefile tests/test-c++-yywrap/Makefile tests/test-concatenated-options/Makefile"
+ac_config_files="$ac_config_files Makefile doc/Makefile examples/Makefile examples/fastwc/Makefile examples/manual/Makefile lib/Makefile po/Makefile.in tools/Makefile tests/Makefile tests/TEMPLATE/Makefile tests/test-array-nr/Makefile tests/test-array-r/Makefile tests/test-basic-nr/Makefile tests/test-basic-r/Makefile tests/test-bison-yylloc/Makefile tests/test-bison-yylval/Makefile tests/test-c-cpp-nr/Makefile tests/test-c-cpp-r/Makefile tests/test-header-nr/Makefile tests/test-header-r/Makefile tests/test-include-by-buffer/Makefile tests/test-include-by-push/Makefile tests/test-include-by-reentrant/Makefile tests/test-multiple-scanners-nr/Makefile tests/test-multiple-scanners-r/Makefile tests/test-noansi-nr/Makefile tests/test-noansi-r/Makefile tests/test-prefix-nr/Makefile tests/test-prefix-r/Makefile tests/test-pthread/Makefile tests/test-string-nr/Makefile tests/test-string-r/Makefile tests/test-yyextra/Makefile tests/test-alloc-extra/Makefile tests/test-lineno-nr/Makefile tests/test-lineno-r/Makefile tests/test-linedir-r/Makefile tests/test-debug-r/Makefile tests/test-debug-nr/Makefile tests/test-mem-nr/Makefile tests/test-mem-r/Makefile tests/test-posix/Makefile tests/test-posixly-correct/Makefile tests/test-table-opts/Makefile tests/test-c++-basic/Makefile tests/test-bison-nr/Makefile tests/test-reject/Makefile tests/test-c++-multiple-scanners/Makefile tests/test-top/Makefile tests/test-rescan-nr/Makefile tests/test-rescan-r/Makefile tests/test-quotes/Makefile tests/test-ccl/Makefile tests/test-extended/Makefile tests/test-c++-yywrap/Makefile tests/test-concatenated-options/Makefile"
cat >confcache <<\_ACEOF
@@ -9536,39 +8472,59 @@ _ACEOF
# The following way of writing the cache mishandles newlines in values,
# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
+# So, we kill variables containing newlines.
# Ultrix sh set writes to stderr and can't be redirected directly,
# and sets the high bit in the cache file unless we assign to the vars.
-{
+(
+ for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
+ eval ac_val=\$$ac_var
+ case $ac_val in #(
+ *${as_nl}*)
+ case $ac_var in #(
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+ esac
+ case $ac_var in #(
+ _ | IFS | as_nl) ;; #(
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+ *) { eval $ac_var=; unset $ac_var;} ;;
+ esac ;;
+ esac
+ done
+
(set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \).
+ case $as_nl`(ac_space=' '; set) 2>&1` in #(
+ *${as_nl}ac_space=\ *)
+ # `set' does not quote correctly, so add quotes: double-quote
+ # substitution turns \\\\ into \\, and sed turns \\ into \.
sed -n \
"s/'/'\\\\''/g;
s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;;
+ ;; #(
*)
# `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
;;
- esac;
-} |
+ esac |
+ sort
+) |
sed '
+ /^ac_cv_env_/b end
t clear
- : clear
+ :clear
s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
t end
- /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- : end' >>confcache
-if diff $cache_file confcache >/dev/null 2>&1; then :; else
- if test -w $cache_file; then
- test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+ s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+ :end' >>confcache
+if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
+ if test -w "$cache_file"; then
+ test "x$cache_file" != "x/dev/null" &&
+ { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+$as_echo "$as_me: updating cache $cache_file" >&6;}
cat confcache >$cache_file
else
- echo "not updating unwritable cache $cache_file"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
fi
fi
rm -f confcache
@@ -9577,73 +8533,57 @@ test "x$prefix" = xNONE && prefix=$ac_default_prefix
# Let make expand exec_prefix.
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/;
-s/:*\${srcdir}:*/:/;
-s/:*@srcdir@:*/:/;
-s/^\([^=]*=[ ]*\):*/\1/;
-s/:*$//;
-s/^[^=]*=[ ]*$//;
-}'
-fi
-
DEFS=-DHAVE_CONFIG_H
ac_libobjs=
ac_ltlibobjs=
for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
# 1. Remove the extension, and $U if already installed.
- ac_i=`echo "$ac_i" |
- sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
- # 2. Add them.
- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
+ ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
+ ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+ # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
+ # will be set to the directory where LIBOBJS objects are built.
+ as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+ as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
done
LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
+ if test -n "$EXEEXT"; then
+ am__EXEEXT_TRUE=
+ am__EXEEXT_FALSE='#'
+else
+ am__EXEEXT_TRUE='#'
+ am__EXEEXT_FALSE=
+fi
+
if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
- { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error "conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error "conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error "conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
- { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
- { (exit 1); exit 1; }; }
+ as_fn_error "conditional \"am__fastdepCXX\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
: ${CONFIG_STATUS=./config.status}
+ac_write_fail=0
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+as_write_fail=0
+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
#! $SHELL
# Generated by $as_me.
# Run this file to recreate the current configuration.
@@ -9653,81 +8593,252 @@ cat >$CONFIG_STATUS <<_ACEOF
debug=false
ac_cs_recheck=false
ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-## --------------------- ##
-## M4sh Initialization. ##
-## --------------------- ##
+SHELL=\${CONFIG_SHELL-$SHELL}
+export SHELL
+_ASEOF
+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+# Be more Bourne compatible
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
- # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
-elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
- set -o posix
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in #(
+ *posix*) :
+ set -o posix ;; #(
+ *) :
+ ;;
+esac
fi
-DUALCASE=1; export DUALCASE # for MKS sh
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
- as_unset=unset
-else
- as_unset=false
+
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='print -r --'
+ as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+ as_echo='printf %s\n'
+ as_echo_n='printf %s'
+else
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+ as_echo_n='/usr/ucb/echo -n'
+ else
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+ as_echo_n_body='eval
+ arg=$1;
+ case $arg in #(
+ *"$as_nl"*)
+ expr "X$arg" : "X\\(.*\\)$as_nl";
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+ esac;
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+ '
+ export as_echo_n_body
+ as_echo_n='sh -c $as_echo_n_body as_echo'
+ fi
+ export as_echo_body
+ as_echo='sh -c $as_echo_body as_echo'
+fi
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ PATH_SEPARATOR=:
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+ PATH_SEPARATOR=';'
+ }
fi
-# Work around bugs in pre-3.0 UWIN ksh.
-$as_unset ENV MAIL MAILPATH
+# IFS
+# We need space, tab and new line, in precisely that order. Quoting is
+# there to prevent editors from complaining about space-tab.
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
+# splitting by setting IFS to empty value.)
+IFS=" "" $as_nl"
+
+# Find who we are. Look in the path if we contain no directory separator.
+case $0 in #((
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+ done
+IFS=$as_save_IFS
+
+ ;;
+esac
+# We did not find ourselves, most probably we were run as `sh COMMAND'
+# in which case we are not to be found in the path.
+if test "x$as_myself" = x; then
+ as_myself=$0
+fi
+if test ! -f "$as_myself"; then
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+ exit 1
+fi
+
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there. '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
PS1='$ '
PS2='> '
PS4='+ '
# NLS nuisances.
-for as_var in \
- LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
- LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
- LC_TELEPHONE LC_TIME
-do
- if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
- eval $as_var=C; export $as_var
- else
- $as_unset $as_var
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+
+# as_fn_error ERROR [LINENO LOG_FD]
+# ---------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with status $?, using 1 if that was 0.
+as_fn_error ()
+{
+ as_status=$?; test $as_status -eq 0 && as_status=1
+ if test "$3"; then
+ as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3
fi
-done
+ $as_echo "$as_me: error: $1" >&2
+ as_fn_exit $as_status
+} # as_fn_error
+
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+ return $1
+} # as_fn_set_status
-# Required to use basename.
-if expr a : '\(a\)' >/dev/null 2>&1; then
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+ set +e
+ as_fn_set_status $1
+ exit $1
+} # as_fn_exit
+
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+ { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+ eval 'as_fn_append ()
+ {
+ eval $1+=\$2
+ }'
+else
+ as_fn_append ()
+ {
+ eval $1=\$$1\$2
+ }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+ eval 'as_fn_arith ()
+ {
+ as_val=$(( $* ))
+ }'
+else
+ as_fn_arith ()
+ {
+ as_val=`expr "$@" || test $? -eq 1`
+ }
+fi # as_fn_arith
+
+
+if expr a : '\(a\)' >/dev/null 2>&1 &&
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
as_expr=expr
else
as_expr=false
fi
-if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
as_basename=basename
else
as_basename=false
fi
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+ as_dirname=dirname
+else
+ as_dirname=false
+fi
-# Name of the executable.
-as_me=`$as_basename "$0" ||
+as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)$' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
- /^X\/\(\/\/\)$/{ s//\1/; q; }
- /^X\/\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\/\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
-
-# PATH needs CR, and LINENO needs CR and PATH.
# Avoid depending upon Character Ranges.
as_cr_letters='abcdefghijklmnopqrstuvwxyz'
as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
@@ -9735,148 +8846,123 @@ as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-
-
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" || {
- # Find who we are. Look in the path if we contain no path at all
- # relative or not.
- case $0 in
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-done
-
- ;;
- esac
- # We did not find ourselves, most probably we were run as `sh COMMAND'
- # in which case we are not to be found in the path.
- if test "x$as_myself" = x; then
- as_myself=$0
- fi
- if test ! -f "$as_myself"; then
- { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
-echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
- { (exit 1); exit 1; }; }
- fi
- case $CONFIG_SHELL in
- '')
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for as_base in sh bash ksh sh5; do
- case $as_dir in
- /*)
- if ("$as_dir/$as_base" -c '
- as_lineno_1=$LINENO
- as_lineno_2=$LINENO
- as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
- test "x$as_lineno_1" != "x$as_lineno_2" &&
- test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
- $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
- $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
- CONFIG_SHELL=$as_dir/$as_base
- export CONFIG_SHELL
- exec "$CONFIG_SHELL" "$0" ${1+"$@"}
- fi;;
- esac
- done
-done
-;;
- esac
-
- # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
- # uniformly replaced by the line number. The first 'sed' inserts a
- # line-number line before each line; the second 'sed' does the real
- # work. The second script uses 'N' to pair each line-number line
- # with the numbered line, and appends trailing '-' during
- # substitution so that $LINENO is not a special case at line end.
- # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
- # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
- sed '=' <$as_myself |
- sed '
- N
- s,$,-,
- : loop
- s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
- t loop
- s,-$,,
- s,^['$as_cr_digits']*\n,,
- ' >$as_me.lineno &&
- chmod +x $as_me.lineno ||
- { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
-echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
- { (exit 1); exit 1; }; }
-
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensible to this).
- . ./$as_me.lineno
- # Exit status is that of the last command.
- exit
-}
-
-
-case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
- *c*,-n*) ECHO_N= ECHO_C='
-' ECHO_T=' ' ;;
- *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
- *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in #(((((
+-n*)
+ case `echo 'xy\c'` in
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
+ xy) ECHO_C='\c';;
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
+ ECHO_T=' ';;
+ esac;;
+*)
+ ECHO_N='-n';;
esac
-if expr a : '\(a\)' >/dev/null 2>&1; then
- as_expr=expr
+rm -f conf$$ conf$$.exe conf$$.file
+if test -d conf$$.dir; then
+ rm -f conf$$.dir/conf$$.file
else
- as_expr=false
+ rm -f conf$$.dir
+ mkdir conf$$.dir 2>/dev/null
fi
-
-rm -f conf$$ conf$$.exe conf$$.file
-echo >conf$$.file
-if ln -s conf$$.file conf$$ 2>/dev/null; then
- # We could just check for DJGPP; but this test a) works b) is more generic
- # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
- if test -f conf$$.exe; then
- # Don't use ln at all; we don't have any links
- as_ln_s='cp -p'
- else
+if (echo >conf$$.file) 2>/dev/null; then
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
as_ln_s='ln -s'
+ # ... but there are two gotchas:
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
+ # In both cases, we have to default to `cp -p'.
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+ as_ln_s='cp -p'
+ elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+ else
+ as_ln_s='cp -p'
fi
-elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
else
as_ln_s='cp -p'
fi
-rm -f conf$$ conf$$.exe conf$$.file
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
+
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+ case $as_dir in #(
+ -*) as_dir=./$as_dir;;
+ esac
+ test -d "$as_dir" || eval $as_mkdir_p || {
+ as_dirs=
+ while :; do
+ case $as_dir in #(
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+ *) as_qdir=$as_dir;;
+ esac
+ as_dirs="'$as_qdir' $as_dirs"
+ as_dir=`$as_dirname -- "$as_dir" ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ test -d "$as_dir" && break
+ done
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
+ } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
if mkdir -p . 2>/dev/null; then
- as_mkdir_p=:
+ as_mkdir_p='mkdir -p "$as_dir"'
else
test -d ./-p && rmdir ./-p
as_mkdir_p=false
fi
-as_executable_p="test -f"
+if test -x / >/dev/null 2>&1; then
+ as_test_x='test -x'
+else
+ if ls -dL / >/dev/null 2>&1; then
+ as_ls_L_option=L
+ else
+ as_ls_L_option=
+ fi
+ as_test_x='
+ eval sh -c '\''
+ if test -d "$1"; then
+ test -d "$1/.";
+ else
+ case $1 in #(
+ -*)set "./$1";;
+ esac;
+ case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
+ ???[sx]*):;;*)false;;esac;fi
+ '\'' sh
+ '
+fi
+as_executable_p=$as_test_x
# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -9885,31 +8971,20 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-# IFS
-# We need space, tab and new line, in precisely that order.
-as_nl='
-'
-IFS=" $as_nl"
-
-# CDPATH.
-$as_unset CDPATH
-
exec 6>&1
+## ----------------------------------- ##
+## Main body of $CONFIG_STATUS script. ##
+## ----------------------------------- ##
+_ASEOF
+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-# Open the log real soon, to keep \$[0] and so on meaningful, and to
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# Save the log message, to keep $0 and so on meaningful, and to
# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling. Logging --version etc. is OK.
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
-} >&5
-cat >&5 <<_CSEOF
-
-This file was extended by the fast lexical analyser generator $as_me 2.5.35, which was
-generated by GNU Autoconf 2.59. Invocation command line was
+# values after options handling.
+ac_log="
+This file was extended by the fast lexical analyser generator $as_me 2.5.37, which was
+generated by GNU Autoconf 2.65. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
CONFIG_HEADERS = $CONFIG_HEADERS
@@ -9917,45 +8992,47 @@ generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_COMMANDS = $CONFIG_COMMANDS
$ $0 $@
-_CSEOF
-echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
-echo >&5
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
+"
+
_ACEOF
-# Files that config.status was made for.
-if test -n "$ac_config_files"; then
- echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
-fi
+case $ac_config_files in *"
+"*) set x $ac_config_files; shift; ac_config_files=$*;;
+esac
-if test -n "$ac_config_headers"; then
- echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
-fi
+case $ac_config_headers in *"
+"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
+esac
-if test -n "$ac_config_links"; then
- echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
-fi
-if test -n "$ac_config_commands"; then
- echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
-fi
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+# Files that config.status was made for.
+config_files="$ac_config_files"
+config_headers="$ac_config_headers"
+config_commands="$ac_config_commands"
-cat >>$CONFIG_STATUS <<\_ACEOF
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
+\`$as_me' instantiates files and other configuration actions
+from templates according to the current configuration. Unless the files
+and actions are specified as TAGs, all are instantiated by default.
-Usage: $0 [OPTIONS] [FILE]...
+Usage: $0 [OPTION]... [TAG]...
-h, --help print this help, then exit
- -V, --version print version number, then exit
- -q, --quiet do not print progress messages
+ -V, --version print version number and configuration settings, then exit
+ --config print configuration, then exit
+ -q, --quiet, --silent
+ do not print progress messages
-d, --debug don't remove temporary files
--recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
- --header=FILE[:TEMPLATE]
- instantiate the configuration header FILE
+ --file=FILE[:TEMPLATE]
+ instantiate the configuration file FILE
+ --header=FILE[:TEMPLATE]
+ instantiate the configuration header FILE
Configuration files:
$config_files
@@ -9966,84 +9043,86 @@ $config_headers
Configuration commands:
$config_commands
-Report bugs to <bug-autoconf@gnu.org>."
-_ACEOF
+Report bugs to <flex-help@lists.sourceforge.net>."
-cat >>$CONFIG_STATUS <<_ACEOF
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-the fast lexical analyser generator config.status 2.5.35
-configured by $0, generated by GNU Autoconf 2.59,
- with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+the fast lexical analyser generator config.status 2.5.37
+configured by $0, generated by GNU Autoconf 2.65,
+ with options \\"\$ac_cs_config\\"
-Copyright (C) 2003 Free Software Foundation, Inc.
+Copyright (C) 2009 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
-srcdir=$srcdir
-INSTALL="$INSTALL"
+
+ac_pwd='$ac_pwd'
+srcdir='$srcdir'
+INSTALL='$INSTALL'
+MKDIR_P='$MKDIR_P'
+AWK='$AWK'
+test -n "\$AWK" || AWK=awk
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value. By we need to know if files were specified by the user.
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# The default lists apply if the user does not specify any file.
ac_need_defaults=:
while test $# != 0
do
case $1 in
--*=*)
- ac_option=`expr "x$1" : 'x\([^=]*\)='`
- ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+ ac_option=`expr "X$1" : 'X\([^=]*\)='`
+ ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
ac_shift=:
;;
- -*)
+ *)
ac_option=$1
ac_optarg=$2
ac_shift=shift
;;
- *) # This is not an option, so the user has probably given explicit
- # arguments.
- ac_option=$1
- ac_need_defaults=false;;
esac
case $ac_option in
# Handling of the options.
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
ac_cs_recheck=: ;;
- --version | --vers* | -V )
- echo "$ac_cs_version"; exit 0 ;;
- --he | --h)
- # Conflict between --help and --header
- { { echo "$as_me:$LINENO: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: ambiguous option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; };;
- --help | --hel | -h )
- echo "$ac_cs_usage"; exit 0 ;;
- --debug | --d* | -d )
+ --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
+ $as_echo "$ac_cs_version"; exit ;;
+ --config | --confi | --conf | --con | --co | --c )
+ $as_echo "$ac_cs_config"; exit ;;
+ --debug | --debu | --deb | --de | --d | -d )
debug=: ;;
--file | --fil | --fi | --f )
$ac_shift
- CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ as_fn_append CONFIG_FILES " '$ac_optarg'"
ac_need_defaults=false;;
--header | --heade | --head | --hea )
$ac_shift
- CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
+ case $ac_optarg in
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ as_fn_append CONFIG_HEADERS " '$ac_optarg'"
ac_need_defaults=false;;
+ --he | --h)
+ # Conflict between --help and --header
+ as_fn_error "ambiguous option: \`$1'
+Try \`$0 --help' for more information.";;
+ --help | --hel | -h )
+ $as_echo "$ac_cs_usage"; exit ;;
-q | -quiet | --quiet | --quie | --qui | --qu | --q \
| -silent | --silent | --silen | --sile | --sil | --si | --s)
ac_cs_silent=: ;;
# This is an error.
- -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&5
-echo "$as_me: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2;}
- { (exit 1); exit 1; }; } ;;
+ -*) as_fn_error "unrecognized option: \`$1'
+Try \`$0 --help' for more information." ;;
- *) ac_config_targets="$ac_config_targets $1" ;;
+ *) as_fn_append ac_config_targets " $1"
+ ac_need_defaults=false ;;
esac
shift
@@ -10057,19 +9136,32 @@ if $ac_cs_silent; then
fi
_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
if \$ac_cs_recheck; then
- echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
- exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+ shift
+ \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+ CONFIG_SHELL='$SHELL'
+ export CONFIG_SHELL
+ exec "\$@"
fi
_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+exec 5>>config.log
+{
+ echo
+ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
+## Running $as_me. ##
+_ASBOX
+ $as_echo "$ac_log"
+} >&5
-cat >>$CONFIG_STATUS <<_ACEOF
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
#
-# INIT-COMMANDS section.
+# INIT-COMMANDS
#
-
# Capture the value of obsolete ALL_LINGUAS because we need it to compute
# POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
# from automake.
@@ -10081,78 +9173,77 @@ AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF
+# Handling of arguments.
for ac_config_target in $ac_config_targets
do
- case "$ac_config_target" in
- # Handling of arguments.
- "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
- "examples/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
- "examples/fastwc/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/fastwc/Makefile" ;;
- "examples/manual/Makefile" ) CONFIG_FILES="$CONFIG_FILES examples/manual/Makefile" ;;
- "m4/Makefile" ) CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;;
- "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
- "tools/Makefile" ) CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;;
- "tests/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
- "tests/TEMPLATE/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/TEMPLATE/Makefile" ;;
- "tests/test-array-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-array-nr/Makefile" ;;
- "tests/test-array-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-array-r/Makefile" ;;
- "tests/test-basic-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-basic-nr/Makefile" ;;
- "tests/test-basic-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-basic-r/Makefile" ;;
- "tests/test-bison-yylloc/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-bison-yylloc/Makefile" ;;
- "tests/test-bison-yylval/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-bison-yylval/Makefile" ;;
- "tests/test-c-cpp-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-c-cpp-nr/Makefile" ;;
- "tests/test-c-cpp-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-c-cpp-r/Makefile" ;;
- "tests/test-header-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-header-nr/Makefile" ;;
- "tests/test-header-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-header-r/Makefile" ;;
- "tests/test-include-by-buffer/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-include-by-buffer/Makefile" ;;
- "tests/test-include-by-push/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-include-by-push/Makefile" ;;
- "tests/test-include-by-reentrant/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-include-by-reentrant/Makefile" ;;
- "tests/test-multiple-scanners-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-multiple-scanners-nr/Makefile" ;;
- "tests/test-multiple-scanners-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-multiple-scanners-r/Makefile" ;;
- "tests/test-noansi-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-noansi-nr/Makefile" ;;
- "tests/test-noansi-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-noansi-r/Makefile" ;;
- "tests/test-prefix-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-prefix-nr/Makefile" ;;
- "tests/test-prefix-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-prefix-r/Makefile" ;;
- "tests/test-pthread/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-pthread/Makefile" ;;
- "tests/test-string-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-string-nr/Makefile" ;;
- "tests/test-string-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-string-r/Makefile" ;;
- "tests/test-yyextra/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-yyextra/Makefile" ;;
- "tests/test-alloc-extra/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-alloc-extra/Makefile" ;;
- "tests/test-lineno-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-lineno-nr/Makefile" ;;
- "tests/test-lineno-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-lineno-r/Makefile" ;;
- "tests/test-linedir-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-linedir-r/Makefile" ;;
- "tests/test-debug-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-debug-r/Makefile" ;;
- "tests/test-debug-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-debug-nr/Makefile" ;;
- "tests/test-mem-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-mem-nr/Makefile" ;;
- "tests/test-mem-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-mem-r/Makefile" ;;
- "tests/test-posix/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-posix/Makefile" ;;
- "tests/test-posixly-correct/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-posixly-correct/Makefile" ;;
- "tests/test-table-opts/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-table-opts/Makefile" ;;
- "tests/test-c++-basic/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-c++-basic/Makefile" ;;
- "tests/test-bison-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-bison-nr/Makefile" ;;
- "tests/test-reject/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-reject/Makefile" ;;
- "tests/test-c++-multiple-scanners/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-c++-multiple-scanners/Makefile" ;;
- "tests/test-top/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-top/Makefile" ;;
- "tests/test-rescan-nr/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-rescan-nr/Makefile" ;;
- "tests/test-rescan-r/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-rescan-r/Makefile" ;;
- "tests/test-quotes/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-quotes/Makefile" ;;
- "tests/test-ccl/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-ccl/Makefile" ;;
- "tests/test-extended/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-extended/Makefile" ;;
- "tests/test-c++-yywrap/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-c++-yywrap/Makefile" ;;
- "tests/test-concatenated-options/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/test-concatenated-options/Makefile" ;;
- "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
- "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
- "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h:conf.in" ;;
- *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
- { (exit 1); exit 1; }; };;
+ case $ac_config_target in
+ "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:conf.in" ;;
+ "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
+ "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+ "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
+ "examples/Makefile") CONFIG_FILES="$CONFIG_FILES examples/Makefile" ;;
+ "examples/fastwc/Makefile") CONFIG_FILES="$CONFIG_FILES examples/fastwc/Makefile" ;;
+ "examples/manual/Makefile") CONFIG_FILES="$CONFIG_FILES examples/manual/Makefile" ;;
+ "lib/Makefile") CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;;
+ "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
+ "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;;
+ "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
+ "tests/TEMPLATE/Makefile") CONFIG_FILES="$CONFIG_FILES tests/TEMPLATE/Makefile" ;;
+ "tests/test-array-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-array-nr/Makefile" ;;
+ "tests/test-array-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-array-r/Makefile" ;;
+ "tests/test-basic-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-basic-nr/Makefile" ;;
+ "tests/test-basic-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-basic-r/Makefile" ;;
+ "tests/test-bison-yylloc/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-bison-yylloc/Makefile" ;;
+ "tests/test-bison-yylval/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-bison-yylval/Makefile" ;;
+ "tests/test-c-cpp-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-c-cpp-nr/Makefile" ;;
+ "tests/test-c-cpp-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-c-cpp-r/Makefile" ;;
+ "tests/test-header-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-header-nr/Makefile" ;;
+ "tests/test-header-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-header-r/Makefile" ;;
+ "tests/test-include-by-buffer/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-include-by-buffer/Makefile" ;;
+ "tests/test-include-by-push/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-include-by-push/Makefile" ;;
+ "tests/test-include-by-reentrant/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-include-by-reentrant/Makefile" ;;
+ "tests/test-multiple-scanners-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-multiple-scanners-nr/Makefile" ;;
+ "tests/test-multiple-scanners-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-multiple-scanners-r/Makefile" ;;
+ "tests/test-noansi-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-noansi-nr/Makefile" ;;
+ "tests/test-noansi-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-noansi-r/Makefile" ;;
+ "tests/test-prefix-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-prefix-nr/Makefile" ;;
+ "tests/test-prefix-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-prefix-r/Makefile" ;;
+ "tests/test-pthread/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-pthread/Makefile" ;;
+ "tests/test-string-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-string-nr/Makefile" ;;
+ "tests/test-string-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-string-r/Makefile" ;;
+ "tests/test-yyextra/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-yyextra/Makefile" ;;
+ "tests/test-alloc-extra/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-alloc-extra/Makefile" ;;
+ "tests/test-lineno-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-lineno-nr/Makefile" ;;
+ "tests/test-lineno-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-lineno-r/Makefile" ;;
+ "tests/test-linedir-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-linedir-r/Makefile" ;;
+ "tests/test-debug-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-debug-r/Makefile" ;;
+ "tests/test-debug-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-debug-nr/Makefile" ;;
+ "tests/test-mem-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-mem-nr/Makefile" ;;
+ "tests/test-mem-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-mem-r/Makefile" ;;
+ "tests/test-posix/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-posix/Makefile" ;;
+ "tests/test-posixly-correct/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-posixly-correct/Makefile" ;;
+ "tests/test-table-opts/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-table-opts/Makefile" ;;
+ "tests/test-c++-basic/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-c++-basic/Makefile" ;;
+ "tests/test-bison-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-bison-nr/Makefile" ;;
+ "tests/test-reject/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-reject/Makefile" ;;
+ "tests/test-c++-multiple-scanners/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-c++-multiple-scanners/Makefile" ;;
+ "tests/test-top/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-top/Makefile" ;;
+ "tests/test-rescan-nr/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-rescan-nr/Makefile" ;;
+ "tests/test-rescan-r/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-rescan-r/Makefile" ;;
+ "tests/test-quotes/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-quotes/Makefile" ;;
+ "tests/test-ccl/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-ccl/Makefile" ;;
+ "tests/test-extended/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-extended/Makefile" ;;
+ "tests/test-c++-yywrap/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-c++-yywrap/Makefile" ;;
+ "tests/test-concatenated-options/Makefile") CONFIG_FILES="$CONFIG_FILES tests/test-concatenated-options/Makefile" ;;
+
+ *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac
done
+
# If the user did not use the arguments to specify the items to instantiate,
# then the envvar interface is used. Set only those that are not.
# We use the long form for the default assignment because of an extremely
@@ -10164,753 +9255,574 @@ if $ac_need_defaults; then
fi
# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason to put it here, and in addition,
+# simply because there is no reason against having it here, and in addition,
# creating and moving files from /tmp can sometimes cause problems.
-# Create a temporary directory, and hook for its removal unless debugging.
+# Hook for its removal unless debugging.
+# Note that there is a small window in which the directory will not be cleaned:
+# after its creation but before its name has been assigned to `$tmp'.
$debug ||
{
- trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
- trap '{ (exit 1); exit 1; }' 1 2 13 15
+ tmp=
+ trap 'exit_status=$?
+ { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+' 0
+ trap 'as_fn_exit 1' 1 2 13 15
}
-
# Create a (secure) tmp directory for tmp files.
{
- tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
+ tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
test -n "$tmp" && test -d "$tmp"
} ||
{
- tmp=./confstat$$-$RANDOM
- (umask 077 && mkdir $tmp)
-} ||
+ tmp=./conf$$-$RANDOM
+ (umask 077 && mkdir "$tmp")
+} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5
+
+# Set up the scripts for CONFIG_FILES section.
+# No need to generate them if there are no CONFIG_FILES.
+# This happens for instance with `./config.status config.h'.
+if test -n "$CONFIG_FILES"; then
+
+
+ac_cr=`echo X | tr X '\015'`
+# On cygwin, bash can eat \r inside `` if the user requested igncr.
+# But we know of no other shell where ac_cr would be empty at this
+# point, so we can use a bashism as a fallback.
+if test "x$ac_cr" = x; then
+ eval ac_cr=\$\'\\r\'
+fi
+ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
+if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
+ ac_cs_awk_cr='\r'
+else
+ ac_cs_awk_cr=$ac_cr
+fi
+
+echo 'BEGIN {' >"$tmp/subs1.awk" &&
+_ACEOF
+
+
{
- echo "$me: cannot create a temporary directory in ." >&2
- { (exit 1); exit 1; }
+ echo "cat >conf$$subs.awk <<_ACEOF" &&
+ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
+ echo "_ACEOF"
+} >conf$$subs.sh ||
+ as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'`
+ac_delim='%!_!# '
+for ac_last_try in false false false false false :; do
+ . ./conf$$subs.sh ||
+ as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
+
+ ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
+ if test $ac_delim_n = $ac_delim_num; then
+ break
+ elif $ac_last_try; then
+ as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5
+ else
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+ fi
+done
+rm -f conf$$subs.sh
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+cat >>"\$tmp/subs1.awk" <<\\_ACAWK &&
+_ACEOF
+sed -n '
+h
+s/^/S["/; s/!.*/"]=/
+p
+g
+s/^[^!]*!//
+:repl
+t repl
+s/'"$ac_delim"'$//
+t delim
+:nl
+h
+s/\(.\{148\}\)..*/\1/
+t more1
+s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
+p
+n
+b repl
+:more1
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t nl
+:delim
+h
+s/\(.\{148\}\)..*/\1/
+t more2
+s/["\\]/\\&/g; s/^/"/; s/$/"/
+p
+b
+:more2
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t delim
+' <conf$$subs.awk | sed '
+/^[^""]/{
+ N
+ s/\n//
}
+' >>$CONFIG_STATUS || ac_write_fail=1
+rm -f conf$$subs.awk
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+_ACAWK
+cat >>"\$tmp/subs1.awk" <<_ACAWK &&
+ for (key in S) S_is_set[key] = 1
+ FS = ""
-_ACEOF
+}
+{
+ line = $ 0
+ nfields = split(line, field, "@")
+ substed = 0
+ len = length(field[1])
+ for (i = 2; i < nfields; i++) {
+ key = field[i]
+ keylen = length(key)
+ if (S_is_set[key]) {
+ value = S[key]
+ line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
+ len += length(value) + length(field[++i])
+ substed = 1
+ } else
+ len += 1 + keylen
+ }
-cat >>$CONFIG_STATUS <<_ACEOF
+ print line
+}
-#
-# CONFIG_FILES section.
-#
+_ACAWK
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
+ sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
+else
+ cat
+fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \
+ || as_fn_error "could not setup config files machinery" "$LINENO" 5
+_ACEOF
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
-if test -n "\$CONFIG_FILES"; then
- # Protect against being on the right side of a sed subst in config.status.
- sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
- s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
-s,@SHELL@,$SHELL,;t t
-s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
-s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
-s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
-s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
-s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
-s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
-s,@exec_prefix@,$exec_prefix,;t t
-s,@prefix@,$prefix,;t t
-s,@program_transform_name@,$program_transform_name,;t t
-s,@bindir@,$bindir,;t t
-s,@sbindir@,$sbindir,;t t
-s,@libexecdir@,$libexecdir,;t t
-s,@datadir@,$datadir,;t t
-s,@sysconfdir@,$sysconfdir,;t t
-s,@sharedstatedir@,$sharedstatedir,;t t
-s,@localstatedir@,$localstatedir,;t t
-s,@libdir@,$libdir,;t t
-s,@includedir@,$includedir,;t t
-s,@oldincludedir@,$oldincludedir,;t t
-s,@infodir@,$infodir,;t t
-s,@mandir@,$mandir,;t t
-s,@build_alias@,$build_alias,;t t
-s,@host_alias@,$host_alias,;t t
-s,@target_alias@,$target_alias,;t t
-s,@DEFS@,$DEFS,;t t
-s,@ECHO_C@,$ECHO_C,;t t
-s,@ECHO_N@,$ECHO_N,;t t
-s,@ECHO_T@,$ECHO_T,;t t
-s,@LIBS@,$LIBS,;t t
-s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
-s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
-s,@INSTALL_DATA@,$INSTALL_DATA,;t t
-s,@CYGPATH_W@,$CYGPATH_W,;t t
-s,@PACKAGE@,$PACKAGE,;t t
-s,@VERSION@,$VERSION,;t t
-s,@ACLOCAL@,$ACLOCAL,;t t
-s,@AUTOCONF@,$AUTOCONF,;t t
-s,@AUTOMAKE@,$AUTOMAKE,;t t
-s,@AUTOHEADER@,$AUTOHEADER,;t t
-s,@MAKEINFO@,$MAKEINFO,;t t
-s,@install_sh@,$install_sh,;t t
-s,@STRIP@,$STRIP,;t t
-s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
-s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
-s,@mkdir_p@,$mkdir_p,;t t
-s,@AWK@,$AWK,;t t
-s,@SET_MAKE@,$SET_MAKE,;t t
-s,@am__leading_dot@,$am__leading_dot,;t t
-s,@AMTAR@,$AMTAR,;t t
-s,@am__tar@,$am__tar,;t t
-s,@am__untar@,$am__untar,;t t
-s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t
-s,@USE_NLS@,$USE_NLS,;t t
-s,@MSGFMT@,$MSGFMT,;t t
-s,@GMSGFMT@,$GMSGFMT,;t t
-s,@XGETTEXT@,$XGETTEXT,;t t
-s,@MSGMERGE@,$MSGMERGE,;t t
-s,@CC@,$CC,;t t
-s,@CFLAGS@,$CFLAGS,;t t
-s,@LDFLAGS@,$LDFLAGS,;t t
-s,@CPPFLAGS@,$CPPFLAGS,;t t
-s,@ac_ct_CC@,$ac_ct_CC,;t t
-s,@EXEEXT@,$EXEEXT,;t t
-s,@OBJEXT@,$OBJEXT,;t t
-s,@DEPDIR@,$DEPDIR,;t t
-s,@am__include@,$am__include,;t t
-s,@am__quote@,$am__quote,;t t
-s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
-s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
-s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
-s,@CCDEPMODE@,$CCDEPMODE,;t t
-s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
-s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
-s,@build@,$build,;t t
-s,@build_cpu@,$build_cpu,;t t
-s,@build_vendor@,$build_vendor,;t t
-s,@build_os@,$build_os,;t t
-s,@host@,$host,;t t
-s,@host_cpu@,$host_cpu,;t t
-s,@host_vendor@,$host_vendor,;t t
-s,@host_os@,$host_os,;t t
-s,@LIBICONV@,$LIBICONV,;t t
-s,@LTLIBICONV@,$LTLIBICONV,;t t
-s,@INTLLIBS@,$INTLLIBS,;t t
-s,@LIBINTL@,$LIBINTL,;t t
-s,@LTLIBINTL@,$LTLIBINTL,;t t
-s,@POSUB@,$POSUB,;t t
-s,@YACC@,$YACC,;t t
-s,@LEX@,$LEX,;t t
-s,@LEXLIB@,$LEXLIB,;t t
-s,@LEX_OUTPUT_ROOT@,$LEX_OUTPUT_ROOT,;t t
-s,@CXX@,$CXX,;t t
-s,@CXXFLAGS@,$CXXFLAGS,;t t
-s,@ac_ct_CXX@,$ac_ct_CXX,;t t
-s,@CXXDEPMODE@,$CXXDEPMODE,;t t
-s,@am__fastdepCXX_TRUE@,$am__fastdepCXX_TRUE,;t t
-s,@am__fastdepCXX_FALSE@,$am__fastdepCXX_FALSE,;t t
-s,@LN_S@,$LN_S,;t t
-s,@RANLIB@,$RANLIB,;t t
-s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
-s,@BISON@,$BISON,;t t
-s,@HELP2MAN@,$HELP2MAN,;t t
-s,@M4@,$M4,;t t
-s,@INDENT@,$INDENT,;t t
-s,@ALLOCA@,$ALLOCA,;t t
-s,@CPP@,$CPP,;t t
-s,@EGREP@,$EGREP,;t t
-s,@LIBOBJS@,$LIBOBJS,;t t
-s,@LTLIBOBJS@,$LTLIBOBJS,;t t
-CEOF
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=/{
+s/:*\$(srcdir):*/:/
+s/:*\${srcdir}:*/:/
+s/:*@srcdir@:*/:/
+s/^\([^=]*=[ ]*\):*/\1/
+s/:*$//
+s/^[^=]*=[ ]*$//
+}'
+fi
+
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+fi # test -n "$CONFIG_FILES"
+# Set up the scripts for CONFIG_HEADERS section.
+# No need to generate them if there are no CONFIG_HEADERS.
+# This happens for instance with `./config.status Makefile'.
+if test -n "$CONFIG_HEADERS"; then
+cat >"$tmp/defines.awk" <<\_ACAWK ||
+BEGIN {
_ACEOF
- cat >>$CONFIG_STATUS <<\_ACEOF
- # Split the substitutions into bite-sized pieces for seds with
- # small command number limits, like on Digital OSF/1 and HP-UX.
- ac_max_sed_lines=48
- ac_sed_frag=1 # Number of current file.
- ac_beg=1 # First line for current file.
- ac_end=$ac_max_sed_lines # Line after last line for current file.
- ac_more_lines=:
- ac_sed_cmds=
- while $ac_more_lines; do
- if test $ac_beg -gt 1; then
- sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- else
- sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
- fi
- if test ! -s $tmp/subs.frag; then
- ac_more_lines=false
- else
- # The purpose of the label and of the branching condition is to
- # speed up the sed processing (if there are no `@' at all, there
- # is no need to browse any of the substitutions).
- # These are the two extra sed commands mentioned above.
- (echo ':t
- /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
- else
- ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
- fi
- ac_sed_frag=`expr $ac_sed_frag + 1`
- ac_beg=$ac_end
- ac_end=`expr $ac_end + $ac_max_sed_lines`
- fi
- done
- if test -z "$ac_sed_cmds"; then
- ac_sed_cmds=cat
+# Transform confdefs.h into an awk script `defines.awk', embedded as
+# here-document in config.status, that substitutes the proper values into
+# config.h.in to produce config.h.
+
+# Create a delimiter string that does not exist in confdefs.h, to ease
+# handling of long lines.
+ac_delim='%!_!# '
+for ac_last_try in false false :; do
+ ac_t=`sed -n "/$ac_delim/p" confdefs.h`
+ if test -z "$ac_t"; then
+ break
+ elif $ac_last_try; then
+ as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5
+ else
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
fi
-fi # test -n "$CONFIG_FILES"
+done
+# For the awk script, D is an array of macro values keyed by name,
+# likewise P contains macro parameters if any. Preserve backslash
+# newline sequences.
+
+ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
+sed -n '
+s/.\{148\}/&'"$ac_delim"'/g
+t rset
+:rset
+s/^[ ]*#[ ]*define[ ][ ]*/ /
+t def
+d
+:def
+s/\\$//
+t bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3"/p
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
+d
+:bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3\\\\\\n"\\/p
+t cont
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
+t cont
+d
+:cont
+n
+s/.\{148\}/&'"$ac_delim"'/g
+t clear
+:clear
+s/\\$//
+t bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/"/p
+d
+:bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
+b cont
+' <confdefs.h | sed '
+s/'"$ac_delim"'/"\\\
+"/g' >>$CONFIG_STATUS || ac_write_fail=1
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ for (key in D) D_is_set[key] = 1
+ FS = ""
+}
+/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
+ line = \$ 0
+ split(line, arg, " ")
+ if (arg[1] == "#") {
+ defundef = arg[2]
+ mac1 = arg[3]
+ } else {
+ defundef = substr(arg[1], 2)
+ mac1 = arg[2]
+ }
+ split(mac1, mac2, "(") #)
+ macro = mac2[1]
+ prefix = substr(line, 1, index(line, defundef) - 1)
+ if (D_is_set[macro]) {
+ # Preserve the white space surrounding the "#".
+ print prefix "define", macro P[macro] D[macro]
+ next
+ } else {
+ # Replace #undef with comments. This is necessary, for example,
+ # in the case of _POSIX_SOURCE, which is predefined and required
+ # on some systems where configure will not decide to define it.
+ if (defundef == "undef") {
+ print "/*", prefix defundef, macro, "*/"
+ next
+ }
+ }
+}
+{ print }
+_ACAWK
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
- case $ac_file in
- - | *:- | *:-:* ) # input from stdin
- cat >$tmp/stdin
- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+ as_fn_error "could not setup config headers machinery" "$LINENO" 5
+fi # test -n "$CONFIG_HEADERS"
+
+
+eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
+shift
+for ac_tag
+do
+ case $ac_tag in
+ :[FHLC]) ac_mode=$ac_tag; continue;;
esac
+ case $ac_mode$ac_tag in
+ :[FHL]*:*);;
+ :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;;
+ :[FH]-) ac_tag=-:-;;
+ :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
+ esac
+ ac_save_IFS=$IFS
+ IFS=:
+ set x $ac_tag
+ IFS=$ac_save_IFS
+ shift
+ ac_file=$1
+ shift
- # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+ case $ac_mode in
+ :L) ac_source=$1;;
+ :[FH])
+ ac_file_inputs=
+ for ac_f
+ do
+ case $ac_f in
+ -) ac_f="$tmp/stdin";;
+ *) # Look for the file first in the build tree, then in the source tree
+ # (if the path is not absolute). The absolute path cannot be DOS-style,
+ # because $ac_f cannot contain `:'.
+ test -f "$ac_f" ||
+ case $ac_f in
+ [\\/$]*) false;;
+ *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
+ esac ||
+ as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;;
+ esac
+ case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+ as_fn_append ac_file_inputs " '$ac_f'"
+ done
+
+ # Let's still pretend it is `configure' which instantiates (i.e., don't
+ # use $as_me), people would be surprised to read:
+ # /* config.h. Generated by config.status. */
+ configure_input='Generated from '`
+ $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+ `' by configure.'
+ if test x"$ac_file" != x-; then
+ configure_input="$ac_file. $configure_input"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+$as_echo "$as_me: creating $ac_file" >&6;}
+ fi
+ # Neutralize special characters interpreted by sed in replacement strings.
+ case $configure_input in #(
+ *\&* | *\|* | *\\* )
+ ac_sed_conf_input=`$as_echo "$configure_input" |
+ sed 's/[\\\\&|]/\\\\&/g'`;; #(
+ *) ac_sed_conf_input=$configure_input;;
+ esac
+
+ case $ac_tag in
+ *:-:* | *:-) cat >"$tmp/stdin" \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5 ;;
+ esac
+ ;;
+ esac
+
+ ac_dir=`$as_dirname -- "$ac_file" ||
$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$ac_file" : 'X\(//\)[^/]' \| \
X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { if $as_mkdir_p; then
- mkdir -p "$ac_dir"
- else
- as_dir="$ac_dir"
- as_dirs=
- while test ! -d "$as_dir"; do
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- done
- test ! -n "$as_dirs" || mkdir $as_dirs
- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
- { (exit 1); exit 1; }; }; }
-
+ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$ac_file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ as_dir="$ac_dir"; as_fn_mkdir_p
ac_builddir=.
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
+case "$ac_dir" in
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
+*)
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+ # A ".." for each directory in $ac_dir_suffix.
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+ case $ac_top_builddir_sub in
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
+ esac ;;
+esac
+ac_abs_top_builddir=$ac_pwd
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
+# for backward compatibility:
+ac_top_builddir=$ac_top_build_prefix
case $srcdir in
- .) # No --srcdir option. We are building in place.
+ .) # We are building in place.
ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
+ ac_top_srcdir=$ac_top_builddir_sub
+ ac_abs_top_srcdir=$ac_pwd ;;
+ [\\/]* | ?:[\\/]* ) # Absolute name.
ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
+ ac_top_srcdir=$srcdir
+ ac_abs_top_srcdir=$srcdir ;;
+ *) # Relative name.
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
esac
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
- case "$ac_dir" in
- .) ac_abs_builddir=`pwd`;;
- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
- *) ac_abs_builddir=`pwd`/"$ac_dir";;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
- case ${ac_top_builddir}. in
- .) ac_abs_top_builddir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
- case $ac_srcdir in
- .) ac_abs_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
- case $ac_top_srcdir in
- .) ac_abs_top_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
- esac;;
-esac
+ case $ac_mode in
+ :F)
+ #
+ # CONFIG_FILE
+ #
case $INSTALL in
[\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
+ *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
esac
+ ac_MKDIR_P=$MKDIR_P
+ case $MKDIR_P in
+ [\\/$]* | ?:[\\/]* ) ;;
+ */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
+ esac
+_ACEOF
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- if test x"$ac_file" = x-; then
- configure_input=
- else
- configure_input="$ac_file. "
- fi
- configure_input=$configure_input"Generated from `echo $ac_file_in |
- sed 's,.*/,,'` by configure."
-
- # First look for the input files in the build tree, otherwise in the
- # src tree.
- ac_file_inputs=`IFS=:
- for f in $ac_file_in; do
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- echo "$f";;
- *) # Relative
- if test -f "$f"; then
- # Build tree
- echo "$f"
- elif test -f "$srcdir/$f"; then
- # Source tree
- echo "$srcdir/$f"
- else
- # /dev/null tree
- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
- esac
- done` || { (exit 1); exit 1; }
-
- if test x"$ac_file" != x-; then
- { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
- rm -f "$ac_file"
- fi
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# If the template does not know about datarootdir, expand it.
+# FIXME: This hack should be removed a few years after 2.60.
+ac_datarootdir_hack=; ac_datarootdir_seen=
+ac_sed_dataroot='
+/datarootdir/ {
+ p
+ q
+}
+/@datadir@/p
+/@docdir@/p
+/@infodir@/p
+/@localedir@/p
+/@mandir@/p'
+case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
+*datarootdir*) ac_datarootdir_seen=yes;;
+*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ ac_datarootdir_hack='
+ s&@datadir@&$datadir&g
+ s&@docdir@&$docdir&g
+ s&@infodir@&$infodir&g
+ s&@localedir@&$localedir&g
+ s&@mandir@&$mandir&g
+ s&\\\${datarootdir}&$datarootdir&g' ;;
+esac
_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
- sed "$ac_vpsub
+
+# Neutralize VPATH when `$srcdir' = `.'.
+# Shell code in configure.ac might set extrasub.
+# FIXME: do we really want to maintain this feature?
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_sed_extra="$ac_vpsub
$extrasub
_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
:t
/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s,@configure_input@,$configure_input,;t t
-s,@srcdir@,$ac_srcdir,;t t
-s,@abs_srcdir@,$ac_abs_srcdir,;t t
-s,@top_srcdir@,$ac_top_srcdir,;t t
-s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
-s,@builddir@,$ac_builddir,;t t
-s,@abs_builddir@,$ac_abs_builddir,;t t
-s,@top_builddir@,$ac_top_builddir,;t t
-s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
-s,@INSTALL@,$ac_INSTALL,;t t
-" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
- rm -f $tmp/stdin
- if test x"$ac_file" != x-; then
- mv $tmp/out $ac_file
- else
- cat $tmp/out
- rm -f $tmp/out
- fi
-
-done
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-#
-# CONFIG_HEADER section.
-#
-
-# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
-# NAME is the cpp macro being defined and VALUE is the value it is being given.
-#
-# ac_d sets the value in "#define NAME VALUE" lines.
-ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)'
-ac_dB='[ ].*$,\1#\2'
-ac_dC=' '
-ac_dD=',;t'
-# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
-ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
-ac_uB='$,\1#\2define\3'
-ac_uC=' '
-ac_uD=',;t'
-
-for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
- # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+s|@configure_input@|$ac_sed_conf_input|;t t
+s&@top_builddir@&$ac_top_builddir_sub&;t t
+s&@top_build_prefix@&$ac_top_build_prefix&;t t
+s&@srcdir@&$ac_srcdir&;t t
+s&@abs_srcdir@&$ac_abs_srcdir&;t t
+s&@top_srcdir@&$ac_top_srcdir&;t t
+s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
+s&@builddir@&$ac_builddir&;t t
+s&@abs_builddir@&$ac_abs_builddir&;t t
+s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
+s&@INSTALL@&$ac_INSTALL&;t t
+s&@MKDIR_P@&$ac_MKDIR_P&;t t
+$ac_datarootdir_hack
+"
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
+
+test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
+ { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } &&
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined." >&5
+$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined. Please make sure it is defined." >&2;}
+
+ rm -f "$tmp/stdin"
case $ac_file in
- - | *:- | *:-:* ) # input from stdin
- cat >$tmp/stdin
- ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
- * ) ac_file_in=$ac_file.in ;;
- esac
-
- test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
-echo "$as_me: creating $ac_file" >&6;}
-
- # First look for the input files in the build tree, otherwise in the
- # src tree.
- ac_file_inputs=`IFS=:
- for f in $ac_file_in; do
- case $f in
- -) echo $tmp/stdin ;;
- [\\/$]*)
- # Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- # Do quote $f, to prevent DOS paths from being IFS'd.
- echo "$f";;
- *) # Relative
- if test -f "$f"; then
- # Build tree
- echo "$f"
- elif test -f "$srcdir/$f"; then
- # Source tree
- echo "$srcdir/$f"
- else
- # /dev/null tree
- { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-echo "$as_me: error: cannot find input file: $f" >&2;}
- { (exit 1); exit 1; }; }
- fi;;
- esac
- done` || { (exit 1); exit 1; }
- # Remove the trailing spaces.
- sed 's/[ ]*$//' $ac_file_inputs >$tmp/in
-
-_ACEOF
-
-# Transform confdefs.h into two sed scripts, `conftest.defines' and
-# `conftest.undefs', that substitutes the proper values into
-# config.h.in to produce config.h. The first handles `#define'
-# templates, and the second `#undef' templates.
-# And first: Protect against being on the right side of a sed subst in
-# config.status. Protect against being in an unquoted here document
-# in config.status.
-rm -f conftest.defines conftest.undefs
-# Using a here document instead of a string reduces the quoting nightmare.
-# Putting comments in sed scripts is not portable.
-#
-# `end' is used to avoid that the second main sed command (meant for
-# 0-ary CPP macros) applies to n-ary macro definitions.
-# See the Autoconf documentation for `clear'.
-cat >confdef2sed.sed <<\_ACEOF
-s/[\\&,]/\\&/g
-s,[\\$`],\\&,g
-t clear
-: clear
-s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
-t end
-s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
-: end
-_ACEOF
-# If some macros were called several times there might be several times
-# the same #defines, which is useless. Nevertheless, we may not want to
-# sort them, since we want the *last* AC-DEFINE to be honored.
-uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
-sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
-rm -f confdef2sed.sed
-
-# This sed command replaces #undef with comments. This is necessary, for
-# example, in the case of _POSIX_SOURCE, which is predefined and required
-# on some systems where configure will not decide to define it.
-cat >>conftest.undefs <<\_ACEOF
-s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
-_ACEOF
-
-# Break up conftest.defines because some shells have a limit on the size
-# of here documents, and old seds have small limits too (100 cmds).
-echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
-echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
-echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
-echo ' :' >>$CONFIG_STATUS
-rm -f conftest.tail
-while grep . conftest.defines >/dev/null
-do
- # Write a limited-size here document to $tmp/defines.sed.
- echo ' cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
- # Speed up: don't consider the non `#define' lines.
- echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS
- # Work around the forget-to-reset-the-flag bug.
- echo 't clr' >>$CONFIG_STATUS
- echo ': clr' >>$CONFIG_STATUS
- sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
- echo 'CEOF
- sed -f $tmp/defines.sed $tmp/in >$tmp/out
- rm -f $tmp/in
- mv $tmp/out $tmp/in
-' >>$CONFIG_STATUS
- sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
- rm -f conftest.defines
- mv conftest.tail conftest.defines
-done
-rm -f conftest.defines
-echo ' fi # grep' >>$CONFIG_STATUS
-echo >>$CONFIG_STATUS
-
-# Break up conftest.undefs because some shells have a limit on the size
-# of here documents, and old seds have small limits too (100 cmds).
-echo ' # Handle all the #undef templates' >>$CONFIG_STATUS
-rm -f conftest.tail
-while grep . conftest.undefs >/dev/null
-do
- # Write a limited-size here document to $tmp/undefs.sed.
- echo ' cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
- # Speed up: don't consider the non `#undef'
- echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS
- # Work around the forget-to-reset-the-flag bug.
- echo 't clr' >>$CONFIG_STATUS
- echo ': clr' >>$CONFIG_STATUS
- sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
- echo 'CEOF
- sed -f $tmp/undefs.sed $tmp/in >$tmp/out
- rm -f $tmp/in
- mv $tmp/out $tmp/in
-' >>$CONFIG_STATUS
- sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
- rm -f conftest.undefs
- mv conftest.tail conftest.undefs
-done
-rm -f conftest.undefs
-
-cat >>$CONFIG_STATUS <<\_ACEOF
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- if test x"$ac_file" = x-; then
- echo "/* Generated by configure. */" >$tmp/config.h
- else
- echo "/* $ac_file. Generated by configure. */" >$tmp/config.h
- fi
- cat $tmp/in >>$tmp/config.h
- rm -f $tmp/in
+ -) cat "$tmp/out" && rm -f "$tmp/out";;
+ *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";;
+ esac \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
+ ;;
+ :H)
+ #
+ # CONFIG_HEADER
+ #
if test x"$ac_file" != x-; then
- if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
- { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
-echo "$as_me: $ac_file is unchanged" >&6;}
+ {
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs"
+ } >"$tmp/config.h" \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
+ if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+$as_echo "$as_me: $ac_file is unchanged" >&6;}
else
- ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { if $as_mkdir_p; then
- mkdir -p "$ac_dir"
- else
- as_dir="$ac_dir"
- as_dirs=
- while test ! -d "$as_dir"; do
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- done
- test ! -n "$as_dirs" || mkdir $as_dirs
- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
- { (exit 1); exit 1; }; }; }
-
- rm -f $ac_file
- mv $tmp/config.h $ac_file
+ rm -f "$ac_file"
+ mv "$tmp/config.h" "$ac_file" \
+ || as_fn_error "could not create $ac_file" "$LINENO" 5
fi
else
- cat $tmp/config.h
- rm -f $tmp/config.h
+ $as_echo "/* $configure_input */" \
+ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \
+ || as_fn_error "could not create -" "$LINENO" 5
fi
-# Compute $ac_file's index in $config_headers.
+# Compute "$ac_file"'s index in $config_headers.
+_am_arg="$ac_file"
_am_stamp_count=1
for _am_header in $config_headers :; do
case $_am_header in
- $ac_file | $ac_file:* )
+ $_am_arg | $_am_arg:* )
break ;;
* )
_am_stamp_count=`expr $_am_stamp_count + 1` ;;
esac
done
-echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null ||
-$as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X$ac_file : 'X\(//\)[^/]' \| \
- X$ac_file : 'X\(//\)$' \| \
- X$ac_file : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X$ac_file |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`/stamp-h$_am_stamp_count
-done
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
-
-#
-# CONFIG_COMMANDS section.
-#
-for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
- ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
- ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
- ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
-$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_dest" : 'X\(//\)[^/]' \| \
- X"$ac_dest" : 'X\(//\)$' \| \
- X"$ac_dest" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$ac_dest" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { if $as_mkdir_p; then
- mkdir -p "$ac_dir"
- else
- as_dir="$ac_dir"
- as_dirs=
- while test ! -d "$as_dir"; do
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- done
- test ! -n "$as_dirs" || mkdir $as_dirs
- fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
- { (exit 1); exit 1; }; }; }
-
- ac_builddir=.
-
-if test "$ac_dir" != .; then
- ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
- # A "../" for each directory in $ac_dir_suffix.
- ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-else
- ac_dir_suffix= ac_top_builddir=
-fi
-
-case $srcdir in
- .) # No --srcdir option. We are building in place.
- ac_srcdir=.
- if test -z "$ac_top_builddir"; then
- ac_top_srcdir=.
- else
- ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
- fi ;;
- [\\/]* | ?:[\\/]* ) # Absolute path.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir ;;
- *) # Relative path.
- ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_builddir$srcdir ;;
-esac
+echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
+$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$_am_arg" : 'X\(//\)[^/]' \| \
+ X"$_am_arg" : 'X\(//\)$' \| \
+ X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$_am_arg" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`/stamp-h$_am_stamp_count
+ ;;
-# Do not use `cd foo && pwd` to compute absolute paths, because
-# the directories may not exist.
-case `pwd` in
-.) ac_abs_builddir="$ac_dir";;
-*)
- case "$ac_dir" in
- .) ac_abs_builddir=`pwd`;;
- [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
- *) ac_abs_builddir=`pwd`/"$ac_dir";;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_builddir=${ac_top_builddir}.;;
-*)
- case ${ac_top_builddir}. in
- .) ac_abs_top_builddir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
- *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_srcdir=$ac_srcdir;;
-*)
- case $ac_srcdir in
- .) ac_abs_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
- *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
- esac;;
-esac
-case $ac_abs_builddir in
-.) ac_abs_top_srcdir=$ac_top_srcdir;;
-*)
- case $ac_top_srcdir in
- .) ac_abs_top_srcdir=$ac_abs_builddir;;
- [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
- *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
- esac;;
-esac
+ :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
+$as_echo "$as_me: executing $ac_file commands" >&6;}
+ ;;
+ esac
- { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
-echo "$as_me: executing $ac_dest commands" >&6;}
- case $ac_dest in
- default-1 )
+ case $ac_file$ac_mode in
+ "default-1":C)
for ac_file in $CONFIG_FILES; do
# Support "outfile[:infile[:infile...]]"
case "$ac_file" in
@@ -11011,102 +9923,113 @@ echo "$as_me: executing $ac_dest commands" >&6;}
;;
esac
done ;;
- depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named `Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # So let's grep whole file.
- if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
- dirpart=`(dirname "$mf") 2>/dev/null ||
+ "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+ # Autoconf 2.62 quotes --file arguments for eval, but not when files
+ # are listed without --file. Let's play safe and only enable the eval
+ # if we detect the quoting.
+ case $CONFIG_FILES in
+ *\'*) eval set x "$CONFIG_FILES" ;;
+ *) set x $CONFIG_FILES ;;
+ esac
+ shift
+ for mf
+ do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # Grep'ing the whole file is not good either: AIX grep has a line
+ # limit of 2048, but all sed's we know have understand at least 4000.
+ if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+ dirpart=`$as_dirname -- "$mf" ||
$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$mf" : 'X\(//\)[^/]' \| \
X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$mf" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running `make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # When using ansi2knr, U may be empty or an underscore; expand it
- U=`sed -n 's/^U = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`(dirname "$file") 2>/dev/null ||
+ X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$mf" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`$as_dirname -- "$file" ||
$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
X"$file" : 'X\(//\)[^/]' \| \
X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
- { if $as_mkdir_p; then
- mkdir -p $dirpart/$fdir
- else
- as_dir=$dirpart/$fdir
- as_dirs=
- while test ! -d "$as_dir"; do
- as_dirs="$as_dir $as_dirs"
- as_dir=`(dirname "$as_dir") 2>/dev/null ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| \
- . : '\(.\)' 2>/dev/null ||
-echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
- /^X\(\/\/\)[^/].*/{ s//\1/; q; }
- /^X\(\/\/\)$/{ s//\1/; q; }
- /^X\(\/\).*/{ s//\1/; q; }
- s/.*/./; q'`
+ X"$file" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'`
+ as_dir=$dirpart/$fdir; as_fn_mkdir_p
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
done
- test ! -n "$as_dirs" || mkdir $as_dirs
- fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5
-echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;}
- { (exit 1); exit 1; }; }; }
-
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
done
-done
+}
;;
+
esac
-done
-_ACEOF
+done # for ac_tag
-cat >>$CONFIG_STATUS <<\_ACEOF
-{ (exit 0); exit 0; }
+as_fn_exit 0
_ACEOF
-chmod +x $CONFIG_STATUS
ac_clean_files=$ac_clean_files_save
+test $ac_write_fail = 0 ||
+ as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5
+
# configure is writing to config.log, and then calls config.status.
# config.status does its own redirection, appending to config.log.
@@ -11126,6 +10049,10 @@ if test "$no_create" != yes; then
exec 5>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
- $ac_cs_success || { (exit 1); exit 1; }
+ $ac_cs_success || as_fn_exit $?
+fi
+if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
fi
diff --git a/configure.in b/configure.in
index 8f3aa958bd1d..61f541201a6b 100644
--- a/configure.in
+++ b/configure.in
@@ -24,22 +24,22 @@
# autoconf requirements and initialization
-AC_PREREQ(2.59)
-AC_INIT([the fast lexical analyser generator], [2.5.35],
+AC_INIT([the fast lexical analyser generator], [2.5.37],
[flex-help@lists.sourceforge.net], [flex])
AC_CONFIG_SRCDIR([scan.l])
-AM_INIT_AUTOMAKE([gnits dist-bzip2])
+AM_INIT_AUTOMAKE([gnits dist-bzip2 1.10])
AC_CONFIG_HEADER([config.h:conf.in])
+AC_CONFIG_LIBOBJ_DIR([lib])
# checks for programs
AM_GNU_GETTEXT([external])
AM_GNU_GETTEXT_VERSION(0.12)
-
AC_PROG_YACC
AM_PROG_LEX
AC_PROG_CC
AC_PROG_CXX
+AM_PROG_CC_C_O
AC_PROG_LN_S
AC_PROG_RANLIB
AC_PROG_AWK
@@ -48,22 +48,16 @@ AC_PROG_INSTALL
AC_PATH_PROG(BISON, bison,bison)
AC_PATH_PROG(HELP2MAN, help2man, help2man)
-# Check for a GNU m4 that supports --prefix-builtins
-
-AC_PATH_PROGS(M4, gm4 gnum4 m4, m4)
+# Check for a m4 that supports -P
-if test x"$M4" != x; then
- AC_MSG_CHECKING([for GNU m4])
- case `$M4 --help < /dev/null 2>&1` in
- *prefix-builtins*) AC_MSG_RESULT(yes) ;;
- *) AC_MSG_RESULT(no) ;
- AC_MSG_ERROR([GNU M4 1.4 is required]) ;;
- esac
-else
- AC_MSG_ERROR([GNU M4 1.4 is required]) ;
-fi
-
-AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the GNU M4 executable name.])
+AC_CACHE_CHECK([for m4 that supports -P], [ac_cv_path_M4],
+[AC_PATH_PROGS_FEATURE_CHECK([M4], [gm4 gnum4 m4],
+ [[m4out=`echo 'm''4_divnum' | $ac_path_M4 -P`]
+ [test "x$m4out" = x0 \
+ && ac_cv_path_M4=$ac_path_M4 ac_path_M4_found=:]],
+ [AC_MSG_ERROR([could not find m4 that supports -P])])])
+AC_SUBST([M4], [$ac_cv_path_M4])
+AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the m4 executable name.])
AC_PATH_PROG(INDENT, indent, indent)
# if INDENT is set to 'indent' then we didn't find indent
@@ -79,13 +73,13 @@ else
AC_MSG_WARN(no indent program found: make indent target will not function)
fi
-# checks for libraries
+# checks for headers
-AC_FUNC_ALLOCA
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
-AC_CHECK_HEADERS([inttypes.h libintl.h limits.h locale.h malloc.h netinet/in.h stddef.h stdlib.h string.h strings.h unistd.h])
-AC_CHECK_LIB(m, log10)
+AC_CHECK_HEADERS([inttypes.h libintl.h limits.h locale.h malloc.h netinet/in.h regex.h stddef.h stdlib.h string.h strings.h unistd.h])
+
+# checks for libraries
# The test test-pthread uses libpthread, so we check for it here, but
# all we need is the preprocessor symbol defined since we don't need
@@ -97,6 +91,8 @@ AC_DEFINE([HAVE_LIBPTHREAD], 0, [pthread library] )
)
AC_CHECK_HEADERS([pthread.h])
+AC_CHECK_LIB(m, log10)
+
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
@@ -105,6 +101,7 @@ AC_TYPE_SIZE_T
# Checks for library functions.
+AC_FUNC_ALLOCA
AC_FUNC_FORK
AC_FUNC_MALLOC
AC_FUNC_REALLOC
@@ -116,7 +113,7 @@ doc/Makefile
examples/Makefile
examples/fastwc/Makefile
examples/manual/Makefile
-m4/Makefile
+lib/Makefile
po/Makefile.in
tools/Makefile
tests/Makefile
diff --git a/depcomp b/depcomp
index 04701da536f3..df8eea7e4ce8 100755
--- a/depcomp
+++ b/depcomp
@@ -1,9 +1,10 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2005-07-09.11
+scriptversion=2009-04-28.21; # UTC
-# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
+# Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -16,9 +17,7 @@ scriptversion=2005-07-09.11
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -86,12 +85,34 @@ if test "$depmode" = dashXmstdout; then
depmode=dashmstdout
fi
+cygpath_u="cygpath -u -f -"
+if test "$depmode" = msvcmsys; then
+ # This is just like msvisualcpp but w/o cygpath translation.
+ # Just convert the backslash-escaped backslashes to single forward
+ # slashes to satisfy depend.m4
+ cygpath_u="sed s,\\\\\\\\,/,g"
+ depmode=msvisualcpp
+fi
+
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
## it if -MD -MP comes after the -MF stuff. Hmm.
- "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
+## Unfortunately, FreeBSD c89 acceptance of flags depends upon
+## the command line argument order; so add the flags where they
+## appear in depend2.am. Note that the slowdown incurred here
+## affects only configure: in makefiles, %FASTDEP% shortcuts this.
+ for arg
+ do
+ case $arg in
+ -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
+ *) set fnord "$@" "$arg" ;;
+ esac
+ shift # fnord
+ shift # $arg
+ done
+ "$@"
stat=$?
if test $stat -eq 0; then :
else
@@ -178,14 +199,14 @@ sgi)
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
tr '
-' ' ' >> $depfile
- echo >> $depfile
+' ' ' >> "$depfile"
+ echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
- >> $depfile
+ >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
@@ -201,34 +222,39 @@ aix)
# current directory. Also, the AIX compiler puts `$object:' at the
# start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases.
- stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
- tmpdepfile="$stripped.u"
+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+ test "x$dir" = "x$object" && dir=
+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then
+ tmpdepfile1=$dir$base.u
+ tmpdepfile2=$base.u
+ tmpdepfile3=$dir.libs/$base.u
"$@" -Wc,-M
else
+ tmpdepfile1=$dir$base.u
+ tmpdepfile2=$dir$base.u
+ tmpdepfile3=$dir$base.u
"$@" -M
fi
stat=$?
- if test -f "$tmpdepfile"; then :
- else
- stripped=`echo "$stripped" | sed 's,^.*/,,'`
- tmpdepfile="$stripped.u"
- fi
-
if test $stat -eq 0; then :
else
- rm -f "$tmpdepfile"
+ rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat
fi
+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+ do
+ test -f "$tmpdepfile" && break
+ done
if test -f "$tmpdepfile"; then
- outname="$stripped.o"
# Each line is of the form `foo.o: dependent.h'.
# Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'.
- sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
- sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
+ sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+ # That's a tab and a space in the [].
+ sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
@@ -276,6 +302,51 @@ icc)
rm -f "$tmpdepfile"
;;
+hp2)
+ # The "hp" stanza above does not work with aCC (C++) and HP's ia64
+ # compilers, which have integrated preprocessors. The correct option
+ # to use with these is +Maked; it writes dependencies to a file named
+ # 'foo.d', which lands next to the object file, wherever that
+ # happens to be.
+ # Much of this is similar to the tru64 case; see comments there.
+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+ test "x$dir" = "x$object" && dir=
+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+ if test "$libtool" = yes; then
+ tmpdepfile1=$dir$base.d
+ tmpdepfile2=$dir.libs/$base.d
+ "$@" -Wc,+Maked
+ else
+ tmpdepfile1=$dir$base.d
+ tmpdepfile2=$dir$base.d
+ "$@" +Maked
+ fi
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile1" "$tmpdepfile2"
+ exit $stat
+ fi
+
+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
+ do
+ test -f "$tmpdepfile" && break
+ done
+ if test -f "$tmpdepfile"; then
+ sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
+ # Add `dependent.h:' lines.
+ sed -ne '2,${
+ s/^ *//
+ s/ \\*$//
+ s/$/:/
+ p
+ }' "$tmpdepfile" >> "$depfile"
+ else
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile" "$tmpdepfile2"
+ ;;
+
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
@@ -288,13 +359,13 @@ tru64)
if test "$libtool" = yes; then
# With Tru64 cc, shared objects can also be used to make a
- # static library. This mecanism is used in libtool 1.4 series to
+ # static library. This mechanism is used in libtool 1.4 series to
# handle both shared and static libraries in a single compilation.
# With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
#
# With libtool 1.5 this exception was removed, and libtool now
# generates 2 separate objects for the 2 libraries. These two
- # compilations output dependencies in in $dir.libs/$base.o.d and
+ # compilations output dependencies in $dir.libs/$base.o.d and
# in $dir$base.o.d. We have to check for both files, because
# one of the two compilations can be disabled. We should prefer
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
@@ -345,7 +416,7 @@ dashmstdout)
# Remove the call to Libtool.
if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
+ while test "X$1" != 'X--mode=compile'; do
shift
done
shift
@@ -396,32 +467,39 @@ makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
+ while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
- cleared=no
- for arg in "$@"; do
+ cleared=no eat=no
+ for arg
+ do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
+ if test $eat = yes; then
+ eat=no
+ continue
+ fi
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
+ -arch)
+ eat=yes ;;
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
- obj_suffix="`echo $object | sed 's/^.*\././'`"
+ obj_suffix=`echo "$object" | sed 's/^.*\././'`
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
@@ -441,7 +519,7 @@ cpp)
# Remove the call to Libtool.
if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
+ while test "X$1" != 'X--mode=compile'; do
shift
done
shift
@@ -479,13 +557,27 @@ cpp)
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o,
- # because we must use -o when running libtool.
+ # always write the preprocessed file to stdout.
"$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test "X$1" != 'X--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
IFS=" "
for arg
do
case "$arg" in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
@@ -498,16 +590,23 @@ msvisualcpp)
;;
esac
done
- "$@" -E |
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+ "$@" -E 2>/dev/null |
+ sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
echo " " >> "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
+msvcmsys)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
none)
exec "$@"
;;
@@ -526,5 +625,6 @@ exit 0
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
diff --git a/dfa.c b/dfa.c
index 8613d75b02c7..b8b68ebad8eb 100644
--- a/dfa.c
+++ b/dfa.c
@@ -161,7 +161,7 @@ void dump_associated_rules (file, ds)
}
}
- bubble (rule_set, num_associated_rules);
+ qsort (&rule_set [1], num_associated_rules, sizeof (rule_set [1]), intcmp);
fprintf (file, _(" associated rule line numbers:"));
@@ -835,10 +835,8 @@ int snstods (sns, numstates, accset, nacc, hashval, newds_addr)
if (!didsort) {
/* We sort the states in sns so we
* can compare it to oldsns quickly.
- * We use bubble because there probably
- * aren't very many states.
*/
- bubble (sns, numstates);
+ qsort (&sns [1], numstates, sizeof (sns [1]), intcmp);
didsort = 1;
}
@@ -873,7 +871,7 @@ int snstods (sns, numstates, accset, nacc, hashval, newds_addr)
*/
if (!didsort)
- bubble (sns, numstates);
+ qsort (&sns [1], numstates, sizeof (sns [1]), intcmp);
for (i = 1; i <= numstates; ++i)
dss[newds][i] = sns[i];
@@ -893,11 +891,10 @@ int snstods (sns, numstates, accset, nacc, hashval, newds_addr)
else if (reject) {
/* We sort the accepting set in increasing order so the
* disambiguating rule that the first rule listed is considered
- * match in the event of ties will work. We use a bubble
- * sort since the list is probably quite small.
+ * match in the event of ties will work.
*/
- bubble (accset, nacc);
+ qsort (&accset [1], nacc, sizeof (accset [1]), intcmp);
dfaacc[newds].dfaacc_set =
allocate_integer_array (nacc + 1);
diff --git a/doc/Makefile.am b/doc/Makefile.am
deleted file mode 100644
index bfed30d32602..000000000000
--- a/doc/Makefile.am
+++ /dev/null
@@ -1,16 +0,0 @@
-help2man = @HELP2MAN@
-
-info_TEXINFOS = flex.texi
-dist_man_MANS = flex.1
-EXTRA_DIST = flex.pdf
-
-CLEANFILES = \
- flex.hks \
- flex.ops
-
-$(dist_man_MANS): $(top_srcdir)/main.c
- for i in $(dist_man_MANS) ; do \
- $(help2man) --name='$(PACKAGE_NAME)' \
- --section=`echo $$i | sed -e 's/.*\.\([^.]*\)$$/\1/'` \
- ../flex$(EXEEXT) > $$i || rm -f $$i ; \
- done
diff --git a/doc/Makefile.in b/doc/Makefile.in
deleted file mode 100644
index b5a7f5ba7759..000000000000
--- a/doc/Makefile.in
+++ /dev/null
@@ -1,560 +0,0 @@
-# Makefile.in generated by automake 1.9.6 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = ..
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = doc
-DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(srcdir)/stamp-vti \
- $(srcdir)/version.texi mdate-sh texinfo.tex
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
- $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
- $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.in
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-SOURCES =
-DIST_SOURCES =
-INFO_DEPS = $(srcdir)/flex.info
-am__TEXINFO_TEX_DIR = $(srcdir)
-DVIS = flex.dvi
-PDFS = flex.pdf
-PSS = flex.ps
-HTMLS = flex.html
-TEXINFOS = flex.texi
-TEXI2DVI = texi2dvi
-TEXI2PDF = $(TEXI2DVI) --pdf --batch
-MAKEINFOHTML = $(MAKEINFO) --html
-AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS)
-DVIPS = dvips
-am__installdirs = "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"
-man1dir = $(mandir)/man1
-NROFF = nroff
-MANS = $(dist_man_MANS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-ALLOCA = @ALLOCA@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
-AMTAR = @AMTAR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BISON = @BISON@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-GMSGFMT = @GMSGFMT@
-HELP2MAN = @HELP2MAN@
-INDENT = @INDENT@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-INTLLIBS = @INTLLIBS@
-LDFLAGS = @LDFLAGS@
-LEX = @LEX@
-LEXLIB = @LEXLIB@
-LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-LIBICONV = @LIBICONV@
-LIBINTL = @LIBINTL@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LN_S = @LN_S@
-LTLIBICONV = @LTLIBICONV@
-LTLIBINTL = @LTLIBINTL@
-LTLIBOBJS = @LTLIBOBJS@
-M4 = @M4@
-MAKEINFO = @MAKEINFO@
-MKINSTALLDIRS = @MKINSTALLDIRS@
-MSGFMT = @MSGFMT@
-MSGMERGE = @MSGMERGE@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-POSUB = @POSUB@
-RANLIB = @RANLIB@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-USE_NLS = @USE_NLS@
-VERSION = @VERSION@
-XGETTEXT = @XGETTEXT@
-YACC = @YACC@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_RANLIB = @ac_ct_RANLIB@
-ac_ct_STRIP = @ac_ct_STRIP@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-datadir = @datadir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-help2man = @HELP2MAN@
-info_TEXINFOS = flex.texi
-dist_man_MANS = flex.1
-EXTRA_DIST = flex.pdf
-CLEANFILES = \
- flex.hks \
- flex.ops
-
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .dvi .html .info .pdf .ps .texi
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
- && exit 0; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits doc/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnits doc/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-.texi.info:
- restore=: && backupdir="$(am__leading_dot)am$$$$" && \
- am__cwd=`pwd` && cd $(srcdir) && \
- rm -rf $$backupdir && mkdir $$backupdir && \
- if ($(MAKEINFO) --version) >/dev/null 2>&1; then \
- for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \
- if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \
- done; \
- else :; fi && \
- cd "$$am__cwd"; \
- if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
- -o $@ $<; \
- then \
- rc=0; \
- cd $(srcdir); \
- else \
- rc=$$?; \
- cd $(srcdir) && \
- $$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \
- fi; \
- rm -rf $$backupdir; exit $$rc
-
-.texi.dvi:
- TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
- MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
- $(TEXI2DVI) $<
-
-.texi.pdf:
- TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
- MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
- $(TEXI2PDF) $<
-
-.texi.html:
- rm -rf $(@:.html=.htp)
- if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
- -o $(@:.html=.htp) $<; \
- then \
- rm -rf $@; \
- if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
- mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
- else \
- if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
- rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
- exit 1; \
- fi
-$(srcdir)/flex.info: flex.texi $(srcdir)/version.texi
-flex.dvi: flex.texi $(srcdir)/version.texi
-flex.pdf: flex.texi $(srcdir)/version.texi
-flex.html: flex.texi $(srcdir)/version.texi
-$(srcdir)/version.texi: $(srcdir)/stamp-vti
-$(srcdir)/stamp-vti: flex.texi $(top_srcdir)/configure
- @(dir=.; test -f ./flex.texi || dir=$(srcdir); \
- set `$(SHELL) $(srcdir)/mdate-sh $$dir/flex.texi`; \
- echo "@set UPDATED $$1 $$2 $$3"; \
- echo "@set UPDATED-MONTH $$2 $$3"; \
- echo "@set EDITION $(VERSION)"; \
- echo "@set VERSION $(VERSION)") > vti.tmp
- @cmp -s vti.tmp $(srcdir)/version.texi \
- || (echo "Updating $(srcdir)/version.texi"; \
- cp vti.tmp $(srcdir)/version.texi)
- -@rm -f vti.tmp
- @cp $(srcdir)/version.texi $@
-
-mostlyclean-vti:
- -rm -f vti.tmp
-
-maintainer-clean-vti:
- -rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi
-.dvi.ps:
- TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
- $(DVIPS) -o $@ $<
-
-uninstall-info-am:
- @$(PRE_UNINSTALL)
- @if (install-info --version && \
- install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
- list='$(INFO_DEPS)'; \
- for file in $$list; do \
- relfile=`echo "$$file" | sed 's|^.*/||'`; \
- echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \
- install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
- done; \
- else :; fi
- @$(NORMAL_UNINSTALL)
- @list='$(INFO_DEPS)'; \
- for file in $$list; do \
- relfile=`echo "$$file" | sed 's|^.*/||'`; \
- relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
- (if cd "$(DESTDIR)$(infodir)"; then \
- echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \
- rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
- else :; fi); \
- done
-
-dist-info: $(INFO_DEPS)
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- list='$(INFO_DEPS)'; \
- for base in $$list; do \
- case $$base in \
- $(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \
- esac; \
- if test -f $$base; then d=.; else d=$(srcdir); fi; \
- for file in $$d/$$base*; do \
- relfile=`expr "$$file" : "$$d/\(.*\)"`; \
- test -f $(distdir)/$$relfile || \
- cp -p $$file $(distdir)/$$relfile; \
- done; \
- done
-
-mostlyclean-aminfo:
- -rm -rf flex.aux flex.cp flex.cps flex.fn flex.fns flex.hk flex.hks flex.ky \
- flex.kys flex.log flex.op flex.ops flex.pg flex.pgs flex.tmp \
- flex.toc flex.tp flex.tps flex.vr flex.vrs flex.dvi flex.pdf \
- flex.ps flex.html
-
-maintainer-clean-aminfo:
- @list='$(INFO_DEPS)'; for i in $$list; do \
- i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \
- echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
- rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
- done
-install-man1: $(man1_MANS) $(man_MANS)
- @$(NORMAL_INSTALL)
- test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)"
- @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
- l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
- for i in $$l2; do \
- case "$$i" in \
- *.1*) list="$$list $$i" ;; \
- esac; \
- done; \
- for i in $$list; do \
- if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
- else file=$$i; fi; \
- ext=`echo $$i | sed -e 's/^.*\\.//'`; \
- case "$$ext" in \
- 1*) ;; \
- *) ext='1' ;; \
- esac; \
- inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
- inst=`echo $$inst | sed -e 's/^.*\///'`; \
- inst=`echo $$inst | sed '$(transform)'`.$$ext; \
- echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
- $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
- done
-uninstall-man1:
- @$(NORMAL_UNINSTALL)
- @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
- l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
- for i in $$l2; do \
- case "$$i" in \
- *.1*) list="$$list $$i" ;; \
- esac; \
- done; \
- for i in $$list; do \
- ext=`echo $$i | sed -e 's/^.*\\.//'`; \
- case "$$ext" in \
- 1*) ;; \
- *) ext='1' ;; \
- esac; \
- inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
- inst=`echo $$inst | sed -e 's/^.*\///'`; \
- inst=`echo $$inst | sed '$(transform)'`.$$ext; \
- echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
- rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
- done
-tags: TAGS
-TAGS:
-
-ctags: CTAGS
-CTAGS:
-
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$(top_distdir)" distdir="$(distdir)" \
- dist-info
-check-am: all-am
-check: check-am
-all-am: Makefile $(INFO_DEPS) $(MANS)
-installdirs:
- for dir in "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)"; do \
- test -z "$$dir" || $(mkdir_p) "$$dir"; \
- done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
- -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic mostlyclean-am
-
-distclean: distclean-am
- -rm -f Makefile
-distclean-am: clean-am distclean-generic
-
-dvi: dvi-am
-
-dvi-am: $(DVIS)
-
-html: html-am
-
-html-am: $(HTMLS)
-
-info: info-am
-
-info-am: $(INFO_DEPS)
-
-install-data-am: install-info-am install-man
-
-install-exec-am:
-
-install-info: install-info-am
-
-install-info-am: $(INFO_DEPS)
- @$(NORMAL_INSTALL)
- test -z "$(infodir)" || $(mkdir_p) "$(DESTDIR)$(infodir)"
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- list='$(INFO_DEPS)'; \
- for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- esac; \
- if test -f $$file; then d=.; else d=$(srcdir); fi; \
- file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
- for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
- $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
- if test -f $$ifile; then \
- relfile=`echo "$$ifile" | sed 's|^.*/||'`; \
- echo " $(INSTALL_DATA) '$$ifile' '$(DESTDIR)$(infodir)/$$relfile'"; \
- $(INSTALL_DATA) "$$ifile" "$(DESTDIR)$(infodir)/$$relfile"; \
- else : ; fi; \
- done; \
- done
- @$(POST_INSTALL)
- @if (install-info --version && \
- install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
- list='$(INFO_DEPS)'; \
- for file in $$list; do \
- relfile=`echo "$$file" | sed 's|^.*/||'`; \
- echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\
- install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\
- done; \
- else : ; fi
-install-man: install-man1
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-aminfo \
- maintainer-clean-generic maintainer-clean-vti
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-aminfo mostlyclean-generic mostlyclean-vti
-
-pdf: pdf-am
-
-pdf-am: $(PDFS)
-
-ps: ps-am
-
-ps-am: $(PSS)
-
-uninstall-am: uninstall-info-am uninstall-man
-
-uninstall-man: uninstall-man1
-
-.PHONY: all all-am check check-am clean clean-generic dist-info \
- distclean distclean-generic distdir dvi dvi-am html html-am \
- info info-am install install-am install-data install-data-am \
- install-exec install-exec-am install-info install-info-am \
- install-man install-man1 install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
- maintainer-clean-aminfo maintainer-clean-generic \
- maintainer-clean-vti mostlyclean mostlyclean-aminfo \
- mostlyclean-generic mostlyclean-vti pdf pdf-am ps ps-am \
- uninstall uninstall-am uninstall-info-am uninstall-man \
- uninstall-man1
-
-
-$(dist_man_MANS): $(top_srcdir)/main.c
- for i in $(dist_man_MANS) ; do \
- $(help2man) --name='$(PACKAGE_NAME)' \
- --section=`echo $$i | sed -e 's/.*\.\([^.]*\)$$/\1/'` \
- ../flex$(EXEEXT) > $$i || rm -f $$i ; \
- 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.
-.NOEXPORT:
diff --git a/doc/flex.1 b/doc/flex.1
deleted file mode 100644
index a55e8b8e0460..000000000000
--- a/doc/flex.1
+++ /dev/null
@@ -1,165 +0,0 @@
-.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36.
-.TH FLEX "1" "February 2008" "flex 2.5.35" "User Commands"
-.SH NAME
-flex \- the fast lexical analyser generator
-.SH SYNOPSIS
-.B flex
-[\fIOPTIONS\fR] [\fIFILE\fR]...
-.SH DESCRIPTION
-Generates programs that perform pattern\-matching on text.
-.SS "Table Compression:"
-.TP
-\fB\-Ca\fR, \fB\-\-align\fR
-trade off larger tables for better memory alignment
-.TP
-\fB\-Ce\fR, \fB\-\-ecs\fR
-construct equivalence classes
-.TP
-\fB\-Cf\fR
-do not compress tables; use \fB\-f\fR representation
-.TP
-\fB\-CF\fR
-do not compress tables; use \fB\-F\fR representation
-.TP
-\fB\-Cm\fR, \fB\-\-meta\-ecs\fR
-construct meta\-equivalence classes
-.TP
-\fB\-Cr\fR, \fB\-\-read\fR
-use read() instead of stdio for scanner input
-.TP
-\fB\-f\fR, \fB\-\-full\fR
-generate fast, large scanner. Same as \fB\-Cfr\fR
-.TP
-\fB\-F\fR, \fB\-\-fast\fR
-use alternate table representation. Same as \fB\-CFr\fR
-.TP
-\fB\-Cem\fR
-default compression (same as \fB\-\-ecs\fR \fB\-\-meta\-ecs\fR)
-.SS "Debugging:"
-.TP
-\fB\-d\fR, \fB\-\-debug\fR
-enable debug mode in scanner
-.TP
-\fB\-b\fR, \fB\-\-backup\fR
-write backing\-up information to lex.backup
-.TP
-\fB\-p\fR, \fB\-\-perf\-report\fR
-write performance report to stderr
-.TP
-\fB\-s\fR, \fB\-\-nodefault\fR
-suppress default rule to ECHO unmatched text
-.TP
-\fB\-T\fR, \fB\-\-trace\fR
-flex should run in trace mode
-.TP
-\fB\-w\fR, \fB\-\-nowarn\fR
-do not generate warnings
-.TP
-\fB\-v\fR, \fB\-\-verbose\fR
-write summary of scanner statistics to stdout
-.SS "Files:"
-.TP
-\fB\-o\fR, \fB\-\-outfile\fR=\fIFILE\fR
-specify output filename
-.TP
-\fB\-S\fR, \fB\-\-skel\fR=\fIFILE\fR
-specify skeleton file
-.TP
-\fB\-t\fR, \fB\-\-stdout\fR
-write scanner on stdout instead of lex.yy.c
-.TP
-\fB\-\-yyclass\fR=\fINAME\fR
-name of C++ class
-.TP
-\fB\-\-header\-file\fR=\fIFILE\fR
-create a C header file in addition to the scanner
-.HP
-\fB\-\-tables\-file\fR[=\fIFILE\fR] write tables to FILE
-.SS "Scanner behavior:"
-.TP
-\fB\-7\fR, \fB\-\-7bit\fR
-generate 7\-bit scanner
-.TP
-\fB\-8\fR, \fB\-\-8bit\fR
-generate 8\-bit scanner
-.TP
-\fB\-B\fR, \fB\-\-batch\fR
-generate batch scanner (opposite of \fB\-I\fR)
-.TP
-\fB\-i\fR, \fB\-\-case\-insensitive\fR
-ignore case in patterns
-.TP
-\fB\-l\fR, \fB\-\-lex\-compat\fR
-maximal compatibility with original lex
-.TP
-\fB\-X\fR, \fB\-\-posix\-compat\fR
-maximal compatibility with POSIX lex
-.TP
-\fB\-I\fR, \fB\-\-interactive\fR
-generate interactive scanner (opposite of \fB\-B\fR)
-.TP
-\fB\-\-yylineno\fR
-track line count in yylineno
-.SS "Generated code:"
-.TP
-\-+, \fB\-\-c\fR++
-generate C++ scanner class
-.TP
-\fB\-Dmacro\fR[=\fIdefn\fR]
-#define macro defn (default defn is '1')
-.TP
-\fB\-L\fR, \fB\-\-noline\fR
-suppress #line directives in scanner
-.TP
-\fB\-P\fR, \fB\-\-prefix\fR=\fISTRING\fR
-use STRING as prefix instead of "yy"
-.TP
-\fB\-R\fR, \fB\-\-reentrant\fR
-generate a reentrant C scanner
-.TP
-\fB\-\-bison\-bridge\fR
-scanner for bison pure parser.
-.TP
-\fB\-\-bison\-locations\fR
-include yylloc support.
-.TP
-\fB\-\-stdinit\fR
-initialize yyin/yyout to stdin/stdout
-.HP
-\fB\-\-noansi\-definitions\fR old\-style function definitions
-.TP
-\fB\-\-noansi\-prototypes\fR
-empty parameter list in prototypes
-.TP
-\fB\-\-nounistd\fR
-do not include <unistd.h>
-.TP
-\fB\-\-noFUNCTION\fR
-do not generate a particular FUNCTION
-.SS "Miscellaneous:"
-.TP
-\fB\-c\fR
-do\-nothing POSIX option
-.TP
-\fB\-n\fR
-do\-nothing POSIX option
-.HP
-\-?
-.TP
-\fB\-h\fR, \fB\-\-help\fR
-produce this help message
-.TP
-\fB\-V\fR, \fB\-\-version\fR
-report flex version
-.SH "SEE ALSO"
-The full documentation for
-.B flex
-is maintained as a Texinfo manual. If the
-.B info
-and
-.B flex
-programs are properly installed at your site, the command
-.IP
-.B info flex
-.PP
-should give you access to the complete manual.
diff --git a/doc/flex.info b/doc/flex.info
deleted file mode 100644
index fddd79212223..000000000000
--- a/doc/flex.info
+++ /dev/null
@@ -1,282 +0,0 @@
-This is flex.info, produced by makeinfo version 4.8 from flex.texi.
-
-INFO-DIR-SECTION Programming
-START-INFO-DIR-ENTRY
-* flex: (flex). Fast lexical analyzer generator (lex replacement).
-END-INFO-DIR-ENTRY
-
- The flex manual is placed under the same licensing conditions as the
-rest of flex:
-
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 The Flex
-Project.
-
- Copyright (C) 1990, 1997 The Regents of the University of California.
-All rights reserved.
-
- This code is derived from software contributed to Berkeley by Vern
-Paxson.
-
- The United States Government has rights in this work pursuant to
-contract no. DE-AC03-76SF00098 between the United States Department of
-Energy and the University of California.
-
- Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the
- distribution.
-
- Neither the name of the University nor the names of its contributors
-may be used to endorse or promote products derived from this software
-without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
-WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-
-Indirect:
-flex.info-1: 1620
-flex.info-2: 287921
-
-Tag Table:
-(Indirect)
-Node: Top1620
-Node: Copyright7690
-Node: Reporting Bugs9203
-Node: Introduction9508
-Node: Simple Examples10336
-Node: Format13646
-Node: Definitions Section14060
-Ref: Definitions Section-Footnote-116323
-Node: Rules Section16391
-Node: User Code Section17549
-Node: Comments in the Input17987
-Node: Patterns19355
-Ref: case and character ranges26186
-Node: Matching30201
-Node: Actions33487
-Node: Generated Scanner42466
-Node: Start Conditions47484
-Node: Multiple Input Buffers58043
-Ref: Scanning Strings64581
-Node: EOF66211
-Node: Misc Macros67799
-Node: User Values70653
-Node: Yacc72984
-Node: Scanner Options73880
-Node: Options for Specifying Filenames76638
-Ref: option-header76864
-Ref: option-outfile77576
-Ref: option-stdout77901
-Node: Options Affecting Scanner Behavior78883
-Ref: option-case-insensitive79124
-Ref: option-lex-compat79557
-Ref: option-batch80089
-Ref: option-interactive80613
-Ref: option-7bit81967
-Ref: option-8bit83271
-Ref: option-default83683
-Ref: option-always-interactive83747
-Ref: option-posix84351
-Ref: option-stack85498
-Ref: option-stdinit85606
-Ref: option-yylineno86084
-Ref: option-yywrap86527
-Node: Code-Level And API Options86795
-Ref: option-ansi-definitions87022
-Ref: option-ansi-prototypes87274
-Ref: option-bison-bridge87521
-Ref: option-bison-locations87860
-Ref: option-noline88120
-Ref: option-reentrant88634
-Ref: option-c++89245
-Ref: option-array89371
-Ref: option-pointer89469
-Ref: option-prefix89597
-Ref: option-main91126
-Ref: option-nounistd91310
-Ref: option-yyclass91818
-Node: Options for Scanner Speed and Size92304
-Ref: option-align92853
-Ref: option-ecs93354
-Ref: option-meta-ecs94390
-Ref: option-read94877
-Ref: option-full96760
-Ref: option-fast96955
-Node: Debugging Options97881
-Ref: option-backup98068
-Ref: option-debug98613
-Ref: option-perf-report99336
-Ref: option-nodefault99962
-Ref: option-trace100280
-Ref: option-nowarn100571
-Ref: option-verbose100639
-Ref: option-warn101068
-Node: Miscellaneous Options101287
-Node: Performance101744
-Node: Cxx112008
-Node: Reentrant119531
-Node: Reentrant Uses120208
-Node: Reentrant Overview121771
-Node: Reentrant Example122570
-Node: Reentrant Detail123345
-Node: Specify Reentrant123778
-Node: Extra Reentrant Argument124425
-Node: Global Replacement125677
-Node: Init and Destroy Functions126906
-Node: Accessor Methods129418
-Node: Extra Data130762
-Node: About yyscan_t133029
-Node: Reentrant Functions133425
-Ref: bison-functions134909
-Node: Lex and Posix135650
-Node: Memory Management143034
-Ref: memory-management143180
-Node: The Default Memory Management143408
-Ref: The Default Memory Management-Footnote-1147217
-Node: Overriding The Default Memory Management147370
-Ref: Overriding The Default Memory Management-Footnote-1149769
-Node: A Note About yytext And Memory149933
-Node: Serialized Tables151166
-Ref: serialization151310
-Node: Creating Serialized Tables152075
-Node: Loading and Unloading Serialized Tables153685
-Node: Tables File Format155453
-Node: Diagnostics162468
-Node: Limitations165879
-Node: Bibliography167828
-Node: FAQ168501
-Node: When was flex born?172741
-Node: How do I expand backslash-escape sequences in C-style quoted strings?173118
-Node: Why do flex scanners call fileno if it is not ANSI compatible?174422
-Node: Does flex support recursive pattern definitions?175217
-Node: How do I skip huge chunks of input (tens of megabytes) while using flex?176064
-Node: Flex is not matching my patterns in the same order that I defined them.176531
-Node: My actions are executing out of order or sometimes not at all.178277
-Node: How can I have multiple input sources feed into the same scanner at the same time?179052
-Node: Can I build nested parsers that work with the same input file?181040
-Node: How can I match text only at the end of a file?182046
-Node: How can I make REJECT cascade across start condition boundaries?182851
-Node: Why cant I use fast or full tables with interactive mode?183866
-Node: How much faster is -F or -f than -C?185124
-Node: If I have a simple grammar cant I just parse it with flex?185436
-Node: Why doesn't yyrestart() set the start state back to INITIAL?185917
-Node: How can I match C-style comments?186544
-Node: The period isn't working the way I expected.187358
-Node: Can I get the flex manual in another format?188605
-Node: Does there exist a "faster" NDFA->DFA algorithm?189094
-Node: How does flex compile the DFA so quickly?189604
-Node: How can I use more than 8192 rules?190571
-Node: How do I abandon a file in the middle of a scan and switch to a new file?191983
-Node: How do I execute code only during initialization (only before the first scan)?192536
-Node: How do I execute code at termination?193314
-Node: Where else can I find help?193640
-Node: Can I include comments in the "rules" section of the file?194013
-Node: I get an error about undefined yywrap().194392
-Node: How can I change the matching pattern at run time?194869
-Node: How can I expand macros in the input?195231
-Node: How can I build a two-pass scanner?196264
-Node: How do I match any string not matched in the preceding rules?197180
-Node: I am trying to port code from AT&T lex that uses yysptr and yysbuf.198090
-Node: Is there a way to make flex treat NULL like a regular character?198885
-Node: Whenever flex can not match the input it says "flex scanner jammed".199406
-Node: Why doesn't flex have non-greedy operators like perl does?200050
-Node: Memory leak - 16386 bytes allocated by malloc.201403
-Ref: faq-memory-leak201701
-Node: How do I track the byte offset for lseek()?202669
-Node: How do I use my own I/O classes in a C++ scanner?204180
-Node: How do I skip as many chars as possible?205023
-Node: deleteme00206100
-Node: Are certain equivalent patterns faster than others?206541
-Node: Is backing up a big deal?209960
-Node: Can I fake multi-byte character support?211867
-Node: deleteme01213309
-Node: Can you discuss some flex internals?214419
-Node: unput() messes up yy_at_bol216664
-Node: The | operator is not doing what I want217767
-Node: Why can't flex understand this variable trailing context pattern?219314
-Node: The ^ operator isn't working220564
-Node: Trailing context is getting confused with trailing optional patterns221800
-Node: Is flex GNU or not?223044
-Node: ERASEME53224718
-Node: I need to scan if-then-else blocks and while loops225489
-Node: ERASEME55226689
-Node: ERASEME56227788
-Node: ERASEME57229147
-Node: Is there a repository for flex scanners?230146
-Node: How can I conditionally compile or preprocess my flex input file?230461
-Node: Where can I find grammars for lex and yacc?230934
-Node: I get an end-of-buffer message for each character scanned.231281
-Node: unnamed-faq-62231876
-Node: unnamed-faq-63232895
-Node: unnamed-faq-64234193
-Node: unnamed-faq-65235160
-Node: unnamed-faq-66235947
-Node: unnamed-faq-67237063
-Node: unnamed-faq-68238051
-Node: unnamed-faq-69239194
-Node: unnamed-faq-70239908
-Node: unnamed-faq-71240670
-Node: unnamed-faq-72241880
-Node: unnamed-faq-73242924
-Node: unnamed-faq-74243849
-Node: unnamed-faq-75244795
-Node: unnamed-faq-76245928
-Node: unnamed-faq-77246635
-Node: unnamed-faq-78247529
-Node: unnamed-faq-79248528
-Node: unnamed-faq-80250229
-Node: unnamed-faq-81251548
-Node: unnamed-faq-82254349
-Node: unnamed-faq-83255307
-Node: unnamed-faq-84257088
-Node: unnamed-faq-85258192
-Node: unnamed-faq-86259200
-Node: unnamed-faq-87260139
-Node: unnamed-faq-88260786
-Node: unnamed-faq-90261618
-Node: unnamed-faq-91262882
-Node: unnamed-faq-92265311
-Node: unnamed-faq-93265811
-Node: unnamed-faq-94266739
-Node: unnamed-faq-95268152
-Node: unnamed-faq-96269671
-Node: unnamed-faq-97270431
-Node: unnamed-faq-98271099
-Node: unnamed-faq-99271765
-Node: unnamed-faq-100272695
-Node: unnamed-faq-101273406
-Node: What is the difference between YYLEX_PARAM and YY_DECL?274220
-Node: Why do I get "conflicting types for yylex" error?274742
-Node: How do I access the values set in a Flex action from within a Bison action?275272
-Node: Appendices275703
-Node: Makefiles and Flex275912
-Ref: Makefiles and Flex-Footnote-1279112
-Ref: Makefiles and Flex-Footnote-2279229
-Ref: Makefiles and Flex-Footnote-3279415
-Node: Bison Bridge279466
-Ref: Bison Bridge-Footnote-1282135
-Node: M4 Dependency282327
-Ref: M4 Dependency-Footnote-1283732
-Node: Common Patterns283867
-Node: Numbers284158
-Node: Identifiers285135
-Node: Quoted Constructs285964
-Node: Addresses287017
-Node: Indices287683
-Node: Concept Index287921
-Node: Index of Functions and Macros313204
-Node: Index of Variables318100
-Node: Index of Data Types319766
-Node: Index of Hooks320654
-Node: Index of Scanner Options321222
-
-End Tag Table
diff --git a/doc/flex.info-1 b/doc/flex.info-1
deleted file mode 100644
index 25f61b352a56..000000000000
--- a/doc/flex.info-1
+++ /dev/null
@@ -1,7683 +0,0 @@
-This is flex.info, produced by makeinfo version 4.8 from flex.texi.
-
-INFO-DIR-SECTION Programming
-START-INFO-DIR-ENTRY
-* flex: (flex). Fast lexical analyzer generator (lex replacement).
-END-INFO-DIR-ENTRY
-
- The flex manual is placed under the same licensing conditions as the
-rest of flex:
-
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 The Flex
-Project.
-
- Copyright (C) 1990, 1997 The Regents of the University of California.
-All rights reserved.
-
- This code is derived from software contributed to Berkeley by Vern
-Paxson.
-
- The United States Government has rights in this work pursuant to
-contract no. DE-AC03-76SF00098 between the United States Department of
-Energy and the University of California.
-
- Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the
- distribution.
-
- Neither the name of the University nor the names of its contributors
-may be used to endorse or promote products derived from this software
-without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
-WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-
-File: flex.info, Node: Top, Next: Copyright, Prev: (dir), Up: (dir)
-
-flex
-****
-
-This manual describes `flex', a tool for generating programs that
-perform pattern-matching on text. The manual includes both tutorial and
-reference sections.
-
- This edition of `The flex Manual' documents `flex' version 2.5.35.
-It was last updated on 10 September 2007.
-
- This manual was written by Vern Paxson, Will Estes and John Millaway.
-
-* Menu:
-
-* Copyright::
-* Reporting Bugs::
-* Introduction::
-* Simple Examples::
-* Format::
-* Patterns::
-* Matching::
-* Actions::
-* Generated Scanner::
-* Start Conditions::
-* Multiple Input Buffers::
-* EOF::
-* Misc Macros::
-* User Values::
-* Yacc::
-* Scanner Options::
-* Performance::
-* Cxx::
-* Reentrant::
-* Lex and Posix::
-* Memory Management::
-* Serialized Tables::
-* Diagnostics::
-* Limitations::
-* Bibliography::
-* FAQ::
-* Appendices::
-* Indices::
-
- --- The Detailed Node Listing ---
-
-Format of the Input File
-
-* Definitions Section::
-* Rules Section::
-* User Code Section::
-* Comments in the Input::
-
-Scanner Options
-
-* Options for Specifying Filenames::
-* Options Affecting Scanner Behavior::
-* Code-Level And API Options::
-* Options for Scanner Speed and Size::
-* Debugging Options::
-* Miscellaneous Options::
-
-Reentrant C Scanners
-
-* Reentrant Uses::
-* Reentrant Overview::
-* Reentrant Example::
-* Reentrant Detail::
-* Reentrant Functions::
-
-The Reentrant API in Detail
-
-* Specify Reentrant::
-* Extra Reentrant Argument::
-* Global Replacement::
-* Init and Destroy Functions::
-* Accessor Methods::
-* Extra Data::
-* About yyscan_t::
-
-Memory Management
-
-* The Default Memory Management::
-* Overriding The Default Memory Management::
-* A Note About yytext And Memory::
-
-Serialized Tables
-
-* Creating Serialized Tables::
-* Loading and Unloading Serialized Tables::
-* Tables File Format::
-
-FAQ
-
-* When was flex born?::
-* How do I expand backslash-escape sequences in C-style quoted strings?::
-* Why do flex scanners call fileno if it is not ANSI compatible?::
-* Does flex support recursive pattern definitions?::
-* How do I skip huge chunks of input (tens of megabytes) while using flex?::
-* Flex is not matching my patterns in the same order that I defined them.::
-* My actions are executing out of order or sometimes not at all.::
-* How can I have multiple input sources feed into the same scanner at the same time?::
-* Can I build nested parsers that work with the same input file?::
-* How can I match text only at the end of a file?::
-* How can I make REJECT cascade across start condition boundaries?::
-* Why cant I use fast or full tables with interactive mode?::
-* How much faster is -F or -f than -C?::
-* If I have a simple grammar cant I just parse it with flex?::
-* Why doesn't yyrestart() set the start state back to INITIAL?::
-* How can I match C-style comments?::
-* The period isn't working the way I expected.::
-* Can I get the flex manual in another format?::
-* Does there exist a "faster" NDFA->DFA algorithm?::
-* How does flex compile the DFA so quickly?::
-* How can I use more than 8192 rules?::
-* How do I abandon a file in the middle of a scan and switch to a new file?::
-* How do I execute code only during initialization (only before the first scan)?::
-* How do I execute code at termination?::
-* Where else can I find help?::
-* Can I include comments in the "rules" section of the file?::
-* I get an error about undefined yywrap().::
-* How can I change the matching pattern at run time?::
-* How can I expand macros in the input?::
-* How can I build a two-pass scanner?::
-* How do I match any string not matched in the preceding rules?::
-* I am trying to port code from AT&T lex that uses yysptr and yysbuf.::
-* Is there a way to make flex treat NULL like a regular character?::
-* Whenever flex can not match the input it says "flex scanner jammed".::
-* Why doesn't flex have non-greedy operators like perl does?::
-* Memory leak - 16386 bytes allocated by malloc.::
-* How do I track the byte offset for lseek()?::
-* How do I use my own I/O classes in a C++ scanner?::
-* How do I skip as many chars as possible?::
-* deleteme00::
-* Are certain equivalent patterns faster than others?::
-* Is backing up a big deal?::
-* Can I fake multi-byte character support?::
-* deleteme01::
-* Can you discuss some flex internals?::
-* unput() messes up yy_at_bol::
-* The | operator is not doing what I want::
-* Why can't flex understand this variable trailing context pattern?::
-* The ^ operator isn't working::
-* Trailing context is getting confused with trailing optional patterns::
-* Is flex GNU or not?::
-* ERASEME53::
-* I need to scan if-then-else blocks and while loops::
-* ERASEME55::
-* ERASEME56::
-* ERASEME57::
-* Is there a repository for flex scanners?::
-* How can I conditionally compile or preprocess my flex input file?::
-* Where can I find grammars for lex and yacc?::
-* I get an end-of-buffer message for each character scanned.::
-* unnamed-faq-62::
-* unnamed-faq-63::
-* unnamed-faq-64::
-* unnamed-faq-65::
-* unnamed-faq-66::
-* unnamed-faq-67::
-* unnamed-faq-68::
-* unnamed-faq-69::
-* unnamed-faq-70::
-* unnamed-faq-71::
-* unnamed-faq-72::
-* unnamed-faq-73::
-* unnamed-faq-74::
-* unnamed-faq-75::
-* unnamed-faq-76::
-* unnamed-faq-77::
-* unnamed-faq-78::
-* unnamed-faq-79::
-* unnamed-faq-80::
-* unnamed-faq-81::
-* unnamed-faq-82::
-* unnamed-faq-83::
-* unnamed-faq-84::
-* unnamed-faq-85::
-* unnamed-faq-86::
-* unnamed-faq-87::
-* unnamed-faq-88::
-* unnamed-faq-90::
-* unnamed-faq-91::
-* unnamed-faq-92::
-* unnamed-faq-93::
-* unnamed-faq-94::
-* unnamed-faq-95::
-* unnamed-faq-96::
-* unnamed-faq-97::
-* unnamed-faq-98::
-* unnamed-faq-99::
-* unnamed-faq-100::
-* unnamed-faq-101::
-* What is the difference between YYLEX_PARAM and YY_DECL?::
-* Why do I get "conflicting types for yylex" error?::
-* How do I access the values set in a Flex action from within a Bison action?::
-
-Appendices
-
-* Makefiles and Flex::
-* Bison Bridge::
-* M4 Dependency::
-* Common Patterns::
-
-Indices
-
-* Concept Index::
-* Index of Functions and Macros::
-* Index of Variables::
-* Index of Data Types::
-* Index of Hooks::
-* Index of Scanner Options::
-
-
-File: flex.info, Node: Copyright, Next: Reporting Bugs, Prev: Top, Up: Top
-
-1 Copyright
-***********
-
-The flex manual is placed under the same licensing conditions as the
-rest of flex:
-
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 The Flex
-Project.
-
- Copyright (C) 1990, 1997 The Regents of the University of California.
-All rights reserved.
-
- This code is derived from software contributed to Berkeley by Vern
-Paxson.
-
- The United States Government has rights in this work pursuant to
-contract no. DE-AC03-76SF00098 between the United States Department of
-Energy and the University of California.
-
- Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the
- distribution.
-
- Neither the name of the University nor the names of its contributors
-may be used to endorse or promote products derived from this software
-without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
-WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-
-File: flex.info, Node: Reporting Bugs, Next: Introduction, Prev: Copyright, Up: Top
-
-2 Reporting Bugs
-****************
-
-If you find a bug in `flex', please report it using the SourceForge Bug
-Tracking facilities which can be found on flex's SourceForge Page
-(http://sourceforge.net/projects/flex).
-
-
-File: flex.info, Node: Introduction, Next: Simple Examples, Prev: Reporting Bugs, Up: Top
-
-3 Introduction
-**************
-
-`flex' is a tool for generating "scanners". A scanner is a program
-which recognizes lexical patterns in text. The `flex' program reads
-the given input files, or its standard input if no file names are
-given, for a description of a scanner to generate. The description is
-in the form of pairs of regular expressions and C code, called "rules".
-`flex' generates as output a C source file, `lex.yy.c' by default,
-which defines a routine `yylex()'. This file can be compiled and
-linked with the flex runtime library to produce an executable. When
-the executable is run, it analyzes its input for occurrences of the
-regular expressions. Whenever it finds one, it executes the
-corresponding C code.
-
-
-File: flex.info, Node: Simple Examples, Next: Format, Prev: Introduction, Up: Top
-
-4 Some Simple Examples
-**********************
-
-First some simple examples to get the flavor of how one uses `flex'.
-
- The following `flex' input specifies a scanner which, when it
-encounters the string `username' will replace it with the user's login
-name:
-
-
- %%
- username printf( "%s", getlogin() );
-
- By default, any text not matched by a `flex' scanner is copied to
-the output, so the net effect of this scanner is to copy its input file
-to its output with each occurrence of `username' expanded. In this
-input, there is just one rule. `username' is the "pattern" and the
-`printf' is the "action". The `%%' symbol marks the beginning of the
-rules.
-
- Here's another simple example:
-
-
- int num_lines = 0, num_chars = 0;
-
- %%
- \n ++num_lines; ++num_chars;
- . ++num_chars;
-
- %%
- main()
- {
- yylex();
- printf( "# of lines = %d, # of chars = %d\n",
- num_lines, num_chars );
- }
-
- This scanner counts the number of characters and the number of lines
-in its input. It produces no output other than the final report on the
-character and line counts. The first line declares two globals,
-`num_lines' and `num_chars', which are accessible both inside `yylex()'
-and in the `main()' routine declared after the second `%%'. There are
-two rules, one which matches a newline (`\n') and increments both the
-line count and the character count, and one which matches any character
-other than a newline (indicated by the `.' regular expression).
-
- A somewhat more complicated example:
-
-
- /* scanner for a toy Pascal-like language */
-
- %{
- /* need this for the call to atof() below */
- #include math.h>
- %}
-
- DIGIT [0-9]
- ID [a-z][a-z0-9]*
-
- %%
-
- {DIGIT}+ {
- printf( "An integer: %s (%d)\n", yytext,
- atoi( yytext ) );
- }
-
- {DIGIT}+"."{DIGIT}* {
- printf( "A float: %s (%g)\n", yytext,
- atof( yytext ) );
- }
-
- if|then|begin|end|procedure|function {
- printf( "A keyword: %s\n", yytext );
- }
-
- {ID} printf( "An identifier: %s\n", yytext );
-
- "+"|"-"|"*"|"/" printf( "An operator: %s\n", yytext );
-
- "{"[\^{}}\n]*"}" /* eat up one-line comments */
-
- [ \t\n]+ /* eat up whitespace */
-
- . printf( "Unrecognized character: %s\n", yytext );
-
- %%
-
- main( argc, argv )
- int argc;
- char **argv;
- {
- ++argv, --argc; /* skip over program name */
- if ( argc > 0 )
- yyin = fopen( argv[0], "r" );
- else
- yyin = stdin;
-
- yylex();
- }
-
- This is the beginnings of a simple scanner for a language like
-Pascal. It identifies different types of "tokens" and reports on what
-it has seen.
-
- The details of this example will be explained in the following
-sections.
-
-
-File: flex.info, Node: Format, Next: Patterns, Prev: Simple Examples, Up: Top
-
-5 Format of the Input File
-**************************
-
-The `flex' input file consists of three sections, separated by a line
-containing only `%%'.
-
-
- definitions
- %%
- rules
- %%
- user code
-
-* Menu:
-
-* Definitions Section::
-* Rules Section::
-* User Code Section::
-* Comments in the Input::
-
-
-File: flex.info, Node: Definitions Section, Next: Rules Section, Prev: Format, Up: Format
-
-5.1 Format of the Definitions Section
-=====================================
-
-The "definitions section" contains declarations of simple "name"
-definitions to simplify the scanner specification, and declarations of
-"start conditions", which are explained in a later section.
-
- Name definitions have the form:
-
-
- name definition
-
- The `name' is a word beginning with a letter or an underscore (`_')
-followed by zero or more letters, digits, `_', or `-' (dash). The
-definition is taken to begin at the first non-whitespace character
-following the name and continuing to the end of the line. The
-definition can subsequently be referred to using `{name}', which will
-expand to `(definition)'. For example,
-
-
- DIGIT [0-9]
- ID [a-z][a-z0-9]*
-
- Defines `DIGIT' to be a regular expression which matches a single
-digit, and `ID' to be a regular expression which matches a letter
-followed by zero-or-more letters-or-digits. A subsequent reference to
-
-
- {DIGIT}+"."{DIGIT}*
-
- is identical to
-
-
- ([0-9])+"."([0-9])*
-
- and matches one-or-more digits followed by a `.' followed by
-zero-or-more digits.
-
- An unindented comment (i.e., a line beginning with `/*') is copied
-verbatim to the output up to the next `*/'.
-
- Any _indented_ text or text enclosed in `%{' and `%}' is also copied
-verbatim to the output (with the %{ and %} symbols removed). The %{
-and %} symbols must appear unindented on lines by themselves.
-
- A `%top' block is similar to a `%{' ... `%}' block, except that the
-code in a `%top' block is relocated to the _top_ of the generated file,
-before any flex definitions (1). The `%top' block is useful when you
-want certain preprocessor macros to be defined or certain files to be
-included before the generated code. The single characters, `{' and
-`}' are used to delimit the `%top' block, as show in the example below:
-
-
- %top{
- /* This code goes at the "top" of the generated file. */
- #include <stdint.h>
- #include <inttypes.h>
- }
-
- Multiple `%top' blocks are allowed, and their order is preserved.
-
- ---------- Footnotes ----------
-
- (1) Actually, `yyIN_HEADER' is defined before the `%top' block.
-
-
-File: flex.info, Node: Rules Section, Next: User Code Section, Prev: Definitions Section, Up: Format
-
-5.2 Format of the Rules Section
-===============================
-
-The "rules" section of the `flex' input contains a series of rules of
-the form:
-
-
- pattern action
-
- where the pattern must be unindented and the action must begin on
-the same line. *Note Patterns::, for a further description of patterns
-and actions.
-
- In the rules section, any indented or %{ %} enclosed text appearing
-before the first rule may be used to declare variables which are local
-to the scanning routine and (after the declarations) code which is to be
-executed whenever the scanning routine is entered. Other indented or
-%{ %} text in the rule section is still copied to the output, but its
-meaning is not well-defined and it may well cause compile-time errors
-(this feature is present for POSIX compliance. *Note Lex and Posix::,
-for other such features).
-
- Any _indented_ text or text enclosed in `%{' and `%}' is copied
-verbatim to the output (with the %{ and %} symbols removed). The %{
-and %} symbols must appear unindented on lines by themselves.
-
-
-File: flex.info, Node: User Code Section, Next: Comments in the Input, Prev: Rules Section, Up: Format
-
-5.3 Format of the User Code Section
-===================================
-
-The user code section is simply copied to `lex.yy.c' verbatim. It is
-used for companion routines which call or are called by the scanner.
-The presence of this section is optional; if it is missing, the second
-`%%' in the input file may be skipped, too.
-
-
-File: flex.info, Node: Comments in the Input, Prev: User Code Section, Up: Format
-
-5.4 Comments in the Input
-=========================
-
-Flex supports C-style comments, that is, anything between `/*' and `*/'
-is considered a comment. Whenever flex encounters a comment, it copies
-the entire comment verbatim to the generated source code. Comments may
-appear just about anywhere, but with the following exceptions:
-
- * Comments may not appear in the Rules Section wherever flex is
- expecting a regular expression. This means comments may not appear
- at the beginning of a line, or immediately following a list of
- scanner states.
-
- * Comments may not appear on an `%option' line in the Definitions
- Section.
-
- If you want to follow a simple rule, then always begin a comment on a
-new line, with one or more whitespace characters before the initial
-`/*'). This rule will work anywhere in the input file.
-
- All the comments in the following example are valid:
-
-
- %{
- /* code block */
- %}
-
- /* Definitions Section */
- %x STATE_X
-
- %%
- /* Rules Section */
- ruleA /* after regex */ { /* code block */ } /* after code block */
- /* Rules Section (indented) */
- <STATE_X>{
- ruleC ECHO;
- ruleD ECHO;
- %{
- /* code block */
- %}
- }
- %%
- /* User Code Section */
-
-
-File: flex.info, Node: Patterns, Next: Matching, Prev: Format, Up: Top
-
-6 Patterns
-**********
-
-The patterns in the input (see *Note Rules Section::) are written using
-an extended set of regular expressions. These are:
-
-`x'
- match the character 'x'
-
-`.'
- any character (byte) except newline
-
-`[xyz]'
- a "character class"; in this case, the pattern matches either an
- 'x', a 'y', or a 'z'
-
-`[abj-oZ]'
- a "character class" with a range in it; matches an 'a', a 'b', any
- letter from 'j' through 'o', or a 'Z'
-
-`[^A-Z]'
- a "negated character class", i.e., any character but those in the
- class. In this case, any character EXCEPT an uppercase letter.
-
-`[^A-Z\n]'
- any character EXCEPT an uppercase letter or a newline
-
-`[a-z]{-}[aeiou]'
- the lowercase consonants
-
-`r*'
- zero or more r's, where r is any regular expression
-
-`r+'
- one or more r's
-
-`r?'
- zero or one r's (that is, "an optional r")
-
-`r{2,5}'
- anywhere from two to five r's
-
-`r{2,}'
- two or more r's
-
-`r{4}'
- exactly 4 r's
-
-`{name}'
- the expansion of the `name' definition (*note Format::).
-
-`"[xyz]\"foo"'
- the literal string: `[xyz]"foo'
-
-`\X'
- if X is `a', `b', `f', `n', `r', `t', or `v', then the ANSI-C
- interpretation of `\x'. Otherwise, a literal `X' (used to escape
- operators such as `*')
-
-`\0'
- a NUL character (ASCII code 0)
-
-`\123'
- the character with octal value 123
-
-`\x2a'
- the character with hexadecimal value 2a
-
-`(r)'
- match an `r'; parentheses are used to override precedence (see
- below)
-
-`(?r-s:pattern)'
- apply option `r' and omit option `s' while interpreting pattern.
- Options may be zero or more of the characters `i', `s', or `x'.
-
- `i' means case-insensitive. `-i' means case-sensitive.
-
- `s' alters the meaning of the `.' syntax to match any single byte
- whatsoever. `-s' alters the meaning of `.' to match any byte
- except `\n'.
-
- `x' ignores comments and whitespace in patterns. Whitespace is
- ignored unless it is backslash-escaped, contained within `""'s, or
- appears inside a character class.
-
- The following are all valid:
-
-
- (?:foo) same as (foo)
- (?i:ab7) same as ([aA][bB]7)
- (?-i:ab) same as (ab)
- (?s:.) same as [\x00-\xFF]
- (?-s:.) same as [^\n]
- (?ix-s: a . b) same as ([Aa][^\n][bB])
- (?x:a b) same as ("ab")
- (?x:a\ b) same as ("a b")
- (?x:a" "b) same as ("a b")
- (?x:a[ ]b) same as ("a b")
- (?x:a
- /* comment */
- b
- c) same as (abc)
-
-`(?# comment )'
- omit everything within `()'. The first `)' character encountered
- ends the pattern. It is not possible to for the comment to contain
- a `)' character. The comment may span lines.
-
-`rs'
- the regular expression `r' followed by the regular expression `s';
- called "concatenation"
-
-`r|s'
- either an `r' or an `s'
-
-`r/s'
- an `r' but only if it is followed by an `s'. The text matched by
- `s' is included when determining whether this rule is the longest
- match, but is then returned to the input before the action is
- executed. So the action only sees the text matched by `r'. This
- type of pattern is called "trailing context". (There are some
- combinations of `r/s' that flex cannot match correctly. *Note
- Limitations::, regarding dangerous trailing context.)
-
-`^r'
- an `r', but only at the beginning of a line (i.e., when just
- starting to scan, or right after a newline has been scanned).
-
-`r$'
- an `r', but only at the end of a line (i.e., just before a
- newline). Equivalent to `r/\n'.
-
- Note that `flex''s notion of "newline" is exactly whatever the C
- compiler used to compile `flex' interprets `\n' as; in particular,
- on some DOS systems you must either filter out `\r's in the input
- yourself, or explicitly use `r/\r\n' for `r$'.
-
-`<s>r'
- an `r', but only in start condition `s' (see *Note Start
- Conditions:: for discussion of start conditions).
-
-`<s1,s2,s3>r'
- same, but in any of start conditions `s1', `s2', or `s3'.
-
-`<*>r'
- an `r' in any start condition, even an exclusive one.
-
-`<<EOF>>'
- an end-of-file.
-
-`<s1,s2><<EOF>>'
- an end-of-file when in start condition `s1' or `s2'
-
- Note that inside of a character class, all regular expression
-operators lose their special meaning except escape (`\') and the
-character class operators, `-', `]]', and, at the beginning of the
-class, `^'.
-
- The regular expressions listed above are grouped according to
-precedence, from highest precedence at the top to lowest at the bottom.
-Those grouped together have equal precedence (see special note on the
-precedence of the repeat operator, `{}', under the documentation for
-the `--posix' POSIX compliance option). For example,
-
-
- foo|bar*
-
- is the same as
-
-
- (foo)|(ba(r*))
-
- since the `*' operator has higher precedence than concatenation, and
-concatenation higher than alternation (`|'). This pattern therefore
-matches _either_ the string `foo' _or_ the string `ba' followed by
-zero-or-more `r''s. To match `foo' or zero-or-more repetitions of the
-string `bar', use:
-
-
- foo|(bar)*
-
- And to match a sequence of zero or more repetitions of `foo' and
-`bar':
-
-
- (foo|bar)*
-
- In addition to characters and ranges of characters, character classes
-can also contain "character class expressions". These are expressions
-enclosed inside `[': and `:]' delimiters (which themselves must appear
-between the `[' and `]' of the character class. Other elements may
-occur inside the character class, too). The valid expressions are:
-
-
- [:alnum:] [:alpha:] [:blank:]
- [:cntrl:] [:digit:] [:graph:]
- [:lower:] [:print:] [:punct:]
- [:space:] [:upper:] [:xdigit:]
-
- These expressions all designate a set of characters equivalent to the
-corresponding standard C `isXXX' function. For example, `[:alnum:]'
-designates those characters for which `isalnum()' returns true - i.e.,
-any alphabetic or numeric character. Some systems don't provide
-`isblank()', so flex defines `[:blank:]' as a blank or a tab.
-
- For example, the following character classes are all equivalent:
-
-
- [[:alnum:]]
- [[:alpha:][:digit:]]
- [[:alpha:][0-9]]
- [a-zA-Z0-9]
-
- A word of caution. Character classes are expanded immediately when
-seen in the `flex' input. This means the character classes are
-sensitive to the locale in which `flex' is executed, and the resulting
-scanner will not be sensitive to the runtime locale. This may or may
-not be desirable.
-
- * If your scanner is case-insensitive (the `-i' flag), then
- `[:upper:]' and `[:lower:]' are equivalent to `[:alpha:]'.
-
- * Character classes with ranges, such as `[a-Z]', should be used with
- caution in a case-insensitive scanner if the range spans upper or
- lowercase characters. Flex does not know if you want to fold all
- upper and lowercase characters together, or if you want the
- literal numeric range specified (with no case folding). When in
- doubt, flex will assume that you meant the literal numeric range,
- and will issue a warning. The exception to this rule is a
- character range such as `[a-z]' or `[S-W]' where it is obvious
- that you want case-folding to occur. Here are some examples with
- the `-i' flag enabled:
-
- Range Result Literal Range Alternate Range
- `[a-t]' ok `[a-tA-T]'
- `[A-T]' ok `[a-tA-T]'
- `[A-t]' ambiguous `[A-Z\[\\\]_`a-t]' `[a-tA-T]'
- `[_-{]' ambiguous `[_`a-z{]' `[_`a-zA-Z{]'
- `[@-C]' ambiguous `[@ABC]' `[@A-Z\[\\\]_`abc]'
-
- * A negated character class such as the example `[^A-Z]' above
- _will_ match a newline unless `\n' (or an equivalent escape
- sequence) is one of the characters explicitly present in the
- negated character class (e.g., `[^A-Z\n]'). This is unlike how
- many other regular expression tools treat negated character
- classes, but unfortunately the inconsistency is historically
- entrenched. Matching newlines means that a pattern like `[^"]*'
- can match the entire input unless there's another quote in the
- input.
-
- Flex allows negation of character class expressions by prepending
- `^' to the POSIX character class name.
-
-
- [:^alnum:] [:^alpha:] [:^blank:]
- [:^cntrl:] [:^digit:] [:^graph:]
- [:^lower:] [:^print:] [:^punct:]
- [:^space:] [:^upper:] [:^xdigit:]
-
- Flex will issue a warning if the expressions `[:^upper:]' and
- `[:^lower:]' appear in a case-insensitive scanner, since their
- meaning is unclear. The current behavior is to skip them entirely,
- but this may change without notice in future revisions of flex.
-
- * The `{-}' operator computes the difference of two character
- classes. For example, `[a-c]{-}[b-z]' represents all the
- characters in the class `[a-c]' that are not in the class `[b-z]'
- (which in this case, is just the single character `a'). The `{-}'
- operator is left associative, so `[abc]{-}[b]{-}[c]' is the same
- as `[a]'. Be careful not to accidentally create an empty set,
- which will never match.
-
- * The `{+}' operator computes the union of two character classes.
- For example, `[a-z]{+}[0-9]' is the same as `[a-z0-9]'. This
- operator is useful when preceded by the result of a difference
- operation, as in, `[[:alpha:]]{-}[[:lower:]]{+}[q]', which is
- equivalent to `[A-Zq]' in the "C" locale.
-
- * A rule can have at most one instance of trailing context (the `/'
- operator or the `$' operator). The start condition, `^', and
- `<<EOF>>' patterns can only occur at the beginning of a pattern,
- and, as well as with `/' and `$', cannot be grouped inside
- parentheses. A `^' which does not occur at the beginning of a
- rule or a `$' which does not occur at the end of a rule loses its
- special properties and is treated as a normal character.
-
- * The following are invalid:
-
-
- foo/bar$
- <sc1>foo<sc2>bar
-
- Note that the first of these can be written `foo/bar\n'.
-
- * The following will result in `$' or `^' being treated as a normal
- character:
-
-
- foo|(bar$)
- foo|^bar
-
- If the desired meaning is a `foo' or a
- `bar'-followed-by-a-newline, the following could be used (the
- special `|' action is explained below, *note Actions::):
-
-
- foo |
- bar$ /* action goes here */
-
- A similar trick will work for matching a `foo' or a
- `bar'-at-the-beginning-of-a-line.
-
-
-File: flex.info, Node: Matching, Next: Actions, Prev: Patterns, Up: Top
-
-7 How the Input Is Matched
-**************************
-
-When the generated scanner is run, it analyzes its input looking for
-strings which match any of its patterns. If it finds more than one
-match, it takes the one matching the most text (for trailing context
-rules, this includes the length of the trailing part, even though it
-will then be returned to the input). If it finds two or more matches of
-the same length, the rule listed first in the `flex' input file is
-chosen.
-
- Once the match is determined, the text corresponding to the match
-(called the "token") is made available in the global character pointer
-`yytext', and its length in the global integer `yyleng'. The "action"
-corresponding to the matched pattern is then executed (*note
-Actions::), and then the remaining input is scanned for another match.
-
- If no match is found, then the "default rule" is executed: the next
-character in the input is considered matched and copied to the standard
-output. Thus, the simplest valid `flex' input is:
-
-
- %%
-
- which generates a scanner that simply copies its input (one
-character at a time) to its output.
-
- Note that `yytext' can be defined in two different ways: either as a
-character _pointer_ or as a character _array_. You can control which
-definition `flex' uses by including one of the special directives
-`%pointer' or `%array' in the first (definitions) section of your flex
-input. The default is `%pointer', unless you use the `-l' lex
-compatibility option, in which case `yytext' will be an array. The
-advantage of using `%pointer' is substantially faster scanning and no
-buffer overflow when matching very large tokens (unless you run out of
-dynamic memory). The disadvantage is that you are restricted in how
-your actions can modify `yytext' (*note Actions::), and calls to the
-`unput()' function destroys the present contents of `yytext', which can
-be a considerable porting headache when moving between different `lex'
-versions.
-
- The advantage of `%array' is that you can then modify `yytext' to
-your heart's content, and calls to `unput()' do not destroy `yytext'
-(*note Actions::). Furthermore, existing `lex' programs sometimes
-access `yytext' externally using declarations of the form:
-
-
- extern char yytext[];
-
- This definition is erroneous when used with `%pointer', but correct
-for `%array'.
-
- The `%array' declaration defines `yytext' to be an array of `YYLMAX'
-characters, which defaults to a fairly large value. You can change the
-size by simply #define'ing `YYLMAX' to a different value in the first
-section of your `flex' input. As mentioned above, with `%pointer'
-yytext grows dynamically to accommodate large tokens. While this means
-your `%pointer' scanner can accommodate very large tokens (such as
-matching entire blocks of comments), bear in mind that each time the
-scanner must resize `yytext' it also must rescan the entire token from
-the beginning, so matching such tokens can prove slow. `yytext'
-presently does _not_ dynamically grow if a call to `unput()' results in
-too much text being pushed back; instead, a run-time error results.
-
- Also note that you cannot use `%array' with C++ scanner classes
-(*note Cxx::).
-
-
-File: flex.info, Node: Actions, Next: Generated Scanner, Prev: Matching, Up: Top
-
-8 Actions
-*********
-
-Each pattern in a rule has a corresponding "action", which can be any
-arbitrary C statement. The pattern ends at the first non-escaped
-whitespace character; the remainder of the line is its action. If the
-action is empty, then when the pattern is matched the input token is
-simply discarded. For example, here is the specification for a program
-which deletes all occurrences of `zap me' from its input:
-
-
- %%
- "zap me"
-
- This example will copy all other characters in the input to the
-output since they will be matched by the default rule.
-
- Here is a program which compresses multiple blanks and tabs down to a
-single blank, and throws away whitespace found at the end of a line:
-
-
- %%
- [ \t]+ putchar( ' ' );
- [ \t]+$ /* ignore this token */
-
- If the action contains a `{', then the action spans till the
-balancing `}' is found, and the action may cross multiple lines.
-`flex' knows about C strings and comments and won't be fooled by braces
-found within them, but also allows actions to begin with `%{' and will
-consider the action to be all the text up to the next `%}' (regardless
-of ordinary braces inside the action).
-
- An action consisting solely of a vertical bar (`|') means "same as
-the action for the next rule". See below for an illustration.
-
- Actions can include arbitrary C code, including `return' statements
-to return a value to whatever routine called `yylex()'. Each time
-`yylex()' is called it continues processing tokens from where it last
-left off until it either reaches the end of the file or executes a
-return.
-
- Actions are free to modify `yytext' except for lengthening it
-(adding characters to its end-these will overwrite later characters in
-the input stream). This however does not apply when using `%array'
-(*note Matching::). In that case, `yytext' may be freely modified in
-any way.
-
- Actions are free to modify `yyleng' except they should not do so if
-the action also includes use of `yymore()' (see below).
-
- There are a number of special directives which can be included
-within an action:
-
-`ECHO'
- copies yytext to the scanner's output.
-
-`BEGIN'
- followed by the name of a start condition places the scanner in the
- corresponding start condition (see below).
-
-`REJECT'
- directs the scanner to proceed on to the "second best" rule which
- matched the input (or a prefix of the input). The rule is chosen
- as described above in *Note Matching::, and `yytext' and `yyleng'
- set up appropriately. It may either be one which matched as much
- text as the originally chosen rule but came later in the `flex'
- input file, or one which matched less text. For example, the
- following will both count the words in the input and call the
- routine `special()' whenever `frob' is seen:
-
-
- int word_count = 0;
- %%
-
- frob special(); REJECT;
- [^ \t\n]+ ++word_count;
-
- Without the `REJECT', any occurrences of `frob' in the input would
- not be counted as words, since the scanner normally executes only
- one action per token. Multiple uses of `REJECT' are allowed, each
- one finding the next best choice to the currently active rule. For
- example, when the following scanner scans the token `abcd', it will
- write `abcdabcaba' to the output:
-
-
- %%
- a |
- ab |
- abc |
- abcd ECHO; REJECT;
- .|\n /* eat up any unmatched character */
-
- The first three rules share the fourth's action since they use the
- special `|' action.
-
- `REJECT' is a particularly expensive feature in terms of scanner
- performance; if it is used in _any_ of the scanner's actions it
- will slow down _all_ of the scanner's matching. Furthermore,
- `REJECT' cannot be used with the `-Cf' or `-CF' options (*note
- Scanner Options::).
-
- Note also that unlike the other special actions, `REJECT' is a
- _branch_. Code immediately following it in the action will _not_
- be executed.
-
-`yymore()'
- tells the scanner that the next time it matches a rule, the
- corresponding token should be _appended_ onto the current value of
- `yytext' rather than replacing it. For example, given the input
- `mega-kludge' the following will write `mega-mega-kludge' to the
- output:
-
-
- %%
- mega- ECHO; yymore();
- kludge ECHO;
-
- First `mega-' is matched and echoed to the output. Then `kludge'
- is matched, but the previous `mega-' is still hanging around at the
- beginning of `yytext' so the `ECHO' for the `kludge' rule will
- actually write `mega-kludge'.
-
- Two notes regarding use of `yymore()'. First, `yymore()' depends on
-the value of `yyleng' correctly reflecting the size of the current
-token, so you must not modify `yyleng' if you are using `yymore()'.
-Second, the presence of `yymore()' in the scanner's action entails a
-minor performance penalty in the scanner's matching speed.
-
- `yyless(n)' returns all but the first `n' characters of the current
-token back to the input stream, where they will be rescanned when the
-scanner looks for the next match. `yytext' and `yyleng' are adjusted
-appropriately (e.g., `yyleng' will now be equal to `n'). For example,
-on the input `foobar' the following will write out `foobarbar':
-
-
- %%
- foobar ECHO; yyless(3);
- [a-z]+ ECHO;
-
- An argument of 0 to `yyless()' will cause the entire current input
-string to be scanned again. Unless you've changed how the scanner will
-subsequently process its input (using `BEGIN', for example), this will
-result in an endless loop.
-
- Note that `yyless()' is a macro and can only be used in the flex
-input file, not from other source files.
-
- `unput(c)' puts the character `c' back onto the input stream. It
-will be the next character scanned. The following action will take the
-current token and cause it to be rescanned enclosed in parentheses.
-
-
- {
- int i;
- /* Copy yytext because unput() trashes yytext */
- char *yycopy = strdup( yytext );
- unput( ')' );
- for ( i = yyleng - 1; i >= 0; --i )
- unput( yycopy[i] );
- unput( '(' );
- free( yycopy );
- }
-
- Note that since each `unput()' puts the given character back at the
-_beginning_ of the input stream, pushing back strings must be done
-back-to-front.
-
- An important potential problem when using `unput()' is that if you
-are using `%pointer' (the default), a call to `unput()' _destroys_ the
-contents of `yytext', starting with its rightmost character and
-devouring one character to the left with each call. If you need the
-value of `yytext' preserved after a call to `unput()' (as in the above
-example), you must either first copy it elsewhere, or build your
-scanner using `%array' instead (*note Matching::).
-
- Finally, note that you cannot put back `EOF' to attempt to mark the
-input stream with an end-of-file.
-
- `input()' reads the next character from the input stream. For
-example, the following is one way to eat up C comments:
-
-
- %%
- "/*" {
- register int c;
-
- for ( ; ; )
- {
- while ( (c = input()) != '*' &&
- c != EOF )
- ; /* eat up text of comment */
-
- if ( c == '*' )
- {
- while ( (c = input()) == '*' )
- ;
- if ( c == '/' )
- break; /* found the end */
- }
-
- if ( c == EOF )
- {
- error( "EOF in comment" );
- break;
- }
- }
- }
-
- (Note that if the scanner is compiled using `C++', then `input()' is
-instead referred to as yyinput(), in order to avoid a name clash with
-the `C++' stream by the name of `input'.)
-
- `YY_FLUSH_BUFFER()' flushes the scanner's internal buffer so that
-the next time the scanner attempts to match a token, it will first
-refill the buffer using `YY_INPUT()' (*note Generated Scanner::). This
-action is a special case of the more general `yy_flush_buffer()'
-function, described below (*note Multiple Input Buffers::)
-
- `yyterminate()' can be used in lieu of a return statement in an
-action. It terminates the scanner and returns a 0 to the scanner's
-caller, indicating "all done". By default, `yyterminate()' is also
-called when an end-of-file is encountered. It is a macro and may be
-redefined.
-
-
-File: flex.info, Node: Generated Scanner, Next: Start Conditions, Prev: Actions, Up: Top
-
-9 The Generated Scanner
-***********************
-
-The output of `flex' is the file `lex.yy.c', which contains the
-scanning routine `yylex()', a number of tables used by it for matching
-tokens, and a number of auxiliary routines and macros. By default,
-`yylex()' is declared as follows:
-
-
- int yylex()
- {
- ... various definitions and the actions in here ...
- }
-
- (If your environment supports function prototypes, then it will be
-`int yylex( void )'.) This definition may be changed by defining the
-`YY_DECL' macro. For example, you could use:
-
-
- #define YY_DECL float lexscan( a, b ) float a, b;
-
- to give the scanning routine the name `lexscan', returning a float,
-and taking two floats as arguments. Note that if you give arguments to
-the scanning routine using a K&R-style/non-prototyped function
-declaration, you must terminate the definition with a semi-colon (;).
-
- `flex' generates `C99' function definitions by default. However flex
-does have the ability to generate obsolete, er, `traditional', function
-definitions. This is to support bootstrapping gcc on old systems.
-Unfortunately, traditional definitions prevent us from using any
-standard data types smaller than int (such as short, char, or bool) as
-function arguments. For this reason, future versions of `flex' may
-generate standard C99 code only, leaving K&R-style functions to the
-historians. Currently, if you do *not* want `C99' definitions, then
-you must use `%option noansi-definitions'.
-
- Whenever `yylex()' is called, it scans tokens from the global input
-file `yyin' (which defaults to stdin). It continues until it either
-reaches an end-of-file (at which point it returns the value 0) or one
-of its actions executes a `return' statement.
-
- If the scanner reaches an end-of-file, subsequent calls are undefined
-unless either `yyin' is pointed at a new input file (in which case
-scanning continues from that file), or `yyrestart()' is called.
-`yyrestart()' takes one argument, a `FILE *' pointer (which can be
-NULL, if you've set up `YY_INPUT' to scan from a source other than
-`yyin'), and initializes `yyin' for scanning from that file.
-Essentially there is no difference between just assigning `yyin' to a
-new input file or using `yyrestart()' to do so; the latter is available
-for compatibility with previous versions of `flex', and because it can
-be used to switch input files in the middle of scanning. It can also
-be used to throw away the current input buffer, by calling it with an
-argument of `yyin'; but it would be better to use `YY_FLUSH_BUFFER'
-(*note Actions::). Note that `yyrestart()' does _not_ reset the start
-condition to `INITIAL' (*note Start Conditions::).
-
- If `yylex()' stops scanning due to executing a `return' statement in
-one of the actions, the scanner may then be called again and it will
-resume scanning where it left off.
-
- By default (and for purposes of efficiency), the scanner uses
-block-reads rather than simple `getc()' calls to read characters from
-`yyin'. The nature of how it gets its input can be controlled by
-defining the `YY_INPUT' macro. The calling sequence for `YY_INPUT()'
-is `YY_INPUT(buf,result,max_size)'. Its action is to place up to
-`max_size' characters in the character array `buf' and return in the
-integer variable `result' either the number of characters read or the
-constant `YY_NULL' (0 on Unix systems) to indicate `EOF'. The default
-`YY_INPUT' reads from the global file-pointer `yyin'.
-
- Here is a sample definition of `YY_INPUT' (in the definitions
-section of the input file):
-
-
- %{
- #define YY_INPUT(buf,result,max_size) \
- { \
- int c = getchar(); \
- result = (c == EOF) ? YY_NULL : (buf[0] = c, 1); \
- }
- %}
-
- This definition will change the input processing to occur one
-character at a time.
-
- When the scanner receives an end-of-file indication from YY_INPUT, it
-then checks the `yywrap()' function. If `yywrap()' returns false
-(zero), then it is assumed that the function has gone ahead and set up
-`yyin' to point to another input file, and scanning continues. If it
-returns true (non-zero), then the scanner terminates, returning 0 to
-its caller. Note that in either case, the start condition remains
-unchanged; it does _not_ revert to `INITIAL'.
-
- If you do not supply your own version of `yywrap()', then you must
-either use `%option noyywrap' (in which case the scanner behaves as
-though `yywrap()' returned 1), or you must link with `-lfl' to obtain
-the default version of the routine, which always returns 1.
-
- For scanning from in-memory buffers (e.g., scanning strings), see
-*Note Scanning Strings::. *Note Multiple Input Buffers::.
-
- The scanner writes its `ECHO' output to the `yyout' global (default,
-`stdout'), which may be redefined by the user simply by assigning it to
-some other `FILE' pointer.
-
-
-File: flex.info, Node: Start Conditions, Next: Multiple Input Buffers, Prev: Generated Scanner, Up: Top
-
-10 Start Conditions
-*******************
-
-`flex' provides a mechanism for conditionally activating rules. Any
-rule whose pattern is prefixed with `<sc>' will only be active when the
-scanner is in the "start condition" named `sc'. For example,
-
-
- <STRING>[^"]* { /* eat up the string body ... */
- ...
- }
-
- will be active only when the scanner is in the `STRING' start
-condition, and
-
-
- <INITIAL,STRING,QUOTE>\. { /* handle an escape ... */
- ...
- }
-
- will be active only when the current start condition is either
-`INITIAL', `STRING', or `QUOTE'.
-
- Start conditions are declared in the definitions (first) section of
-the input using unindented lines beginning with either `%s' or `%x'
-followed by a list of names. The former declares "inclusive" start
-conditions, the latter "exclusive" start conditions. A start condition
-is activated using the `BEGIN' action. Until the next `BEGIN' action
-is executed, rules with the given start condition will be active and
-rules with other start conditions will be inactive. If the start
-condition is inclusive, then rules with no start conditions at all will
-also be active. If it is exclusive, then _only_ rules qualified with
-the start condition will be active. A set of rules contingent on the
-same exclusive start condition describe a scanner which is independent
-of any of the other rules in the `flex' input. Because of this,
-exclusive start conditions make it easy to specify "mini-scanners"
-which scan portions of the input that are syntactically different from
-the rest (e.g., comments).
-
- If the distinction between inclusive and exclusive start conditions
-is still a little vague, here's a simple example illustrating the
-connection between the two. The set of rules:
-
-
- %s example
- %%
-
- <example>foo do_something();
-
- bar something_else();
-
- is equivalent to
-
-
- %x example
- %%
-
- <example>foo do_something();
-
- <INITIAL,example>bar something_else();
-
- Without the `<INITIAL,example>' qualifier, the `bar' pattern in the
-second example wouldn't be active (i.e., couldn't match) when in start
-condition `example'. If we just used `<example>' to qualify `bar',
-though, then it would only be active in `example' and not in `INITIAL',
-while in the first example it's active in both, because in the first
-example the `example' start condition is an inclusive `(%s)' start
-condition.
-
- Also note that the special start-condition specifier `<*>' matches
-every start condition. Thus, the above example could also have been
-written:
-
-
- %x example
- %%
-
- <example>foo do_something();
-
- <*>bar something_else();
-
- The default rule (to `ECHO' any unmatched character) remains active
-in start conditions. It is equivalent to:
-
-
- <*>.|\n ECHO;
-
- `BEGIN(0)' returns to the original state where only the rules with
-no start conditions are active. This state can also be referred to as
-the start-condition `INITIAL', so `BEGIN(INITIAL)' is equivalent to
-`BEGIN(0)'. (The parentheses around the start condition name are not
-required but are considered good style.)
-
- `BEGIN' actions can also be given as indented code at the beginning
-of the rules section. For example, the following will cause the scanner
-to enter the `SPECIAL' start condition whenever `yylex()' is called and
-the global variable `enter_special' is true:
-
-
- int enter_special;
-
- %x SPECIAL
- %%
- if ( enter_special )
- BEGIN(SPECIAL);
-
- <SPECIAL>blahblahblah
- ...more rules follow...
-
- To illustrate the uses of start conditions, here is a scanner which
-provides two different interpretations of a string like `123.456'. By
-default it will treat it as three tokens, the integer `123', a dot
-(`.'), and the integer `456'. But if the string is preceded earlier in
-the line by the string `expect-floats' it will treat it as a single
-token, the floating-point number `123.456':
-
-
- %{
- #include <math.h>
- %}
- %s expect
-
- %%
- expect-floats BEGIN(expect);
-
- <expect>[0-9]+@samp{.}[0-9]+ {
- printf( "found a float, = %f\n",
- atof( yytext ) );
- }
- <expect>\n {
- /* that's the end of the line, so
- * we need another "expect-number"
- * before we'll recognize any more
- * numbers
- */
- BEGIN(INITIAL);
- }
-
- [0-9]+ {
- printf( "found an integer, = %d\n",
- atoi( yytext ) );
- }
-
- "." printf( "found a dot\n" );
-
- Here is a scanner which recognizes (and discards) C comments while
-maintaining a count of the current input line.
-
-
- %x comment
- %%
- int line_num = 1;
-
- "/*" BEGIN(comment);
-
- <comment>[^*\n]* /* eat anything that's not a '*' */
- <comment>"*"+[^*/\n]* /* eat up '*'s not followed by '/'s */
- <comment>\n ++line_num;
- <comment>"*"+"/" BEGIN(INITIAL);
-
- This scanner goes to a bit of trouble to match as much text as
-possible with each rule. In general, when attempting to write a
-high-speed scanner try to match as much possible in each rule, as it's
-a big win.
-
- Note that start-conditions names are really integer values and can
-be stored as such. Thus, the above could be extended in the following
-fashion:
-
-
- %x comment foo
- %%
- int line_num = 1;
- int comment_caller;
-
- "/*" {
- comment_caller = INITIAL;
- BEGIN(comment);
- }
-
- ...
-
- <foo>"/*" {
- comment_caller = foo;
- BEGIN(comment);
- }
-
- <comment>[^*\n]* /* eat anything that's not a '*' */
- <comment>"*"+[^*/\n]* /* eat up '*'s not followed by '/'s */
- <comment>\n ++line_num;
- <comment>"*"+"/" BEGIN(comment_caller);
-
- Furthermore, you can access the current start condition using the
-integer-valued `YY_START' macro. For example, the above assignments to
-`comment_caller' could instead be written
-
-
- comment_caller = YY_START;
-
- Flex provides `YYSTATE' as an alias for `YY_START' (since that is
-what's used by AT&T `lex').
-
- For historical reasons, start conditions do not have their own
-name-space within the generated scanner. The start condition names are
-unmodified in the generated scanner and generated header. *Note
-option-header::. *Note option-prefix::.
-
- Finally, here's an example of how to match C-style quoted strings
-using exclusive start conditions, including expanded escape sequences
-(but not including checking for a string that's too long):
-
-
- %x str
-
- %%
- char string_buf[MAX_STR_CONST];
- char *string_buf_ptr;
-
-
- \" string_buf_ptr = string_buf; BEGIN(str);
-
- <str>\" { /* saw closing quote - all done */
- BEGIN(INITIAL);
- *string_buf_ptr = '\0';
- /* return string constant token type and
- * value to parser
- */
- }
-
- <str>\n {
- /* error - unterminated string constant */
- /* generate error message */
- }
-
- <str>\\[0-7]{1,3} {
- /* octal escape sequence */
- int result;
-
- (void) sscanf( yytext + 1, "%o", &result );
-
- if ( result > 0xff )
- /* error, constant is out-of-bounds */
-
- *string_buf_ptr++ = result;
- }
-
- <str>\\[0-9]+ {
- /* generate error - bad escape sequence; something
- * like '\48' or '\0777777'
- */
- }
-
- <str>\\n *string_buf_ptr++ = '\n';
- <str>\\t *string_buf_ptr++ = '\t';
- <str>\\r *string_buf_ptr++ = '\r';
- <str>\\b *string_buf_ptr++ = '\b';
- <str>\\f *string_buf_ptr++ = '\f';
-
- <str>\\(.|\n) *string_buf_ptr++ = yytext[1];
-
- <str>[^\\\n\"]+ {
- char *yptr = yytext;
-
- while ( *yptr )
- *string_buf_ptr++ = *yptr++;
- }
-
- Often, such as in some of the examples above, you wind up writing a
-whole bunch of rules all preceded by the same start condition(s). Flex
-makes this a little easier and cleaner by introducing a notion of start
-condition "scope". A start condition scope is begun with:
-
-
- <SCs>{
-
- where `SCs' is a list of one or more start conditions. Inside the
-start condition scope, every rule automatically has the prefix `SCs>'
-applied to it, until a `}' which matches the initial `{'. So, for
-example,
-
-
- <ESC>{
- "\\n" return '\n';
- "\\r" return '\r';
- "\\f" return '\f';
- "\\0" return '\0';
- }
-
- is equivalent to:
-
-
- <ESC>"\\n" return '\n';
- <ESC>"\\r" return '\r';
- <ESC>"\\f" return '\f';
- <ESC>"\\0" return '\0';
-
- Start condition scopes may be nested.
-
- The following routines are available for manipulating stacks of
-start conditions:
-
- -- Function: void yy_push_state ( int `new_state' )
- pushes the current start condition onto the top of the start
- condition stack and switches to `new_state' as though you had used
- `BEGIN new_state' (recall that start condition names are also
- integers).
-
- -- Function: void yy_pop_state ()
- pops the top of the stack and switches to it via `BEGIN'.
-
- -- Function: int yy_top_state ()
- returns the top of the stack without altering the stack's contents.
-
- The start condition stack grows dynamically and so has no built-in
-size limitation. If memory is exhausted, program execution aborts.
-
- To use start condition stacks, your scanner must include a `%option
-stack' directive (*note Scanner Options::).
-
-
-File: flex.info, Node: Multiple Input Buffers, Next: EOF, Prev: Start Conditions, Up: Top
-
-11 Multiple Input Buffers
-*************************
-
-Some scanners (such as those which support "include" files) require
-reading from several input streams. As `flex' scanners do a large
-amount of buffering, one cannot control where the next input will be
-read from by simply writing a `YY_INPUT()' which is sensitive to the
-scanning context. `YY_INPUT()' is only called when the scanner reaches
-the end of its buffer, which may be a long time after scanning a
-statement such as an `include' statement which requires switching the
-input source.
-
- To negotiate these sorts of problems, `flex' provides a mechanism
-for creating and switching between multiple input buffers. An input
-buffer is created by using:
-
- -- Function: YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size )
-
- which takes a `FILE' pointer and a size and creates a buffer
-associated with the given file and large enough to hold `size'
-characters (when in doubt, use `YY_BUF_SIZE' for the size). It returns
-a `YY_BUFFER_STATE' handle, which may then be passed to other routines
-(see below). The `YY_BUFFER_STATE' type is a pointer to an opaque
-`struct yy_buffer_state' structure, so you may safely initialize
-`YY_BUFFER_STATE' variables to `((YY_BUFFER_STATE) 0)' if you wish, and
-also refer to the opaque structure in order to correctly declare input
-buffers in source files other than that of your scanner. Note that the
-`FILE' pointer in the call to `yy_create_buffer' is only used as the
-value of `yyin' seen by `YY_INPUT'. If you redefine `YY_INPUT()' so it
-no longer uses `yyin', then you can safely pass a NULL `FILE' pointer to
-`yy_create_buffer'. You select a particular buffer to scan from using:
-
- -- Function: void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer )
-
- The above function switches the scanner's input buffer so subsequent
-tokens will come from `new_buffer'. Note that `yy_switch_to_buffer()'
-may be used by `yywrap()' to set things up for continued scanning,
-instead of opening a new file and pointing `yyin' at it. If you are
-looking for a stack of input buffers, then you want to use
-`yypush_buffer_state()' instead of this function. Note also that
-switching input sources via either `yy_switch_to_buffer()' or
-`yywrap()' does _not_ change the start condition.
-
- -- Function: void yy_delete_buffer ( YY_BUFFER_STATE buffer )
-
- is used to reclaim the storage associated with a buffer. (`buffer'
-can be NULL, in which case the routine does nothing.) You can also
-clear the current contents of a buffer using:
-
- -- Function: void yypush_buffer_state ( YY_BUFFER_STATE buffer )
-
- This function pushes the new buffer state onto an internal stack.
-The pushed state becomes the new current state. The stack is maintained
-by flex and will grow as required. This function is intended to be used
-instead of `yy_switch_to_buffer', when you want to change states, but
-preserve the current state for later use.
-
- -- Function: void yypop_buffer_state ( )
-
- This function removes the current state from the top of the stack,
-and deletes it by calling `yy_delete_buffer'. The next state on the
-stack, if any, becomes the new current state.
-
- -- Function: void yy_flush_buffer ( YY_BUFFER_STATE buffer )
-
- This function discards the buffer's contents, so the next time the
-scanner attempts to match a token from the buffer, it will first fill
-the buffer anew using `YY_INPUT()'.
-
- -- Function: YY_BUFFER_STATE yy_new_buffer ( FILE *file, int size )
-
- is an alias for `yy_create_buffer()', provided for compatibility
-with the C++ use of `new' and `delete' for creating and destroying
-dynamic objects.
-
- `YY_CURRENT_BUFFER' macro returns a `YY_BUFFER_STATE' handle to the
-current buffer. It should not be used as an lvalue.
-
- Here are two examples of using these features for writing a scanner
-which expands include files (the `<<EOF>>' feature is discussed below).
-
- This first example uses yypush_buffer_state and yypop_buffer_state.
-Flex maintains the stack internally.
-
-
- /* the "incl" state is used for picking up the name
- * of an include file
- */
- %x incl
- %%
- include BEGIN(incl);
-
- [a-z]+ ECHO;
- [^a-z\n]*\n? ECHO;
-
- <incl>[ \t]* /* eat the whitespace */
- <incl>[^ \t\n]+ { /* got the include file name */
- yyin = fopen( yytext, "r" );
-
- if ( ! yyin )
- error( ... );
-
- yypush_buffer_state(yy_create_buffer( yyin, YY_BUF_SIZE ));
-
- BEGIN(INITIAL);
- }
-
- <<EOF>> {
- yypop_buffer_state();
-
- if ( !YY_CURRENT_BUFFER )
- {
- yyterminate();
- }
- }
-
- The second example, below, does the same thing as the previous
-example did, but manages its own input buffer stack manually (instead
-of letting flex do it).
-
-
- /* the "incl" state is used for picking up the name
- * of an include file
- */
- %x incl
-
- %{
- #define MAX_INCLUDE_DEPTH 10
- YY_BUFFER_STATE include_stack[MAX_INCLUDE_DEPTH];
- int include_stack_ptr = 0;
- %}
-
- %%
- include BEGIN(incl);
-
- [a-z]+ ECHO;
- [^a-z\n]*\n? ECHO;
-
- <incl>[ \t]* /* eat the whitespace */
- <incl>[^ \t\n]+ { /* got the include file name */
- if ( include_stack_ptr >= MAX_INCLUDE_DEPTH )
- {
- fprintf( stderr, "Includes nested too deeply" );
- exit( 1 );
- }
-
- include_stack[include_stack_ptr++] =
- YY_CURRENT_BUFFER;
-
- yyin = fopen( yytext, "r" );
-
- if ( ! yyin )
- error( ... );
-
- yy_switch_to_buffer(
- yy_create_buffer( yyin, YY_BUF_SIZE ) );
-
- BEGIN(INITIAL);
- }
-
- <<EOF>> {
- if ( --include_stack_ptr 0 )
- {
- yyterminate();
- }
-
- else
- {
- yy_delete_buffer( YY_CURRENT_BUFFER );
- yy_switch_to_buffer(
- include_stack[include_stack_ptr] );
- }
- }
-
- The following routines are available for setting up input buffers for
-scanning in-memory strings instead of files. All of them create a new
-input buffer for scanning the string, and return a corresponding
-`YY_BUFFER_STATE' handle (which you should delete with
-`yy_delete_buffer()' when done with it). They also switch to the new
-buffer using `yy_switch_to_buffer()', so the next call to `yylex()'
-will start scanning the string.
-
- -- Function: YY_BUFFER_STATE yy_scan_string ( const char *str )
- scans a NUL-terminated string.
-
- -- Function: YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int
- len )
- scans `len' bytes (including possibly `NUL's) starting at location
- `bytes'.
-
- Note that both of these functions create and scan a _copy_ of the
-string or bytes. (This may be desirable, since `yylex()' modifies the
-contents of the buffer it is scanning.) You can avoid the copy by
-using:
-
- -- Function: YY_BUFFER_STATE yy_scan_buffer (char *base, yy_size_t
- size)
- which scans in place the buffer starting at `base', consisting of
- `size' bytes, the last two bytes of which _must_ be
- `YY_END_OF_BUFFER_CHAR' (ASCII NUL). These last two bytes are not
- scanned; thus, scanning consists of `base[0]' through
- `base[size-2]', inclusive.
-
- If you fail to set up `base' in this manner (i.e., forget the final
-two `YY_END_OF_BUFFER_CHAR' bytes), then `yy_scan_buffer()' returns a
-NULL pointer instead of creating a new input buffer.
-
- -- Data type: yy_size_t
- is an integral type to which you can cast an integer expression
- reflecting the size of the buffer.
-
-
-File: flex.info, Node: EOF, Next: Misc Macros, Prev: Multiple Input Buffers, Up: Top
-
-12 End-of-File Rules
-********************
-
-The special rule `<<EOF>>' indicates actions which are to be taken when
-an end-of-file is encountered and `yywrap()' returns non-zero (i.e.,
-indicates no further files to process). The action must finish by
-doing one of the following things:
-
- * assigning `yyin' to a new input file (in previous versions of
- `flex', after doing the assignment you had to call the special
- action `YY_NEW_FILE'. This is no longer necessary.)
-
- * executing a `return' statement;
-
- * executing the special `yyterminate()' action.
-
- * or, switching to a new buffer using `yy_switch_to_buffer()' as
- shown in the example above.
-
- <<EOF>> rules may not be used with other patterns; they may only be
-qualified with a list of start conditions. If an unqualified <<EOF>>
-rule is given, it applies to _all_ start conditions which do not
-already have <<EOF>> actions. To specify an <<EOF>> rule for only the
-initial start condition, use:
-
-
- <INITIAL><<EOF>>
-
- These rules are useful for catching things like unclosed comments.
-An example:
-
-
- %x quote
- %%
-
- ...other rules for dealing with quotes...
-
- <quote><<EOF>> {
- error( "unterminated quote" );
- yyterminate();
- }
- <<EOF>> {
- if ( *++filelist )
- yyin = fopen( *filelist, "r" );
- else
- yyterminate();
- }
-
-
-File: flex.info, Node: Misc Macros, Next: User Values, Prev: EOF, Up: Top
-
-13 Miscellaneous Macros
-***********************
-
-The macro `YY_USER_ACTION' can be defined to provide an action which is
-always executed prior to the matched rule's action. For example, it
-could be #define'd to call a routine to convert yytext to lower-case.
-When `YY_USER_ACTION' is invoked, the variable `yy_act' gives the
-number of the matched rule (rules are numbered starting with 1).
-Suppose you want to profile how often each of your rules is matched.
-The following would do the trick:
-
-
- #define YY_USER_ACTION ++ctr[yy_act]
-
- where `ctr' is an array to hold the counts for the different rules.
-Note that the macro `YY_NUM_RULES' gives the total number of rules
-(including the default rule), even if you use `-s)', so a correct
-declaration for `ctr' is:
-
-
- int ctr[YY_NUM_RULES];
-
- The macro `YY_USER_INIT' may be defined to provide an action which
-is always executed before the first scan (and before the scanner's
-internal initializations are done). For example, it could be used to
-call a routine to read in a data table or open a logging file.
-
- The macro `yy_set_interactive(is_interactive)' can be used to
-control whether the current buffer is considered "interactive". An
-interactive buffer is processed more slowly, but must be used when the
-scanner's input source is indeed interactive to avoid problems due to
-waiting to fill buffers (see the discussion of the `-I' flag in *Note
-Scanner Options::). A non-zero value in the macro invocation marks the
-buffer as interactive, a zero value as non-interactive. Note that use
-of this macro overrides `%option always-interactive' or `%option
-never-interactive' (*note Scanner Options::). `yy_set_interactive()'
-must be invoked prior to beginning to scan the buffer that is (or is
-not) to be considered interactive.
-
- The macro `yy_set_bol(at_bol)' can be used to control whether the
-current buffer's scanning context for the next token match is done as
-though at the beginning of a line. A non-zero macro argument makes
-rules anchored with `^' active, while a zero argument makes `^' rules
-inactive.
-
- The macro `YY_AT_BOL()' returns true if the next token scanned from
-the current buffer will have `^' rules active, false otherwise.
-
- In the generated scanner, the actions are all gathered in one large
-switch statement and separated using `YY_BREAK', which may be
-redefined. By default, it is simply a `break', to separate each rule's
-action from the following rule's. Redefining `YY_BREAK' allows, for
-example, C++ users to #define YY_BREAK to do nothing (while being very
-careful that every rule ends with a `break' or a `return'!) to avoid
-suffering from unreachable statement warnings where because a rule's
-action ends with `return', the `YY_BREAK' is inaccessible.
-
-
-File: flex.info, Node: User Values, Next: Yacc, Prev: Misc Macros, Up: Top
-
-14 Values Available To the User
-*******************************
-
-This chapter summarizes the various values available to the user in the
-rule actions.
-
-`char *yytext'
- holds the text of the current token. It may be modified but not
- lengthened (you cannot append characters to the end).
-
- If the special directive `%array' appears in the first section of
- the scanner description, then `yytext' is instead declared `char
- yytext[YYLMAX]', where `YYLMAX' is a macro definition that you can
- redefine in the first section if you don't like the default value
- (generally 8KB). Using `%array' results in somewhat slower
- scanners, but the value of `yytext' becomes immune to calls to
- `unput()', which potentially destroy its value when `yytext' is a
- character pointer. The opposite of `%array' is `%pointer', which
- is the default.
-
- You cannot use `%array' when generating C++ scanner classes (the
- `-+' flag).
-
-`int yyleng'
- holds the length of the current token.
-
-`FILE *yyin'
- is the file which by default `flex' reads from. It may be
- redefined but doing so only makes sense before scanning begins or
- after an EOF has been encountered. Changing it in the midst of
- scanning will have unexpected results since `flex' buffers its
- input; use `yyrestart()' instead. Once scanning terminates
- because an end-of-file has been seen, you can assign `yyin' at the
- new input file and then call the scanner again to continue
- scanning.
-
-`void yyrestart( FILE *new_file )'
- may be called to point `yyin' at the new input file. The
- switch-over to the new file is immediate (any previously
- buffered-up input is lost). Note that calling `yyrestart()' with
- `yyin' as an argument thus throws away the current input buffer
- and continues scanning the same input file.
-
-`FILE *yyout'
- is the file to which `ECHO' actions are done. It can be reassigned
- by the user.
-
-`YY_CURRENT_BUFFER'
- returns a `YY_BUFFER_STATE' handle to the current buffer.
-
-`YY_START'
- returns an integer value corresponding to the current start
- condition. You can subsequently use this value with `BEGIN' to
- return to that start condition.
-
-
-File: flex.info, Node: Yacc, Next: Scanner Options, Prev: User Values, Up: Top
-
-15 Interfacing with Yacc
-************************
-
-One of the main uses of `flex' is as a companion to the `yacc'
-parser-generator. `yacc' parsers expect to call a routine named
-`yylex()' to find the next input token. The routine is supposed to
-return the type of the next token as well as putting any associated
-value in the global `yylval'. To use `flex' with `yacc', one specifies
-the `-d' option to `yacc' to instruct it to generate the file `y.tab.h'
-containing definitions of all the `%tokens' appearing in the `yacc'
-input. This file is then included in the `flex' scanner. For example,
-if one of the tokens is `TOK_NUMBER', part of the scanner might look
-like:
-
-
- %{
- #include "y.tab.h"
- %}
-
- %%
-
- [0-9]+ yylval = atoi( yytext ); return TOK_NUMBER;
-
-
-File: flex.info, Node: Scanner Options, Next: Performance, Prev: Yacc, Up: Top
-
-16 Scanner Options
-******************
-
-The various `flex' options are categorized by function in the following
-menu. If you want to lookup a particular option by name, *Note Index of
-Scanner Options::.
-
-* Menu:
-
-* Options for Specifying Filenames::
-* Options Affecting Scanner Behavior::
-* Code-Level And API Options::
-* Options for Scanner Speed and Size::
-* Debugging Options::
-* Miscellaneous Options::
-
- Even though there are many scanner options, a typical scanner might
-only specify the following options:
-
-
- %option 8bit reentrant bison-bridge
- %option warn nodefault
- %option yylineno
- %option outfile="scanner.c" header-file="scanner.h"
-
- The first line specifies the general type of scanner we want. The
-second line specifies that we are being careful. The third line asks
-flex to track line numbers. The last line tells flex what to name the
-files. (The options can be specified in any order. We just divided
-them.)
-
- `flex' also provides a mechanism for controlling options within the
-scanner specification itself, rather than from the flex command-line.
-This is done by including `%option' directives in the first section of
-the scanner specification. You can specify multiple options with a
-single `%option' directive, and multiple directives in the first
-section of your flex input file.
-
- Most options are given simply as names, optionally preceded by the
-word `no' (with no intervening whitespace) to negate their meaning.
-The names are the same as their long-option equivalents (but without the
-leading `--' ).
-
- `flex' scans your rule actions to determine whether you use the
-`REJECT' or `yymore()' features. The `REJECT' and `yymore' options are
-available to override its decision as to whether you use the options,
-either by setting them (e.g., `%option reject)' to indicate the feature
-is indeed used, or unsetting them to indicate it actually is not used
-(e.g., `%option noyymore)'.
-
- A number of options are available for lint purists who want to
-suppress the appearance of unneeded routines in the generated scanner.
-Each of the following, if unset (e.g., `%option nounput'), results in
-the corresponding routine not appearing in the generated scanner:
-
-
- input, unput
- yy_push_state, yy_pop_state, yy_top_state
- yy_scan_buffer, yy_scan_bytes, yy_scan_string
-
- yyget_extra, yyset_extra, yyget_leng, yyget_text,
- yyget_lineno, yyset_lineno, yyget_in, yyset_in,
- yyget_out, yyset_out, yyget_lval, yyset_lval,
- yyget_lloc, yyset_lloc, yyget_debug, yyset_debug
-
- (though `yy_push_state()' and friends won't appear anyway unless you
-use `%option stack)'.
-
-
-File: flex.info, Node: Options for Specifying Filenames, Next: Options Affecting Scanner Behavior, Prev: Scanner Options, Up: Scanner Options
-
-16.1 Options for Specifying Filenames
-=====================================
-
-`--header-file=FILE, `%option header-file="FILE"''
- instructs flex to write a C header to `FILE'. This file contains
- function prototypes, extern variables, and types used by the
- scanner. Only the external API is exported by the header file.
- Many macros that are usable from within scanner actions are not
- exported to the header file. This is due to namespace problems and
- the goal of a clean external API.
-
- While in the header, the macro `yyIN_HEADER' is defined, where `yy'
- is substituted with the appropriate prefix.
-
- The `--header-file' option is not compatible with the `--c++'
- option, since the C++ scanner provides its own header in
- `yyFlexLexer.h'.
-
-`-oFILE, --outfile=FILE, `%option outfile="FILE"''
- directs flex to write the scanner to the file `FILE' instead of
- `lex.yy.c'. If you combine `--outfile' with the `--stdout' option,
- then the scanner is written to `stdout' but its `#line' directives
- (see the `-l' option above) refer to the file `FILE'.
-
-`-t, --stdout, `%option stdout''
- instructs `flex' to write the scanner it generates to standard
- output instead of `lex.yy.c'.
-
-`-SFILE, --skel=FILE'
- overrides the default skeleton file from which `flex' constructs
- its scanners. You'll never need this option unless you are doing
- `flex' maintenance or development.
-
-`--tables-file=FILE'
- Write serialized scanner dfa tables to FILE. The generated scanner
- will not contain the tables, and requires them to be loaded at
- runtime. *Note serialization::.
-
-`--tables-verify'
- This option is for flex development. We document it here in case
- you stumble upon it by accident or in case you suspect some
- inconsistency in the serialized tables. Flex will serialize the
- scanner dfa tables but will also generate the in-code tables as it
- normally does. At runtime, the scanner will verify that the
- serialized tables match the in-code tables, instead of loading
- them.
-
-
-
-File: flex.info, Node: Options Affecting Scanner Behavior, Next: Code-Level And API Options, Prev: Options for Specifying Filenames, Up: Scanner Options
-
-16.2 Options Affecting Scanner Behavior
-=======================================
-
-`-i, --case-insensitive, `%option case-insensitive''
- instructs `flex' to generate a "case-insensitive" scanner. The
- case of letters given in the `flex' input patterns will be ignored,
- and tokens in the input will be matched regardless of case. The
- matched text given in `yytext' will have the preserved case (i.e.,
- it will not be folded). For tricky behavior, see *Note case and
- character ranges::.
-
-`-l, --lex-compat, `%option lex-compat''
- turns on maximum compatibility with the original AT&T `lex'
- implementation. Note that this does not mean _full_ compatibility.
- Use of this option costs a considerable amount of performance, and
- it cannot be used with the `--c++', `--full', `--fast', `-Cf', or
- `-CF' options. For details on the compatibilities it provides, see
- *Note Lex and Posix::. This option also results in the name
- `YY_FLEX_LEX_COMPAT' being `#define''d in the generated scanner.
-
-`-B, --batch, `%option batch''
- instructs `flex' to generate a "batch" scanner, the opposite of
- _interactive_ scanners generated by `--interactive' (see below).
- In general, you use `-B' when you are _certain_ that your scanner
- will never be used interactively, and you want to squeeze a
- _little_ more performance out of it. If your goal is instead to
- squeeze out a _lot_ more performance, you should be using the
- `-Cf' or `-CF' options, which turn on `--batch' automatically
- anyway.
-
-`-I, --interactive, `%option interactive''
- instructs `flex' to generate an interactive scanner. An
- interactive scanner is one that only looks ahead to decide what
- token has been matched if it absolutely must. It turns out that
- always looking one extra character ahead, even if the scanner has
- already seen enough text to disambiguate the current token, is a
- bit faster than only looking ahead when necessary. But scanners
- that always look ahead give dreadful interactive performance; for
- example, when a user types a newline, it is not recognized as a
- newline token until they enter _another_ token, which often means
- typing in another whole line.
-
- `flex' scanners default to `interactive' unless you use the `-Cf'
- or `-CF' table-compression options (*note Performance::). That's
- because if you're looking for high-performance you should be using
- one of these options, so if you didn't, `flex' assumes you'd
- rather trade off a bit of run-time performance for intuitive
- interactive behavior. Note also that you _cannot_ use
- `--interactive' in conjunction with `-Cf' or `-CF'. Thus, this
- option is not really needed; it is on by default for all those
- cases in which it is allowed.
-
- You can force a scanner to _not_ be interactive by using `--batch'
-
-`-7, --7bit, `%option 7bit''
- instructs `flex' to generate a 7-bit scanner, i.e., one which can
- only recognize 7-bit characters in its input. The advantage of
- using `--7bit' is that the scanner's tables can be up to half the
- size of those generated using the `--8bit'. The disadvantage is
- that such scanners often hang or crash if their input contains an
- 8-bit character.
-
- Note, however, that unless you generate your scanner using the
- `-Cf' or `-CF' table compression options, use of `--7bit' will
- save only a small amount of table space, and make your scanner
- considerably less portable. `Flex''s default behavior is to
- generate an 8-bit scanner unless you use the `-Cf' or `-CF', in
- which case `flex' defaults to generating 7-bit scanners unless
- your site was always configured to generate 8-bit scanners (as will
- often be the case with non-USA sites). You can tell whether flex
- generated a 7-bit or an 8-bit scanner by inspecting the flag
- summary in the `--verbose' output as described above.
-
- Note that if you use `-Cfe' or `-CFe' `flex' still defaults to
- generating an 8-bit scanner, since usually with these compression
- options full 8-bit tables are not much more expensive than 7-bit
- tables.
-
-`-8, --8bit, `%option 8bit''
- instructs `flex' to generate an 8-bit scanner, i.e., one which can
- recognize 8-bit characters. This flag is only needed for scanners
- generated using `-Cf' or `-CF', as otherwise flex defaults to
- generating an 8-bit scanner anyway.
-
- See the discussion of `--7bit' above for `flex''s default behavior
- and the tradeoffs between 7-bit and 8-bit scanners.
-
-`--default, `%option default''
- generate the default rule.
-
-`--always-interactive, `%option always-interactive''
- instructs flex to generate a scanner which always considers its
- input _interactive_. Normally, on each new input file the scanner
- calls `isatty()' in an attempt to determine whether the scanner's
- input source is interactive and thus should be read a character at
- a time. When this option is used, however, then no such call is
- made.
-
-`--never-interactive, `--never-interactive''
- instructs flex to generate a scanner which never considers its
- input interactive. This is the opposite of `always-interactive'.
-
-`-X, --posix, `%option posix''
- turns on maximum compatibility with the POSIX 1003.2-1992
- definition of `lex'. Since `flex' was originally designed to
- implement the POSIX definition of `lex' this generally involves
- very few changes in behavior. At the current writing the known
- differences between `flex' and the POSIX standard are:
-
- * In POSIX and AT&T `lex', the repeat operator, `{}', has lower
- precedence than concatenation (thus `ab{3}' yields `ababab').
- Most POSIX utilities use an Extended Regular Expression (ERE)
- precedence that has the precedence of the repeat operator
- higher than concatenation (which causes `ab{3}' to yield
- `abbb'). By default, `flex' places the precedence of the
- repeat operator higher than concatenation which matches the
- ERE processing of other POSIX utilities. When either
- `--posix' or `-l' are specified, `flex' will use the
- traditional AT&T and POSIX-compliant precedence for the
- repeat operator where concatenation has higher precedence
- than the repeat operator.
-
-`--stack, `%option stack''
- enables the use of start condition stacks (*note Start
- Conditions::).
-
-`--stdinit, `%option stdinit''
- if set (i.e., %option stdinit) initializes `yyin' and `yyout' to
- `stdin' and `stdout', instead of the default of `NULL'. Some
- existing `lex' programs depend on this behavior, even though it is
- not compliant with ANSI C, which does not require `stdin' and
- `stdout' to be compile-time constant. In a reentrant scanner,
- however, this is not a problem since initialization is performed
- in `yylex_init' at runtime.
-
-`--yylineno, `%option yylineno''
- directs `flex' to generate a scanner that maintains the number of
- the current line read from its input in the global variable
- `yylineno'. This option is implied by `%option lex-compat'. In a
- reentrant C scanner, the macro `yylineno' is accessible regardless
- of the value of `%option yylineno', however, its value is not
- modified by `flex' unless `%option yylineno' is enabled.
-
-`--yywrap, `%option yywrap''
- if unset (i.e., `--noyywrap)', makes the scanner not call
- `yywrap()' upon an end-of-file, but simply assume that there are no
- more files to scan (until the user points `yyin' at a new file and
- calls `yylex()' again).
-
-
-
-File: flex.info, Node: Code-Level And API Options, Next: Options for Scanner Speed and Size, Prev: Options Affecting Scanner Behavior, Up: Scanner Options
-
-16.3 Code-Level And API Options
-===============================
-
-`--ansi-definitions, `%option ansi-definitions''
- instruct flex to generate ANSI C99 definitions for functions.
- This option is enabled by default. If `%option
- noansi-definitions' is specified, then the obsolete style is
- generated.
-
-`--ansi-prototypes, `%option ansi-prototypes''
- instructs flex to generate ANSI C99 prototypes for functions.
- This option is enabled by default. If `noansi-prototypes' is
- specified, then prototypes will have empty parameter lists.
-
-`--bison-bridge, `%option bison-bridge''
- instructs flex to generate a C scanner that is meant to be called
- by a `GNU bison' parser. The scanner has minor API changes for
- `bison' compatibility. In particular, the declaration of `yylex'
- is modified to take an additional parameter, `yylval'. *Note
- Bison Bridge::.
-
-`--bison-locations, `%option bison-locations''
- instruct flex that `GNU bison' `%locations' are being used. This
- means `yylex' will be passed an additional parameter, `yylloc'.
- This option implies `%option bison-bridge'. *Note Bison Bridge::.
-
-`-L, --noline, `%option noline''
- instructs `flex' not to generate `#line' directives. Without this
- option, `flex' peppers the generated scanner with `#line'
- directives so error messages in the actions will be correctly
- located with respect to either the original `flex' input file (if
- the errors are due to code in the input file), or `lex.yy.c' (if
- the errors are `flex''s fault - you should report these sorts of
- errors to the email address given in *Note Reporting Bugs::).
-
-`-R, --reentrant, `%option reentrant''
- instructs flex to generate a reentrant C scanner. The generated
- scanner may safely be used in a multi-threaded environment. The
- API for a reentrant scanner is different than for a non-reentrant
- scanner *note Reentrant::). Because of the API difference between
- reentrant and non-reentrant `flex' scanners, non-reentrant flex
- code must be modified before it is suitable for use with this
- option. This option is not compatible with the `--c++' option.
-
- The option `--reentrant' does not affect the performance of the
- scanner.
-
-`-+, --c++, `%option c++''
- specifies that you want flex to generate a C++ scanner class.
- *Note Cxx::, for details.
-
-`--array, `%option array''
- specifies that you want yytext to be an array instead of a char*
-
-`--pointer, `%option pointer''
- specify that `yytext' should be a `char *', not an array. This
- default is `char *'.
-
-`-PPREFIX, --prefix=PREFIX, `%option prefix="PREFIX"''
- changes the default `yy' prefix used by `flex' for all
- globally-visible variable and function names to instead be
- `PREFIX'. For example, `--prefix=foo' changes the name of
- `yytext' to `footext'. It also changes the name of the default
- output file from `lex.yy.c' to `lex.foo.c'. Here is a partial
- list of the names affected:
-
-
- yy_create_buffer
- yy_delete_buffer
- yy_flex_debug
- yy_init_buffer
- yy_flush_buffer
- yy_load_buffer_state
- yy_switch_to_buffer
- yyin
- yyleng
- yylex
- yylineno
- yyout
- yyrestart
- yytext
- yywrap
- yyalloc
- yyrealloc
- yyfree
-
- (If you are using a C++ scanner, then only `yywrap' and
- `yyFlexLexer' are affected.) Within your scanner itself, you can
- still refer to the global variables and functions using either
- version of their name; but externally, they have the modified name.
-
- This option lets you easily link together multiple `flex' programs
- into the same executable. Note, though, that using this option
- also renames `yywrap()', so you now _must_ either provide your own
- (appropriately-named) version of the routine for your scanner, or
- use `%option noyywrap', as linking with `-lfl' no longer provides
- one for you by default.
-
-`--main, `%option main''
- directs flex to provide a default `main()' program for the
- scanner, which simply calls `yylex()'. This option implies
- `noyywrap' (see below).
-
-`--nounistd, `%option nounistd''
- suppresses inclusion of the non-ANSI header file `unistd.h'. This
- option is meant to target environments in which `unistd.h' does
- not exist. Be aware that certain options may cause flex to
- generate code that relies on functions normally found in
- `unistd.h', (e.g. `isatty()', `read()'.) If you wish to use these
- functions, you will have to inform your compiler where to find
- them. *Note option-always-interactive::. *Note option-read::.
-
-`--yyclass=NAME, `%option yyclass="NAME"''
- only applies when generating a C++ scanner (the `--c++' option).
- It informs `flex' that you have derived `NAME' as a subclass of
- `yyFlexLexer', so `flex' will place your actions in the member
- function `foo::yylex()' instead of `yyFlexLexer::yylex()'. It
- also generates a `yyFlexLexer::yylex()' member function that emits
- a run-time error (by invoking `yyFlexLexer::LexerError())' if
- called. *Note Cxx::.
-
-
-
-File: flex.info, Node: Options for Scanner Speed and Size, Next: Debugging Options, Prev: Code-Level And API Options, Up: Scanner Options
-
-16.4 Options for Scanner Speed and Size
-=======================================
-
-`-C[aefFmr]'
- controls the degree of table compression and, more generally,
- trade-offs between small scanners and fast scanners.
-
- `-C'
- A lone `-C' specifies that the scanner tables should be
- compressed but neither equivalence classes nor
- meta-equivalence classes should be used.
-
- `-Ca, --align, `%option align''
- ("align") instructs flex to trade off larger tables in the
- generated scanner for faster performance because the elements
- of the tables are better aligned for memory access and
- computation. On some RISC architectures, fetching and
- manipulating longwords is more efficient than with
- smaller-sized units such as shortwords. This option can
- quadruple the size of the tables used by your scanner.
-
- `-Ce, --ecs, `%option ecs''
- directs `flex' to construct "equivalence classes", i.e., sets
- of characters which have identical lexical properties (for
- example, if the only appearance of digits in the `flex' input
- is in the character class "[0-9]" then the digits '0', '1',
- ..., '9' will all be put in the same equivalence class).
- Equivalence classes usually give dramatic reductions in the
- final table/object file sizes (typically a factor of 2-5) and
- are pretty cheap performance-wise (one array look-up per
- character scanned).
-
- `-Cf'
- specifies that the "full" scanner tables should be generated -
- `flex' should not compress the tables by taking advantages of
- similar transition functions for different states.
-
- `-CF'
- specifies that the alternate fast scanner representation
- (described above under the `--fast' flag) should be used.
- This option cannot be used with `--c++'.
-
- `-Cm, --meta-ecs, `%option meta-ecs''
- directs `flex' to construct "meta-equivalence classes", which
- are sets of equivalence classes (or characters, if equivalence
- classes are not being used) that are commonly used together.
- Meta-equivalence classes are often a big win when using
- compressed tables, but they have a moderate performance
- impact (one or two `if' tests and one array look-up per
- character scanned).
-
- `-Cr, --read, `%option read''
- causes the generated scanner to _bypass_ use of the standard
- I/O library (`stdio') for input. Instead of calling
- `fread()' or `getc()', the scanner will use the `read()'
- system call, resulting in a performance gain which varies
- from system to system, but in general is probably negligible
- unless you are also using `-Cf' or `-CF'. Using `-Cr' can
- cause strange behavior if, for example, you read from `yyin'
- using `stdio' prior to calling the scanner (because the
- scanner will miss whatever text your previous reads left in
- the `stdio' input buffer). `-Cr' has no effect if you define
- `YY_INPUT()' (*note Generated Scanner::).
-
- The options `-Cf' or `-CF' and `-Cm' do not make sense together -
- there is no opportunity for meta-equivalence classes if the table
- is not being compressed. Otherwise the options may be freely
- mixed, and are cumulative.
-
- The default setting is `-Cem', which specifies that `flex' should
- generate equivalence classes and meta-equivalence classes. This
- setting provides the highest degree of table compression. You can
- trade off faster-executing scanners at the cost of larger tables
- with the following generally being true:
-
-
- slowest & smallest
- -Cem
- -Cm
- -Ce
- -C
- -C{f,F}e
- -C{f,F}
- -C{f,F}a
- fastest & largest
-
- Note that scanners with the smallest tables are usually generated
- and compiled the quickest, so during development you will usually
- want to use the default, maximal compression.
-
- `-Cfe' is often a good compromise between speed and size for
- production scanners.
-
-`-f, --full, `%option full''
- specifies "fast scanner". No table compression is done and
- `stdio' is bypassed. The result is large but fast. This option
- is equivalent to `--Cfr'
-
-`-F, --fast, `%option fast''
- specifies that the _fast_ scanner table representation should be
- used (and `stdio' bypassed). This representation is about as fast
- as the full table representation `--full', and for some sets of
- patterns will be considerably smaller (and for others, larger). In
- general, if the pattern set contains both _keywords_ and a
- catch-all, _identifier_ rule, such as in the set:
-
-
- "case" return TOK_CASE;
- "switch" return TOK_SWITCH;
- ...
- "default" return TOK_DEFAULT;
- [a-z]+ return TOK_ID;
-
- then you're better off using the full table representation. If
- only the _identifier_ rule is present and you then use a hash
- table or some such to detect the keywords, you're better off using
- `--fast'.
-
- This option is equivalent to `-CFr'. It cannot be used with
- `--c++'.
-
-
-
-File: flex.info, Node: Debugging Options, Next: Miscellaneous Options, Prev: Options for Scanner Speed and Size, Up: Scanner Options
-
-16.5 Debugging Options
-======================
-
-`-b, --backup, `%option backup''
- Generate backing-up information to `lex.backup'. This is a list of
- scanner states which require backing up and the input characters on
- which they do so. By adding rules one can remove backing-up
- states. If _all_ backing-up states are eliminated and `-Cf' or
- `-CF' is used, the generated scanner will run faster (see the
- `--perf-report' flag). Only users who wish to squeeze every last
- cycle out of their scanners need worry about this option. (*note
- Performance::).
-
-`-d, --debug, `%option debug''
- makes the generated scanner run in "debug" mode. Whenever a
- pattern is recognized and the global variable `yy_flex_debug' is
- non-zero (which is the default), the scanner will write to
- `stderr' a line of the form:
-
-
- -accepting rule at line 53 ("the matched text")
-
- The line number refers to the location of the rule in the file
- defining the scanner (i.e., the file that was fed to flex).
- Messages are also generated when the scanner backs up, accepts the
- default rule, reaches the end of its input buffer (or encounters a
- NUL; at this point, the two look the same as far as the scanner's
- concerned), or reaches an end-of-file.
-
-`-p, --perf-report, `%option perf-report''
- generates a performance report to `stderr'. The report consists of
- comments regarding features of the `flex' input file which will
- cause a serious loss of performance in the resulting scanner. If
- you give the flag twice, you will also get comments regarding
- features that lead to minor performance losses.
-
- Note that the use of `REJECT', and variable trailing context
- (*note Limitations::) entails a substantial performance penalty;
- use of `yymore()', the `^' operator, and the `--interactive' flag
- entail minor performance penalties.
-
-`-s, --nodefault, `%option nodefault''
- causes the _default rule_ (that unmatched scanner input is echoed
- to `stdout)' to be suppressed. If the scanner encounters input
- that does not match any of its rules, it aborts with an error.
- This option is useful for finding holes in a scanner's rule set.
-
-`-T, --trace, `%option trace''
- makes `flex' run in "trace" mode. It will generate a lot of
- messages to `stderr' concerning the form of the input and the
- resultant non-deterministic and deterministic finite automata.
- This option is mostly for use in maintaining `flex'.
-
-`-w, --nowarn, `%option nowarn''
- suppresses warning messages.
-
-`-v, --verbose, `%option verbose''
- specifies that `flex' should write to `stderr' a summary of
- statistics regarding the scanner it generates. Most of the
- statistics are meaningless to the casual `flex' user, but the
- first line identifies the version of `flex' (same as reported by
- `--version'), and the next line the flags used when generating the
- scanner, including those that are on by default.
-
-`--warn, `%option warn''
- warn about certain things. In particular, if the default rule can
- be matched but no default rule has been given, the flex will warn
- you. We recommend using this option always.
-
-
-
-File: flex.info, Node: Miscellaneous Options, Prev: Debugging Options, Up: Scanner Options
-
-16.6 Miscellaneous Options
-==========================
-
-`-c'
- A do-nothing option included for POSIX compliance.
-
-`-h, -?, --help'
- generates a "help" summary of `flex''s options to `stdout' and
- then exits.
-
-`-n'
- Another do-nothing option included for POSIX compliance.
-
-`-V, --version'
- prints the version number to `stdout' and exits.
-
-
-
-File: flex.info, Node: Performance, Next: Cxx, Prev: Scanner Options, Up: Top
-
-17 Performance Considerations
-*****************************
-
-The main design goal of `flex' is that it generate high-performance
-scanners. It has been optimized for dealing well with large sets of
-rules. Aside from the effects on scanner speed of the table compression
-`-C' options outlined above, there are a number of options/actions
-which degrade performance. These are, from most expensive to least:
-
-
- REJECT
- arbitrary trailing context
-
- pattern sets that require backing up
- %option yylineno
- %array
-
- %option interactive
- %option always-interactive
-
- @samp{^} beginning-of-line operator
- yymore()
-
- with the first two all being quite expensive and the last two being
-quite cheap. Note also that `unput()' is implemented as a routine call
-that potentially does quite a bit of work, while `yyless()' is a
-quite-cheap macro. So if you are just putting back some excess text you
-scanned, use `yyless()'.
-
- `REJECT' should be avoided at all costs when performance is
-important. It is a particularly expensive option.
-
- There is one case when `%option yylineno' can be expensive. That is
-when your patterns match long tokens that could _possibly_ contain a
-newline character. There is no performance penalty for rules that can
-not possibly match newlines, since flex does not need to check them for
-newlines. In general, you should avoid rules such as `[^f]+', which
-match very long tokens, including newlines, and may possibly match your
-entire file! A better approach is to separate `[^f]+' into two rules:
-
-
- %option yylineno
- %%
- [^f\n]+
- \n+
-
- The above scanner does not incur a performance penalty.
-
- Getting rid of backing up is messy and often may be an enormous
-amount of work for a complicated scanner. In principal, one begins by
-using the `-b' flag to generate a `lex.backup' file. For example, on
-the input:
-
-
- %%
- foo return TOK_KEYWORD;
- foobar return TOK_KEYWORD;
-
- the file looks like:
-
-
- State #6 is non-accepting -
- associated rule line numbers:
- 2 3
- out-transitions: [ o ]
- jam-transitions: EOF [ \001-n p-\177 ]
-
- State #8 is non-accepting -
- associated rule line numbers:
- 3
- out-transitions: [ a ]
- jam-transitions: EOF [ \001-` b-\177 ]
-
- State #9 is non-accepting -
- associated rule line numbers:
- 3
- out-transitions: [ r ]
- jam-transitions: EOF [ \001-q s-\177 ]
-
- Compressed tables always back up.
-
- The first few lines tell us that there's a scanner state in which it
-can make a transition on an 'o' but not on any other character, and
-that in that state the currently scanned text does not match any rule.
-The state occurs when trying to match the rules found at lines 2 and 3
-in the input file. If the scanner is in that state and then reads
-something other than an 'o', it will have to back up to find a rule
-which is matched. With a bit of headscratching one can see that this
-must be the state it's in when it has seen `fo'. When this has
-happened, if anything other than another `o' is seen, the scanner will
-have to back up to simply match the `f' (by the default rule).
-
- The comment regarding State #8 indicates there's a problem when
-`foob' has been scanned. Indeed, on any character other than an `a',
-the scanner will have to back up to accept "foo". Similarly, the
-comment for State #9 concerns when `fooba' has been scanned and an `r'
-does not follow.
-
- The final comment reminds us that there's no point going to all the
-trouble of removing backing up from the rules unless we're using `-Cf'
-or `-CF', since there's no performance gain doing so with compressed
-scanners.
-
- The way to remove the backing up is to add "error" rules:
-
-
- %%
- foo return TOK_KEYWORD;
- foobar return TOK_KEYWORD;
-
- fooba |
- foob |
- fo {
- /* false alarm, not really a keyword */
- return TOK_ID;
- }
-
- Eliminating backing up among a list of keywords can also be done
-using a "catch-all" rule:
-
-
- %%
- foo return TOK_KEYWORD;
- foobar return TOK_KEYWORD;
-
- [a-z]+ return TOK_ID;
-
- This is usually the best solution when appropriate.
-
- Backing up messages tend to cascade. With a complicated set of rules
-it's not uncommon to get hundreds of messages. If one can decipher
-them, though, it often only takes a dozen or so rules to eliminate the
-backing up (though it's easy to make a mistake and have an error rule
-accidentally match a valid token. A possible future `flex' feature
-will be to automatically add rules to eliminate backing up).
-
- It's important to keep in mind that you gain the benefits of
-eliminating backing up only if you eliminate _every_ instance of
-backing up. Leaving just one means you gain nothing.
-
- _Variable_ trailing context (where both the leading and trailing
-parts do not have a fixed length) entails almost the same performance
-loss as `REJECT' (i.e., substantial). So when possible a rule like:
-
-
- %%
- mouse|rat/(cat|dog) run();
-
- is better written:
-
-
- %%
- mouse/cat|dog run();
- rat/cat|dog run();
-
- or as
-
-
- %%
- mouse|rat/cat run();
- mouse|rat/dog run();
-
- Note that here the special '|' action does _not_ provide any
-savings, and can even make things worse (*note Limitations::).
-
- Another area where the user can increase a scanner's performance (and
-one that's easier to implement) arises from the fact that the longer the
-tokens matched, the faster the scanner will run. This is because with
-long tokens the processing of most input characters takes place in the
-(short) inner scanning loop, and does not often have to go through the
-additional work of setting up the scanning environment (e.g., `yytext')
-for the action. Recall the scanner for C comments:
-
-
- %x comment
- %%
- int line_num = 1;
-
- "/*" BEGIN(comment);
-
- <comment>[^*\n]*
- <comment>"*"+[^*/\n]*
- <comment>\n ++line_num;
- <comment>"*"+"/" BEGIN(INITIAL);
-
- This could be sped up by writing it as:
-
-
- %x comment
- %%
- int line_num = 1;
-
- "/*" BEGIN(comment);
-
- <comment>[^*\n]*
- <comment>[^*\n]*\n ++line_num;
- <comment>"*"+[^*/\n]*
- <comment>"*"+[^*/\n]*\n ++line_num;
- <comment>"*"+"/" BEGIN(INITIAL);
-
- Now instead of each newline requiring the processing of another
-action, recognizing the newlines is distributed over the other rules to
-keep the matched text as long as possible. Note that _adding_ rules
-does _not_ slow down the scanner! The speed of the scanner is
-independent of the number of rules or (modulo the considerations given
-at the beginning of this section) how complicated the rules are with
-regard to operators such as `*' and `|'.
-
- A final example in speeding up a scanner: suppose you want to scan
-through a file containing identifiers and keywords, one per line and
-with no other extraneous characters, and recognize all the keywords. A
-natural first approach is:
-
-
- %%
- asm |
- auto |
- break |
- ... etc ...
- volatile |
- while /* it's a keyword */
-
- .|\n /* it's not a keyword */
-
- To eliminate the back-tracking, introduce a catch-all rule:
-
-
- %%
- asm |
- auto |
- break |
- ... etc ...
- volatile |
- while /* it's a keyword */
-
- [a-z]+ |
- .|\n /* it's not a keyword */
-
- Now, if it's guaranteed that there's exactly one word per line, then
-we can reduce the total number of matches by a half by merging in the
-recognition of newlines with that of the other tokens:
-
-
- %%
- asm\n |
- auto\n |
- break\n |
- ... etc ...
- volatile\n |
- while\n /* it's a keyword */
-
- [a-z]+\n |
- .|\n /* it's not a keyword */
-
- One has to be careful here, as we have now reintroduced backing up
-into the scanner. In particular, while _we_ know that there will never
-be any characters in the input stream other than letters or newlines,
-`flex' can't figure this out, and it will plan for possibly needing to
-back up when it has scanned a token like `auto' and then the next
-character is something other than a newline or a letter. Previously it
-would then just match the `auto' rule and be done, but now it has no
-`auto' rule, only a `auto\n' rule. To eliminate the possibility of
-backing up, we could either duplicate all rules but without final
-newlines, or, since we never expect to encounter such an input and
-therefore don't how it's classified, we can introduce one more
-catch-all rule, this one which doesn't include a newline:
-
-
- %%
- asm\n |
- auto\n |
- break\n |
- ... etc ...
- volatile\n |
- while\n /* it's a keyword */
-
- [a-z]+\n |
- [a-z]+ |
- .|\n /* it's not a keyword */
-
- Compiled with `-Cf', this is about as fast as one can get a `flex'
-scanner to go for this particular problem.
-
- A final note: `flex' is slow when matching `NUL's, particularly when
-a token contains multiple `NUL's. It's best to write rules which match
-_short_ amounts of text if it's anticipated that the text will often
-include `NUL's.
-
- Another final note regarding performance: as mentioned in *Note
-Matching::, dynamically resizing `yytext' to accommodate huge tokens is
-a slow process because it presently requires that the (huge) token be
-rescanned from the beginning. Thus if performance is vital, you should
-attempt to match "large" quantities of text but not "huge" quantities,
-where the cutoff between the two is at about 8K characters per token.
-
-
-File: flex.info, Node: Cxx, Next: Reentrant, Prev: Performance, Up: Top
-
-18 Generating C++ Scanners
-**************************
-
-*IMPORTANT*: the present form of the scanning class is _experimental_
-and may change considerably between major releases.
-
- `flex' provides two different ways to generate scanners for use with
-C++. The first way is to simply compile a scanner generated by `flex'
-using a C++ compiler instead of a C compiler. You should not encounter
-any compilation errors (*note Reporting Bugs::). You can then use C++
-code in your rule actions instead of C code. Note that the default
-input source for your scanner remains `yyin', and default echoing is
-still done to `yyout'. Both of these remain `FILE *' variables and not
-C++ _streams_.
-
- You can also use `flex' to generate a C++ scanner class, using the
-`-+' option (or, equivalently, `%option c++)', which is automatically
-specified if the name of the `flex' executable ends in a '+', such as
-`flex++'. When using this option, `flex' defaults to generating the
-scanner to the file `lex.yy.cc' instead of `lex.yy.c'. The generated
-scanner includes the header file `FlexLexer.h', which defines the
-interface to two C++ classes.
-
- The first class, `FlexLexer', provides an abstract base class
-defining the general scanner class interface. It provides the
-following member functions:
-
-`const char* YYText()'
- returns the text of the most recently matched token, the
- equivalent of `yytext'.
-
-`int YYLeng()'
- returns the length of the most recently matched token, the
- equivalent of `yyleng'.
-
-`int lineno() const'
- returns the current input line number (see `%option yylineno)', or
- `1' if `%option yylineno' was not used.
-
-`void set_debug( int flag )'
- sets the debugging flag for the scanner, equivalent to assigning to
- `yy_flex_debug' (*note Scanner Options::). Note that you must
- build the scanner using `%option debug' to include debugging
- information in it.
-
-`int debug() const'
- returns the current setting of the debugging flag.
-
- Also provided are member functions equivalent to
-`yy_switch_to_buffer()', `yy_create_buffer()' (though the first
-argument is an `istream*' object pointer and not a `FILE*)',
-`yy_flush_buffer()', `yy_delete_buffer()', and `yyrestart()' (again,
-the first argument is a `istream*' object pointer).
-
- The second class defined in `FlexLexer.h' is `yyFlexLexer', which is
-derived from `FlexLexer'. It defines the following additional member
-functions:
-
-`yyFlexLexer( istream* arg_yyin = 0, ostream* arg_yyout = 0 )'
- constructs a `yyFlexLexer' object using the given streams for input
- and output. If not specified, the streams default to `cin' and
- `cout', respectively.
-
-`virtual int yylex()'
- performs the same role is `yylex()' does for ordinary `flex'
- scanners: it scans the input stream, consuming tokens, until a
- rule's action returns a value. If you derive a subclass `S' from
- `yyFlexLexer' and want to access the member functions and variables
- of `S' inside `yylex()', then you need to use `%option
- yyclass="S"' to inform `flex' that you will be using that subclass
- instead of `yyFlexLexer'. In this case, rather than generating
- `yyFlexLexer::yylex()', `flex' generates `S::yylex()' (and also
- generates a dummy `yyFlexLexer::yylex()' that calls
- `yyFlexLexer::LexerError()' if called).
-
-`virtual void switch_streams(istream* new_in = 0, ostream* new_out = 0)'
- reassigns `yyin' to `new_in' (if non-null) and `yyout' to
- `new_out' (if non-null), deleting the previous input buffer if
- `yyin' is reassigned.
-
-`int yylex( istream* new_in, ostream* new_out = 0 )'
- first switches the input streams via `switch_streams( new_in,
- new_out )' and then returns the value of `yylex()'.
-
- In addition, `yyFlexLexer' defines the following protected virtual
-functions which you can redefine in derived classes to tailor the
-scanner:
-
-`virtual int LexerInput( char* buf, int max_size )'
- reads up to `max_size' characters into `buf' and returns the
- number of characters read. To indicate end-of-input, return 0
- characters. Note that `interactive' scanners (see the `-B' and
- `-I' flags in *Note Scanner Options::) define the macro
- `YY_INTERACTIVE'. If you redefine `LexerInput()' and need to take
- different actions depending on whether or not the scanner might be
- scanning an interactive input source, you can test for the
- presence of this name via `#ifdef' statements.
-
-`virtual void LexerOutput( const char* buf, int size )'
- writes out `size' characters from the buffer `buf', which, while
- `NUL'-terminated, may also contain internal `NUL's if the
- scanner's rules can match text with `NUL's in them.
-
-`virtual void LexerError( const char* msg )'
- reports a fatal error message. The default version of this
- function writes the message to the stream `cerr' and exits.
-
- Note that a `yyFlexLexer' object contains its _entire_ scanning
-state. Thus you can use such objects to create reentrant scanners, but
-see also *Note Reentrant::. You can instantiate multiple instances of
-the same `yyFlexLexer' class, and you can also combine multiple C++
-scanner classes together in the same program using the `-P' option
-discussed above.
-
- Finally, note that the `%array' feature is not available to C++
-scanner classes; you must use `%pointer' (the default).
-
- Here is an example of a simple C++ scanner:
-
-
- // An example of using the flex C++ scanner class.
-
- %{
- int mylineno = 0;
- %}
-
- string \"[^\n"]+\"
-
- ws [ \t]+
-
- alpha [A-Za-z]
- dig [0-9]
- name ({alpha}|{dig}|\$)({alpha}|{dig}|[_.\-/$])*
- num1 [-+]?{dig}+\.?([eE][-+]?{dig}+)?
- num2 [-+]?{dig}*\.{dig}+([eE][-+]?{dig}+)?
- number {num1}|{num2}
-
- %%
-
- {ws} /* skip blanks and tabs */
-
- "/*" {
- int c;
-
- while((c = yyinput()) != 0)
- {
- if(c == '\n')
- ++mylineno;
-
- else if(c == @samp{*})
- {
- if((c = yyinput()) == '/')
- break;
- else
- unput(c);
- }
- }
- }
-
- {number} cout "number " YYText() '\n';
-
- \n mylineno++;
-
- {name} cout "name " YYText() '\n';
-
- {string} cout "string " YYText() '\n';
-
- %%
-
- int main( int /* argc */, char** /* argv */ )
- {
- @code{flex}Lexer* lexer = new yyFlexLexer;
- while(lexer->yylex() != 0)
- ;
- return 0;
- }
-
- If you want to create multiple (different) lexer classes, you use the
-`-P' flag (or the `prefix=' option) to rename each `yyFlexLexer' to
-some other `xxFlexLexer'. You then can include `<FlexLexer.h>' in your
-other sources once per lexer class, first renaming `yyFlexLexer' as
-follows:
-
-
- #undef yyFlexLexer
- #define yyFlexLexer xxFlexLexer
- #include <FlexLexer.h>
-
- #undef yyFlexLexer
- #define yyFlexLexer zzFlexLexer
- #include <FlexLexer.h>
-
- if, for example, you used `%option prefix="xx"' for one of your
-scanners and `%option prefix="zz"' for the other.
-
-
-File: flex.info, Node: Reentrant, Next: Lex and Posix, Prev: Cxx, Up: Top
-
-19 Reentrant C Scanners
-***********************
-
-`flex' has the ability to generate a reentrant C scanner. This is
-accomplished by specifying `%option reentrant' (`-R') The generated
-scanner is both portable, and safe to use in one or more separate
-threads of control. The most common use for reentrant scanners is from
-within multi-threaded applications. Any thread may create and execute
-a reentrant `flex' scanner without the need for synchronization with
-other threads.
-
-* Menu:
-
-* Reentrant Uses::
-* Reentrant Overview::
-* Reentrant Example::
-* Reentrant Detail::
-* Reentrant Functions::
-
-
-File: flex.info, Node: Reentrant Uses, Next: Reentrant Overview, Prev: Reentrant, Up: Reentrant
-
-19.1 Uses for Reentrant Scanners
-================================
-
-However, there are other uses for a reentrant scanner. For example, you
-could scan two or more files simultaneously to implement a `diff' at
-the token level (i.e., instead of at the character level):
-
-
- /* Example of maintaining more than one active scanner. */
-
- do {
- int tok1, tok2;
-
- tok1 = yylex( scanner_1 );
- tok2 = yylex( scanner_2 );
-
- if( tok1 != tok2 )
- printf("Files are different.");
-
- } while ( tok1 && tok2 );
-
- Another use for a reentrant scanner is recursion. (Note that a
-recursive scanner can also be created using a non-reentrant scanner and
-buffer states. *Note Multiple Input Buffers::.)
-
- The following crude scanner supports the `eval' command by invoking
-another instance of itself.
-
-
- /* Example of recursive invocation. */
-
- %option reentrant
-
- %%
- "eval(".+")" {
- yyscan_t scanner;
- YY_BUFFER_STATE buf;
-
- yylex_init( &scanner );
- yytext[yyleng-1] = ' ';
-
- buf = yy_scan_string( yytext + 5, scanner );
- yylex( scanner );
-
- yy_delete_buffer(buf,scanner);
- yylex_destroy( scanner );
- }
- ...
- %%
-
-
-File: flex.info, Node: Reentrant Overview, Next: Reentrant Example, Prev: Reentrant Uses, Up: Reentrant
-
-19.2 An Overview of the Reentrant API
-=====================================
-
-The API for reentrant scanners is different than for non-reentrant
-scanners. Here is a quick overview of the API:
-
- `%option reentrant' must be specified.
-
- * All functions take one additional argument: `yyscanner'
-
- * All global variables are replaced by their macro equivalents. (We
- tell you this because it may be important to you during debugging.)
-
- * `yylex_init' and `yylex_destroy' must be called before and after
- `yylex', respectively.
-
- * Accessor methods (get/set functions) provide access to common
- `flex' variables.
-
- * User-specific data can be stored in `yyextra'.
-
-
-File: flex.info, Node: Reentrant Example, Next: Reentrant Detail, Prev: Reentrant Overview, Up: Reentrant
-
-19.3 Reentrant Example
-======================
-
-First, an example of a reentrant scanner:
-
- /* This scanner prints "//" comments. */
-
- %option reentrant stack noyywrap
- %x COMMENT
-
- %%
-
- "//" yy_push_state( COMMENT, yyscanner);
- .|\n
-
- <COMMENT>\n yy_pop_state( yyscanner );
- <COMMENT>[^\n]+ fprintf( yyout, "%s\n", yytext);
-
- %%
-
- int main ( int argc, char * argv[] )
- {
- yyscan_t scanner;
-
- yylex_init ( &scanner );
- yylex ( scanner );
- yylex_destroy ( scanner );
- return 0;
- }
-
-
-File: flex.info, Node: Reentrant Detail, Next: Reentrant Functions, Prev: Reentrant Example, Up: Reentrant
-
-19.4 The Reentrant API in Detail
-================================
-
-Here are the things you need to do or know to use the reentrant C API of
-`flex'.
-
-* Menu:
-
-* Specify Reentrant::
-* Extra Reentrant Argument::
-* Global Replacement::
-* Init and Destroy Functions::
-* Accessor Methods::
-* Extra Data::
-* About yyscan_t::
-
-
-File: flex.info, Node: Specify Reentrant, Next: Extra Reentrant Argument, Prev: Reentrant Detail, Up: Reentrant Detail
-
-19.4.1 Declaring a Scanner As Reentrant
----------------------------------------
-
-%option reentrant (-reentrant) must be specified.
-
- Notice that `%option reentrant' is specified in the above example
-(*note Reentrant Example::. Had this option not been specified, `flex'
-would have happily generated a non-reentrant scanner without
-complaining. You may explicitly specify `%option noreentrant', if you
-do _not_ want a reentrant scanner, although it is not necessary. The
-default is to generate a non-reentrant scanner.
-
-
-File: flex.info, Node: Extra Reentrant Argument, Next: Global Replacement, Prev: Specify Reentrant, Up: Reentrant Detail
-
-19.4.2 The Extra Argument
--------------------------
-
-All functions take one additional argument: `yyscanner'.
-
- Notice that the calls to `yy_push_state' and `yy_pop_state' both
-have an argument, `yyscanner' , that is not present in a non-reentrant
-scanner. Here are the declarations of `yy_push_state' and
-`yy_pop_state' in the reentrant scanner:
-
-
- static void yy_push_state ( int new_state , yyscan_t yyscanner ) ;
- static void yy_pop_state ( yyscan_t yyscanner ) ;
-
- Notice that the argument `yyscanner' appears in the declaration of
-both functions. In fact, all `flex' functions in a reentrant scanner
-have this additional argument. It is always the last argument in the
-argument list, it is always of type `yyscan_t' (which is typedef'd to
-`void *') and it is always named `yyscanner'. As you may have guessed,
-`yyscanner' is a pointer to an opaque data structure encapsulating the
-current state of the scanner. For a list of function declarations, see
-*Note Reentrant Functions::. Note that preprocessor macros, such as
-`BEGIN', `ECHO', and `REJECT', do not take this additional argument.
-
-
-File: flex.info, Node: Global Replacement, Next: Init and Destroy Functions, Prev: Extra Reentrant Argument, Up: Reentrant Detail
-
-19.4.3 Global Variables Replaced By Macros
-------------------------------------------
-
-All global variables in traditional flex have been replaced by macro
-equivalents.
-
- Note that in the above example, `yyout' and `yytext' are not plain
-variables. These are macros that will expand to their equivalent lvalue.
-All of the familiar `flex' globals have been replaced by their macro
-equivalents. In particular, `yytext', `yyleng', `yylineno', `yyin',
-`yyout', `yyextra', `yylval', and `yylloc' are macros. You may safely
-use these macros in actions as if they were plain variables. We only
-tell you this so you don't expect to link to these variables
-externally. Currently, each macro expands to a member of an internal
-struct, e.g.,
-
-
- #define yytext (((struct yyguts_t*)yyscanner)->yytext_r)
-
- One important thing to remember about `yytext' and friends is that
-`yytext' is not a global variable in a reentrant scanner, you can not
-access it directly from outside an action or from other functions. You
-must use an accessor method, e.g., `yyget_text', to accomplish this.
-(See below).
-
-
-File: flex.info, Node: Init and Destroy Functions, Next: Accessor Methods, Prev: Global Replacement, Up: Reentrant Detail
-
-19.4.4 Init and Destroy Functions
----------------------------------
-
-`yylex_init' and `yylex_destroy' must be called before and after
-`yylex', respectively.
-
-
- int yylex_init ( yyscan_t * ptr_yy_globals ) ;
- int yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t * ptr_yy_globals ) ;
- int yylex ( yyscan_t yyscanner ) ;
- int yylex_destroy ( yyscan_t yyscanner ) ;
-
- The function `yylex_init' must be called before calling any other
-function. The argument to `yylex_init' is the address of an
-uninitialized pointer to be filled in by `yylex_init', overwriting any
-previous contents. The function `yylex_init_extra' may be used instead,
-taking as its first argument a variable of type `YY_EXTRA_TYPE'. See
-the section on yyextra, below, for more details.
-
- The value stored in `ptr_yy_globals' should thereafter be passed to
-`yylex' and `yylex_destroy'. Flex does not save the argument passed to
-`yylex_init', so it is safe to pass the address of a local pointer to
-`yylex_init' so long as it remains in scope for the duration of all
-calls to the scanner, up to and including the call to `yylex_destroy'.
-
- The function `yylex' should be familiar to you by now. The reentrant
-version takes one argument, which is the value returned (via an
-argument) by `yylex_init'. Otherwise, it behaves the same as the
-non-reentrant version of `yylex'.
-
- Both `yylex_init' and `yylex_init_extra' returns 0 (zero) on success,
-or non-zero on failure, in which case errno is set to one of the
-following values:
-
- * ENOMEM Memory allocation error. *Note memory-management::.
-
- * EINVAL Invalid argument.
-
- The function `yylex_destroy' should be called to free resources used
-by the scanner. After `yylex_destroy' is called, the contents of
-`yyscanner' should not be used. Of course, there is no need to destroy
-a scanner if you plan to reuse it. A `flex' scanner (both reentrant
-and non-reentrant) may be restarted by calling `yyrestart'.
-
- Below is an example of a program that creates a scanner, uses it,
-then destroys it when done:
-
-
- int main ()
- {
- yyscan_t scanner;
- int tok;
-
- yylex_init(&scanner);
-
- while ((tok=yylex()) > 0)
- printf("tok=%d yytext=%s\n", tok, yyget_text(scanner));
-
- yylex_destroy(scanner);
- return 0;
- }
-
-
-File: flex.info, Node: Accessor Methods, Next: Extra Data, Prev: Init and Destroy Functions, Up: Reentrant Detail
-
-19.4.5 Accessing Variables with Reentrant Scanners
---------------------------------------------------
-
-Accessor methods (get/set functions) provide access to common `flex'
-variables.
-
- Many scanners that you build will be part of a larger project.
-Portions of your project will need access to `flex' values, such as
-`yytext'. In a non-reentrant scanner, these values are global, so
-there is no problem accessing them. However, in a reentrant scanner,
-there are no global `flex' values. You can not access them directly.
-Instead, you must access `flex' values using accessor methods (get/set
-functions). Each accessor method is named `yyget_NAME' or `yyset_NAME',
-where `NAME' is the name of the `flex' variable you want. For example:
-
-
- /* Set the last character of yytext to NULL. */
- void chop ( yyscan_t scanner )
- {
- int len = yyget_leng( scanner );
- yyget_text( scanner )[len - 1] = '\0';
- }
-
- The above code may be called from within an action like this:
-
-
- %%
- .+\n { chop( yyscanner );}
-
- You may find that `%option header-file' is particularly useful for
-generating prototypes of all the accessor functions. *Note
-option-header::.
-
-
-File: flex.info, Node: Extra Data, Next: About yyscan_t, Prev: Accessor Methods, Up: Reentrant Detail
-
-19.4.6 Extra Data
------------------
-
-User-specific data can be stored in `yyextra'.
-
- In a reentrant scanner, it is unwise to use global variables to
-communicate with or maintain state between different pieces of your
-program. However, you may need access to external data or invoke
-external functions from within the scanner actions. Likewise, you may
-need to pass information to your scanner (e.g., open file descriptors,
-or database connections). In a non-reentrant scanner, the only way to
-do this would be through the use of global variables. `Flex' allows
-you to store arbitrary, "extra" data in a scanner. This data is
-accessible through the accessor methods `yyget_extra' and `yyset_extra'
-from outside the scanner, and through the shortcut macro `yyextra' from
-within the scanner itself. They are defined as follows:
-
-
- #define YY_EXTRA_TYPE void*
- YY_EXTRA_TYPE yyget_extra ( yyscan_t scanner );
- void yyset_extra ( YY_EXTRA_TYPE arbitrary_data , yyscan_t scanner);
-
- In addition, an extra form of `yylex_init' is provided,
-`yylex_init_extra'. This function is provided so that the yyextra value
-can be accessed from within the very first yyalloc, used to allocate
-the scanner itself.
-
- By default, `YY_EXTRA_TYPE' is defined as type `void *'. You may
-redefine this type using `%option extra-type="your_type"' in the
-scanner:
-
-
- /* An example of overriding YY_EXTRA_TYPE. */
- %{
- #include <sys/stat.h>
- #include <unistd.h>
- %}
- %option reentrant
- %option extra-type="struct stat *"
- %%
-
- __filesize__ printf( "%ld", yyextra->st_size );
- __lastmod__ printf( "%ld", yyextra->st_mtime );
- %%
- void scan_file( char* filename )
- {
- yyscan_t scanner;
- struct stat buf;
- FILE *in;
-
- in = fopen( filename, "r" );
- stat( filename, &buf );
-
- yylex_init_extra( buf, &scanner );
- yyset_in( in, scanner );
- yylex( scanner );
- yylex_destroy( scanner );
-
- fclose( in );
- }
-
-
-File: flex.info, Node: About yyscan_t, Prev: Extra Data, Up: Reentrant Detail
-
-19.4.7 About yyscan_t
----------------------
-
-`yyscan_t' is defined as:
-
-
- typedef void* yyscan_t;
-
- It is initialized by `yylex_init()' to point to an internal
-structure. You should never access this value directly. In particular,
-you should never attempt to free it (use `yylex_destroy()' instead.)
-
-
-File: flex.info, Node: Reentrant Functions, Prev: Reentrant Detail, Up: Reentrant
-
-19.5 Functions and Macros Available in Reentrant C Scanners
-===========================================================
-
-The following Functions are available in a reentrant scanner:
-
-
- char *yyget_text ( yyscan_t scanner );
- int yyget_leng ( yyscan_t scanner );
- FILE *yyget_in ( yyscan_t scanner );
- FILE *yyget_out ( yyscan_t scanner );
- int yyget_lineno ( yyscan_t scanner );
- YY_EXTRA_TYPE yyget_extra ( yyscan_t scanner );
- int yyget_debug ( yyscan_t scanner );
-
- void yyset_debug ( int flag, yyscan_t scanner );
- void yyset_in ( FILE * in_str , yyscan_t scanner );
- void yyset_out ( FILE * out_str , yyscan_t scanner );
- void yyset_lineno ( int line_number , yyscan_t scanner );
- void yyset_extra ( YY_EXTRA_TYPE user_defined , yyscan_t scanner );
-
- There are no "set" functions for yytext and yyleng. This is
-intentional.
-
- The following Macro shortcuts are available in actions in a reentrant
-scanner:
-
-
- yytext
- yyleng
- yyin
- yyout
- yylineno
- yyextra
- yy_flex_debug
-
- In a reentrant C scanner, support for yylineno is always present
-(i.e., you may access yylineno), but the value is never modified by
-`flex' unless `%option yylineno' is enabled. This is to allow the user
-to maintain the line count independently of `flex'.
-
- The following functions and macros are made available when `%option
-bison-bridge' (`--bison-bridge') is specified:
-
-
- YYSTYPE * yyget_lval ( yyscan_t scanner );
- void yyset_lval ( YYSTYPE * yylvalp , yyscan_t scanner );
- yylval
-
- The following functions and macros are made available when `%option
-bison-locations' (`--bison-locations') is specified:
-
-
- YYLTYPE *yyget_lloc ( yyscan_t scanner );
- void yyset_lloc ( YYLTYPE * yyllocp , yyscan_t scanner );
- yylloc
-
- Support for yylval assumes that `YYSTYPE' is a valid type. Support
-for yylloc assumes that `YYSLYPE' is a valid type. Typically, these
-types are generated by `bison', and are included in section 1 of the
-`flex' input.
-
-
-File: flex.info, Node: Lex and Posix, Next: Memory Management, Prev: Reentrant, Up: Top
-
-20 Incompatibilities with Lex and Posix
-***************************************
-
-`flex' is a rewrite of the AT&T Unix _lex_ tool (the two
-implementations do not share any code, though), with some extensions and
-incompatibilities, both of which are of concern to those who wish to
-write scanners acceptable to both implementations. `flex' is fully
-compliant with the POSIX `lex' specification, except that when using
-`%pointer' (the default), a call to `unput()' destroys the contents of
-`yytext', which is counter to the POSIX specification. In this section
-we discuss all of the known areas of incompatibility between `flex',
-AT&T `lex', and the POSIX specification. `flex''s `-l' option turns on
-maximum compatibility with the original AT&T `lex' implementation, at
-the cost of a major loss in the generated scanner's performance. We
-note below which incompatibilities can be overcome using the `-l'
-option. `flex' is fully compatible with `lex' with the following
-exceptions:
-
- * The undocumented `lex' scanner internal variable `yylineno' is not
- supported unless `-l' or `%option yylineno' is used.
-
- * `yylineno' should be maintained on a per-buffer basis, rather than
- a per-scanner (single global variable) basis.
-
- * `yylineno' is not part of the POSIX specification.
-
- * The `input()' routine is not redefinable, though it may be called
- to read characters following whatever has been matched by a rule.
- If `input()' encounters an end-of-file the normal `yywrap()'
- processing is done. A "real" end-of-file is returned by `input()'
- as `EOF'.
-
- * Input is instead controlled by defining the `YY_INPUT()' macro.
-
- * The `flex' restriction that `input()' cannot be redefined is in
- accordance with the POSIX specification, which simply does not
- specify any way of controlling the scanner's input other than by
- making an initial assignment to `yyin'.
-
- * The `unput()' routine is not redefinable. This restriction is in
- accordance with POSIX.
-
- * `flex' scanners are not as reentrant as `lex' scanners. In
- particular, if you have an interactive scanner and an interrupt
- handler which long-jumps out of the scanner, and the scanner is
- subsequently called again, you may get the following message:
-
-
- fatal @code{flex} scanner internal error--end of buffer missed
-
- To reenter the scanner, first use:
-
-
- yyrestart( yyin );
-
- Note that this call will throw away any buffered input; usually
- this isn't a problem with an interactive scanner. *Note
- Reentrant::, for `flex''s reentrant API.
-
- * Also note that `flex' C++ scanner classes _are_ reentrant, so if
- using C++ is an option for you, you should use them instead.
- *Note Cxx::, and *Note Reentrant:: for details.
-
- * `output()' is not supported. Output from the ECHO macro is done
- to the file-pointer `yyout' (default `stdout)'.
-
- * `output()' is not part of the POSIX specification.
-
- * `lex' does not support exclusive start conditions (%x), though they
- are in the POSIX specification.
-
- * When definitions are expanded, `flex' encloses them in parentheses.
- With `lex', the following:
-
-
- NAME [A-Z][A-Z0-9]*
- %%
- foo{NAME}? printf( "Found it\n" );
- %%
-
- will not match the string `foo' because when the macro is expanded
- the rule is equivalent to `foo[A-Z][A-Z0-9]*?' and the precedence
- is such that the `?' is associated with `[A-Z0-9]*'. With `flex',
- the rule will be expanded to `foo([A-Z][A-Z0-9]*)?' and so the
- string `foo' will match.
-
- * Note that if the definition begins with `^' or ends with `$' then
- it is _not_ expanded with parentheses, to allow these operators to
- appear in definitions without losing their special meanings. But
- the `<s>', `/', and `<<EOF>>' operators cannot be used in a `flex'
- definition.
-
- * Using `-l' results in the `lex' behavior of no parentheses around
- the definition.
-
- * The POSIX specification is that the definition be enclosed in
- parentheses.
-
- * Some implementations of `lex' allow a rule's action to begin on a
- separate line, if the rule's pattern has trailing whitespace:
-
-
- %%
- foo|bar<space here>
- { foobar_action();}
-
- `flex' does not support this feature.
-
- * The `lex' `%r' (generate a Ratfor scanner) option is not
- supported. It is not part of the POSIX specification.
-
- * After a call to `unput()', _yytext_ is undefined until the next
- token is matched, unless the scanner was built using `%array'.
- This is not the case with `lex' or the POSIX specification. The
- `-l' option does away with this incompatibility.
-
- * The precedence of the `{,}' (numeric range) operator is different.
- The AT&T and POSIX specifications of `lex' interpret `abc{1,3}'
- as match one, two, or three occurrences of `abc'", whereas `flex'
- interprets it as "match `ab' followed by one, two, or three
- occurrences of `c'". The `-l' and `--posix' options do away with
- this incompatibility.
-
- * The precedence of the `^' operator is different. `lex' interprets
- `^foo|bar' as "match either 'foo' at the beginning of a line, or
- 'bar' anywhere", whereas `flex' interprets it as "match either
- `foo' or `bar' if they come at the beginning of a line". The
- latter is in agreement with the POSIX specification.
-
- * The special table-size declarations such as `%a' supported by
- `lex' are not required by `flex' scanners.. `flex' ignores them.
-
- * The name `FLEX_SCANNER' is `#define''d so scanners may be written
- for use with either `flex' or `lex'. Scanners also include
- `YY_FLEX_MAJOR_VERSION', `YY_FLEX_MINOR_VERSION' and
- `YY_FLEX_SUBMINOR_VERSION' indicating which version of `flex'
- generated the scanner. For example, for the 2.5.22 release, these
- defines would be 2, 5 and 22 respectively. If the version of
- `flex' being used is a beta version, then the symbol `FLEX_BETA'
- is defined.
-
- * The symbols `[[' and `]]' in the code sections of the input may
- conflict with the m4 delimiters. *Note M4 Dependency::.
-
-
- The following `flex' features are not included in `lex' or the POSIX
-specification:
-
- * C++ scanners
-
- * %option
-
- * start condition scopes
-
- * start condition stacks
-
- * interactive/non-interactive scanners
-
- * yy_scan_string() and friends
-
- * yyterminate()
-
- * yy_set_interactive()
-
- * yy_set_bol()
-
- * YY_AT_BOL() <<EOF>>
-
- * <*>
-
- * YY_DECL
-
- * YY_START
-
- * YY_USER_ACTION
-
- * YY_USER_INIT
-
- * #line directives
-
- * %{}'s around actions
-
- * reentrant C API
-
- * multiple actions on a line
-
- * almost all of the `flex' command-line options
-
- The feature "multiple actions on a line" refers to the fact that
-with `flex' you can put multiple actions on the same line, separated
-with semi-colons, while with `lex', the following:
-
-
- foo handle_foo(); ++num_foos_seen;
-
- is (rather surprisingly) truncated to
-
-
- foo handle_foo();
-
- `flex' does not truncate the action. Actions that are not enclosed
-in braces are simply terminated at the end of the line.
-
-
-File: flex.info, Node: Memory Management, Next: Serialized Tables, Prev: Lex and Posix, Up: Top
-
-21 Memory Management
-********************
-
-This chapter describes how flex handles dynamic memory, and how you can
-override the default behavior.
-
-* Menu:
-
-* The Default Memory Management::
-* Overriding The Default Memory Management::
-* A Note About yytext And Memory::
-
-
-File: flex.info, Node: The Default Memory Management, Next: Overriding The Default Memory Management, Prev: Memory Management, Up: Memory Management
-
-21.1 The Default Memory Management
-==================================
-
-Flex allocates dynamic memory during initialization, and once in a
-while from within a call to yylex(). Initialization takes place during
-the first call to yylex(). Thereafter, flex may reallocate more memory
-if it needs to enlarge a buffer. As of version 2.5.9 Flex will clean up
-all memory when you call `yylex_destroy' *Note faq-memory-leak::.
-
- Flex allocates dynamic memory for four purposes, listed below (1)
-
-16kB for the input buffer.
- Flex allocates memory for the character buffer used to perform
- pattern matching. Flex must read ahead from the input stream and
- store it in a large character buffer. This buffer is typically
- the largest chunk of dynamic memory flex consumes. This buffer
- will grow if necessary, doubling the size each time. Flex frees
- this memory when you call yylex_destroy(). The default size of
- this buffer (16384 bytes) is almost always too large. The ideal
- size for this buffer is the length of the longest token expected,
- in bytes, plus a little more. Flex will allocate a few extra
- bytes for housekeeping. Currently, to override the size of the
- input buffer you must `#define YY_BUF_SIZE' to whatever number of
- bytes you want. We don't plan to change this in the near future,
- but we reserve the right to do so if we ever add a more robust
- memory management API.
-
-64kb for the REJECT state. This will only be allocated if you use REJECT.
- The size is the large enough to hold the same number of states as
- characters in the input buffer. If you override the size of the
- input buffer (via `YY_BUF_SIZE'), then you automatically override
- the size of this buffer as well.
-
-100 bytes for the start condition stack.
- Flex allocates memory for the start condition stack. This is the
- stack used for pushing start states, i.e., with yy_push_state().
- It will grow if necessary. Since the states are simply integers,
- this stack doesn't consume much memory. This stack is not present
- if `%option stack' is not specified. You will rarely need to tune
- this buffer. The ideal size for this stack is the maximum depth
- expected. The memory for this stack is automatically destroyed
- when you call yylex_destroy(). *Note option-stack::.
-
-40 bytes for each YY_BUFFER_STATE.
- Flex allocates memory for each YY_BUFFER_STATE. The buffer state
- itself is about 40 bytes, plus an additional large character
- buffer (described above.) The initial buffer state is created
- during initialization, and with each call to yy_create_buffer().
- You can't tune the size of this, but you can tune the character
- buffer as described above. Any buffer state that you explicitly
- create by calling yy_create_buffer() is _NOT_ destroyed
- automatically. You must call yy_delete_buffer() to free the
- memory. The exception to this rule is that flex will delete the
- current buffer automatically when you call yylex_destroy(). If you
- delete the current buffer, be sure to set it to NULL. That way,
- flex will not try to delete the buffer a second time (possibly
- crashing your program!) At the time of this writing, flex does not
- provide a growable stack for the buffer states. You have to
- manage that yourself. *Note Multiple Input Buffers::.
-
-84 bytes for the reentrant scanner guts
- Flex allocates about 84 bytes for the reentrant scanner structure
- when you call yylex_init(). It is destroyed when the user calls
- yylex_destroy().
-
-
- ---------- Footnotes ----------
-
- (1) The quantities given here are approximate, and may vary due to
-host architecture, compiler configuration, or due to future
-enhancements to flex.
-
-
-File: flex.info, Node: Overriding The Default Memory Management, Next: A Note About yytext And Memory, Prev: The Default Memory Management, Up: Memory Management
-
-21.2 Overriding The Default Memory Management
-=============================================
-
-Flex calls the functions `yyalloc', `yyrealloc', and `yyfree' when it
-needs to allocate or free memory. By default, these functions are
-wrappers around the standard C functions, `malloc', `realloc', and
-`free', respectively. You can override the default implementations by
-telling flex that you will provide your own implementations.
-
- To override the default implementations, you must do two things:
-
- 1. Suppress the default implementations by specifying one or more of
- the following options:
-
- * `%option noyyalloc'
-
- * `%option noyyrealloc'
-
- * `%option noyyfree'.
-
- 2. Provide your own implementation of the following functions: (1)
-
-
- // For a non-reentrant scanner
- void * yyalloc (size_t bytes);
- void * yyrealloc (void * ptr, size_t bytes);
- void yyfree (void * ptr);
-
- // For a reentrant scanner
- void * yyalloc (size_t bytes, void * yyscanner);
- void * yyrealloc (void * ptr, size_t bytes, void * yyscanner);
- void yyfree (void * ptr, void * yyscanner);
-
-
- In the following example, we will override all three memory
-routines. We assume that there is a custom allocator with garbage
-collection. In order to make this example interesting, we will use a
-reentrant scanner, passing a pointer to the custom allocator through
-`yyextra'.
-
-
- %{
- #include "some_allocator.h"
- %}
-
- /* Suppress the default implementations. */
- %option noyyalloc noyyrealloc noyyfree
- %option reentrant
-
- /* Initialize the allocator. */
- #define YY_EXTRA_TYPE struct allocator*
- #define YY_USER_INIT yyextra = allocator_create();
-
- %%
- .|\n ;
- %%
-
- /* Provide our own implementations. */
- void * yyalloc (size_t bytes, void* yyscanner) {
- return allocator_alloc (yyextra, bytes);
- }
-
- void * yyrealloc (void * ptr, size_t bytes, void* yyscanner) {
- return allocator_realloc (yyextra, bytes);
- }
-
- void yyfree (void * ptr, void * yyscanner) {
- /* Do nothing -- we leave it to the garbage collector. */
- }
-
- ---------- Footnotes ----------
-
- (1) It is not necessary to override all (or any) of the memory
-management routines. You may, for example, override `yyrealloc', but
-not `yyfree' or `yyalloc'.
-
-
-File: flex.info, Node: A Note About yytext And Memory, Prev: Overriding The Default Memory Management, Up: Memory Management
-
-21.3 A Note About yytext And Memory
-===================================
-
-When flex finds a match, `yytext' points to the first character of the
-match in the input buffer. The string itself is part of the input
-buffer, and is _NOT_ allocated separately. The value of yytext will be
-overwritten the next time yylex() is called. In short, the value of
-yytext is only valid from within the matched rule's action.
-
- Often, you want the value of yytext to persist for later processing,
-i.e., by a parser with non-zero lookahead. In order to preserve yytext,
-you will have to copy it with strdup() or a similar function. But this
-introduces some headache because your parser is now responsible for
-freeing the copy of yytext. If you use a yacc or bison parser,
-(commonly used with flex), you will discover that the error recovery
-mechanisms can cause memory to be leaked.
-
- To prevent memory leaks from strdup'd yytext, you will have to track
-the memory somehow. Our experience has shown that a garbage collection
-mechanism or a pooled memory mechanism will save you a lot of grief
-when writing parsers.
-
-
-File: flex.info, Node: Serialized Tables, Next: Diagnostics, Prev: Memory Management, Up: Top
-
-22 Serialized Tables
-********************
-
-A `flex' scanner has the ability to save the DFA tables to a file, and
-load them at runtime when needed. The motivation for this feature is
-to reduce the runtime memory footprint. Traditionally, these tables
-have been compiled into the scanner as C arrays, and are sometimes
-quite large. Since the tables are compiled into the scanner, the
-memory used by the tables can never be freed. This is a waste of
-memory, especially if an application uses several scanners, but none of
-them at the same time.
-
- The serialization feature allows the tables to be loaded at runtime,
-before scanning begins. The tables may be discarded when scanning is
-finished.
-
-* Menu:
-
-* Creating Serialized Tables::
-* Loading and Unloading Serialized Tables::
-* Tables File Format::
-
-
-File: flex.info, Node: Creating Serialized Tables, Next: Loading and Unloading Serialized Tables, Prev: Serialized Tables, Up: Serialized Tables
-
-22.1 Creating Serialized Tables
-===============================
-
-You may create a scanner with serialized tables by specifying:
-
-
- %option tables-file=FILE
- or
- --tables-file=FILE
-
- These options instruct flex to save the DFA tables to the file FILE.
-The tables will _not_ be embedded in the generated scanner. The scanner
-will not function on its own. The scanner will be dependent upon the
-serialized tables. You must load the tables from this file at runtime
-before you can scan anything.
-
- If you do not specify a filename to `--tables-file', the tables will
-be saved to `lex.yy.tables', where `yy' is the appropriate prefix.
-
- If your project uses several different scanners, you can concatenate
-the serialized tables into one file, and flex will find the correct set
-of tables, using the scanner prefix as part of the lookup key. An
-example follows:
-
-
- $ flex --tables-file --prefix=cpp cpp.l
- $ flex --tables-file --prefix=c c.l
- $ cat lex.cpp.tables lex.c.tables > all.tables
-
- The above example created two scanners, `cpp', and `c'. Since we did
-not specify a filename, the tables were serialized to `lex.c.tables' and
-`lex.cpp.tables', respectively. Then, we concatenated the two files
-together into `all.tables', which we will distribute with our project.
-At runtime, we will open the file and tell flex to load the tables from
-it. Flex will find the correct tables automatically. (See next
-section).
-
-
-File: flex.info, Node: Loading and Unloading Serialized Tables, Next: Tables File Format, Prev: Creating Serialized Tables, Up: Serialized Tables
-
-22.2 Loading and Unloading Serialized Tables
-============================================
-
-If you've built your scanner with `%option tables-file', then you must
-load the scanner tables at runtime. This can be accomplished with the
-following function:
-
- -- Function: int yytables_fload (FILE* FP [, yyscan_t SCANNER])
- Locates scanner tables in the stream pointed to by FP and loads
- them. Memory for the tables is allocated via `yyalloc'. You must
- call this function before the first call to `yylex'. The argument
- SCANNER only appears in the reentrant scanner. This function
- returns `0' (zero) on success, or non-zero on error.
-
- The loaded tables are *not* automatically destroyed (unloaded) when
-you call `yylex_destroy'. The reason is that you may create several
-scanners of the same type (in a reentrant scanner), each of which needs
-access to these tables. To avoid a nasty memory leak, you must call
-the following function:
-
- -- Function: int yytables_destroy ([yyscan_t SCANNER])
- Unloads the scanner tables. The tables must be loaded again before
- you can scan any more data. The argument SCANNER only appears in
- the reentrant scanner. This function returns `0' (zero) on
- success, or non-zero on error.
-
- *The functions `yytables_fload' and `yytables_destroy' are not
-thread-safe.* You must ensure that these functions are called exactly
-once (for each scanner type) in a threaded program, before any thread
-calls `yylex'. After the tables are loaded, they are never written to,
-and no thread protection is required thereafter - until you destroy
-them.
-
-
-File: flex.info, Node: Tables File Format, Prev: Loading and Unloading Serialized Tables, Up: Serialized Tables
-
-22.3 Tables File Format
-=======================
-
-This section defines the file format of serialized `flex' tables.
-
- The tables format allows for one or more sets of tables to be
-specified, where each set corresponds to a given scanner. Scanners are
-indexed by name, as described below. The file format is as follows:
-
-
- TABLE SET 1
- +-------------------------------+
- Header | uint32 th_magic; |
- | uint32 th_hsize; |
- | uint32 th_ssize; |
- | uint16 th_flags; |
- | char th_version[]; |
- | char th_name[]; |
- | uint8 th_pad64[]; |
- +-------------------------------+
- Table 1 | uint16 td_id; |
- | uint16 td_flags; |
- | uint32 td_lolen; |
- | uint32 td_hilen; |
- | void td_data[]; |
- | uint8 td_pad64[]; |
- +-------------------------------+
- Table 2 | |
- . . .
- . . .
- . . .
- . . .
- Table n | |
- +-------------------------------+
- TABLE SET 2
- .
- .
- .
- TABLE SET N
-
- The above diagram shows that a complete set of tables consists of a
-header followed by multiple individual tables. Furthermore, multiple
-complete sets may be present in the same file, each set with its own
-header and tables. The sets are contiguous in the file. The only way to
-know if another set follows is to check the next four bytes for the
-magic number (or check for EOF). The header and tables sections are
-padded to 64-bit boundaries. Below we describe each field in detail.
-This format does not specify how the scanner will expand the given
-data, i.e., data may be serialized as int8, but expanded to an int32
-array at runtime. This is to reduce the size of the serialized data
-where possible. Remember, _all integer values are in network byte
-order_.
-
-Fields of a table header:
-
-`th_magic'
- Magic number, always 0xF13C57B1.
-
-`th_hsize'
- Size of this entire header, in bytes, including all fields plus
- any padding.
-
-`th_ssize'
- Size of this entire set, in bytes, including the header, all
- tables, plus any padding.
-
-`th_flags'
- Bit flags for this table set. Currently unused.
-
-`th_version[]'
- Flex version in NULL-terminated string format. e.g., `2.5.13a'.
- This is the version of flex that was used to create the serialized
- tables.
-
-`th_name[]'
- Contains the name of this table set. The default is `yytables',
- and is prefixed accordingly, e.g., `footables'. Must be
- NULL-terminated.
-
-`th_pad64[]'
- Zero or more NULL bytes, padding the entire header to the next
- 64-bit boundary as calculated from the beginning of the header.
-
-Fields of a table:
-
-`td_id'
- Specifies the table identifier. Possible values are:
- `YYTD_ID_ACCEPT (0x01)'
- `yy_accept'
-
- `YYTD_ID_BASE (0x02)'
- `yy_base'
-
- `YYTD_ID_CHK (0x03)'
- `yy_chk'
-
- `YYTD_ID_DEF (0x04)'
- `yy_def'
-
- `YYTD_ID_EC (0x05)'
- `yy_ec '
-
- `YYTD_ID_META (0x06)'
- `yy_meta'
-
- `YYTD_ID_NUL_TRANS (0x07)'
- `yy_NUL_trans'
-
- `YYTD_ID_NXT (0x08)'
- `yy_nxt'. This array may be two dimensional. See the
- `td_hilen' field below.
-
- `YYTD_ID_RULE_CAN_MATCH_EOL (0x09)'
- `yy_rule_can_match_eol'
-
- `YYTD_ID_START_STATE_LIST (0x0A)'
- `yy_start_state_list'. This array is handled specially
- because it is an array of pointers to structs. See the
- `td_flags' field below.
-
- `YYTD_ID_TRANSITION (0x0B)'
- `yy_transition'. This array is handled specially because it
- is an array of structs. See the `td_lolen' field below.
-
- `YYTD_ID_ACCLIST (0x0C)'
- `yy_acclist'
-
-`td_flags'
- Bit flags describing how to interpret the data in `td_data'. The
- data arrays are one-dimensional by default, but may be two
- dimensional as specified in the `td_hilen' field.
-
- `YYTD_DATA8 (0x01)'
- The data is serialized as an array of type int8.
-
- `YYTD_DATA16 (0x02)'
- The data is serialized as an array of type int16.
-
- `YYTD_DATA32 (0x04)'
- The data is serialized as an array of type int32.
-
- `YYTD_PTRANS (0x08)'
- The data is a list of indexes of entries in the expanded
- `yy_transition' array. Each index should be expanded to a
- pointer to the corresponding entry in the `yy_transition'
- array. We count on the fact that the `yy_transition' array
- has already been seen.
-
- `YYTD_STRUCT (0x10)'
- The data is a list of yy_trans_info structs, each of which
- consists of two integers. There is no padding between struct
- elements or between structs. The type of each member is
- determined by the `YYTD_DATA*' bits.
-
-`td_lolen'
- Specifies the number of elements in the lowest dimension array. If
- this is a one-dimensional array, then it is simply the number of
- elements in this array. The element size is determined by the
- `td_flags' field.
-
-`td_hilen'
- If `td_hilen' is non-zero, then the data is a two-dimensional
- array. Otherwise, the data is a one-dimensional array. `td_hilen'
- contains the number of elements in the higher dimensional array,
- and `td_lolen' contains the number of elements in the lowest
- dimension.
-
- Conceptually, `td_data' is either `sometype td_data[td_lolen]', or
- `sometype td_data[td_hilen][td_lolen]', where `sometype' is
- specified by the `td_flags' field. It is possible for both
- `td_lolen' and `td_hilen' to be zero, in which case `td_data' is a
- zero length array, and no data is loaded, i.e., this table is
- simply skipped. Flex does not currently generate tables of zero
- length.
-
-`td_data[]'
- The table data. This array may be a one- or two-dimensional array,
- of type `int8', `int16', `int32', `struct yy_trans_info', or
- `struct yy_trans_info*', depending upon the values in the
- `td_flags', `td_lolen', and `td_hilen' fields.
-
-`td_pad64[]'
- Zero or more NULL bytes, padding the entire table to the next
- 64-bit boundary as calculated from the beginning of this table.
-
-
-File: flex.info, Node: Diagnostics, Next: Limitations, Prev: Serialized Tables, Up: Top
-
-23 Diagnostics
-**************
-
-The following is a list of `flex' diagnostic messages:
-
- * `warning, rule cannot be matched' indicates that the given rule
- cannot be matched because it follows other rules that will always
- match the same text as it. For example, in the following `foo'
- cannot be matched because it comes after an identifier "catch-all"
- rule:
-
-
- [a-z]+ got_identifier();
- foo got_foo();
-
- Using `REJECT' in a scanner suppresses this warning.
-
- * `warning, -s option given but default rule can be matched' means
- that it is possible (perhaps only in a particular start condition)
- that the default rule (match any single character) is the only one
- that will match a particular input. Since `-s' was given,
- presumably this is not intended.
-
- * `reject_used_but_not_detected undefined' or
- `yymore_used_but_not_detected undefined'. These errors can occur
- at compile time. They indicate that the scanner uses `REJECT' or
- `yymore()' but that `flex' failed to notice the fact, meaning that
- `flex' scanned the first two sections looking for occurrences of
- these actions and failed to find any, but somehow you snuck some in
- (via a #include file, for example). Use `%option reject' or
- `%option yymore' to indicate to `flex' that you really do use
- these features.
-
- * `flex scanner jammed'. a scanner compiled with `-s' has
- encountered an input string which wasn't matched by any of its
- rules. This error can also occur due to internal problems.
-
- * `token too large, exceeds YYLMAX'. your scanner uses `%array' and
- one of its rules matched a string longer than the `YYLMAX'
- constant (8K bytes by default). You can increase the value by
- #define'ing `YYLMAX' in the definitions section of your `flex'
- input.
-
- * `scanner requires -8 flag to use the character 'x''. Your scanner
- specification includes recognizing the 8-bit character `'x'' and
- you did not specify the -8 flag, and your scanner defaulted to
- 7-bit because you used the `-Cf' or `-CF' table compression
- options. See the discussion of the `-7' flag, *Note Scanner
- Options::, for details.
-
- * `flex scanner push-back overflow'. you used `unput()' to push back
- so much text that the scanner's buffer could not hold both the
- pushed-back text and the current token in `yytext'. Ideally the
- scanner should dynamically resize the buffer in this case, but at
- present it does not.
-
- * `input buffer overflow, can't enlarge buffer because scanner uses
- REJECT'. the scanner was working on matching an extremely large
- token and needed to expand the input buffer. This doesn't work
- with scanners that use `REJECT'.
-
- * `fatal flex scanner internal error--end of buffer missed'. This can
- occur in a scanner which is reentered after a long-jump has jumped
- out (or over) the scanner's activation frame. Before reentering
- the scanner, use:
-
- yyrestart( yyin );
- or, as noted above, switch to using the C++ scanner class.
-
- * `too many start conditions in <> construct!' you listed more start
- conditions in a <> construct than exist (so you must have listed at
- least one of them twice).
-
-
-File: flex.info, Node: Limitations, Next: Bibliography, Prev: Diagnostics, Up: Top
-
-24 Limitations
-**************
-
-Some trailing context patterns cannot be properly matched and generate
-warning messages (`dangerous trailing context'). These are patterns
-where the ending of the first part of the rule matches the beginning of
-the second part, such as `zx*/xy*', where the 'x*' matches the 'x' at
-the beginning of the trailing context. (Note that the POSIX draft
-states that the text matched by such patterns is undefined.) For some
-trailing context rules, parts which are actually fixed-length are not
-recognized as such, leading to the abovementioned performance loss. In
-particular, parts using `|' or `{n}' (such as `foo{3}') are always
-considered variable-length. Combining trailing context with the
-special `|' action can result in _fixed_ trailing context being turned
-into the more expensive _variable_ trailing context. For example, in
-the following:
-
-
- %%
- abc |
- xyz/def
-
- Use of `unput()' invalidates yytext and yyleng, unless the `%array'
-directive or the `-l' option has been used. Pattern-matching of `NUL's
-is substantially slower than matching other characters. Dynamic
-resizing of the input buffer is slow, as it entails rescanning all the
-text matched so far by the current (generally huge) token. Due to both
-buffering of input and read-ahead, you cannot intermix calls to
-`<stdio.h>' routines, such as, getchar(), with `flex' rules and expect
-it to work. Call `input()' instead. The total table entries listed by
-the `-v' flag excludes the number of table entries needed to determine
-what rule has been matched. The number of entries is equal to the
-number of DFA states if the scanner does not use `REJECT', and somewhat
-greater than the number of states if it does. `REJECT' cannot be used
-with the `-f' or `-F' options.
-
- The `flex' internal algorithms need documentation.
-
-
-File: flex.info, Node: Bibliography, Next: FAQ, Prev: Limitations, Up: Top
-
-25 Additional Reading
-*********************
-
-You may wish to read more about the following programs:
- * lex
-
- * yacc
-
- * sed
-
- * awk
-
- The following books may contain material of interest:
-
- John Levine, Tony Mason, and Doug Brown, _Lex & Yacc_, O'Reilly and
-Associates. Be sure to get the 2nd edition.
-
- M. E. Lesk and E. Schmidt, _LEX - Lexical Analyzer Generator_
-
- Alfred Aho, Ravi Sethi and Jeffrey Ullman, _Compilers: Principles,
-Techniques and Tools_, Addison-Wesley (1986). Describes the
-pattern-matching techniques used by `flex' (deterministic finite
-automata).
-
-
-File: flex.info, Node: FAQ, Next: Appendices, Prev: Bibliography, Up: Top
-
-FAQ
-***
-
-From time to time, the `flex' maintainer receives certain questions.
-Rather than repeat answers to well-understood problems, we publish them
-here.
-
-* Menu:
-
-* When was flex born?::
-* How do I expand backslash-escape sequences in C-style quoted strings?::
-* Why do flex scanners call fileno if it is not ANSI compatible?::
-* Does flex support recursive pattern definitions?::
-* How do I skip huge chunks of input (tens of megabytes) while using flex?::
-* Flex is not matching my patterns in the same order that I defined them.::
-* My actions are executing out of order or sometimes not at all.::
-* How can I have multiple input sources feed into the same scanner at the same time?::
-* Can I build nested parsers that work with the same input file?::
-* How can I match text only at the end of a file?::
-* How can I make REJECT cascade across start condition boundaries?::
-* Why cant I use fast or full tables with interactive mode?::
-* How much faster is -F or -f than -C?::
-* If I have a simple grammar cant I just parse it with flex?::
-* Why doesn't yyrestart() set the start state back to INITIAL?::
-* How can I match C-style comments?::
-* The period isn't working the way I expected.::
-* Can I get the flex manual in another format?::
-* Does there exist a "faster" NDFA->DFA algorithm?::
-* How does flex compile the DFA so quickly?::
-* How can I use more than 8192 rules?::
-* How do I abandon a file in the middle of a scan and switch to a new file?::
-* How do I execute code only during initialization (only before the first scan)?::
-* How do I execute code at termination?::
-* Where else can I find help?::
-* Can I include comments in the "rules" section of the file?::
-* I get an error about undefined yywrap().::
-* How can I change the matching pattern at run time?::
-* How can I expand macros in the input?::
-* How can I build a two-pass scanner?::
-* How do I match any string not matched in the preceding rules?::
-* I am trying to port code from AT&T lex that uses yysptr and yysbuf.::
-* Is there a way to make flex treat NULL like a regular character?::
-* Whenever flex can not match the input it says "flex scanner jammed".::
-* Why doesn't flex have non-greedy operators like perl does?::
-* Memory leak - 16386 bytes allocated by malloc.::
-* How do I track the byte offset for lseek()?::
-* How do I use my own I/O classes in a C++ scanner?::
-* How do I skip as many chars as possible?::
-* deleteme00::
-* Are certain equivalent patterns faster than others?::
-* Is backing up a big deal?::
-* Can I fake multi-byte character support?::
-* deleteme01::
-* Can you discuss some flex internals?::
-* unput() messes up yy_at_bol::
-* The | operator is not doing what I want::
-* Why can't flex understand this variable trailing context pattern?::
-* The ^ operator isn't working::
-* Trailing context is getting confused with trailing optional patterns::
-* Is flex GNU or not?::
-* ERASEME53::
-* I need to scan if-then-else blocks and while loops::
-* ERASEME55::
-* ERASEME56::
-* ERASEME57::
-* Is there a repository for flex scanners?::
-* How can I conditionally compile or preprocess my flex input file?::
-* Where can I find grammars for lex and yacc?::
-* I get an end-of-buffer message for each character scanned.::
-* unnamed-faq-62::
-* unnamed-faq-63::
-* unnamed-faq-64::
-* unnamed-faq-65::
-* unnamed-faq-66::
-* unnamed-faq-67::
-* unnamed-faq-68::
-* unnamed-faq-69::
-* unnamed-faq-70::
-* unnamed-faq-71::
-* unnamed-faq-72::
-* unnamed-faq-73::
-* unnamed-faq-74::
-* unnamed-faq-75::
-* unnamed-faq-76::
-* unnamed-faq-77::
-* unnamed-faq-78::
-* unnamed-faq-79::
-* unnamed-faq-80::
-* unnamed-faq-81::
-* unnamed-faq-82::
-* unnamed-faq-83::
-* unnamed-faq-84::
-* unnamed-faq-85::
-* unnamed-faq-86::
-* unnamed-faq-87::
-* unnamed-faq-88::
-* unnamed-faq-90::
-* unnamed-faq-91::
-* unnamed-faq-92::
-* unnamed-faq-93::
-* unnamed-faq-94::
-* unnamed-faq-95::
-* unnamed-faq-96::
-* unnamed-faq-97::
-* unnamed-faq-98::
-* unnamed-faq-99::
-* unnamed-faq-100::
-* unnamed-faq-101::
-* What is the difference between YYLEX_PARAM and YY_DECL?::
-* Why do I get "conflicting types for yylex" error?::
-* How do I access the values set in a Flex action from within a Bison action?::
-
-
-File: flex.info, Node: When was flex born?, Next: How do I expand backslash-escape sequences in C-style quoted strings?, Up: FAQ
-
-When was flex born?
-===================
-
-Vern Paxson took over the `Software Tools' lex project from Jef
-Poskanzer in 1982. At that point it was written in Ratfor. Around
-1987 or so, Paxson translated it into C, and a legend was born :-).
-
-
-File: flex.info, Node: How do I expand backslash-escape sequences in C-style quoted strings?, Next: Why do flex scanners call fileno if it is not ANSI compatible?, Prev: When was flex born?, Up: FAQ
-
-How do I expand backslash-escape sequences in C-style quoted strings?
-=====================================================================
-
-A key point when scanning quoted strings is that you cannot (easily)
-write a single rule that will precisely match the string if you allow
-things like embedded escape sequences and newlines. If you try to
-match strings with a single rule then you'll wind up having to rescan
-the string anyway to find any escape sequences.
-
- Instead you can use exclusive start conditions and a set of rules,
-one for matching non-escaped text, one for matching a single escape,
-one for matching an embedded newline, and one for recognizing the end
-of the string. Each of these rules is then faced with the question of
-where to put its intermediary results. The best solution is for the
-rules to append their local value of `yytext' to the end of a "string
-literal" buffer. A rule like the escape-matcher will append to the
-buffer the meaning of the escape sequence rather than the literal text
-in `yytext'. In this way, `yytext' does not need to be modified at all.
-
-
-File: flex.info, Node: Why do flex scanners call fileno if it is not ANSI compatible?, Next: Does flex support recursive pattern definitions?, Prev: How do I expand backslash-escape sequences in C-style quoted strings?, Up: FAQ
-
-Why do flex scanners call fileno if it is not ANSI compatible?
-==============================================================
-
-Flex scanners call `fileno()' in order to get the file descriptor
-corresponding to `yyin'. The file descriptor may be passed to
-`isatty()' or `read()', depending upon which `%options' you specified.
-If your system does not have `fileno()' support, to get rid of the
-`read()' call, do not specify `%option read'. To get rid of the
-`isatty()' call, you must specify one of `%option always-interactive' or
-`%option never-interactive'.
-
-
-File: flex.info, Node: Does flex support recursive pattern definitions?, Next: How do I skip huge chunks of input (tens of megabytes) while using flex?, Prev: Why do flex scanners call fileno if it is not ANSI compatible?, Up: FAQ
-
-Does flex support recursive pattern definitions?
-================================================
-
-e.g.,
-
-
- %%
- block "{"({block}|{statement})*"}"
-
- No. You cannot have recursive definitions. The pattern-matching
-power of regular expressions in general (and therefore flex scanners,
-too) is limited. In particular, regular expressions cannot "balance"
-parentheses to an arbitrary degree. For example, it's impossible to
-write a regular expression that matches all strings containing the same
-number of '{'s as '}'s. For more powerful pattern matching, you need a
-parser, such as `GNU bison'.
-
-
-File: flex.info, Node: How do I skip huge chunks of input (tens of megabytes) while using flex?, Next: Flex is not matching my patterns in the same order that I defined them., Prev: Does flex support recursive pattern definitions?, Up: FAQ
-
-How do I skip huge chunks of input (tens of megabytes) while using flex?
-========================================================================
-
-Use `fseek()' (or `lseek()') to position yyin, then call `yyrestart()'.
-
-
-File: flex.info, Node: Flex is not matching my patterns in the same order that I defined them., Next: My actions are executing out of order or sometimes not at all., Prev: How do I skip huge chunks of input (tens of megabytes) while using flex?, Up: FAQ
-
-Flex is not matching my patterns in the same order that I defined them.
-=======================================================================
-
-`flex' picks the rule that matches the most text (i.e., the longest
-possible input string). This is because `flex' uses an entirely
-different matching technique ("deterministic finite automata") that
-actually does all of the matching simultaneously, in parallel. (Seems
-impossible, but it's actually a fairly simple technique once you
-understand the principles.)
-
- A side-effect of this parallel matching is that when the input
-matches more than one rule, `flex' scanners pick the rule that matched
-the _most_ text. This is explained further in the manual, in the
-section *Note Matching::.
-
- If you want `flex' to choose a shorter match, then you can work
-around this behavior by expanding your short rule to match more text,
-then put back the extra:
-
-
- data_.* yyless( 5 ); BEGIN BLOCKIDSTATE;
-
- Another fix would be to make the second rule active only during the
-`<BLOCKIDSTATE>' start condition, and make that start condition
-exclusive by declaring it with `%x' instead of `%s'.
-
- A final fix is to change the input language so that the ambiguity for
-`data_' is removed, by adding characters to it that don't match the
-identifier rule, or by removing characters (such as `_') from the
-identifier rule so it no longer matches `data_'. (Of course, you might
-also not have the option of changing the input language.)
-
-
-File: flex.info, Node: My actions are executing out of order or sometimes not at all., Next: How can I have multiple input sources feed into the same scanner at the same time?, Prev: Flex is not matching my patterns in the same order that I defined them., Up: FAQ
-
-My actions are executing out of order or sometimes not at all.
-==============================================================
-
-Most likely, you have (in error) placed the opening `{' of the action
-block on a different line than the rule, e.g.,
-
-
- ^(foo|bar)
- { <<<--- WRONG!
-
- }
-
- `flex' requires that the opening `{' of an action associated with a
-rule begin on the same line as does the rule. You need instead to
-write your rules as follows:
-
-
- ^(foo|bar) { // CORRECT!
-
- }
-
-
-File: flex.info, Node: How can I have multiple input sources feed into the same scanner at the same time?, Next: Can I build nested parsers that work with the same input file?, Prev: My actions are executing out of order or sometimes not at all., Up: FAQ
-
-How can I have multiple input sources feed into the same scanner at the same time?
-==================================================================================
-
-If ...
- * your scanner is free of backtracking (verified using `flex''s `-b'
- flag),
-
- * AND you run your scanner interactively (`-I' option; default
- unless using special table compression options),
-
- * AND you feed it one character at a time by redefining `YY_INPUT'
- to do so,
-
- then every time it matches a token, it will have exhausted its input
-buffer (because the scanner is free of backtracking). This means you
-can safely use `select()' at the point and only call `yylex()' for
-another token if `select()' indicates there's data available.
-
- That is, move the `select()' out from the input function to a point
-where it determines whether `yylex()' gets called for the next token.
-
- With this approach, you will still have problems if your input can
-arrive piecemeal; `select()' could inform you that the beginning of a
-token is available, you call `yylex()' to get it, but it winds up
-blocking waiting for the later characters in the token.
-
- Here's another way: Move your input multiplexing inside of
-`YY_INPUT'. That is, whenever `YY_INPUT' is called, it `select()''s to
-see where input is available. If input is available for the scanner,
-it reads and returns the next byte. If input is available from another
-source, it calls whatever function is responsible for reading from that
-source. (If no input is available, it blocks until some input is
-available.) I've used this technique in an interpreter I wrote that
-both reads keyboard input using a `flex' scanner and IPC traffic from
-sockets, and it works fine.
-
-
-File: flex.info, Node: Can I build nested parsers that work with the same input file?, Next: How can I match text only at the end of a file?, Prev: How can I have multiple input sources feed into the same scanner at the same time?, Up: FAQ
-
-Can I build nested parsers that work with the same input file?
-==============================================================
-
-This is not going to work without some additional effort. The reason is
-that `flex' block-buffers the input it reads from `yyin'. This means
-that the "outermost" `yylex()', when called, will automatically slurp
-up the first 8K of input available on yyin, and subsequent calls to
-other `yylex()''s won't see that input. You might be tempted to work
-around this problem by redefining `YY_INPUT' to only return a small
-amount of text, but it turns out that that approach is quite difficult.
-Instead, the best solution is to combine all of your scanners into one
-large scanner, using a different exclusive start condition for each.
-
-
-File: flex.info, Node: How can I match text only at the end of a file?, Next: How can I make REJECT cascade across start condition boundaries?, Prev: Can I build nested parsers that work with the same input file?, Up: FAQ
-
-How can I match text only at the end of a file?
-===============================================
-
-There is no way to write a rule which is "match this text, but only if
-it comes at the end of the file". You can fake it, though, if you
-happen to have a character lying around that you don't allow in your
-input. Then you redefine `YY_INPUT' to call your own routine which, if
-it sees an `EOF', returns the magic character first (and remembers to
-return a real `EOF' next time it's called). Then you could write:
-
-
- <COMMENT>(.|\n)*{EOF_CHAR} /* saw comment at EOF */
-
-
-File: flex.info, Node: How can I make REJECT cascade across start condition boundaries?, Next: Why cant I use fast or full tables with interactive mode?, Prev: How can I match text only at the end of a file?, Up: FAQ
-
-How can I make REJECT cascade across start condition boundaries?
-================================================================
-
-You can do this as follows. Suppose you have a start condition `A', and
-after exhausting all of the possible matches in `<A>', you want to try
-matches in `<INITIAL>'. Then you could use the following:
-
-
- %x A
- %%
- <A>rule_that_is_long ...; REJECT;
- <A>rule ...; REJECT; /* shorter rule */
- <A>etc.
- ...
- <A>.|\n {
- /* Shortest and last rule in <A>, so
- * cascaded REJECTs will eventually
- * wind up matching this rule. We want
- * to now switch to the initial state
- * and try matching from there instead.
- */
- yyless(0); /* put back matched text */
- BEGIN(INITIAL);
- }
-
-
-File: flex.info, Node: Why cant I use fast or full tables with interactive mode?, Next: How much faster is -F or -f than -C?, Prev: How can I make REJECT cascade across start condition boundaries?, Up: FAQ
-
-Why can't I use fast or full tables with interactive mode?
-==========================================================
-
-One of the assumptions flex makes is that interactive applications are
-inherently slow (they're waiting on a human after all). It has to do
-with how the scanner detects that it must be finished scanning a token.
-For interactive scanners, after scanning each character the current
-state is looked up in a table (essentially) to see whether there's a
-chance of another input character possibly extending the length of the
-match. If not, the scanner halts. For non-interactive scanners, the
-end-of-token test is much simpler, basically a compare with 0, so no
-memory bus cycles. Since the test occurs in the innermost scanning
-loop, one would like to make it go as fast as possible.
-
- Still, it seems reasonable to allow the user to choose to trade off
-a bit of performance in this area to gain the corresponding
-flexibility. There might be another reason, though, why fast scanners
-don't support the interactive option.
-
-
-File: flex.info, Node: How much faster is -F or -f than -C?, Next: If I have a simple grammar cant I just parse it with flex?, Prev: Why cant I use fast or full tables with interactive mode?, Up: FAQ
-
-How much faster is -F or -f than -C?
-====================================
-
-Much faster (factor of 2-3).
-
-
-File: flex.info, Node: If I have a simple grammar cant I just parse it with flex?, Next: Why doesn't yyrestart() set the start state back to INITIAL?, Prev: How much faster is -F or -f than -C?, Up: FAQ
-
-If I have a simple grammar can't I just parse it with flex?
-===========================================================
-
-Is your grammar recursive? That's almost always a sign that you're
-better off using a parser/scanner rather than just trying to use a
-scanner alone.
-
-
-File: flex.info, Node: Why doesn't yyrestart() set the start state back to INITIAL?, Next: How can I match C-style comments?, Prev: If I have a simple grammar cant I just parse it with flex?, Up: FAQ
-
-Why doesn't yyrestart() set the start state back to INITIAL?
-============================================================
-
-There are two reasons. The first is that there might be programs that
-rely on the start state not changing across file changes. The second
-is that beginning with `flex' version 2.4, use of `yyrestart()' is no
-longer required, so fixing the problem there doesn't solve the more
-general problem.
-
-
-File: flex.info, Node: How can I match C-style comments?, Next: The period isn't working the way I expected., Prev: Why doesn't yyrestart() set the start state back to INITIAL?, Up: FAQ
-
-How can I match C-style comments?
-=================================
-
-You might be tempted to try something like this:
-
-
- "/*".*"*/" // WRONG!
-
- or, worse, this:
-
-
- "/*"(.|\n)"*/" // WRONG!
-
- The above rules will eat too much input, and blow up on things like:
-
-
- /* a comment */ do_my_thing( "oops */" );
-
- Here is one way which allows you to track line information:
-
-
- <INITIAL>{
- "/*" BEGIN(IN_COMMENT);
- }
- <IN_COMMENT>{
- "*/" BEGIN(INITIAL);
- [^*\n]+ // eat comment in chunks
- "*" // eat the lone star
- \n yylineno++;
- }
-
-
-File: flex.info, Node: The period isn't working the way I expected., Next: Can I get the flex manual in another format?, Prev: How can I match C-style comments?, Up: FAQ
-
-The '.' isn't working the way I expected.
-=========================================
-
-Here are some tips for using `.':
-
- * A common mistake is to place the grouping parenthesis AFTER an
- operator, when you really meant to place the parenthesis BEFORE
- the operator, e.g., you probably want this `(foo|bar)+' and NOT
- this `(foo|bar+)'.
-
- The first pattern matches the words `foo' or `bar' any number of
- times, e.g., it matches the text `barfoofoobarfoo'. The second
- pattern matches a single instance of `foo' or a single instance of
- `bar' followed by one or more `r's, e.g., it matches the text
- `barrrr' .
-
- * A `.' inside `[]''s just means a literal`.' (period), and NOT "any
- character except newline".
-
- * Remember that `.' matches any character EXCEPT `\n' (and `EOF').
- If you really want to match ANY character, including newlines,
- then use `(.|\n)' Beware that the regex `(.|\n)+' will match your
- entire input!
-
- * Finally, if you want to match a literal `.' (a period), then use
- `[.]' or `"."'
-
-
-File: flex.info, Node: Can I get the flex manual in another format?, Next: Does there exist a "faster" NDFA->DFA algorithm?, Prev: The period isn't working the way I expected., Up: FAQ
-
-Can I get the flex manual in another format?
-============================================
-
-The `flex' source distribution includes a texinfo manual. You are free
-to convert that texinfo into whatever format you desire. The `texinfo'
-package includes tools for conversion to a number of formats.
-
-
-File: flex.info, Node: Does there exist a "faster" NDFA->DFA algorithm?, Next: How does flex compile the DFA so quickly?, Prev: Can I get the flex manual in another format?, Up: FAQ
-
-Does there exist a "faster" NDFA->DFA algorithm?
-================================================
-
-There's no way around the potential exponential running time - it can
-take you exponential time just to enumerate all of the DFA states. In
-practice, though, the running time is closer to linear, or sometimes
-quadratic.
-
-
-File: flex.info, Node: How does flex compile the DFA so quickly?, Next: How can I use more than 8192 rules?, Prev: Does there exist a "faster" NDFA->DFA algorithm?, Up: FAQ
-
-How does flex compile the DFA so quickly?
-=========================================
-
-There are two big speed wins that `flex' uses:
-
- 1. It analyzes the input rules to construct equivalence classes for
- those characters that always make the same transitions. It then
- rewrites the NFA using equivalence classes for transitions instead
- of characters. This cuts down the NFA->DFA computation time
- dramatically, to the point where, for uncompressed DFA tables, the
- DFA generation is often I/O bound in writing out the tables.
-
- 2. It maintains hash values for previously computed DFA states, so
- testing whether a newly constructed DFA state is equivalent to a
- previously constructed state can be done very quickly, by first
- comparing hash values.
-
-
-File: flex.info, Node: How can I use more than 8192 rules?, Next: How do I abandon a file in the middle of a scan and switch to a new file?, Prev: How does flex compile the DFA so quickly?, Up: FAQ
-
-How can I use more than 8192 rules?
-===================================
-
-`Flex' is compiled with an upper limit of 8192 rules per scanner. If
-you need more than 8192 rules in your scanner, you'll have to recompile
-`flex' with the following changes in `flexdef.h':
-
-
- < #define YY_TRAILING_MASK 0x2000
- < #define YY_TRAILING_HEAD_MASK 0x4000
- --
- > #define YY_TRAILING_MASK 0x20000000
- > #define YY_TRAILING_HEAD_MASK 0x40000000
-
- This should work okay as long as your C compiler uses 32 bit
-integers. But you might want to think about whether using such a huge
-number of rules is the best way to solve your problem.
-
- The following may also be relevant:
-
- With luck, you should be able to increase the definitions in
-flexdef.h for:
-
-
- #define JAMSTATE -32766 /* marks a reference to the state that always jams */
- #define MAXIMUM_MNS 31999
- #define BAD_SUBSCRIPT -32767
-
- recompile everything, and it'll all work. Flex only has these
-16-bit-like values built into it because a long time ago it was
-developed on a machine with 16-bit ints. I've given this advice to
-others in the past but haven't heard back from them whether it worked
-okay or not...
-
-
-File: flex.info, Node: How do I abandon a file in the middle of a scan and switch to a new file?, Next: How do I execute code only during initialization (only before the first scan)?, Prev: How can I use more than 8192 rules?, Up: FAQ
-
-How do I abandon a file in the middle of a scan and switch to a new file?
-=========================================================================
-
-Just call `yyrestart(newfile)'. Be sure to reset the start state if you
-want a "fresh start, since `yyrestart' does NOT reset the start state
-back to `INITIAL'.
-
-
-File: flex.info, Node: How do I execute code only during initialization (only before the first scan)?, Next: How do I execute code at termination?, Prev: How do I abandon a file in the middle of a scan and switch to a new file?, Up: FAQ
-
-How do I execute code only during initialization (only before the first scan)?
-==============================================================================
-
-You can specify an initial action by defining the macro `YY_USER_INIT'
-(though note that `yyout' may not be available at the time this macro
-is executed). Or you can add to the beginning of your rules section:
-
-
- %%
- /* Must be indented! */
- static int did_init = 0;
-
- if ( ! did_init ){
- do_my_init();
- did_init = 1;
- }
-
-
-File: flex.info, Node: How do I execute code at termination?, Next: Where else can I find help?, Prev: How do I execute code only during initialization (only before the first scan)?, Up: FAQ
-
-How do I execute code at termination?
-=====================================
-
-You can specify an action for the `<<EOF>>' rule.
-
-
-File: flex.info, Node: Where else can I find help?, Next: Can I include comments in the "rules" section of the file?, Prev: How do I execute code at termination?, Up: FAQ
-
-Where else can I find help?
-===========================
-
-You can find the flex homepage on the web at
-`http://flex.sourceforge.net/'. See that page for details about flex
-mailing lists as well.
-
-
-File: flex.info, Node: Can I include comments in the "rules" section of the file?, Next: I get an error about undefined yywrap()., Prev: Where else can I find help?, Up: FAQ
-
-Can I include comments in the "rules" section of the file?
-==========================================================
-
-Yes, just about anywhere you want to. See the manual for the specific
-syntax.
-
-
-File: flex.info, Node: I get an error about undefined yywrap()., Next: How can I change the matching pattern at run time?, Prev: Can I include comments in the "rules" section of the file?, Up: FAQ
-
-I get an error about undefined yywrap().
-========================================
-
-You must supply a `yywrap()' function of your own, or link to `libfl.a'
-(which provides one), or use
-
-
- %option noyywrap
-
- in your source to say you don't want a `yywrap()' function.
-
-
-File: flex.info, Node: How can I change the matching pattern at run time?, Next: How can I expand macros in the input?, Prev: I get an error about undefined yywrap()., Up: FAQ
-
-How can I change the matching pattern at run time?
-==================================================
-
-You can't, it's compiled into a static table when flex builds the
-scanner.
-
-
-File: flex.info, Node: How can I expand macros in the input?, Next: How can I build a two-pass scanner?, Prev: How can I change the matching pattern at run time?, Up: FAQ
-
-How can I expand macros in the input?
-=====================================
-
-The best way to approach this problem is at a higher level, e.g., in
-the parser.
-
- However, you can do this using multiple input buffers.
-
-
- %%
- macro/[a-z]+ {
- /* Saw the macro "macro" followed by extra stuff. */
- main_buffer = YY_CURRENT_BUFFER;
- expansion_buffer = yy_scan_string(expand(yytext));
- yy_switch_to_buffer(expansion_buffer);
- }
-
- <<EOF>> {
- if ( expansion_buffer )
- {
- // We were doing an expansion, return to where
- // we were.
- yy_switch_to_buffer(main_buffer);
- yy_delete_buffer(expansion_buffer);
- expansion_buffer = 0;
- }
- else
- yyterminate();
- }
-
- You probably will want a stack of expansion buffers to allow nested
-macros. From the above though hopefully the idea is clear.
-
-
-File: flex.info, Node: How can I build a two-pass scanner?, Next: How do I match any string not matched in the preceding rules?, Prev: How can I expand macros in the input?, Up: FAQ
-
-How can I build a two-pass scanner?
-===================================
-
-One way to do it is to filter the first pass to a temporary file, then
-process the temporary file on the second pass. You will probably see a
-performance hit, due to all the disk I/O.
-
- When you need to look ahead far forward like this, it almost always
-means that the right solution is to build a parse tree of the entire
-input, then walk it after the parse in order to generate the output.
-In a sense, this is a two-pass approach, once through the text and once
-through the parse tree, but the performance hit for the latter is
-usually an order of magnitude smaller, since everything is already
-classified, in binary format, and residing in memory.
-
-
-File: flex.info, Node: How do I match any string not matched in the preceding rules?, Next: I am trying to port code from AT&T lex that uses yysptr and yysbuf., Prev: How can I build a two-pass scanner?, Up: FAQ
-
-How do I match any string not matched in the preceding rules?
-=============================================================
-
-One way to assign precedence, is to place the more specific rules
-first. If two rules would match the same input (same sequence of
-characters) then the first rule listed in the `flex' input wins, e.g.,
-
-
- %%
- foo[a-zA-Z_]+ return FOO_ID;
- bar[a-zA-Z_]+ return BAR_ID;
- [a-zA-Z_]+ return GENERIC_ID;
-
- Note that the rule `[a-zA-Z_]+' must come *after* the others. It
-will match the same amount of text as the more specific rules, and in
-that case the `flex' scanner will pick the first rule listed in your
-scanner as the one to match.
-
-
-File: flex.info, Node: I am trying to port code from AT&T lex that uses yysptr and yysbuf., Next: Is there a way to make flex treat NULL like a regular character?, Prev: How do I match any string not matched in the preceding rules?, Up: FAQ
-
-I am trying to port code from AT&T lex that uses yysptr and yysbuf.
-===================================================================
-
-Those are internal variables pointing into the AT&T scanner's input
-buffer. I imagine they're being manipulated in user versions of the
-`input()' and `unput()' functions. If so, what you need to do is
-analyze those functions to figure out what they're doing, and then
-replace `input()' with an appropriate definition of `YY_INPUT'. You
-shouldn't need to (and must not) replace `flex''s `unput()' function.
-
-
-File: flex.info, Node: Is there a way to make flex treat NULL like a regular character?, Next: Whenever flex can not match the input it says "flex scanner jammed"., Prev: I am trying to port code from AT&T lex that uses yysptr and yysbuf., Up: FAQ
-
-Is there a way to make flex treat NULL like a regular character?
-================================================================
-
-Yes, `\0' and `\x00' should both do the trick. Perhaps you have an
-ancient version of `flex'. The latest release is version 2.5.35.
-
-
-File: flex.info, Node: Whenever flex can not match the input it says "flex scanner jammed"., Next: Why doesn't flex have non-greedy operators like perl does?, Prev: Is there a way to make flex treat NULL like a regular character?, Up: FAQ
-
-Whenever flex can not match the input it says "flex scanner jammed".
-====================================================================
-
-You need to add a rule that matches the otherwise-unmatched text, e.g.,
-
-
- %option yylineno
- %%
- [[a bunch of rules here]]
-
- . printf("bad input character '%s' at line %d\n", yytext, yylineno);
-
- See `%option default' for more information.
-
-
-File: flex.info, Node: Why doesn't flex have non-greedy operators like perl does?, Next: Memory leak - 16386 bytes allocated by malloc., Prev: Whenever flex can not match the input it says "flex scanner jammed"., Up: FAQ
-
-Why doesn't flex have non-greedy operators like perl does?
-==========================================================
-
-A DFA can do a non-greedy match by stopping the first time it enters an
-accepting state, instead of consuming input until it determines that no
-further matching is possible (a "jam" state). This is actually easier
-to implement than longest leftmost match (which flex does).
-
- But it's also much less useful than longest leftmost match. In
-general, when you find yourself wishing for non-greedy matching, that's
-usually a sign that you're trying to make the scanner do some parsing.
-That's generally the wrong approach, since it lacks the power to do a
-decent job. Better is to either introduce a separate parser, or to
-split the scanner into multiple scanners using (exclusive) start
-conditions.
-
- You might have a separate start state once you've seen the `BEGIN'.
-In that state, you might then have a regex that will match `END' (to
-kick you out of the state), and perhaps `(.|\n)' to get a single
-character within the chunk ...
-
- This approach also has much better error-reporting properties.
-
-
-File: flex.info, Node: Memory leak - 16386 bytes allocated by malloc., Next: How do I track the byte offset for lseek()?, Prev: Why doesn't flex have non-greedy operators like perl does?, Up: FAQ
-
-Memory leak - 16386 bytes allocated by malloc.
-==============================================
-
-UPDATED 2002-07-10: As of `flex' version 2.5.9, this leak means that
-you did not call `yylex_destroy()'. If you are using an earlier version
-of `flex', then read on.
-
- The leak is about 16426 bytes. That is, (8192 * 2 + 2) for the
-read-buffer, and about 40 for `struct yy_buffer_state' (depending upon
-alignment). The leak is in the non-reentrant C scanner only (NOT in the
-reentrant scanner, NOT in the C++ scanner). Since `flex' doesn't know
-when you are done, the buffer is never freed.
-
- However, the leak won't multiply since the buffer is reused no
-matter how many times you call `yylex()'.
-
- If you want to reclaim the memory when you are completely done
-scanning, then you might try this:
-
-
- /* For non-reentrant C scanner only. */
- yy_delete_buffer(YY_CURRENT_BUFFER);
- yy_init = 1;
-
- Note: `yy_init' is an "internal variable", and hasn't been tested in
-this situation. It is possible that some other globals may need
-resetting as well.
-
-
-File: flex.info, Node: How do I track the byte offset for lseek()?, Next: How do I use my own I/O classes in a C++ scanner?, Prev: Memory leak - 16386 bytes allocated by malloc., Up: FAQ
-
-How do I track the byte offset for lseek()?
-===========================================
-
-
- > We thought that it would be possible to have this number through the
- > evaluation of the following expression:
- >
- > seek_position = (no_buffers)*YY_READ_BUF_SIZE + yy_c_buf_p - YY_CURRENT_BUFFER->yy_ch_buf
-
- While this is the right idea, it has two problems. The first is that
-it's possible that `flex' will request less than `YY_READ_BUF_SIZE'
-during an invocation of `YY_INPUT' (or that your input source will
-return less even though `YY_READ_BUF_SIZE' bytes were requested). The
-second problem is that when refilling its internal buffer, `flex' keeps
-some characters from the previous buffer (because usually it's in the
-middle of a match, and needs those characters to construct `yytext' for
-the match once it's done). Because of this, `yy_c_buf_p -
-YY_CURRENT_BUFFER->yy_ch_buf' won't be exactly the number of characters
-already read from the current buffer.
-
- An alternative solution is to count the number of characters you've
-matched since starting to scan. This can be done by using
-`YY_USER_ACTION'. For example,
-
-
- #define YY_USER_ACTION num_chars += yyleng;
-
- (You need to be careful to update your bookkeeping if you use
-`yymore('), `yyless()', `unput()', or `input()'.)
-
-
-File: flex.info, Node: How do I use my own I/O classes in a C++ scanner?, Next: How do I skip as many chars as possible?, Prev: How do I track the byte offset for lseek()?, Up: FAQ
-
-How do I use my own I/O classes in a C++ scanner?
-=================================================
-
-When the flex C++ scanning class rewrite finally happens, then this
-sort of thing should become much easier.
-
- You can do this by passing the various functions (such as
-`LexerInput()' and `LexerOutput()') NULL `iostream*''s, and then
-dealing with your own I/O classes surreptitiously (i.e., stashing them
-in special member variables). This works because the only assumption
-about the lexer regarding what's done with the iostream's is that
-they're ultimately passed to `LexerInput()' and `LexerOutput', which
-then do whatever is necessary with them.
-
-
-File: flex.info, Node: How do I skip as many chars as possible?, Next: deleteme00, Prev: How do I use my own I/O classes in a C++ scanner?, Up: FAQ
-
-How do I skip as many chars as possible?
-========================================
-
-How do I skip as many chars as possible - without interfering with the
-other patterns?
-
- In the example below, we want to skip over characters until we see
-the phrase "endskip". The following will _NOT_ work correctly (do you
-see why not?)
-
-
- /* INCORRECT SCANNER */
- %x SKIP
- %%
- <INITIAL>startskip BEGIN(SKIP);
- ...
- <SKIP>"endskip" BEGIN(INITIAL);
- <SKIP>.* ;
-
- The problem is that the pattern .* will eat up the word "endskip."
-The simplest (but slow) fix is:
-
-
- <SKIP>"endskip" BEGIN(INITIAL);
- <SKIP>. ;
-
- The fix involves making the second rule match more, without making
-it match "endskip" plus something else. So for example:
-
-
- <SKIP>"endskip" BEGIN(INITIAL);
- <SKIP>[^e]+ ;
- <SKIP>. ;/* so you eat up e's, too */
-
-
-File: flex.info, Node: deleteme00, Next: Are certain equivalent patterns faster than others?, Prev: How do I skip as many chars as possible?, Up: FAQ
-
-deleteme00
-==========
-
-
- QUESTION:
- When was flex born?
-
- Vern Paxson took over
- the Software Tools lex project from Jef Poskanzer in 1982. At that point it
- was written in Ratfor. Around 1987 or so, Paxson translated it into C, and
- a legend was born :-).
-
-
-File: flex.info, Node: Are certain equivalent patterns faster than others?, Next: Is backing up a big deal?, Prev: deleteme00, Up: FAQ
-
-Are certain equivalent patterns faster than others?
-===================================================
-
-
- To: Adoram Rogel <adoram@orna.hybridge.com>
- Subject: Re: Flex 2.5.2 performance questions
- In-reply-to: Your message of Wed, 18 Sep 96 11:12:17 EDT.
- Date: Wed, 18 Sep 96 10:51:02 PDT
- From: Vern Paxson <vern>
-
- [Note, the most recent flex release is 2.5.4, which you can get from
- ftp.ee.lbl.gov. It has bug fixes over 2.5.2 and 2.5.3.]
-
- > 1. Using the pattern
- > ([Ff](oot)?)?[Nn](ote)?(\.)?
- > instead of
- > (((F|f)oot(N|n)ote)|((N|n)ote)|((N|n)\.)|((F|f)(N|n)(\.)))
- > (in a very complicated flex program) caused the program to slow from
- > 300K+/min to 100K/min (no other changes were done).
-
- These two are not equivalent. For example, the first can match "footnote."
- but the second can only match "footnote". This is almost certainly the
- cause in the discrepancy - the slower scanner run is matching more tokens,
- and/or having to do more backing up.
-
- > 2. Which of these two are better: [Ff]oot or (F|f)oot ?
-
- From a performance point of view, they're equivalent (modulo presumably
- minor effects such as memory cache hit rates; and the presence of trailing
- context, see below). From a space point of view, the first is slightly
- preferable.
-
- > 3. I have a pattern that look like this:
- > pats {p1}|{p2}|{p3}|...|{p50} (50 patterns ORd)
- >
- > running yet another complicated program that includes the following rule:
- > <snext>{and}/{no4}{bb}{pats}
- >
- > gets me to "too complicated - over 32,000 states"...
-
- I can't tell from this example whether the trailing context is variable-length
- or fixed-length (it could be the latter if {and} is fixed-length). If it's
- variable length, which flex -p will tell you, then this reflects a basic
- performance problem, and if you can eliminate it by restructuring your
- scanner, you will see significant improvement.
-
- > so I divided {pats} to {pats1}, {pats2},..., {pats5} each consists of about
- > 10 patterns and changed the rule to be 5 rules.
- > This did compile, but what is the rule of thumb here ?
-
- The rule is to avoid trailing context other than fixed-length, in which for
- a/b, either the 'a' pattern or the 'b' pattern have a fixed length. Use
- of the '|' operator automatically makes the pattern variable length, so in
- this case '[Ff]oot' is preferred to '(F|f)oot'.
-
- > 4. I changed a rule that looked like this:
- > <snext8>{and}{bb}/{ROMAN}[^A-Za-z] { BEGIN...
- >
- > to the next 2 rules:
- > <snext8>{and}{bb}/{ROMAN}[A-Za-z] { ECHO;}
- > <snext8>{and}{bb}/{ROMAN} { BEGIN...
- >
- > Again, I understand the using [^...] will cause a great performance loss
-
- Actually, it doesn't cause any sort of performance loss. It's a surprising
- fact about regular expressions that they always match in linear time
- regardless of how complex they are.
-
- > but are there any specific rules about it ?
-
- See the "Performance Considerations" section of the man page, and also
- the example in MISC/fastwc/.
-
- Vern
-
-
-File: flex.info, Node: Is backing up a big deal?, Next: Can I fake multi-byte character support?, Prev: Are certain equivalent patterns faster than others?, Up: FAQ
-
-Is backing up a big deal?
-=========================
-
-
- To: Adoram Rogel <adoram@hybridge.com>
- Subject: Re: Flex 2.5.2 performance questions
- In-reply-to: Your message of Thu, 19 Sep 96 10:16:04 EDT.
- Date: Thu, 19 Sep 96 09:58:00 PDT
- From: Vern Paxson <vern>
-
- > a lot about the backing up problem.
- > I believe that there lies my biggest problem, and I'll try to improve
- > it.
-
- Since you have variable trailing context, this is a bigger performance
- problem. Fixing it is usually easier than fixing backing up, which in a
- complicated scanner (yours seems to fit the bill) can be extremely
- difficult to do correctly.
-
- You also don't mention what flags you are using for your scanner.
- -f makes a large speed difference, and -Cfe buys you nearly as much
- speed but the resulting scanner is considerably smaller.
-
- > I have an | operator in {and} and in {pats} so both of them are variable
- > length.
-
- -p should have reported this.
-
- > Is changing one of them to fixed-length is enough ?
-
- Yes.
-
- > Is it possible to change the 32,000 states limit ?
-
- Yes. I've appended instructions on how. Before you make this change,
- though, you should think about whether there are ways to fundamentally
- simplify your scanner - those are certainly preferable!
-
- Vern
-
- To increase the 32K limit (on a machine with 32 bit integers), you increase
- the magnitude of the following in flexdef.h:
-
- #define JAMSTATE -32766 /* marks a reference to the state that always jams */
- #define MAXIMUM_MNS 31999
- #define BAD_SUBSCRIPT -32767
- #define MAX_SHORT 32700
-
- Adding a 0 or two after each should do the trick.
-
-
-File: flex.info, Node: Can I fake multi-byte character support?, Next: deleteme01, Prev: Is backing up a big deal?, Up: FAQ
-
-Can I fake multi-byte character support?
-========================================
-
-
- To: Heeman_Lee@hp.com
- Subject: Re: flex - multi-byte support?
- In-reply-to: Your message of Thu, 03 Oct 1996 17:24:04 PDT.
- Date: Fri, 04 Oct 1996 11:42:18 PDT
- From: Vern Paxson <vern>
-
- > I assume as long as my *.l file defines the
- > range of expected character code values (in octal format), flex will
- > scan the file and read multi-byte characters correctly. But I have no
- > confidence in this assumption.
-
- Your lack of confidence is justified - this won't work.
-
- Flex has in it a widespread assumption that the input is processed
- one byte at a time. Fixing this is on the to-do list, but is involved,
- so it won't happen any time soon. In the interim, the best I can suggest
- (unless you want to try fixing it yourself) is to write your rules in
- terms of pairs of bytes, using definitions in the first section:
-
- X \xfe\xc2
- ...
- %%
- foo{X}bar found_foo_fe_c2_bar();
-
- etc. Definitely a pain - sorry about that.
-
- By the way, the email address you used for me is ancient, indicating you
- have a very old version of flex. You can get the most recent, 2.5.4, from
- ftp.ee.lbl.gov.
-
- Vern
-
-
-File: flex.info, Node: deleteme01, Next: Can you discuss some flex internals?, Prev: Can I fake multi-byte character support?, Up: FAQ
-
-deleteme01
-==========
-
-
- To: moleary@primus.com
- Subject: Re: Flex / Unicode compatibility question
- In-reply-to: Your message of Tue, 22 Oct 1996 10:15:42 PDT.
- Date: Tue, 22 Oct 1996 11:06:13 PDT
- From: Vern Paxson <vern>
-
- Unfortunately flex at the moment has a widespread assumption within it
- that characters are processed 8 bits at a time. I don't see any easy
- fix for this (other than writing your rules in terms of double characters -
- a pain). I also don't know of a wider lex, though you might try surfing
- the Plan 9 stuff because I know it's a Unicode system, and also the PCCT
- toolkit (try searching say Alta Vista for "Purdue Compiler Construction
- Toolkit").
-
- Fixing flex to handle wider characters is on the long-term to-do list.
- But since flex is a strictly spare-time project these days, this probably
- won't happen for quite a while, unless someone else does it first.
-
- Vern
-
-
-File: flex.info, Node: Can you discuss some flex internals?, Next: unput() messes up yy_at_bol, Prev: deleteme01, Up: FAQ
-
-Can you discuss some flex internals?
-====================================
-
-
- To: Johan Linde <jl@theophys.kth.se>
- Subject: Re: translation of flex
- In-reply-to: Your message of Sun, 10 Nov 1996 09:16:36 PST.
- Date: Mon, 11 Nov 1996 10:33:50 PST
- From: Vern Paxson <vern>
-
- > I'm working for the Swedish team translating GNU program, and I'm currently
- > working with flex. I have a few questions about some of the messages which
- > I hope you can answer.
-
- All of the things you're wondering about, by the way, concerning flex
- internals - probably the only person who understands what they mean in
- English is me! So I wouldn't worry too much about getting them right.
- That said ...
-
- > #: main.c:545
- > msgid " %d protos created\n"
- >
- > Does proto mean prototype?
-
- Yes - prototypes of state compression tables.
-
- > #: main.c:539
- > msgid " %d/%d (peak %d) template nxt-chk entries created\n"
- >
- > Here I'm mainly puzzled by 'nxt-chk'. I guess it means 'next-check'. (?)
- > However, 'template next-check entries' doesn't make much sense to me. To be
- > able to find a good translation I need to know a little bit more about it.
-
- There is a scheme in the Aho/Sethi/Ullman compiler book for compressing
- scanner tables. It involves creating two pairs of tables. The first has
- "base" and "default" entries, the second has "next" and "check" entries.
- The "base" entry is indexed by the current state and yields an index into
- the next/check table. The "default" entry gives what to do if the state
- transition isn't found in next/check. The "next" entry gives the next
- state to enter, but only if the "check" entry verifies that this entry is
- correct for the current state. Flex creates templates of series of
- next/check entries and then encodes differences from these templates as a
- way to compress the tables.
-
- > #: main.c:533
- > msgid " %d/%d base-def entries created\n"
- >
- > The same problem here for 'base-def'.
-
- See above.
-
- Vern
-
-
-File: flex.info, Node: unput() messes up yy_at_bol, Next: The | operator is not doing what I want, Prev: Can you discuss some flex internals?, Up: FAQ
-
-unput() messes up yy_at_bol
-===========================
-
-
- To: Xinying Li <xli@npac.syr.edu>
- Subject: Re: FLEX ?
- In-reply-to: Your message of Wed, 13 Nov 1996 17:28:38 PST.
- Date: Wed, 13 Nov 1996 19:51:54 PST
- From: Vern Paxson <vern>
-
- > "unput()" them to input flow, question occurs. If I do this after I scan
- > a carriage, the variable "YY_CURRENT_BUFFER->yy_at_bol" is changed. That
- > means the carriage flag has gone.
-
- You can control this by calling yy_set_bol(). It's described in the manual.
-
- > And if in pre-reading it goes to the end of file, is anything done
- > to control the end of curren buffer and end of file?
-
- No, there's no way to put back an end-of-file.
-
- > By the way I am using flex 2.5.2 and using the "-l".
-
- The latest release is 2.5.4, by the way. It fixes some bugs in 2.5.2 and
- 2.5.3. You can get it from ftp.ee.lbl.gov.
-
- Vern
-
-
-File: flex.info, Node: The | operator is not doing what I want, Next: Why can't flex understand this variable trailing context pattern?, Prev: unput() messes up yy_at_bol, Up: FAQ
-
-The | operator is not doing what I want
-=======================================
-
-
- To: Alain.ISSARD@st.com
- Subject: Re: Start condition with FLEX
- In-reply-to: Your message of Mon, 18 Nov 1996 09:45:02 PST.
- Date: Mon, 18 Nov 1996 10:41:34 PST
- From: Vern Paxson <vern>
-
- > I am not able to use the start condition scope and to use the | (OR) with
- > rules having start conditions.
-
- The problem is that if you use '|' as a regular expression operator, for
- example "a|b" meaning "match either 'a' or 'b'", then it must *not* have
- any blanks around it. If you instead want the special '|' *action* (which
- from your scanner appears to be the case), which is a way of giving two
- different rules the same action:
-
- foo |
- bar matched_foo_or_bar();
-
- then '|' *must* be separated from the first rule by whitespace and *must*
- be followed by a new line. You *cannot* write it as:
-
- foo | bar matched_foo_or_bar();
-
- even though you might think you could because yacc supports this syntax.
- The reason for this unfortunately incompatibility is historical, but it's
- unlikely to be changed.
-
- Your problems with start condition scope are simply due to syntax errors
- from your use of '|' later confusing flex.
-
- Let me know if you still have problems.
-
- Vern
-
-
-File: flex.info, Node: Why can't flex understand this variable trailing context pattern?, Next: The ^ operator isn't working, Prev: The | operator is not doing what I want, Up: FAQ
-
-Why can't flex understand this variable trailing context pattern?
-=================================================================
-
-
- To: Gregory Margo <gmargo@newton.vip.best.com>
- Subject: Re: flex-2.5.3 bug report
- In-reply-to: Your message of Sat, 23 Nov 1996 16:50:09 PST.
- Date: Sat, 23 Nov 1996 17:07:32 PST
- From: Vern Paxson <vern>
-
- > Enclosed is a lex file that "real" lex will process, but I cannot get
- > flex to process it. Could you try it and maybe point me in the right direction?
-
- Your problem is that some of the definitions in the scanner use the '/'
- trailing context operator, and have it enclosed in ()'s. Flex does not
- allow this operator to be enclosed in ()'s because doing so allows undefined
- regular expressions such as "(a/b)+". So the solution is to remove the
- parentheses. Note that you must also be building the scanner with the -l
- option for AT&T lex compatibility. Without this option, flex automatically
- encloses the definitions in parentheses.
-
- Vern
-
-
-File: flex.info, Node: The ^ operator isn't working, Next: Trailing context is getting confused with trailing optional patterns, Prev: Why can't flex understand this variable trailing context pattern?, Up: FAQ
-
-The ^ operator isn't working
-============================
-
-
- To: Thomas Hadig <hadig@toots.physik.rwth-aachen.de>
- Subject: Re: Flex Bug ?
- In-reply-to: Your message of Tue, 26 Nov 1996 14:35:01 PST.
- Date: Tue, 26 Nov 1996 11:15:05 PST
- From: Vern Paxson <vern>
-
- > In my lexer code, i have the line :
- > ^\*.* { }
- >
- > Thus all lines starting with an astrix (*) are comment lines.
- > This does not work !
-
- I can't get this problem to reproduce - it works fine for me. Note
- though that if what you have is slightly different:
-
- COMMENT ^\*.*
- %%
- {COMMENT} { }
-
- then it won't work, because flex pushes back macro definitions enclosed
- in ()'s, so the rule becomes
-
- (^\*.*) { }
-
- and now that the '^' operator is not at the immediate beginning of the
- line, it's interpreted as just a regular character. You can avoid this
- behavior by using the "-l" lex-compatibility flag, or "%option lex-compat".
-
- Vern
-
-
-File: flex.info, Node: Trailing context is getting confused with trailing optional patterns, Next: Is flex GNU or not?, Prev: The ^ operator isn't working, Up: FAQ
-
-Trailing context is getting confused with trailing optional patterns
-====================================================================
-
-
- To: Adoram Rogel <adoram@hybridge.com>
- Subject: Re: Flex 2.5.4 BOF ???
- In-reply-to: Your message of Tue, 26 Nov 1996 16:10:41 PST.
- Date: Wed, 27 Nov 1996 10:56:25 PST
- From: Vern Paxson <vern>
-
- > Organization(s)?/[a-z]
- >
- > This matched "Organizations" (looking in debug mode, the trailing s
- > was matched with trailing context instead of the optional (s) in the
- > end of the word.
-
- That should only happen with lex. Flex can properly match this pattern.
- (That might be what you're saying, I'm just not sure.)
-
- > Is there a way to avoid this dangerous trailing context problem ?
-
- Unfortunately, there's no easy way. On the other hand, I don't see why
- it should be a problem. Lex's matching is clearly wrong, and I'd hope
- that usually the intent remains the same as expressed with the pattern,
- so flex's matching will be correct.
-
- Vern
-
-
-File: flex.info, Node: Is flex GNU or not?, Next: ERASEME53, Prev: Trailing context is getting confused with trailing optional patterns, Up: FAQ
-
-Is flex GNU or not?
-===================
-
-
- To: Cameron MacKinnon <mackin@interlog.com>
- Subject: Re: Flex documentation bug
- In-reply-to: Your message of Mon, 02 Dec 1996 00:07:08 PST.
- Date: Sun, 01 Dec 1996 22:29:39 PST
- From: Vern Paxson <vern>
-
- > I'm not sure how or where to submit bug reports (documentation or
- > otherwise) for the GNU project stuff ...
-
- Well, strictly speaking flex isn't part of the GNU project. They just
- distribute it because no one's written a decent GPL'd lex replacement.
- So you should send bugs directly to me. Those sent to the GNU folks
- sometimes find there way to me, but some may drop between the cracks.
-
- > In GNU Info, under the section 'Start Conditions', and also in the man
- > page (mine's dated April '95) is a nice little snippet showing how to
- > parse C quoted strings into a buffer, defined to be MAX_STR_CONST in
- > size. Unfortunately, no overflow checking is ever done ...
-
- This is already mentioned in the manual:
-
- Finally, here's an example of how to match C-style quoted
- strings using exclusive start conditions, including expanded
- escape sequences (but not including checking for a string
- that's too long):
-
- The reason for not doing the overflow checking is that it will needlessly
- clutter up an example whose main purpose is just to demonstrate how to
- use flex.
-
- The latest release is 2.5.4, by the way, available from ftp.ee.lbl.gov.
-
- Vern
-
-
-File: flex.info, Node: ERASEME53, Next: I need to scan if-then-else blocks and while loops, Prev: Is flex GNU or not?, Up: FAQ
-
-ERASEME53
-=========
-
-
- To: tsv@cs.UManitoba.CA
- Subject: Re: Flex (reg)..
- In-reply-to: Your message of Thu, 06 Mar 1997 23:50:16 PST.
- Date: Thu, 06 Mar 1997 15:54:19 PST
- From: Vern Paxson <vern>
-
- > [:alpha:] ([:alnum:] | \\_)*
-
- If your rule really has embedded blanks as shown above, then it won't
- work, as the first blank delimits the rule from the action. (It wouldn't
- even compile ...) You need instead:
-
- [:alpha:]([:alnum:]|\\_)*
-
- and that should work fine - there's no restriction on what can go inside
- of ()'s except for the trailing context operator, '/'.
-
- Vern
-
-
-File: flex.info, Node: I need to scan if-then-else blocks and while loops, Next: ERASEME55, Prev: ERASEME53, Up: FAQ
-
-I need to scan if-then-else blocks and while loops
-==================================================
-
-
- To: "Mike Stolnicki" <mstolnic@ford.com>
- Subject: Re: FLEX help
- In-reply-to: Your message of Fri, 30 May 1997 13:33:27 PDT.
- Date: Fri, 30 May 1997 10:46:35 PDT
- From: Vern Paxson <vern>
-
- > We'd like to add "if-then-else", "while", and "for" statements to our
- > language ...
- > We've investigated many possible solutions. The one solution that seems
- > the most reasonable involves knowing the position of a TOKEN in yyin.
-
- I strongly advise you to instead build a parse tree (abstract syntax tree)
- and loop over that instead. You'll find this has major benefits in keeping
- your interpreter simple and extensible.
-
- That said, the functionality you mention for get_position and set_position
- have been on the to-do list for a while. As flex is a purely spare-time
- project for me, no guarantees when this will be added (in particular, it
- for sure won't be for many months to come).
-
- Vern
-
-
-File: flex.info, Node: ERASEME55, Next: ERASEME56, Prev: I need to scan if-then-else blocks and while loops, Up: FAQ
-
-ERASEME55
-=========
-
-
- To: Colin Paul Adams <colin@colina.demon.co.uk>
- Subject: Re: Flex C++ classes and Bison
- In-reply-to: Your message of 09 Aug 1997 17:11:41 PDT.
- Date: Fri, 15 Aug 1997 10:48:19 PDT
- From: Vern Paxson <vern>
-
- > #define YY_DECL int yylex (YYSTYPE *lvalp, struct parser_control
- > *parm)
- >
- > I have been trying to get this to work as a C++ scanner, but it does
- > not appear to be possible (warning that it matches no declarations in
- > yyFlexLexer, or something like that).
- >
- > Is this supposed to be possible, or is it being worked on (I DID
- > notice the comment that scanner classes are still experimental, so I'm
- > not too hopeful)?
-
- What you need to do is derive a subclass from yyFlexLexer that provides
- the above yylex() method, squirrels away lvalp and parm into member
- variables, and then invokes yyFlexLexer::yylex() to do the regular scanning.
-
- Vern
-
-
-File: flex.info, Node: ERASEME56, Next: ERASEME57, Prev: ERASEME55, Up: FAQ
-
-ERASEME56
-=========
-
-
- To: Mikael.Latvala@lmf.ericsson.se
- Subject: Re: Possible mistake in Flex v2.5 document
- In-reply-to: Your message of Fri, 05 Sep 1997 16:07:24 PDT.
- Date: Fri, 05 Sep 1997 10:01:54 PDT
- From: Vern Paxson <vern>
-
- > In that example you show how to count comment lines when using
- > C style /* ... */ comments. My question is, shouldn't you take into
- > account a scenario where end of a comment marker occurs inside
- > character or string literals?
-
- The scanner certainly needs to also scan character and string literals.
- However it does that (there's an example in the man page for strings), the
- lexer will recognize the beginning of the literal before it runs across the
- embedded "/*". Consequently, it will finish scanning the literal before it
- even considers the possibility of matching "/*".
-
- Example:
-
- '([^']*|{ESCAPE_SEQUENCE})'
-
- will match all the text between the ''s (inclusive). So the lexer
- considers this as a token beginning at the first ', and doesn't even
- attempt to match other tokens inside it.
-
- I thinnk this subtlety is not worth putting in the manual, as I suspect
- it would confuse more people than it would enlighten.
-
- Vern
-
-
-File: flex.info, Node: ERASEME57, Next: Is there a repository for flex scanners?, Prev: ERASEME56, Up: FAQ
-
-ERASEME57
-=========
-
-
- To: "Marty Leisner" <leisner@sdsp.mc.xerox.com>
- Subject: Re: flex limitations
- In-reply-to: Your message of Sat, 06 Sep 1997 11:27:21 PDT.
- Date: Mon, 08 Sep 1997 11:38:08 PDT
- From: Vern Paxson <vern>
-
- > %%
- > [a-zA-Z]+ /* skip a line */
- > { printf("got %s\n", yytext); }
- > %%
-
- What version of flex are you using? If I feed this to 2.5.4, it complains:
-
- "bug.l", line 5: EOF encountered inside an action
- "bug.l", line 5: unrecognized rule
- "bug.l", line 5: fatal parse error
-
- Not the world's greatest error message, but it manages to flag the problem.
-
- (With the introduction of start condition scopes, flex can't accommodate
- an action on a separate line, since it's ambiguous with an indented rule.)
-
- You can get 2.5.4 from ftp.ee.lbl.gov.
-
- Vern
-
-
-File: flex.info, Node: Is there a repository for flex scanners?, Next: How can I conditionally compile or preprocess my flex input file?, Prev: ERASEME57, Up: FAQ
-
-Is there a repository for flex scanners?
-========================================
-
-Not that we know of. You might try asking on comp.compilers.
-
-
-File: flex.info, Node: How can I conditionally compile or preprocess my flex input file?, Next: Where can I find grammars for lex and yacc?, Prev: Is there a repository for flex scanners?, Up: FAQ
-
-How can I conditionally compile or preprocess my flex input file?
-=================================================================
-
-Flex doesn't have a preprocessor like C does. You might try using m4,
-or the C preprocessor plus a sed script to clean up the result.
-
-
-File: flex.info, Node: Where can I find grammars for lex and yacc?, Next: I get an end-of-buffer message for each character scanned., Prev: How can I conditionally compile or preprocess my flex input file?, Up: FAQ
-
-Where can I find grammars for lex and yacc?
-===========================================
-
-In the sources for flex and bison.
-
-
-File: flex.info, Node: I get an end-of-buffer message for each character scanned., Next: unnamed-faq-62, Prev: Where can I find grammars for lex and yacc?, Up: FAQ
-
-I get an end-of-buffer message for each character scanned.
-==========================================================
-
-This will happen if your LexerInput() function returns only one
-character at a time, which can happen either if you're scanner is
-"interactive", or if the streams library on your platform always
-returns 1 for yyin->gcount().
-
- Solution: override LexerInput() with a version that returns whole
-buffers.
-
-
-File: flex.info, Node: unnamed-faq-62, Next: unnamed-faq-63, Prev: I get an end-of-buffer message for each character scanned., Up: FAQ
-
-unnamed-faq-62
-==============
-
-
- To: Georg.Rehm@CL-KI.Uni-Osnabrueck.DE
- Subject: Re: Flex maximums
- In-reply-to: Your message of Mon, 17 Nov 1997 17:16:06 PST.
- Date: Mon, 17 Nov 1997 17:16:15 PST
- From: Vern Paxson <vern>
-
- > I took a quick look into the flex-sources and altered some #defines in
- > flexdefs.h:
- >
- > #define INITIAL_MNS 64000
- > #define MNS_INCREMENT 1024000
- > #define MAXIMUM_MNS 64000
-
- The things to fix are to add a couple of zeroes to:
-
- #define JAMSTATE -32766 /* marks a reference to the state that always jams */
- #define MAXIMUM_MNS 31999
- #define BAD_SUBSCRIPT -32767
- #define MAX_SHORT 32700
-
- and, if you get complaints about too many rules, make the following change too:
-
- #define YY_TRAILING_MASK 0x200000
- #define YY_TRAILING_HEAD_MASK 0x400000
-
- - Vern
-
-
-File: flex.info, Node: unnamed-faq-63, Next: unnamed-faq-64, Prev: unnamed-faq-62, Up: FAQ
-
-unnamed-faq-63
-==============
-
-
- To: jimmey@lexis-nexis.com (Jimmey Todd)
- Subject: Re: FLEX question regarding istream vs ifstream
- In-reply-to: Your message of Mon, 08 Dec 1997 15:54:15 PST.
- Date: Mon, 15 Dec 1997 13:21:35 PST
- From: Vern Paxson <vern>
-
- > stdin_handle = YY_CURRENT_BUFFER;
- > ifstream fin( "aFile" );
- > yy_switch_to_buffer( yy_create_buffer( fin, YY_BUF_SIZE ) );
- >
- > What I'm wanting to do, is pass the contents of a file thru one set
- > of rules and then pass stdin thru another set... It works great if, I
- > don't use the C++ classes. But since everything else that I'm doing is
- > in C++, I thought I'd be consistent.
- >
- > The problem is that 'yy_create_buffer' is expecting an istream* as it's
- > first argument (as stated in the man page). However, fin is a ifstream
- > object. Any ideas on what I might be doing wrong? Any help would be
- > appreciated. Thanks!!
-
- You need to pass &fin, to turn it into an ifstream* instead of an ifstream.
- Then its type will be compatible with the expected istream*, because ifstream
- is derived from istream.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-64, Next: unnamed-faq-65, Prev: unnamed-faq-63, Up: FAQ
-
-unnamed-faq-64
-==============
-
-
- To: Enda Fadian <fadiane@piercom.ie>
- Subject: Re: Question related to Flex man page?
- In-reply-to: Your message of Tue, 16 Dec 1997 15:17:34 PST.
- Date: Tue, 16 Dec 1997 14:17:09 PST
- From: Vern Paxson <vern>
-
- > Can you explain to me what is ment by a long-jump in relation to flex?
-
- Using the longjmp() function while inside yylex() or a routine called by it.
-
- > what is the flex activation frame.
-
- Just yylex()'s stack frame.
-
- > As far as I can see yyrestart will bring me back to the sart of the input
- > file and using flex++ isnot really an option!
-
- No, yyrestart() doesn't imply a rewind, even though its name might sound
- like it does. It tells the scanner to flush its internal buffers and
- start reading from the given file at its present location.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-65, Next: unnamed-faq-66, Prev: unnamed-faq-64, Up: FAQ
-
-unnamed-faq-65
-==============
-
-
- To: hassan@larc.info.uqam.ca (Hassan Alaoui)
- Subject: Re: Need urgent Help
- In-reply-to: Your message of Sat, 20 Dec 1997 19:38:19 PST.
- Date: Sun, 21 Dec 1997 21:30:46 PST
- From: Vern Paxson <vern>
-
- > /usr/lib/yaccpar: In function `int yyparse()':
- > /usr/lib/yaccpar:184: warning: implicit declaration of function `int yylex(...)'
- >
- > ld: Undefined symbol
- > _yylex
- > _yyparse
- > _yyin
-
- This is a known problem with Solaris C++ (and/or Solaris yacc). I believe
- the fix is to explicitly insert some 'extern "C"' statements for the
- corresponding routines/symbols.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-66, Next: unnamed-faq-67, Prev: unnamed-faq-65, Up: FAQ
-
-unnamed-faq-66
-==============
-
-
- To: mc0307@mclink.it
- Cc: gnu@prep.ai.mit.edu
- Subject: Re: [mc0307@mclink.it: Help request]
- In-reply-to: Your message of Fri, 12 Dec 1997 17:57:29 PST.
- Date: Sun, 21 Dec 1997 22:33:37 PST
- From: Vern Paxson <vern>
-
- > This is my definition for float and integer types:
- > . . .
- > NZD [1-9]
- > ...
- > I've tested my program on other lex version (on UNIX Sun Solaris an HP
- > UNIX) and it work well, so I think that my definitions are correct.
- > There are any differences between Lex and Flex?
-
- There are indeed differences, as discussed in the man page. The one
- you are probably running into is that when flex expands a name definition,
- it puts parentheses around the expansion, while lex does not. There's
- an example in the man page of how this can lead to different matching.
- Flex's behavior complies with the POSIX standard (or at least with the
- last POSIX draft I saw).
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-67, Next: unnamed-faq-68, Prev: unnamed-faq-66, Up: FAQ
-
-unnamed-faq-67
-==============
-
-
- To: hassan@larc.info.uqam.ca (Hassan Alaoui)
- Subject: Re: Thanks
- In-reply-to: Your message of Mon, 22 Dec 1997 16:06:35 PST.
- Date: Mon, 22 Dec 1997 14:35:05 PST
- From: Vern Paxson <vern>
-
- > Thank you very much for your help. I compile and link well with C++ while
- > declaring 'yylex ...' extern, But a little problem remains. I get a
- > segmentation default when executing ( I linked with lfl library) while it
- > works well when using LEX instead of flex. Do you have some ideas about the
- > reason for this ?
-
- The one possible reason for this that comes to mind is if you've defined
- yytext as "extern char yytext[]" (which is what lex uses) instead of
- "extern char *yytext" (which is what flex uses). If it's not that, then
- I'm afraid I don't know what the problem might be.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-68, Next: unnamed-faq-69, Prev: unnamed-faq-67, Up: FAQ
-
-unnamed-faq-68
-==============
-
-
- To: "Bart Niswonger" <NISWONGR@almaden.ibm.com>
- Subject: Re: flex 2.5: c++ scanners & start conditions
- In-reply-to: Your message of Tue, 06 Jan 1998 10:34:21 PST.
- Date: Tue, 06 Jan 1998 19:19:30 PST
- From: Vern Paxson <vern>
-
- > The problem is that when I do this (using %option c++) start
- > conditions seem to not apply.
-
- The BEGIN macro modifies the yy_start variable. For C scanners, this
- is a static with scope visible through the whole file. For C++ scanners,
- it's a member variable, so it only has visible scope within a member
- function. Your lexbegin() routine is not a member function when you
- build a C++ scanner, so it's not modifying the correct yy_start. The
- diagnostic that indicates this is that you found you needed to add
- a declaration of yy_start in order to get your scanner to compile when
- using C++; instead, the correct fix is to make lexbegin() a member
- function (by deriving from yyFlexLexer).
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-69, Next: unnamed-faq-70, Prev: unnamed-faq-68, Up: FAQ
-
-unnamed-faq-69
-==============
-
-
- To: "Boris Zinin" <boris@ippe.rssi.ru>
- Subject: Re: current position in flex buffer
- In-reply-to: Your message of Mon, 12 Jan 1998 18:58:23 PST.
- Date: Mon, 12 Jan 1998 12:03:15 PST
- From: Vern Paxson <vern>
-
- > The problem is how to determine the current position in flex active
- > buffer when a rule is matched....
-
- You will need to keep track of this explicitly, such as by redefining
- YY_USER_ACTION to count the number of characters matched.
-
- The latest flex release, by the way, is 2.5.4, available from ftp.ee.lbl.gov.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-70, Next: unnamed-faq-71, Prev: unnamed-faq-69, Up: FAQ
-
-unnamed-faq-70
-==============
-
-
- To: Bik.Dhaliwal@bis.org
- Subject: Re: Flex question
- In-reply-to: Your message of Mon, 26 Jan 1998 13:05:35 PST.
- Date: Tue, 27 Jan 1998 22:41:52 PST
- From: Vern Paxson <vern>
-
- > That requirement involves knowing
- > the character position at which a particular token was matched
- > in the lexer.
-
- The way you have to do this is by explicitly keeping track of where
- you are in the file, by counting the number of characters scanned
- for each token (available in yyleng). It may prove convenient to
- do this by redefining YY_USER_ACTION, as described in the manual.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-71, Next: unnamed-faq-72, Prev: unnamed-faq-70, Up: FAQ
-
-unnamed-faq-71
-==============
-
-
- To: Vladimir Alexiev <vladimir@cs.ualberta.ca>
- Subject: Re: flex: how to control start condition from parser?
- In-reply-to: Your message of Mon, 26 Jan 1998 05:50:16 PST.
- Date: Tue, 27 Jan 1998 22:45:37 PST
- From: Vern Paxson <vern>
-
- > It seems useful for the parser to be able to tell the lexer about such
- > context dependencies, because then they don't have to be limited to
- > local or sequential context.
-
- One way to do this is to have the parser call a stub routine that's
- included in the scanner's .l file, and consequently that has access ot
- BEGIN. The only ugliness is that the parser can't pass in the state
- it wants, because those aren't visible - but if you don't have many
- such states, then using a different set of names doesn't seem like
- to much of a burden.
-
- While generating a .h file like you suggests is certainly cleaner,
- flex development has come to a virtual stand-still :-(, so a workaround
- like the above is much more pragmatic than waiting for a new feature.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-72, Next: unnamed-faq-73, Prev: unnamed-faq-71, Up: FAQ
-
-unnamed-faq-72
-==============
-
-
- To: Barbara Denny <denny@3com.com>
- Subject: Re: freebsd flex bug?
- In-reply-to: Your message of Fri, 30 Jan 1998 12:00:43 PST.
- Date: Fri, 30 Jan 1998 12:42:32 PST
- From: Vern Paxson <vern>
-
- > lex.yy.c:1996: parse error before `='
-
- This is the key, identifying this error. (It may help to pinpoint
- it by using flex -L, so it doesn't generate #line directives in its
- output.) I will bet you heavy money that you have a start condition
- name that is also a variable name, or something like that; flex spits
- out #define's for each start condition name, mapping them to a number,
- so you can wind up with:
-
- %x foo
- %%
- ...
- %%
- void bar()
- {
- int foo = 3;
- }
-
- and the penultimate will turn into "int 1 = 3" after C preprocessing,
- since flex will put "#define foo 1" in the generated scanner.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-73, Next: unnamed-faq-74, Prev: unnamed-faq-72, Up: FAQ
-
-unnamed-faq-73
-==============
-
-
- To: Maurice Petrie <mpetrie@infoscigroup.com>
- Subject: Re: Lost flex .l file
- In-reply-to: Your message of Mon, 02 Feb 1998 14:10:01 PST.
- Date: Mon, 02 Feb 1998 11:15:12 PST
- From: Vern Paxson <vern>
-
- > I am curious as to
- > whether there is a simple way to backtrack from the generated source to
- > reproduce the lost list of tokens we are searching on.
-
- In theory, it's straight-forward to go from the DFA representation
- back to a regular-expression representation - the two are isomorphic.
- In practice, a huge headache, because you have to unpack all the tables
- back into a single DFA representation, and then write a program to munch
- on that and translate it into an RE.
-
- Sorry for the less-than-happy news ...
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-74, Next: unnamed-faq-75, Prev: unnamed-faq-73, Up: FAQ
-
-unnamed-faq-74
-==============
-
-
- To: jimmey@lexis-nexis.com (Jimmey Todd)
- Subject: Re: Flex performance question
- In-reply-to: Your message of Thu, 19 Feb 1998 11:01:17 PST.
- Date: Thu, 19 Feb 1998 08:48:51 PST
- From: Vern Paxson <vern>
-
- > What I have found, is that the smaller the data chunk, the faster the
- > program executes. This is the opposite of what I expected. Should this be
- > happening this way?
-
- This is exactly what will happen if your input file has embedded NULs.
- From the man page:
-
- A final note: flex is slow when matching NUL's, particularly
- when a token contains multiple NUL's. It's best to write
- rules which match short amounts of text if it's anticipated
- that the text will often include NUL's.
-
- So that's the first thing to look for.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-75, Next: unnamed-faq-76, Prev: unnamed-faq-74, Up: FAQ
-
-unnamed-faq-75
-==============
-
-
- To: jimmey@lexis-nexis.com (Jimmey Todd)
- Subject: Re: Flex performance question
- In-reply-to: Your message of Thu, 19 Feb 1998 11:01:17 PST.
- Date: Thu, 19 Feb 1998 15:42:25 PST
- From: Vern Paxson <vern>
-
- So there are several problems.
-
- First, to go fast, you want to match as much text as possible, which
- your scanners don't in the case that what they're scanning is *not*
- a <RN> tag. So you want a rule like:
-
- [^<]+
-
- Second, C++ scanners are particularly slow if they're interactive,
- which they are by default. Using -B speeds it up by a factor of 3-4
- on my workstation.
-
- Third, C++ scanners that use the istream interface are slow, because
- of how poorly implemented istream's are. I built two versions of
- the following scanner:
-
- %%
- .*\n
- .*
- %%
-
- and the C version inhales a 2.5MB file on my workstation in 0.8 seconds.
- The C++ istream version, using -B, takes 3.8 seconds.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-76, Next: unnamed-faq-77, Prev: unnamed-faq-75, Up: FAQ
-
-unnamed-faq-76
-==============
-
-
- To: "Frescatore, David (CRD, TAD)" <frescatore@exc01crdge.crd.ge.com>
- Subject: Re: FLEX 2.5 & THE YEAR 2000
- In-reply-to: Your message of Wed, 03 Jun 1998 11:26:22 PDT.
- Date: Wed, 03 Jun 1998 10:22:26 PDT
- From: Vern Paxson <vern>
-
- > I am researching the Y2K problem with General Electric R&D
- > and need to know if there are any known issues concerning
- > the above mentioned software and Y2K regardless of version.
-
- There shouldn't be, all it ever does with the date is ask the system
- for it and then print it out.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-77, Next: unnamed-faq-78, Prev: unnamed-faq-76, Up: FAQ
-
-unnamed-faq-77
-==============
-
-
- To: "Hans Dermot Doran" <htd@ibhdoran.com>
- Subject: Re: flex problem
- In-reply-to: Your message of Wed, 15 Jul 1998 21:30:13 PDT.
- Date: Tue, 21 Jul 1998 14:23:34 PDT
- From: Vern Paxson <vern>
-
- > To overcome this, I gets() the stdin into a string and lex the string. The
- > string is lexed OK except that the end of string isn't lexed properly
- > (yy_scan_string()), that is the lexer dosn't recognise the end of string.
-
- Flex doesn't contain mechanisms for recognizing buffer endpoints. But if
- you use fgets instead (which you should anyway, to protect against buffer
- overflows), then the final \n will be preserved in the string, and you can
- scan that in order to find the end of the string.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-78, Next: unnamed-faq-79, Prev: unnamed-faq-77, Up: FAQ
-
-unnamed-faq-78
-==============
-
-
- To: soumen@almaden.ibm.com
- Subject: Re: Flex++ 2.5.3 instance member vs. static member
- In-reply-to: Your message of Mon, 27 Jul 1998 02:10:04 PDT.
- Date: Tue, 28 Jul 1998 01:10:34 PDT
- From: Vern Paxson <vern>
-
- > %{
- > int mylineno = 0;
- > %}
- > ws [ \t]+
- > alpha [A-Za-z]
- > dig [0-9]
- > %%
- >
- > Now you'd expect mylineno to be a member of each instance of class
- > yyFlexLexer, but is this the case? A look at the lex.yy.cc file seems to
- > indicate otherwise; unless I am missing something the declaration of
- > mylineno seems to be outside any class scope.
- >
- > How will this work if I want to run a multi-threaded application with each
- > thread creating a FlexLexer instance?
-
- Derive your own subclass and make mylineno a member variable of it.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-79, Next: unnamed-faq-80, Prev: unnamed-faq-78, Up: FAQ
-
-unnamed-faq-79
-==============
-
-
- To: Adoram Rogel <adoram@hybridge.com>
- Subject: Re: More than 32K states change hangs
- In-reply-to: Your message of Tue, 04 Aug 1998 16:55:39 PDT.
- Date: Tue, 04 Aug 1998 22:28:45 PDT
- From: Vern Paxson <vern>
-
- > Vern Paxson,
- >
- > I followed your advice, posted on Usenet bu you, and emailed to me
- > personally by you, on how to overcome the 32K states limit. I'm running
- > on Linux machines.
- > I took the full source of version 2.5.4 and did the following changes in
- > flexdef.h:
- > #define JAMSTATE -327660
- > #define MAXIMUM_MNS 319990
- > #define BAD_SUBSCRIPT -327670
- > #define MAX_SHORT 327000
- >
- > and compiled.
- > All looked fine, including check and bigcheck, so I installed.
-
- Hmmm, you shouldn't increase MAX_SHORT, though looking through my email
- archives I see that I did indeed recommend doing so. Try setting it back
- to 32700; that should suffice that you no longer need -Ca. If it still
- hangs, then the interesting question is - where?
-
- > Compiling the same hanged program with a out-of-the-box (RedHat 4.2
- > distribution of Linux)
- > flex 2.5.4 binary works.
-
- Since Linux comes with source code, you should diff it against what
- you have to see what problems they missed.
-
- > Should I always compile with the -Ca option now ? even short and simple
- > filters ?
-
- No, definitely not. It's meant to be for those situations where you
- absolutely must squeeze every last cycle out of your scanner.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-80, Next: unnamed-faq-81, Prev: unnamed-faq-79, Up: FAQ
-
-unnamed-faq-80
-==============
-
-
- To: "Schmackpfeffer, Craig" <Craig.Schmackpfeffer@usa.xerox.com>
- Subject: Re: flex output for static code portion
- In-reply-to: Your message of Tue, 11 Aug 1998 11:55:30 PDT.
- Date: Mon, 17 Aug 1998 23:57:42 PDT
- From: Vern Paxson <vern>
-
- > I would like to use flex under the hood to generate a binary file
- > containing the data structures that control the parse.
-
- This has been on the wish-list for a long time. In principle it's
- straight-forward - you redirect mkdata() et al's I/O to another file,
- and modify the skeleton to have a start-up function that slurps these
- into dynamic arrays. The concerns are (1) the scanner generation code
- is hairy and full of corner cases, so it's easy to get surprised when
- going down this path :-( ; and (2) being careful about buffering so
- that when the tables change you make sure the scanner starts in the
- correct state and reading at the right point in the input file.
-
- > I was wondering if you know of anyone who has used flex in this way.
-
- I don't - but it seems like a reasonable project to undertake (unlike
- numerous other flex tweaks :-).
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-81, Next: unnamed-faq-82, Prev: unnamed-faq-80, Up: FAQ
-
-unnamed-faq-81
-==============
-
-
- Received: from 131.173.17.11 (131.173.17.11 [131.173.17.11])
- by ee.lbl.gov (8.9.1/8.9.1) with ESMTP id AAA03838
- for <vern@ee.lbl.gov>; Thu, 20 Aug 1998 00:47:57 -0700 (PDT)
- Received: from hal.cl-ki.uni-osnabrueck.de (hal.cl-ki.Uni-Osnabrueck.DE [131.173.141.2])
- by deimos.rz.uni-osnabrueck.de (8.8.7/8.8.8) with ESMTP id JAA34694
- for <vern@ee.lbl.gov>; Thu, 20 Aug 1998 09:47:55 +0200
- Received: (from georg@localhost) by hal.cl-ki.uni-osnabrueck.de (8.6.12/8.6.12) id JAA34834 for vern@ee.lbl.gov; Thu, 20 Aug 1998 09:47:54 +0200
- From: Georg Rehm <georg@hal.cl-ki.uni-osnabrueck.de>
- Message-Id: <199808200747.JAA34834@hal.cl-ki.uni-osnabrueck.de>
- Subject: "flex scanner push-back overflow"
- To: vern@ee.lbl.gov
- Date: Thu, 20 Aug 1998 09:47:54 +0200 (MEST)
- Reply-To: Georg.Rehm@CL-KI.Uni-Osnabrueck.DE
- X-NoJunk: Do NOT send commercial mail, spam or ads to this address!
- X-URL: http://www.cl-ki.uni-osnabrueck.de/~georg/
- X-Mailer: ELM [version 2.4ME+ PL28 (25)]
- MIME-Version: 1.0
- Content-Type: text/plain; charset=US-ASCII
- Content-Transfer-Encoding: 7bit
-
- Hi Vern,
-
- Yesterday, I encountered a strange problem: I use the macro processor m4
- to include some lengthy lists into a .l file. Following is a flex macro
- definition that causes some serious pain in my neck:
-
- AUTHOR ("A. Boucard / L. Boucard"|"A. Dastarac / M. Levent"|"A.Boucaud / L.Boucaud"|"Abderrahim Lamchichi"|"Achmat Dangor"|"Adeline Toullier"|"Adewale Maja-Pearce"|"Ahmed Ziri"|"Akram Ellyas"|"Alain Bihr"|"Alain Gresh"|"Alain Guillemoles"|"Alain Joxe"|"Alain Morice"|"Alain Renon"|"Alain Zecchini"|"Albert Memmi"|"Alberto Manguel"|"Alex De Waal"|"Alfonso Artico"| [...])
-
- The complete list contains about 10kB. When I try to "flex" this file
- (on a Solaris 2.6 machine, using a modified flex 2.5.4 (I only increased
- some of the predefined values in flexdefs.h) I get the error:
-
- myflex/flex -8 sentag.tmp.l
- flex scanner push-back overflow
-
- When I remove the slashes in the macro definition everything works fine.
- As I understand it, the double quotes escape the slash-character so it
- really means "/" and not "trailing context". Furthermore, I tried to
- escape the slashes with backslashes, but with no use, the same error message
- appeared when flexing the code.
-
- Do you have an idea what's going on here?
-
- Greetings from Germany,
- Georg
- --
- Georg Rehm georg@cl-ki.uni-osnabrueck.de
- Institute for Semantic Information Processing, University of Osnabrueck, FRG
-
-
-File: flex.info, Node: unnamed-faq-82, Next: unnamed-faq-83, Prev: unnamed-faq-81, Up: FAQ
-
-unnamed-faq-82
-==============
-
-
- To: Georg.Rehm@CL-KI.Uni-Osnabrueck.DE
- Subject: Re: "flex scanner push-back overflow"
- In-reply-to: Your message of Thu, 20 Aug 1998 09:47:54 PDT.
- Date: Thu, 20 Aug 1998 07:05:35 PDT
- From: Vern Paxson <vern>
-
- > myflex/flex -8 sentag.tmp.l
- > flex scanner push-back overflow
-
- Flex itself uses a flex scanner. That scanner is running out of buffer
- space when it tries to unput() the humongous macro you've defined. When
- you remove the '/'s, you make it small enough so that it fits in the buffer;
- removing spaces would do the same thing.
-
- The fix is to either rethink how come you're using such a big macro and
- perhaps there's another/better way to do it; or to rebuild flex's own
- scan.c with a larger value for
-
- #define YY_BUF_SIZE 16384
-
- - Vern
-
-
-File: flex.info, Node: unnamed-faq-83, Next: unnamed-faq-84, Prev: unnamed-faq-82, Up: FAQ
-
-unnamed-faq-83
-==============
-
-
- To: Jan Kort <jan@research.techforce.nl>
- Subject: Re: Flex
- In-reply-to: Your message of Fri, 04 Sep 1998 12:18:43 +0200.
- Date: Sat, 05 Sep 1998 00:59:49 PDT
- From: Vern Paxson <vern>
-
- > %%
- >
- > "TEST1\n" { fprintf(stderr, "TEST1\n"); yyless(5); }
- > ^\n { fprintf(stderr, "empty line\n"); }
- > . { }
- > \n { fprintf(stderr, "new line\n"); }
- >
- > %%
- > -- input ---------------------------------------
- > TEST1
- > -- output --------------------------------------
- > TEST1
- > empty line
- > ------------------------------------------------
-
- IMHO, it's not clear whether or not this is in fact a bug. It depends
- on whether you view yyless() as backing up in the input stream, or as
- pushing new characters onto the beginning of the input stream. Flex
- interprets it as the latter (for implementation convenience, I'll admit),
- and so considers the newline as in fact matching at the beginning of a
- line, as after all the last token scanned an entire line and so the
- scanner is now at the beginning of a new line.
-
- I agree that this is counter-intuitive for yyless(), given its
- functional description (it's less so for unput(), depending on whether
- you're unput()'ing new text or scanned text). But I don't plan to
- change it any time soon, as it's a pain to do so. Consequently,
- you do indeed need to use yy_set_bol() and YY_AT_BOL() to tweak
- your scanner into the behavior you desire.
-
- Sorry for the less-than-completely-satisfactory answer.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-84, Next: unnamed-faq-85, Prev: unnamed-faq-83, Up: FAQ
-
-unnamed-faq-84
-==============
-
-
- To: Patrick Krusenotto <krusenot@mac-info-link.de>
- Subject: Re: Problems with restarting flex-2.5.2-generated scanner
- In-reply-to: Your message of Thu, 24 Sep 1998 10:14:07 PDT.
- Date: Thu, 24 Sep 1998 23:28:43 PDT
- From: Vern Paxson <vern>
-
- > I am using flex-2.5.2 and bison 1.25 for Solaris and I am desperately
- > trying to make my scanner restart with a new file after my parser stops
- > with a parse error. When my compiler restarts, the parser always
- > receives the token after the token (in the old file!) that caused the
- > parser error.
-
- I suspect the problem is that your parser has read ahead in order
- to attempt to resolve an ambiguity, and when it's restarted it picks
- up with that token rather than reading a fresh one. If you're using
- yacc, then the special "error" production can sometimes be used to
- consume tokens in an attempt to get the parser into a consistent state.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-85, Next: unnamed-faq-86, Prev: unnamed-faq-84, Up: FAQ
-
-unnamed-faq-85
-==============
-
-
- To: Henric Jungheim <junghelh@pe-nelson.com>
- Subject: Re: flex 2.5.4a
- In-reply-to: Your message of Tue, 27 Oct 1998 16:41:42 PST.
- Date: Tue, 27 Oct 1998 16:50:14 PST
- From: Vern Paxson <vern>
-
- > This brings up a feature request: How about a command line
- > option to specify the filename when reading from stdin? That way one
- > doesn't need to create a temporary file in order to get the "#line"
- > directives to make sense.
-
- Use -o combined with -t (per the man page description of -o).
-
- > P.S., Is there any simple way to use non-blocking IO to parse multiple
- > streams?
-
- Simple, no.
-
- One approach might be to return a magic character on EWOULDBLOCK and
- have a rule
-
- .*<magic-character> // put back .*, eat magic character
-
- This is off the top of my head, not sure it'll work.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-86, Next: unnamed-faq-87, Prev: unnamed-faq-85, Up: FAQ
-
-unnamed-faq-86
-==============
-
-
- To: "Repko, Billy D" <billy.d.repko@intel.com>
- Subject: Re: Compiling scanners
- In-reply-to: Your message of Wed, 13 Jan 1999 10:52:47 PST.
- Date: Thu, 14 Jan 1999 00:25:30 PST
- From: Vern Paxson <vern>
-
- > It appears that maybe it cannot find the lfl library.
-
- The Makefile in the distribution builds it, so you should have it.
- It's exceedingly trivial, just a main() that calls yylex() and
- a yyrap() that always returns 1.
-
- > %%
- > \n ++num_lines; ++num_chars;
- > . ++num_chars;
-
- You can't indent your rules like this - that's where the errors are coming
- from. Flex copies indented text to the output file, it's how you do things
- like
-
- int num_lines_seen = 0;
-
- to declare local variables.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-87, Next: unnamed-faq-88, Prev: unnamed-faq-86, Up: FAQ
-
-unnamed-faq-87
-==============
-
-
- To: Erick Branderhorst <Erick.Branderhorst@asml.nl>
- Subject: Re: flex input buffer
- In-reply-to: Your message of Tue, 09 Feb 1999 13:53:46 PST.
- Date: Tue, 09 Feb 1999 21:03:37 PST
- From: Vern Paxson <vern>
-
- > In the flex.skl file the size of the default input buffers is set. Can you
- > explain why this size is set and why it is such a high number.
-
- It's large to optimize performance when scanning large files. You can
- safely make it a lot lower if needed.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-88, Next: unnamed-faq-90, Prev: unnamed-faq-87, Up: FAQ
-
-unnamed-faq-88
-==============
-
-
- To: "Guido Minnen" <guidomi@cogs.susx.ac.uk>
- Subject: Re: Flex error message
- In-reply-to: Your message of Wed, 24 Feb 1999 15:31:46 PST.
- Date: Thu, 25 Feb 1999 00:11:31 PST
- From: Vern Paxson <vern>
-
- > I'm extending a larger scanner written in Flex and I keep running into
- > problems. More specifically, I get the error message:
- > "flex: input rules are too complicated (>= 32000 NFA states)"
-
- Increase the definitions in flexdef.h for:
-
- #define JAMSTATE -32766 /* marks a reference to the state that always j
- ams */
- #define MAXIMUM_MNS 31999
- #define BAD_SUBSCRIPT -32767
-
- recompile everything, and it should all work.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-90, Next: unnamed-faq-91, Prev: unnamed-faq-88, Up: FAQ
-
-unnamed-faq-90
-==============
-
-
- To: "Dmitriy Goldobin" <gold@ems.chel.su>
- Subject: Re: FLEX trouble
- In-reply-to: Your message of Mon, 31 May 1999 18:44:49 PDT.
- Date: Tue, 01 Jun 1999 00:15:07 PDT
- From: Vern Paxson <vern>
-
- > I have a trouble with FLEX. Why rule "/*".*"*/" work properly,=20
- > but rule "/*"(.|\n)*"*/" don't work ?
-
- The second of these will have to scan the entire input stream (because
- "(.|\n)*" matches an arbitrary amount of any text) in order to see if
- it ends with "*/", terminating the comment. That potentially will overflow
- the input buffer.
-
- > More complex rule "/*"([^*]|(\*/[^/]))*"*/ give an error
- > 'unrecognized rule'.
-
- You can't use the '/' operator inside parentheses. It's not clear
- what "(a/b)*" actually means.
-
- > I now use workaround with state <comment>, but single-rule is
- > better, i think.
-
- Single-rule is nice but will always have the problem of either setting
- restrictions on comments (like not allowing multi-line comments) and/or
- running the risk of consuming the entire input stream, as noted above.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-91, Next: unnamed-faq-92, Prev: unnamed-faq-90, Up: FAQ
-
-unnamed-faq-91
-==============
-
-
- Received: from mc-qout4.whowhere.com (mc-qout4.whowhere.com [209.185.123.18])
- by ee.lbl.gov (8.9.3/8.9.3) with SMTP id IAA05100
- for <vern@ee.lbl.gov>; Tue, 15 Jun 1999 08:56:06 -0700 (PDT)
- Received: from Unknown/Local ([?.?.?.?]) by my-deja.com; Tue Jun 15 08:55:43 1999
- To: vern@ee.lbl.gov
- Date: Tue, 15 Jun 1999 08:55:43 -0700
- From: "Aki Niimura" <neko@my-deja.com>
- Message-ID: <KNONDOHDOBGAEAAA@my-deja.com>
- Mime-Version: 1.0
- Cc:
- X-Sent-Mail: on
- Reply-To:
- X-Mailer: MailCity Service
- Subject: A question on flex C++ scanner
- X-Sender-Ip: 12.72.207.61
- Organization: My Deja Email (http://www.my-deja.com:80)
- Content-Type: text/plain; charset=us-ascii
- Content-Transfer-Encoding: 7bit
-
- Dear Dr. Paxon,
-
- I have been using flex for years.
- It works very well on many projects.
- Most case, I used it to generate a scanner on C language.
- However, one project I needed to generate a scanner
- on C++ lanuage. Thanks to your enhancement, flex did
- the job.
-
- Currently, I'm working on enhancing my previous project.
- I need to deal with multiple input streams (recursive
- inclusion) in this scanner (C++).
- I did similar thing for another scanner (C) as you
- explained in your documentation.
-
- The generated scanner (C++) has necessary methods:
- - switch_to_buffer(struct yy_buffer_state *b)
- - yy_create_buffer(istream *is, int sz)
- - yy_delete_buffer(struct yy_buffer_state *b)
-
- However, I couldn't figure out how to access current
- buffer (yy_current_buffer).
-
- yy_current_buffer is a protected member of yyFlexLexer.
- I can't access it directly.
- Then, I thought yy_create_buffer() with is = 0 might
- return current stream buffer. But it seems not as far
- as I checked the source. (flex 2.5.4)
-
- I went through the Web in addition to Flex documentation.
- However, it hasn't been successful, so far.
-
- It is not my intention to bother you, but, can you
- comment about how to obtain the current stream buffer?
-
- Your response would be highly appreciated.
-
- Best regards,
- Aki Niimura
-
- --== Sent via Deja.com http://www.deja.com/ ==--
- Share what you know. Learn what you don't.
-
-
-File: flex.info, Node: unnamed-faq-92, Next: unnamed-faq-93, Prev: unnamed-faq-91, Up: FAQ
-
-unnamed-faq-92
-==============
-
-
- To: neko@my-deja.com
- Subject: Re: A question on flex C++ scanner
- In-reply-to: Your message of Tue, 15 Jun 1999 08:55:43 PDT.
- Date: Tue, 15 Jun 1999 09:04:24 PDT
- From: Vern Paxson <vern>
-
- > However, I couldn't figure out how to access current
- > buffer (yy_current_buffer).
-
- Derive your own subclass from yyFlexLexer.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-93, Next: unnamed-faq-94, Prev: unnamed-faq-92, Up: FAQ
-
-unnamed-faq-93
-==============
-
-
- To: "Stones, Darren" <Darren.Stones@nectech.co.uk>
- Subject: Re: You're the man to see?
- In-reply-to: Your message of Wed, 23 Jun 1999 11:10:29 PDT.
- Date: Wed, 23 Jun 1999 09:01:40 PDT
- From: Vern Paxson <vern>
-
- > I hope you can help me. I am using Flex and Bison to produce an interpreted
- > language. However all goes well until I try to implement an IF statement or
- > a WHILE. I cannot get this to work as the parser parses all the conditions
- > eg. the TRUE and FALSE conditons to check for a rule match. So I cannot
- > make a decision!!
-
- You need to use the parser to build a parse tree (= abstract syntax trwee),
- and when that's all done you recursively evaluate the tree, binding variables
- to values at that time.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-94, Next: unnamed-faq-95, Prev: unnamed-faq-93, Up: FAQ
-
-unnamed-faq-94
-==============
-
-
- To: Petr Danecek <petr@ics.cas.cz>
- Subject: Re: flex - question
- In-reply-to: Your message of Mon, 28 Jun 1999 19:21:41 PDT.
- Date: Fri, 02 Jul 1999 16:52:13 PDT
- From: Vern Paxson <vern>
-
- > file, it takes an enormous amount of time. It is funny, because the
- > source code has only 12 rules!!! I think it looks like an exponencial
- > growth.
-
- Right, that's the problem - some patterns (those with a lot of
- ambiguity, where yours has because at any given time the scanner can
- be in the middle of all sorts of combinations of the different
- rules) blow up exponentially.
-
- For your rules, there is an easy fix. Change the ".*" that comes fater
- the directory name to "[^ ]*". With that in place, the rules are no
- longer nearly so ambiguous, because then once one of the directories
- has been matched, no other can be matched (since they all require a
- leading blank).
-
- If that's not an acceptable solution, then you can enter a start state
- to pick up the .*\n after each directory is matched.
-
- Also note that for speed, you'll want to add a ".*" rule at the end,
- otherwise rules that don't match any of the patterns will be matched
- very slowly, a character at a time.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-95, Next: unnamed-faq-96, Prev: unnamed-faq-94, Up: FAQ
-
-unnamed-faq-95
-==============
-
-
- To: Tielman Koekemoer <tielman@spi.co.za>
- Subject: Re: Please help.
- In-reply-to: Your message of Thu, 08 Jul 1999 13:20:37 PDT.
- Date: Thu, 08 Jul 1999 08:20:39 PDT
- From: Vern Paxson <vern>
-
- > I was hoping you could help me with my problem.
- >
- > I tried compiling (gnu)flex on a Solaris 2.4 machine
- > but when I ran make (after configure) I got an error.
- >
- > --------------------------------------------------------------
- > gcc -c -I. -I. -g -O parse.c
- > ./flex -t -p ./scan.l >scan.c
- > sh: ./flex: not found
- > *** Error code 1
- > make: Fatal error: Command failed for target `scan.c'
- > -------------------------------------------------------------
- >
- > What's strange to me is that I'm only
- > trying to install flex now. I then edited the Makefile to
- > and changed where it says "FLEX = flex" to "FLEX = lex"
- > ( lex: the native Solaris one ) but then it complains about
- > the "-p" option. Is there any way I can compile flex without
- > using flex or lex?
- >
- > Thanks so much for your time.
-
- You managed to step on the bootstrap sequence, which first copies
- initscan.c to scan.c in order to build flex. Try fetching a fresh
- distribution from ftp.ee.lbl.gov. (Or you can first try removing
- ".bootstrap" and doing a make again.)
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-96, Next: unnamed-faq-97, Prev: unnamed-faq-95, Up: FAQ
-
-unnamed-faq-96
-==============
-
-
- To: Tielman Koekemoer <tielman@spi.co.za>
- Subject: Re: Please help.
- In-reply-to: Your message of Fri, 09 Jul 1999 09:16:14 PDT.
- Date: Fri, 09 Jul 1999 00:27:20 PDT
- From: Vern Paxson <vern>
-
- > First I removed .bootstrap (and ran make) - no luck. I downloaded the
- > software but I still have the same problem. Is there anything else I
- > could try.
-
- Try:
-
- cp initscan.c scan.c
- touch scan.c
- make scan.o
-
- If this last tries to first build scan.c from scan.l using ./flex, then
- your "make" is broken, in which case compile scan.c to scan.o by hand.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-97, Next: unnamed-faq-98, Prev: unnamed-faq-96, Up: FAQ
-
-unnamed-faq-97
-==============
-
-
- To: Sumanth Kamenani <skamenan@crl.nmsu.edu>
- Subject: Re: Error
- In-reply-to: Your message of Mon, 19 Jul 1999 23:08:41 PDT.
- Date: Tue, 20 Jul 1999 00:18:26 PDT
- From: Vern Paxson <vern>
-
- > I am getting a compilation error. The error is given as "unknown symbol- yylex".
-
- The parser relies on calling yylex(), but you're instead using the C++ scanning
- class, so you need to supply a yylex() "glue" function that calls an instance
- scanner of the scanner (e.g., "scanner->yylex()").
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-98, Next: unnamed-faq-99, Prev: unnamed-faq-97, Up: FAQ
-
-unnamed-faq-98
-==============
-
-
- To: daniel@synchrods.synchrods.COM (Daniel Senderowicz)
- Subject: Re: lex
- In-reply-to: Your message of Mon, 22 Nov 1999 11:19:04 PST.
- Date: Tue, 23 Nov 1999 15:54:30 PST
- From: Vern Paxson <vern>
-
- Well, your problem is the
-
- switch (yybgin-yysvec-1) { /* witchcraft */
-
- at the beginning of lex rules. "witchcraft" == "non-portable". It's
- assuming knowledge of the AT&T lex's internal variables.
-
- For flex, you can probably do the equivalent using a switch on YYSTATE.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-99, Next: unnamed-faq-100, Prev: unnamed-faq-98, Up: FAQ
-
-unnamed-faq-99
-==============
-
-
- To: archow@hss.hns.com
- Subject: Re: Regarding distribution of flex and yacc based grammars
- In-reply-to: Your message of Sun, 19 Dec 1999 17:50:24 +0530.
- Date: Wed, 22 Dec 1999 01:56:24 PST
- From: Vern Paxson <vern>
-
- > When we provide the customer with an object code distribution, is it
- > necessary for us to provide source
- > for the generated C files from flex and bison since they are generated by
- > flex and bison ?
-
- For flex, no. I don't know what the current state of this is for bison.
-
- > Also, is there any requrirement for us to neccessarily provide source for
- > the grammar files which are fed into flex and bison ?
-
- Again, for flex, no.
-
- See the file "COPYING" in the flex distribution for the legalese.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-100, Next: unnamed-faq-101, Prev: unnamed-faq-99, Up: FAQ
-
-unnamed-faq-100
-===============
-
-
- To: Martin Gallwey <gallweym@hyperion.moe.ul.ie>
- Subject: Re: Flex, and self referencing rules
- In-reply-to: Your message of Sun, 20 Feb 2000 01:01:21 PST.
- Date: Sat, 19 Feb 2000 18:33:16 PST
- From: Vern Paxson <vern>
-
- > However, I do not use unput anywhere. I do use self-referencing
- > rules like this:
- >
- > UnaryExpr ({UnionExpr})|("-"{UnaryExpr})
-
- You can't do this - flex is *not* a parser like yacc (which does indeed
- allow recursion), it is a scanner that's confined to regular expressions.
-
- Vern
-
-
-File: flex.info, Node: unnamed-faq-101, Next: What is the difference between YYLEX_PARAM and YY_DECL?, Prev: unnamed-faq-100, Up: FAQ
-
-unnamed-faq-101
-===============
-
-
- To: slg3@lehigh.edu (SAMUEL L. GULDEN)
- Subject: Re: Flex problem
- In-reply-to: Your message of Thu, 02 Mar 2000 12:29:04 PST.
- Date: Thu, 02 Mar 2000 23:00:46 PST
- From: Vern Paxson <vern>
-
- If this is exactly your program:
-
- > digit [0-9]
- > digits {digit}+
- > whitespace [ \t\n]+
- >
- > %%
- > "[" { printf("open_brac\n");}
- > "]" { printf("close_brac\n");}
- > "+" { printf("addop\n");}
- > "*" { printf("multop\n");}
- > {digits} { printf("NUMBER = %s\n", yytext);}
- > whitespace ;
-
- then the problem is that the last rule needs to be "{whitespace}" !
-
- Vern
-
-
-File: flex.info, Node: What is the difference between YYLEX_PARAM and YY_DECL?, Next: Why do I get "conflicting types for yylex" error?, Prev: unnamed-faq-101, Up: FAQ
-
-What is the difference between YYLEX_PARAM and YY_DECL?
-=======================================================
-
-YYLEX_PARAM is not a flex symbol. It is for Bison. It tells Bison to
-pass extra params when it calls yylex() from the parser.
-
- YY_DECL is the Flex declaration of yylex. The default is similar to
-this:
-
-
- #define int yy_lex ()
-
-
-File: flex.info, Node: Why do I get "conflicting types for yylex" error?, Next: How do I access the values set in a Flex action from within a Bison action?, Prev: What is the difference between YYLEX_PARAM and YY_DECL?, Up: FAQ
-
-Why do I get "conflicting types for yylex" error?
-=================================================
-
-This is a compiler error regarding a generated Bison parser, not a Flex
-scanner. It means you need a prototype of yylex() in the top of the
-Bison file. Be sure the prototype matches YY_DECL.
-
-
-File: flex.info, Node: How do I access the values set in a Flex action from within a Bison action?, Prev: Why do I get "conflicting types for yylex" error?, Up: FAQ
-
-How do I access the values set in a Flex action from within a Bison action?
-===========================================================================
-
-With $1, $2, $3, etc. These are called "Semantic Values" in the Bison
-manual. See *Note Top: (bison)Top.
-
-
-File: flex.info, Node: Appendices, Next: Indices, Prev: FAQ, Up: Top
-
-Appendix A Appendices
-*********************
-
-* Menu:
-
-* Makefiles and Flex::
-* Bison Bridge::
-* M4 Dependency::
-* Common Patterns::
-
-
-File: flex.info, Node: Makefiles and Flex, Next: Bison Bridge, Prev: Appendices, Up: Appendices
-
-A.1 Makefiles and Flex
-======================
-
-In this appendix, we provide tips for writing Makefiles to build your
-scanners.
-
- In a traditional build environment, we say that the `.c' files are
-the sources, and the `.o' files are the intermediate files. When using
-`flex', however, the `.l' files are the sources, and the generated `.c'
-files (along with the `.o' files) are the intermediate files. This
-requires you to carefully plan your Makefile.
-
- Modern `make' programs understand that `foo.l' is intended to
-generate `lex.yy.c' or `foo.c', and will behave accordingly(1)(2). The
-following Makefile does not explicitly instruct `make' how to build
-`foo.c' from `foo.l'. Instead, it relies on the implicit rules of the
-`make' program to build the intermediate file, `scan.c':
-
-
- # Basic Makefile -- relies on implicit rules
- # Creates "myprogram" from "scan.l" and "myprogram.c"
- #
- LEX=flex
- myprogram: scan.o myprogram.o
- scan.o: scan.l
-
- For simple cases, the above may be sufficient. For other cases, you
-may have to explicitly instruct `make' how to build your scanner. The
-following is an example of a Makefile containing explicit rules:
-
-
- # Basic Makefile -- provides explicit rules
- # Creates "myprogram" from "scan.l" and "myprogram.c"
- #
- LEX=flex
- myprogram: scan.o myprogram.o
- $(CC) -o $@ $(LDFLAGS) $^
-
- myprogram.o: myprogram.c
- $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $^
-
- scan.o: scan.c
- $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $^
-
- scan.c: scan.l
- $(LEX) $(LFLAGS) -o $@ $^
-
- clean:
- $(RM) *.o scan.c
-
- Notice in the above example that `scan.c' is in the `clean' target.
-This is because we consider the file `scan.c' to be an intermediate
-file.
-
- Finally, we provide a realistic example of a `flex' scanner used
-with a `bison' parser(3). There is a tricky problem we have to deal
-with. Since a `flex' scanner will typically include a header file
-(e.g., `y.tab.h') generated by the parser, we need to be sure that the
-header file is generated BEFORE the scanner is compiled. We handle this
-case in the following example:
-
-
- # Makefile example -- scanner and parser.
- # Creates "myprogram" from "scan.l", "parse.y", and "myprogram.c"
- #
- LEX = flex
- YACC = bison -y
- YFLAGS = -d
- objects = scan.o parse.o myprogram.o
-
- myprogram: $(objects)
- scan.o: scan.l parse.c
- parse.o: parse.y
- myprogram.o: myprogram.c
-
- In the above example, notice the line,
-
-
- scan.o: scan.l parse.c
-
- , which lists the file `parse.c' (the generated parser) as a
-dependency of `scan.o'. We want to ensure that the parser is created
-before the scanner is compiled, and the above line seems to do the
-trick. Feel free to experiment with your specific implementation of
-`make'.
-
- For more details on writing Makefiles, see *Note Top: (make)Top.
-
- ---------- Footnotes ----------
-
- (1) GNU `make' and GNU `automake' are two such programs that provide
-implicit rules for flex-generated scanners.
-
- (2) GNU `automake' may generate code to execute flex in
-lex-compatible mode, or to stdout. If this is not what you want, then
-you should provide an explicit rule in your Makefile.am
-
- (3) This example also applies to yacc parsers.
-
-
-File: flex.info, Node: Bison Bridge, Next: M4 Dependency, Prev: Makefiles and Flex, Up: Appendices
-
-A.2 C Scanners with Bison Parsers
-=================================
-
-This section describes the `flex' features useful when integrating
-`flex' with `GNU bison'(1). Skip this section if you are not using
-`bison' with your scanner. Here we discuss only the `flex' half of the
-`flex' and `bison' pair. We do not discuss `bison' in any detail. For
-more information about generating `bison' parsers, see *Note Top:
-(bison)Top.
-
- A compatible `bison' scanner is generated by declaring `%option
-bison-bridge' or by supplying `--bison-bridge' when invoking `flex'
-from the command line. This instructs `flex' that the macro `yylval'
-may be used. The data type for `yylval', `YYSTYPE', is typically
-defined in a header file, included in section 1 of the `flex' input
-file. For a list of functions and macros available, *Note
-bison-functions::.
-
- The declaration of yylex becomes,
-
-
- int yylex ( YYSTYPE * lvalp, yyscan_t scanner );
-
- If `%option bison-locations' is specified, then the declaration
-becomes,
-
-
- int yylex ( YYSTYPE * lvalp, YYLTYPE * llocp, yyscan_t scanner );
-
- Note that the macros `yylval' and `yylloc' evaluate to pointers.
-Support for `yylloc' is optional in `bison', so it is optional in
-`flex' as well. The following is an example of a `flex' scanner that is
-compatible with `bison'.
-
-
- /* Scanner for "C" assignment statements... sort of. */
- %{
- #include "y.tab.h" /* Generated by bison. */
- %}
-
- %option bison-bridge bison-locations
- %
-
- [[:digit:]]+ { yylval->num = atoi(yytext); return NUMBER;}
- [[:alnum:]]+ { yylval->str = strdup(yytext); return STRING;}
- "="|";" { return yytext[0];}
- . {}
- %
-
- As you can see, there really is no magic here. We just use `yylval'
-as we would any other variable. The data type of `yylval' is generated
-by `bison', and included in the file `y.tab.h'. Here is the
-corresponding `bison' parser:
-
-
- /* Parser to convert "C" assignments to lisp. */
- %{
- /* Pass the argument to yyparse through to yylex. */
- #define YYPARSE_PARAM scanner
- #define YYLEX_PARAM scanner
- %}
- %locations
- %pure_parser
- %union {
- int num;
- char* str;
- }
- %token <str> STRING
- %token <num> NUMBER
- %%
- assignment:
- STRING '=' NUMBER ';' {
- printf( "(setf %s %d)", $1, $3 );
- }
- ;
-
- ---------- Footnotes ----------
-
- (1) The features described here are purely optional, and are by no
-means the only way to use flex with bison. We merely provide some glue
-to ease development of your parser-scanner pair.
-
-
-File: flex.info, Node: M4 Dependency, Next: Common Patterns, Prev: Bison Bridge, Up: Appendices
-
-A.3 M4 Dependency
-=================
-
-The macro processor `m4'(1) must be installed wherever flex is
-installed. `flex' invokes `m4', found by searching the directories in
-the `PATH' environment variable. Any code you place in section 1 or in
-the actions will be sent through m4. Please follow these rules to
-protect your code from unwanted `m4' processing.
-
- * Do not use symbols that begin with, `m4_', such as, `m4_define',
- or `m4_include', since those are reserved for `m4' macro names. If
- for some reason you need m4_ as a prefix, use a preprocessor
- #define to get your symbol past m4 unmangled.
-
- * Do not use the strings `[[' or `]]' anywhere in your code. The
- former is not valid in C, except within comments and strings, but
- the latter is valid in code such as `x[y[z]]'. The solution is
- simple. To get the literal string `"]]"', use `"]""]"'. To get the
- array notation `x[y[z]]', use `x[y[z] ]'. Flex will attempt to
- detect these sequences in user code, and escape them. However,
- it's best to avoid this complexity where possible, by removing
- such sequences from your code.
-
-
- `m4' is only required at the time you run `flex'. The generated
-scanner is ordinary C or C++, and does _not_ require `m4'.
-
- ---------- Footnotes ----------
-
- (1) The use of m4 is subject to change in future revisions of flex.
-It is not part of the public API of flex. Do not depend on it.
-
-
-File: flex.info, Node: Common Patterns, Prev: M4 Dependency, Up: Appendices
-
-A.4 Common Patterns
-===================
-
-This appendix provides examples of common regular expressions you might
-use in your scanner.
-
-* Menu:
-
-* Numbers::
-* Identifiers::
-* Quoted Constructs::
-* Addresses::
-
-
-File: flex.info, Node: Numbers, Next: Identifiers, Up: Common Patterns
-
-A.4.1 Numbers
--------------
-
-C99 decimal constant
- `([[:digit:]]{-}[0])[[:digit:]]*'
-
-C99 hexadecimal constant
- `0[xX][[:xdigit:]]+'
-
-C99 octal constant
- `0[0123456]*'
-
-C99 floating point constant
-
- {dseq} ([[:digit:]]+)
- {dseq_opt} ([[:digit:]]*)
- {frac} (({dseq_opt}"."{dseq})|{dseq}".")
- {exp} ([eE][+-]?{dseq})
- {exp_opt} ({exp}?)
- {fsuff} [flFL]
- {fsuff_opt} ({fsuff}?)
- {hpref} (0[xX])
- {hdseq} ([[:xdigit:]]+)
- {hdseq_opt} ([[:xdigit:]]*)
- {hfrac} (({hdseq_opt}"."{hdseq})|({hdseq}"."))
- {bexp} ([pP][+-]?{dseq})
- {dfc} (({frac}{exp_opt}{fsuff_opt})|({dseq}{exp}{fsuff_opt}))
- {hfc} (({hpref}{hfrac}{bexp}{fsuff_opt})|({hpref}{hdseq}{bexp}{fsuff_opt}))
-
- {c99_floating_point_constant} ({dfc}|{hfc})
-
- See C99 section 6.4.4.2 for the gory details.
-
-
-
-File: flex.info, Node: Identifiers, Next: Quoted Constructs, Prev: Numbers, Up: Common Patterns
-
-A.4.2 Identifiers
------------------
-
-C99 Identifier
-
- ucn ((\\u([[:xdigit:]]{4}))|(\\U([[:xdigit:]]{8})))
- nondigit [_[:alpha:]]
- c99_id ([_[:alpha:]]|{ucn})([_[:alnum:]]|{ucn})*
-
- Technically, the above pattern does not encompass all possible C99
- identifiers, since C99 allows for "implementation-defined"
- characters. In practice, C compilers follow the above pattern,
- with the addition of the `$' character.
-
-UTF-8 Encoded Unicode Code Point
-
- [\x09\x0A\x0D\x20-\x7E]|[\xC2-\xDF][\x80-\xBF]|\xE0[\xA0-\xBF][\x80-\xBF]|[\xE1-\xEC\xEE\xEF]([\x80-\xBF]{2})|\xED[\x80-\x9F][\x80-\xBF]|\xF0[\x90-\xBF]([\x80-\xBF]{2})|[\xF1-\xF3]([\x80-\xBF]{3})|\xF4[\x80-\x8F]([\x80-\xBF]{2})
-
-
-
-File: flex.info, Node: Quoted Constructs, Next: Addresses, Prev: Identifiers, Up: Common Patterns
-
-A.4.3 Quoted Constructs
------------------------
-
-C99 String Literal
- `L?\"([^\"\\\n]|(\\['\"?\\abfnrtv])|(\\([0123456]{1,3}))|(\\x[[:xdigit:]]+)|(\\u([[:xdigit:]]{4}))|(\\U([[:xdigit:]]{8})))*\"'
-
-C99 Comment
- `("/*"([^*]|"*"[^/])*"*/")|("/"(\\\n)*"/"[^\n]*)'
-
- Note that in C99, a `//'-style comment may be split across lines,
- and, contrary to popular belief, does not include the trailing
- `\n' character.
-
- A better way to scan `/* */' comments is by line, rather than
- matching possibly huge comments all at once. This will allow you
- to scan comments of unlimited length, as long as line breaks
- appear at sane intervals. This is also more efficient when used
- with automatic line number processing. *Note option-yylineno::.
-
-
- <INITIAL>{
- "/*" BEGIN(COMMENT);
- }
- <COMMENT>{
- "*/" BEGIN(0);
- [^*\n]+ ;
- "*"[^/] ;
- \n ;
- }
-
-
-
-File: flex.info, Node: Addresses, Prev: Quoted Constructs, Up: Common Patterns
-
-A.4.4 Addresses
----------------
-
-IPv4 Address
- `(([[:digit:]]{1,3}"."){3}([[:digit:]]{1,3}))'
-
-IPv6 Address
-
- hex4 ([[:xdigit:]]{1,4})
- hexseq ({hex4}(:{hex4}*))
- hexpart ({hexseq}|({hexseq}::({hexseq}?))|::{hexseq})
- IPv6address ({hexpart}(":"{IPv4address})?)
-
- See RFC2373 for details.
-
-URI
- `(([^:/?#]+):)?("//"([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?'
-
- This pattern is nearly useless, since it allows just about any
- character to appear in a URI, including spaces and control
- characters. See RFC2396 for details.
-
-
-
-File: flex.info, Node: Indices, Prev: Appendices, Up: Top
-
-Indices
-*******
-
-* Menu:
-
-* Concept Index::
-* Index of Functions and Macros::
-* Index of Variables::
-* Index of Data Types::
-* Index of Hooks::
-* Index of Scanner Options::
-
diff --git a/doc/flex.info-2 b/doc/flex.info-2
deleted file mode 100644
index 27cffbdae392..000000000000
--- a/doc/flex.info-2
+++ /dev/null
Binary files differ
diff --git a/doc/mdate-sh b/doc/mdate-sh
deleted file mode 100755
index cd916c0a3400..000000000000
--- a/doc/mdate-sh
+++ /dev/null
@@ -1,201 +0,0 @@
-#!/bin/sh
-# Get modification time of a file or directory and pretty-print it.
-
-scriptversion=2005-06-29.22
-
-# Copyright (C) 1995, 1996, 1997, 2003, 2004, 2005 Free Software
-# Foundation, Inc.
-# written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, June 1995
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software Foundation,
-# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# This file is maintained in Automake, please report
-# bugs to <bug-automake@gnu.org> or send patches to
-# <automake-patches@gnu.org>.
-
-case $1 in
- '')
- echo "$0: No file. Try \`$0 --help' for more information." 1>&2
- exit 1;
- ;;
- -h | --h*)
- cat <<\EOF
-Usage: mdate-sh [--help] [--version] FILE
-
-Pretty-print the modification time of FILE.
-
-Report bugs to <bug-automake@gnu.org>.
-EOF
- exit $?
- ;;
- -v | --v*)
- echo "mdate-sh $scriptversion"
- exit $?
- ;;
-esac
-
-# Prevent date giving response in another language.
-LANG=C
-export LANG
-LC_ALL=C
-export LC_ALL
-LC_TIME=C
-export LC_TIME
-
-# GNU ls changes its time format in response to the TIME_STYLE
-# variable. Since we cannot assume `unset' works, revert this
-# variable to its documented default.
-if test "${TIME_STYLE+set}" = set; then
- TIME_STYLE=posix-long-iso
- export TIME_STYLE
-fi
-
-save_arg1=$1
-
-# Find out how to get the extended ls output of a file or directory.
-if ls -L /dev/null 1>/dev/null 2>&1; then
- ls_command='ls -L -l -d'
-else
- ls_command='ls -l -d'
-fi
-
-# A `ls -l' line looks as follows on OS/2.
-# drwxrwx--- 0 Aug 11 2001 foo
-# This differs from Unix, which adds ownership information.
-# drwxrwx--- 2 root root 4096 Aug 11 2001 foo
-#
-# To find the date, we split the line on spaces and iterate on words
-# until we find a month. This cannot work with files whose owner is a
-# user named `Jan', or `Feb', etc. However, it's unlikely that `/'
-# will be owned by a user whose name is a month. So we first look at
-# the extended ls output of the root directory to decide how many
-# words should be skipped to get the date.
-
-# On HPUX /bin/sh, "set" interprets "-rw-r--r--" as options, so the "x" below.
-set x`ls -l -d /`
-
-# Find which argument is the month.
-month=
-command=
-until test $month
-do
- shift
- # Add another shift to the command.
- command="$command shift;"
- case $1 in
- Jan) month=January; nummonth=1;;
- Feb) month=February; nummonth=2;;
- Mar) month=March; nummonth=3;;
- Apr) month=April; nummonth=4;;
- May) month=May; nummonth=5;;
- Jun) month=June; nummonth=6;;
- Jul) month=July; nummonth=7;;
- Aug) month=August; nummonth=8;;
- Sep) month=September; nummonth=9;;
- Oct) month=October; nummonth=10;;
- Nov) month=November; nummonth=11;;
- Dec) month=December; nummonth=12;;
- esac
-done
-
-# Get the extended ls output of the file or directory.
-set dummy x`eval "$ls_command \"\$save_arg1\""`
-
-# Remove all preceding arguments
-eval $command
-
-# Because of the dummy argument above, month is in $2.
-#
-# On a POSIX system, we should have
-#
-# $# = 5
-# $1 = file size
-# $2 = month
-# $3 = day
-# $4 = year or time
-# $5 = filename
-#
-# On Darwin 7.7.0 and 7.6.0, we have
-#
-# $# = 4
-# $1 = day
-# $2 = month
-# $3 = year or time
-# $4 = filename
-
-# Get the month.
-case $2 in
- Jan) month=January; nummonth=1;;
- Feb) month=February; nummonth=2;;
- Mar) month=March; nummonth=3;;
- Apr) month=April; nummonth=4;;
- May) month=May; nummonth=5;;
- Jun) month=June; nummonth=6;;
- Jul) month=July; nummonth=7;;
- Aug) month=August; nummonth=8;;
- Sep) month=September; nummonth=9;;
- Oct) month=October; nummonth=10;;
- Nov) month=November; nummonth=11;;
- Dec) month=December; nummonth=12;;
-esac
-
-case $3 in
- ???*) day=$1;;
- *) day=$3; shift;;
-esac
-
-# Here we have to deal with the problem that the ls output gives either
-# the time of day or the year.
-case $3 in
- *:*) set `date`; eval year=\$$#
- case $2 in
- Jan) nummonthtod=1;;
- Feb) nummonthtod=2;;
- Mar) nummonthtod=3;;
- Apr) nummonthtod=4;;
- May) nummonthtod=5;;
- Jun) nummonthtod=6;;
- Jul) nummonthtod=7;;
- Aug) nummonthtod=8;;
- Sep) nummonthtod=9;;
- Oct) nummonthtod=10;;
- Nov) nummonthtod=11;;
- Dec) nummonthtod=12;;
- esac
- # For the first six month of the year the time notation can also
- # be used for files modified in the last year.
- if (expr $nummonth \> $nummonthtod) > /dev/null;
- then
- year=`expr $year - 1`
- fi;;
- *) year=$3;;
-esac
-
-# The result.
-echo $day $month $year
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
diff --git a/doc/stamp-vti b/doc/stamp-vti
deleted file mode 100644
index 46b5982bf242..000000000000
--- a/doc/stamp-vti
+++ /dev/null
@@ -1,4 +0,0 @@
-@set UPDATED 10 September 2007
-@set UPDATED-MONTH September 2007
-@set EDITION 2.5.35
-@set VERSION 2.5.35
diff --git a/filter.c b/filter.c
index b0c7bf1edb09..c82f7f8938a1 100644
--- a/filter.c
+++ b/filter.c
@@ -48,6 +48,8 @@ struct filter *filter_create_ext (struct filter *chain, const char *cmd,
/* allocate and initialize new filter */
f = (struct filter *) flex_alloc (sizeof (struct filter));
+ if (!f)
+ flexerror (_("flex_alloc failed (f) in filter_create_ext"));
memset (f, 0, sizeof (*f));
f->filter_func = NULL;
f->extra = NULL;
@@ -67,6 +69,8 @@ struct filter *filter_create_ext (struct filter *chain, const char *cmd,
f->argv =
(const char **) flex_alloc (sizeof (char *) *
(max_args + 1));
+ if (!f->argv)
+ flexerror (_("flex_alloc failed (f->argv) in filter_create_ext"));
f->argv[f->argc++] = cmd;
va_start (ap, cmd);
@@ -104,6 +108,8 @@ struct filter *filter_create_int (struct filter *chain,
/* allocate and initialize new filter */
f = (struct filter *) flex_alloc (sizeof (struct filter));
+ if (!f)
+ flexerror (_("flex_alloc failed in filter_create_int"));
memset (f, 0, sizeof (*f));
f->next = NULL;
f->argc = 0;
@@ -129,6 +135,10 @@ struct filter *filter_create_int (struct filter *chain,
bool filter_apply_chain (struct filter * chain)
{
int pid, pipes[2];
+ int r;
+ const int readsz = 512;
+ char *buf;
+
/* Tricky recursion, since we want to begin the chain
* at the END. Why? Because we need all the forked processes
@@ -145,6 +155,7 @@ bool filter_apply_chain (struct filter * chain)
fflush (stdout);
fflush (stderr);
+
if (pipe (pipes) == -1)
flexerror (_("pipe failed"));
@@ -161,6 +172,7 @@ bool filter_apply_chain (struct filter * chain)
* to sync the stream. This is a Hail Mary situation. It seems to work.
*/
close (pipes[1]);
+clearerr(stdin);
if (dup2 (pipes[0], fileno (stdin)) == -1)
flexfatal (_("dup2(pipes[0],0)"));
close (pipes[0]);
@@ -177,7 +189,8 @@ bool filter_apply_chain (struct filter * chain)
else {
execvp (chain->argv[0],
(char **const) (chain->argv));
- flexfatal (_("exec failed"));
+ lerrsf_fatal ( _("exec of %s failed"),
+ chain->argv[0]);
}
exit (1);
@@ -279,6 +292,8 @@ int filter_tee_header (struct filter *chain)
outfilename ? outfilename : "<stdout>");
buf = (char *) flex_alloc (readsz);
+ if (!buf)
+ flexerror (_("flex_alloc failed in filter_tee_header"));
while (fgets (buf, readsz, stdin)) {
fputs (buf, to_c);
if (write_header)
@@ -296,13 +311,13 @@ int filter_tee_header (struct filter *chain)
fputs ("m4_undefine( [[M4_YY_IN_HEADER]])m4_dnl\n", to_h);
fflush (to_h);
- if (ferror (to_h))
- lerrsf (_("error writing output file %s"),
- (char *) chain->extra);
+ if (ferror (to_h))
+ lerrsf (_("error writing output file %s"),
+ (char *) chain->extra);
- else if (fclose (to_h))
- lerrsf (_("error closing output file %s"),
- (char *) chain->extra);
+ else if (fclose (to_h))
+ lerrsf (_("error closing output file %s"),
+ (char *) chain->extra);
}
fflush (to_c);
@@ -338,6 +353,8 @@ int filter_fix_linedirs (struct filter *chain)
return 0;
buf = (char *) flex_alloc (readsz);
+ if (!buf)
+ flexerror (_("flex_alloc failed in filter_fix_linedirs"));
while (fgets (buf, readsz, stdin)) {
@@ -345,7 +362,7 @@ int filter_fix_linedirs (struct filter *chain)
/* Check for #line directive. */
if (buf[0] == '#'
- && regexec (&regex_linedir, buf, 3, m, 0) == 0) {
+ && regexec (&regex_linedir, buf, 3, m, 0) == 0) {
int num;
char *fname;
diff --git a/flex.skl b/flex.skl
index 6ebf2fd3dc2d..01d8204348d2 100644
--- a/flex.skl
+++ b/flex.skl
@@ -218,6 +218,7 @@ m4preproc_include(`flexint.h')
#include <iostream>
#include <errno.h>
#include <cstdlib>
+#include <cstdio>
#include <cstring>
/* end standard C++ headers. */
%endif
@@ -288,6 +289,8 @@ typedef void* yyscan_t;
%# Declare yyguts variable
m4_define( [[M4_YY_DECL_GUTS_VAR]], [[struct yyguts_t * yyg = (struct yyguts_t*)yyscanner]])
+%# Perform a noop access on yyguts to prevent unused variable complains
+m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[(void)yyg]])
%# For use wherever a Global is accessed or assigned.
m4_define( [[YY_G]], [[yyg->$1]])
@@ -345,6 +348,7 @@ m4_define( [[M4_YY_INCR_LINENO]],
%# Define these macros to be no-ops.
m4_define( [[M4_YY_DECL_GUTS_VAR]], [[m4_dnl]])
+m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[m4_dnl]])
m4_define( [[YY_G]], [[($1)]])
m4_define( [[M4_YY_PROTO_LAST_ARG]])
m4_define( [[M4_YY_PROTO_ONLY_ARG]], [[void]])
@@ -459,8 +463,13 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
typedef struct yy_buffer_state *YY_BUFFER_STATE;
#endif
+#ifndef YY_TYPEDEF_YY_SIZE_T
+#define YY_TYPEDEF_YY_SIZE_T
+typedef size_t yy_size_t;
+#endif
+
%if-not-reentrant
-extern int yyleng;
+extern yy_size_t yyleng;
%endif
%if-c-only
@@ -522,11 +531,6 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
#define unput(c) yyunput( c, YY_G(yytext_ptr) M4_YY_CALL_LAST_ARG )
]])
-#ifndef YY_TYPEDEF_YY_SIZE_T
-#define YY_TYPEDEF_YY_SIZE_T
-typedef size_t yy_size_t;
-#endif
-
#ifndef YY_STRUCT_YY_BUFFER_STATE
#define YY_STRUCT_YY_BUFFER_STATE
struct yy_buffer_state
@@ -551,7 +555,7 @@ struct yy_buffer_state
/* Number of characters read into yy_ch_buf, not including EOB
* characters.
*/
- int yy_n_chars;
+ yy_size_t yy_n_chars;
/* Whether we "own" the buffer - i.e., we know we created it,
* and can realloc() it to grow it, and should free() it to
@@ -640,8 +644,8 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
%not-for-header
/* yy_hold_char holds the character lost when yytext is formed. */
static char yy_hold_char;
-static int yy_n_chars; /* number of characters read into yy_ch_buf */
-int yyleng;
+static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */
+yy_size_t yyleng;
/* Points to current character in buffer. */
static char *yy_c_buf_p = (char *) 0;
@@ -677,7 +681,7 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
YY_BUFFER_STATE yy_scan_buffer M4_YY_PARAMS( char *base, yy_size_t size M4_YY_PROTO_LAST_ARG );
YY_BUFFER_STATE yy_scan_string M4_YY_PARAMS( yyconst char *yy_str M4_YY_PROTO_LAST_ARG );
-YY_BUFFER_STATE yy_scan_bytes M4_YY_PARAMS( yyconst char *bytes, int len M4_YY_PROTO_LAST_ARG );
+YY_BUFFER_STATE yy_scan_bytes M4_YY_PARAMS( yyconst char *bytes, yy_size_t len M4_YY_PROTO_LAST_ARG );
%endif
@@ -803,8 +807,8 @@ struct yyguts_t
size_t yy_buffer_stack_max; /**< capacity of stack. */
YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */
char yy_hold_char;
- int yy_n_chars;
- int yyleng_r;
+ yy_size_t yy_n_chars;
+ yy_size_t yyleng_r;
char *yy_c_buf_p;
int yy_init;
int yy_start;
@@ -941,7 +945,7 @@ void yyset_out M4_YY_PARAMS( FILE * out_str M4_YY_PROTO_LAST_ARG );
m4_ifdef( [[M4_YY_NO_GET_LENG]],,
[[
-int yyget_leng M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+yy_size_t yyget_leng M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_TEXT]],,
@@ -959,6 +963,22 @@ m4_ifdef( [[M4_YY_NO_SET_LINENO]],,
void yyset_lineno M4_YY_PARAMS( int line_number M4_YY_PROTO_LAST_ARG );
]])
+m4_ifdef( [[M4_YY_REENTRANT]],
+[[
+m4_ifdef( [[M4_YY_NO_GET_COLUMN]],,
+[[
+int yyget_column M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+]])
+]])
+
+m4_ifdef( [[M4_YY_REENTRANT]],
+[[
+m4_ifdef( [[M4_YY_NO_SET_COLUMN]],,
+[[
+void yyset_column M4_YY_PARAMS( int column_no M4_YY_PROTO_LAST_ARG );
+]])
+]])
+
%if-bison-bridge
m4_ifdef( [[M4_YY_NO_GET_LVAL]],,
[[
@@ -1074,7 +1094,7 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
/* This used to be an fputs(), but since the string might contain NUL's,
* we now use fwrite().
*/
-#define ECHO fwrite( yytext, yyleng, 1, yyout )
+#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
%endif
%if-c++-only C++ definition
#define ECHO LexerOutput( yytext, yyleng )
@@ -1629,7 +1649,7 @@ int yyFlexLexer::yy_get_next_buffer()
else
{
- int num_to_read =
+ yy_size_t num_to_read =
YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
while ( num_to_read <= 0 )
@@ -1641,14 +1661,14 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
]],
[[
/* just a shorter name for the current buffer */
- YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
+ YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
int yy_c_buf_p_offset =
(int) (YY_G(yy_c_buf_p) - b->yy_ch_buf);
if ( b->yy_is_our_buffer )
{
- int new_size = b->yy_buf_size * 2;
+ yy_size_t new_size = b->yy_buf_size * 2;
if ( new_size <= 0 )
b->yy_buf_size += b->yy_buf_size / 8;
@@ -1680,7 +1700,7 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
/* Read in more data. */
YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
- YY_G(yy_n_chars), (size_t) num_to_read );
+ YY_G(yy_n_chars), num_to_read );
YY_CURRENT_BUFFER_LVALUE->yy_n_chars = YY_G(yy_n_chars);
}
@@ -1764,6 +1784,7 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
M4_YY_DECL_GUTS_VAR(); /* This var may be unused depending upon options. */
%% [17.0] code to find the next state, and perhaps do backing up, goes here
+ M4_YY_NOOP_GUTS_VAR();
return yy_is_jam ? 0 : yy_current_state;
}
@@ -1788,7 +1809,7 @@ m4_ifdef( [[M4_YY_NO_UNPUT]],,
if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
{ /* need to shift things up to make room */
/* +2 for EOB chars. */
- register int number_to_move = YY_G(yy_n_chars) + 2;
+ register yy_size_t number_to_move = YY_G(yy_n_chars) + 2;
register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
register char *source =
@@ -1854,7 +1875,7 @@ m4_ifdef( [[M4_YY_USE_LINENO]],
else
{ /* need more input */
- int offset = YY_G(yy_c_buf_p) - YY_G(yytext_ptr);
+ yy_size_t offset = YY_G(yy_c_buf_p) - YY_G(yytext_ptr);
++YY_G(yy_c_buf_p);
switch ( yy_get_next_buffer( M4_YY_CALL_ONLY_ARG ) )
@@ -2050,25 +2071,6 @@ static void yy_load_buffer_state YYFARGS0(void)
}
-%if-c-only
-m4_ifdef( [[M4_YY_ALWAYS_INTERACTIVE]],,
-[[
- m4_ifdef( [[M4_YY_NEVER_INTERACTIVE]],,
- [[
-#ifndef __cplusplus
-extern int isatty M4_YY_PARAMS( int );
-#endif /* __cplusplus */
- ]])
-]])
-%endif
-
-%if-c++-only
-m4_ifdef( [[M4_YY_NEVER_INTERACTIVE]],,
-[[
-extern "C" int isatty M4_YY_PARAMS( int );
-]])
-%endif
-
/* Initializes or reinitializes a buffer.
* This function is sometimes called more than once on the same buffer,
* such as during a yyrestart() or at EOF.
@@ -2233,7 +2235,7 @@ static void yyensure_buffer_stack YYFARGS0(void)
void yyFlexLexer::yyensure_buffer_stack(void)
%endif
{
- int num_to_alloc;
+ yy_size_t num_to_alloc;
M4_YY_DECL_GUTS_VAR();
if (!YY_G(yy_buffer_stack)) {
@@ -2348,12 +2350,12 @@ m4_ifdef( [[M4_YY_NO_SCAN_BYTES]],,
%if-c-only
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
* scan from a @e copy of @a bytes.
- * @param bytes the byte buffer to scan
- * @param len the number of bytes in the buffer pointed to by @a bytes.
+ * @param yybytes the byte buffer to scan
+ * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
* M4_YY_DOC_PARAM
* @return the newly allocated buffer state object.
*/
-YY_BUFFER_STATE yy_scan_bytes YYFARGS2( yyconst char *,yybytes, int ,_yybytes_len)
+YY_BUFFER_STATE yy_scan_bytes YYFARGS2( yyconst char *,yybytes, yy_size_t ,_yybytes_len)
{
YY_BUFFER_STATE b;
char *buf;
@@ -2579,7 +2581,7 @@ m4_ifdef( [[M4_YY_NO_GET_LENG]],,
/** Get the length of the current token.
* M4_YY_DOC_PARAM
*/
-int yyget_leng YYFARGS0(void)
+yy_size_t yyget_leng YYFARGS0(void)
{
M4_YY_DECL_GUTS_VAR();
return yyleng;
@@ -2627,7 +2629,7 @@ void yyset_lineno YYFARGS1( int ,line_number)
[[
/* lineno is only valid if an input buffer exists. */
if (! YY_CURRENT_BUFFER )
- yy_fatal_error( "yyset_lineno called with no buffer" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "yyset_lineno called with no buffer" );
]])
yylineno = line_number;
}
@@ -2649,7 +2651,7 @@ void yyset_column YYFARGS1( int , column_no)
[[
/* column is only valid if an input buffer exists. */
if (! YY_CURRENT_BUFFER )
- yy_fatal_error( "yyset_column called with no buffer" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "yyset_column called with no buffer" );
]])
yycolumn = column_no;
}
@@ -3044,7 +3046,7 @@ static int yytbl_hdr_read YYFARGS2(struct yytbl_hdr *, th, struct yytbl_reader *
return -1;
if (th->th_magic != YYTBL_MAGIC){
- yy_fatal_error("bad magic number" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "bad magic number" ); /* TODO: not fatal. */
return -1;
}
@@ -3055,7 +3057,7 @@ static int yytbl_hdr_read YYFARGS2(struct yytbl_hdr *, th, struct yytbl_reader *
/* Sanity check on header size. Greater than 1k suggests some funny business. */
if (th->th_hsize < 16 || th->th_hsize > 1024){
- yy_fatal_error("insane header size detected" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "insane header size detected" ); /* TODO: not fatal. */
return -1;
}
@@ -3120,7 +3122,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
transdmap = yytbl_dmap_lookup (dmap, YYTD_ID_TRANSITION M4_YY_CALL_LAST_ARG);
if ((dmap = yytbl_dmap_lookup (dmap, td.td_id M4_YY_CALL_LAST_ARG)) == NULL){
- yy_fatal_error("table id not found in map." /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "table id not found in map." ); /* TODO: not fatal. */
return -1;
}
@@ -3187,7 +3189,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
t32 = t8;
break;
default:
- yy_fatal_error("invalid td_flags" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "invalid td_flags" ); /* TODO: not fatal. */
return -1;
}
}
@@ -3207,26 +3209,26 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
case sizeof (flex_int32_t):
if (M4_YY_TABLES_VERIFY){
if( ((flex_int32_t *) v)[0] != (flex_int32_t) t32)
- yy_fatal_error("tables verification failed at YYTD_STRUCT flex_int32_t" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "tables verification failed at YYTD_STRUCT flex_int32_t" );
}else
((flex_int32_t *) v)[0] = (flex_int32_t) t32;
break;
case sizeof (flex_int16_t):
if (M4_YY_TABLES_VERIFY ){
if(((flex_int16_t *) v)[0] != (flex_int16_t) t32)
- yy_fatal_error("tables verification failed at YYTD_STRUCT flex_int16_t" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "tables verification failed at YYTD_STRUCT flex_int16_t" );
}else
((flex_int16_t *) v)[0] = (flex_int16_t) t32;
break;
case sizeof(flex_int8_t):
if (M4_YY_TABLES_VERIFY ){
if( ((flex_int8_t *) v)[0] != (flex_int8_t) t32)
- yy_fatal_error("tables verification failed at YYTD_STRUCT flex_int8_t" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "tables verification failed at YYTD_STRUCT flex_int8_t" );
}else
((flex_int8_t *) v)[0] = (flex_int8_t) t32;
break;
default:
- yy_fatal_error("invalid dmap->dm_sz for struct" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "invalid dmap->dm_sz for struct" ); /* TODO: not fatal. */
return -1;
}
@@ -3240,7 +3242,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
if (!transdmap){
- yy_fatal_error("transition table not found" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "transition table not found" ); /* TODO: not fatal. */
return -1;
}
@@ -3251,7 +3253,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
if(M4_YY_TABLES_VERIFY ){
if( ((struct yy_trans_info **) p)[0] != v)
- yy_fatal_error("tables verification failed at YYTD_PTRANS" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "tables verification failed at YYTD_PTRANS" );
}else
((struct yy_trans_info **) p)[0] = v;
@@ -3264,7 +3266,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
case sizeof (flex_int32_t):
if(M4_YY_TABLES_VERIFY ){
if( ((flex_int32_t *) p)[0] != (flex_int32_t) t32)
- yy_fatal_error("tables verification failed at flex_int32_t" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "tables verification failed at flex_int32_t" );
}else
((flex_int32_t *) p)[0] = (flex_int32_t) t32;
p = ((flex_int32_t *) p) + 1;
@@ -3272,7 +3274,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
case sizeof (flex_int16_t):
if(M4_YY_TABLES_VERIFY ){
if( ((flex_int16_t *) p)[0] != (flex_int16_t) t32)
- yy_fatal_error("tables verification failed at flex_int16_t" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "tables verification failed at flex_int16_t" );
}else
((flex_int16_t *) p)[0] = (flex_int16_t) t32;
p = ((flex_int16_t *) p) + 1;
@@ -3280,13 +3282,13 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
case sizeof (flex_int8_t):
if(M4_YY_TABLES_VERIFY ){
if( ((flex_int8_t *) p)[0] != (flex_int8_t) t32)
- yy_fatal_error("tables verification failed at flex_int8_t" M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "tables verification failed at flex_int8_t" );
}else
((flex_int8_t *) p)[0] = (flex_int8_t) t32;
p = ((flex_int8_t *) p) + 1;
break;
default:
- yy_fatal_error("invalid dmap->dm_sz for plain int" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);
+ YY_FATAL_ERROR( "invalid dmap->dm_sz for plain int" ); /* TODO: not fatal. */
return -1;
}
}
diff --git a/flexdef.h b/flexdef.h
index d038952d44ea..0e81410d260e 100644
--- a/flexdef.h
+++ b/flexdef.h
@@ -91,7 +91,9 @@ char *alloca ();
#define true 1
#define false 0
#endif
+#ifdef HAVE_REGEX_H
#include <regex.h>
+#endif
#include "flexint.h"
/* We use gettext. So, when we write strings which should be translated, we mark them with _() */
@@ -414,7 +416,6 @@ extern int yymore_really_used, reject_really_used;
* dataline - number of contiguous lines of data in current data
* statement. Used to generate readable -f output
* linenum - current input line number
- * out_linenum - current output line number
* skelfile - the skeleton file
* skel - compiled-in skeleton array
* skel_ind - index into "skel" array, if skelfile is nil
@@ -442,7 +443,7 @@ extern int yymore_really_used, reject_really_used;
* to "action_array"
*/
-extern int datapos, dataline, linenum, out_linenum;
+extern int datapos, dataline, linenum;
extern FILE *skelfile, *yyin, *backing_up_file;
extern const char *skel[];
extern int skel_ind;
@@ -847,8 +848,8 @@ extern int all_lower PROTO ((register char *));
/* True if a string is all upper case. */
extern int all_upper PROTO ((register char *));
-/* Bubble sort an integer array. */
-extern void bubble PROTO ((int[], int));
+/* Compare two integers for use by qsort. */
+extern int intcmp PROTO ((const void *, const void *));
/* Check a character to make sure it's in the expected range. */
extern void check_char PROTO ((int c));
@@ -862,8 +863,8 @@ extern char *copy_string PROTO ((register const char *));
/* Returns a dynamically allocated copy of a (potentially) unsigned string. */
extern Char *copy_unsigned_string PROTO ((register Char *));
-/* Shell sort a character array. */
-extern void cshell PROTO ((Char[], int, int));
+/* Compare two characters for use by qsort with '\0' sorting last. */
+extern int cclcmp PROTO ((const void *, const void *));
/* Finish up a block of data declarations. */
extern void dataend PROTO ((void));
@@ -937,7 +938,6 @@ extern void out PROTO ((const char *));
extern void out_dec PROTO ((const char *, int));
extern void out_dec2 PROTO ((const char *, int, int));
extern void out_hex PROTO ((const char *, unsigned int));
-extern void out_line_count PROTO ((const char *));
extern void out_str PROTO ((const char *, const char *));
extern void out_str3
PROTO ((const char *, const char *, const char *, const char *));
diff --git a/flexint.h b/flexint.h
index 60e91275e31d..f9fa80cb08c0 100644
--- a/flexint.h
+++ b/flexint.h
@@ -28,7 +28,6 @@ typedef int flex_int32_t;
typedef unsigned char flex_uint8_t;
typedef unsigned short int flex_uint16_t;
typedef unsigned int flex_uint32_t;
-#endif /* ! C99 */
/* Limits of integral types. */
#ifndef INT8_MIN
@@ -59,5 +58,6 @@ typedef unsigned int flex_uint32_t;
#define UINT32_MAX (4294967295U)
#endif
+#endif /* ! C99 */
#endif /* ! FLEXINT_H */
diff --git a/gen.c b/gen.c
index 848e2c586ce5..5a5daef95758 100644
--- a/gen.c
+++ b/gen.c
@@ -1890,7 +1890,7 @@ void make_tables ()
outn ("\tif ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \\");
outn ("\t\t{ \\");
outn ("\t\tint c = '*'; \\");
- outn ("\t\tint n; \\");
+ outn ("\t\tsize_t n; \\");
outn ("\t\tfor ( n = 0; n < max_size && \\");
outn ("\t\t\t (c = getc( yyin )) != EOF && c != '\\n'; ++n ) \\");
outn ("\t\t\tbuf[n] = (char) c; \\");
diff --git a/install-sh b/install-sh
index 4d4a9519eaf8..6781b987bdbc 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2005-05-14.22
+scriptversion=2009-04-28.21; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@@ -39,38 +39,68 @@ scriptversion=2005-05-14.22
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
-# from scratch. It can only install one file at a time, a restriction
-# shared with many OS's install programs.
+# from scratch.
+
+nl='
+'
+IFS=" "" $nl"
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit="${DOITPROG-}"
+doit=${DOITPROG-}
+if test -z "$doit"; then
+ doit_exec=exec
+else
+ doit_exec=$doit
+fi
-# put in absolute paths if you don't have them in your path; or use env. vars.
+# Put in absolute file names if you don't have them in your path;
+# or use environment vars.
+
+chgrpprog=${CHGRPPROG-chgrp}
+chmodprog=${CHMODPROG-chmod}
+chownprog=${CHOWNPROG-chown}
+cmpprog=${CMPPROG-cmp}
+cpprog=${CPPROG-cp}
+mkdirprog=${MKDIRPROG-mkdir}
+mvprog=${MVPROG-mv}
+rmprog=${RMPROG-rm}
+stripprog=${STRIPPROG-strip}
+
+posix_glob='?'
+initialize_posix_glob='
+ test "$posix_glob" != "?" || {
+ if (set -f) 2>/dev/null; then
+ posix_glob=
+ else
+ posix_glob=:
+ fi
+ }
+'
-mvprog="${MVPROG-mv}"
-cpprog="${CPPROG-cp}"
-chmodprog="${CHMODPROG-chmod}"
-chownprog="${CHOWNPROG-chown}"
-chgrpprog="${CHGRPPROG-chgrp}"
-stripprog="${STRIPPROG-strip}"
-rmprog="${RMPROG-rm}"
-mkdirprog="${MKDIRPROG-mkdir}"
+posix_mkdir=
+
+# Desired mode of installed file.
+mode=0755
-chmodcmd="$chmodprog 0755"
-chowncmd=
chgrpcmd=
-stripcmd=
+chmodcmd=$chmodprog
+chowncmd=
+mvcmd=$mvprog
rmcmd="$rmprog -f"
-mvcmd="$mvprog"
+stripcmd=
+
src=
dst=
dir_arg=
-dstarg=
+dst_arg=
+
+copy_on_change=false
no_target_directory=
-usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+usage="\
+Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
or: $0 [OPTION]... SRCFILES... DIRECTORY
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
or: $0 [OPTION]... -d DIRECTORIES...
@@ -80,81 +110,86 @@ In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
In the 4th, create DIRECTORIES.
Options:
--c (ignored)
--d create directories instead of installing files.
--g GROUP $chgrpprog installed files to GROUP.
--m MODE $chmodprog installed files to MODE.
--o USER $chownprog installed files to USER.
--s $stripprog installed files.
--t DIRECTORY install into DIRECTORY.
--T report an error if DSTFILE is a directory.
---help display this help and exit.
---version display version info and exit.
+ --help display this help and exit.
+ --version display version info and exit.
+
+ -c (ignored)
+ -C install only if different (preserve the last data modification time)
+ -d create directories instead of installing files.
+ -g GROUP $chgrpprog installed files to GROUP.
+ -m MODE $chmodprog installed files to MODE.
+ -o USER $chownprog installed files to USER.
+ -s $stripprog installed files.
+ -t DIRECTORY install into DIRECTORY.
+ -T report an error if DSTFILE is a directory.
Environment variables override the default commands:
- CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+ CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
+ RMPROG STRIPPROG
"
-while test -n "$1"; do
+while test $# -ne 0; do
case $1 in
- -c) shift
- continue;;
+ -c) ;;
+
+ -C) copy_on_change=true;;
- -d) dir_arg=true
- shift
- continue;;
+ -d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
- shift
- shift
- continue;;
+ shift;;
--help) echo "$usage"; exit $?;;
- -m) chmodcmd="$chmodprog $2"
- shift
- shift
- continue;;
+ -m) mode=$2
+ case $mode in
+ *' '* | *' '* | *'
+'* | *'*'* | *'?'* | *'['*)
+ echo "$0: invalid mode: $mode" >&2
+ exit 1;;
+ esac
+ shift;;
-o) chowncmd="$chownprog $2"
- shift
- shift
- continue;;
+ shift;;
- -s) stripcmd=$stripprog
- shift
- continue;;
+ -s) stripcmd=$stripprog;;
- -t) dstarg=$2
- shift
- shift
- continue;;
+ -t) dst_arg=$2
+ shift;;
- -T) no_target_directory=true
- shift
- continue;;
+ -T) no_target_directory=true;;
--version) echo "$0 $scriptversion"; exit $?;;
- *) # When -d is used, all remaining arguments are directories to create.
- # When -t is used, the destination is already specified.
- test -n "$dir_arg$dstarg" && break
- # Otherwise, the last argument is the destination. Remove it from $@.
- for arg
- do
- if test -n "$dstarg"; then
- # $@ is not empty: it contains at least $arg.
- set fnord "$@" "$dstarg"
- shift # fnord
- fi
- shift # arg
- dstarg=$arg
- done
+ --) shift
break;;
+
+ -*) echo "$0: invalid option: $1" >&2
+ exit 1;;
+
+ *) break;;
esac
+ shift
done
-if test -z "$1"; then
+if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
+ # When -d is used, all remaining arguments are directories to create.
+ # When -t is used, the destination is already specified.
+ # Otherwise, the last argument is the destination. Remove it from $@.
+ for arg
+ do
+ if test -n "$dst_arg"; then
+ # $@ is not empty: it contains at least $arg.
+ set fnord "$@" "$dst_arg"
+ shift # fnord
+ fi
+ shift # arg
+ dst_arg=$arg
+ done
+fi
+
+if test $# -eq 0; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
@@ -164,24 +199,47 @@ if test -z "$1"; then
exit 0
fi
+if test -z "$dir_arg"; then
+ trap '(exit $?); exit' 1 2 13 15
+
+ # Set umask so as not to create temps with too-generous modes.
+ # However, 'strip' requires both read and write access to temps.
+ case $mode in
+ # Optimize common cases.
+ *644) cp_umask=133;;
+ *755) cp_umask=22;;
+
+ *[0-7])
+ if test -z "$stripcmd"; then
+ u_plus_rw=
+ else
+ u_plus_rw='% 200'
+ fi
+ cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
+ *)
+ if test -z "$stripcmd"; then
+ u_plus_rw=
+ else
+ u_plus_rw=,u+rw
+ fi
+ cp_umask=$mode$u_plus_rw;;
+ esac
+fi
+
for src
do
# Protect names starting with `-'.
case $src in
- -*) src=./$src ;;
+ -*) src=./$src;;
esac
if test -n "$dir_arg"; then
dst=$src
- src=
-
- if test -d "$dst"; then
- mkdircmd=:
- chmodcmd=
- else
- mkdircmd=$mkdirprog
- fi
+ dstdir=$dst
+ test -d "$dstdir"
+ dstdir_status=$?
else
+
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
@@ -190,71 +248,199 @@ do
exit 1
fi
- if test -z "$dstarg"; then
+ if test -z "$dst_arg"; then
echo "$0: no destination specified." >&2
exit 1
fi
- dst=$dstarg
+ dst=$dst_arg
# Protect names starting with `-'.
case $dst in
- -*) dst=./$dst ;;
+ -*) dst=./$dst;;
esac
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
if test -n "$no_target_directory"; then
- echo "$0: $dstarg: Is a directory" >&2
+ echo "$0: $dst_arg: Is a directory" >&2
exit 1
fi
- dst=$dst/`basename "$src"`
+ dstdir=$dst
+ dst=$dstdir/`basename "$src"`
+ dstdir_status=0
+ else
+ # Prefer dirname, but fall back on a substitute if dirname fails.
+ dstdir=`
+ (dirname "$dst") 2>/dev/null ||
+ expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$dst" : 'X\(//\)[^/]' \| \
+ X"$dst" : 'X\(//\)$' \| \
+ X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
+ echo X"$dst" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'
+ `
+
+ test -d "$dstdir"
+ dstdir_status=$?
fi
fi
- # This sed command emulates the dirname command.
- dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
+ obsolete_mkdir_used=false
+
+ if test $dstdir_status != 0; then
+ case $posix_mkdir in
+ '')
+ # Create intermediate dirs using mode 755 as modified by the umask.
+ # This is like FreeBSD 'install' as of 1997-10-28.
+ umask=`umask`
+ case $stripcmd.$umask in
+ # Optimize common cases.
+ *[2367][2367]) mkdir_umask=$umask;;
+ .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+ *[0-7])
+ mkdir_umask=`expr $umask + 22 \
+ - $umask % 100 % 40 + $umask % 20 \
+ - $umask % 10 % 4 + $umask % 2
+ `;;
+ *) mkdir_umask=$umask,go-w;;
+ esac
+
+ # With -d, create the new directory with the user-specified mode.
+ # Otherwise, rely on $mkdir_umask.
+ if test -n "$dir_arg"; then
+ mkdir_mode=-m$mode
+ else
+ mkdir_mode=
+ fi
+
+ posix_mkdir=false
+ case $umask in
+ *[123567][0-7][0-7])
+ # POSIX mkdir -p sets u+wx bits regardless of umask, which
+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+ ;;
+ *)
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+ if (umask $mkdir_umask &&
+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writeable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+ ls_ld_tmpdir=`ls -ld "$tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+ $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+ ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+ rmdir "$tmpdir/d" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+ rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
+ esac
- # Make sure that the destination directory exists.
+ if
+ $posix_mkdir && (
+ umask $mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+ )
+ then :
+ else
- # Skip lots of stat calls in the usual case.
- if test ! -d "$dstdir"; then
- defaultIFS='
- '
- IFS="${IFS-$defaultIFS}"
+ # The umask is ridiculous, or mkdir does not conform to POSIX,
+ # or it failed possibly due to a race condition. Create the
+ # directory the slow way, step by step, checking for races as we go.
- oIFS=$IFS
- # Some sh's can't handle IFS=/ for some reason.
- IFS='%'
- set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
- shift
- IFS=$oIFS
+ case $dstdir in
+ /*) prefix='/';;
+ -*) prefix='./';;
+ *) prefix='';;
+ esac
- pathcomp=
+ eval "$initialize_posix_glob"
- while test $# -ne 0 ; do
- pathcomp=$pathcomp$1
+ oIFS=$IFS
+ IFS=/
+ $posix_glob set -f
+ set fnord $dstdir
shift
- if test ! -d "$pathcomp"; then
- $mkdirprog "$pathcomp"
- # mkdir can fail with a `File exist' error in case several
- # install-sh are creating the directory concurrently. This
- # is OK.
- test -d "$pathcomp" || exit
+ $posix_glob set +f
+ IFS=$oIFS
+
+ prefixes=
+
+ for d
+ do
+ test -z "$d" && continue
+
+ prefix=$prefix$d
+ if test -d "$prefix"; then
+ prefixes=
+ else
+ if $posix_mkdir; then
+ (umask=$mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+ # Don't fail if two instances are running concurrently.
+ test -d "$prefix" || exit 1
+ else
+ case $prefix in
+ *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+ *) qprefix=$prefix;;
+ esac
+ prefixes="$prefixes '$qprefix'"
+ fi
+ fi
+ prefix=$prefix/
+ done
+
+ if test -n "$prefixes"; then
+ # Don't fail if two instances are running concurrently.
+ (umask $mkdir_umask &&
+ eval "\$doit_exec \$mkdirprog $prefixes") ||
+ test -d "$dstdir" || exit 1
+ obsolete_mkdir_used=true
fi
- pathcomp=$pathcomp/
- done
+ fi
fi
if test -n "$dir_arg"; then
- $doit $mkdircmd "$dst" \
- && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
- && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
- && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
- && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
-
+ { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
+ { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
+ { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
+ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else
- dstfile=`basename "$dst"`
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
@@ -262,10 +448,9 @@ do
# Trap to clean up those temp files at exit.
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
- trap '(exit $?); exit' 1 2 13 15
# Copy the file name to the temp name.
- $doit $cpprog "$src" "$dsttmp" &&
+ (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
# and set any options; do chmod last to preserve setuid bits.
#
@@ -273,51 +458,63 @@ do
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
- { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
- && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
- && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
- && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
-
- # Now rename the file to the real destination.
- { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
- || {
- # The rename failed, perhaps because mv can't rename something else
- # to itself, or perhaps because mv is so ancient that it does not
- # support -f.
-
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- if test -f "$dstdir/$dstfile"; then
- $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
- || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
- || {
- echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
- (exit 1); exit 1
- }
- else
- :
- fi
- } &&
-
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
- }
- }
- fi || { (exit 1); exit 1; }
+ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
+ { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
+ { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
+ { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
+
+ # If -C, don't bother to copy if it wouldn't change the file.
+ if $copy_on_change &&
+ old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
+ new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
+
+ eval "$initialize_posix_glob" &&
+ $posix_glob set -f &&
+ set X $old && old=:$2:$4:$5:$6 &&
+ set X $new && new=:$2:$4:$5:$6 &&
+ $posix_glob set +f &&
+
+ test "$old" = "$new" &&
+ $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
+ then
+ rm -f "$dsttmp"
+ else
+ # Rename the file to the real destination.
+ $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
+
+ # The rename failed, perhaps because mv can't rename something else
+ # to itself, or perhaps because mv is so ancient that it does not
+ # support -f.
+ {
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ test ! -f "$dst" ||
+ $doit $rmcmd -f "$dst" 2>/dev/null ||
+ { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+ { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+ } ||
+ { echo "$0: cannot unlink or rename $dst" >&2
+ (exit 1); exit 1
+ }
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dst"
+ }
+ fi || exit 1
+
+ trap '' 0
+ fi
done
-# The final little trick to "correctly" pass the exit status to the exit trap.
-{
- (exit 0); exit 0
-}
-
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
diff --git a/m4/Makefile.am b/m4/Makefile.am
deleted file mode 100644
index 109e92df3a43..000000000000
--- a/m4/Makefile.am
+++ /dev/null
@@ -1 +0,0 @@
-EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 nls.m4 po.m4
diff --git a/m4/Makefile.in b/m4/Makefile.in
deleted file mode 100644
index bb1b4ea0893f..000000000000
--- a/m4/Makefile.in
+++ /dev/null
@@ -1,316 +0,0 @@
-# Makefile.in generated by automake 1.9.6 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = ..
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = m4
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
- $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
- $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
- $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
- $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.in
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-SOURCES =
-DIST_SOURCES =
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-ALLOCA = @ALLOCA@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
-AMTAR = @AMTAR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BISON = @BISON@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-EXEEXT = @EXEEXT@
-GMSGFMT = @GMSGFMT@
-HELP2MAN = @HELP2MAN@
-INDENT = @INDENT@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-INTLLIBS = @INTLLIBS@
-LDFLAGS = @LDFLAGS@
-LEX = @LEX@
-LEXLIB = @LEXLIB@
-LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
-LIBICONV = @LIBICONV@
-LIBINTL = @LIBINTL@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LN_S = @LN_S@
-LTLIBICONV = @LTLIBICONV@
-LTLIBINTL = @LTLIBINTL@
-LTLIBOBJS = @LTLIBOBJS@
-M4 = @M4@
-MAKEINFO = @MAKEINFO@
-MKINSTALLDIRS = @MKINSTALLDIRS@
-MSGFMT = @MSGFMT@
-MSGMERGE = @MSGMERGE@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-POSUB = @POSUB@
-RANLIB = @RANLIB@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-USE_NLS = @USE_NLS@
-VERSION = @VERSION@
-XGETTEXT = @XGETTEXT@
-YACC = @YACC@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_CXX = @ac_ct_CXX@
-ac_ct_RANLIB = @ac_ct_RANLIB@
-ac_ct_STRIP = @ac_ct_STRIP@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
-am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-datadir = @datadir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 nls.m4 po.m4
-all: all-am
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
- && exit 0; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnits m4/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnits m4/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-uninstall-info-am:
-tags: TAGS
-TAGS:
-
-ctags: CTAGS
-CTAGS:
-
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
- list='$(DISTFILES)'; for file in $$list; do \
- case $$file in \
- $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
- $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
- esac; \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test "$$dir" != "$$file" && test "$$dir" != "."; then \
- dir="/$$dir"; \
- $(mkdir_p) "$(distdir)$$dir"; \
- else \
- dir=''; \
- fi; \
- if test -d $$d/$$file; then \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
- fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
- else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic mostlyclean-am
-
-distclean: distclean-am
- -rm -f Makefile
-distclean-am: clean-am distclean-generic
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-exec-am:
-
-install-info: install-info-am
-
-install-man:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-generic
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-info-am
-
-.PHONY: all all-am check check-am clean clean-generic distclean \
- distclean-generic distdir dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-exec \
- install-exec-am install-info install-info-am install-man \
- install-strip installcheck installcheck-am installdirs \
- maintainer-clean maintainer-clean-generic mostlyclean \
- mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
- uninstall-info-am
-
-# 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.
-.NOEXPORT:
diff --git a/main.c b/main.c
index cec2d77d3ab6..31833c4f1ae0 100644
--- a/main.c
+++ b/main.c
@@ -57,7 +57,7 @@ int C_plus_plus, long_align, use_read, yytext_is_array, do_yywrap,
int reentrant, bison_bridge_lval, bison_bridge_lloc;
int yymore_used, reject, real_reject, continued_action, in_rule;
int yymore_really_used, reject_really_used;
-int datapos, dataline, linenum, out_linenum;
+int datapos, dataline, linenum;
FILE *skelfile = NULL;
int skel_ind = 0;
char *action_array;
@@ -455,6 +455,8 @@ void check_options ()
size_t strsz;
str = (char*)flex_alloc(strsz = strlen(fmt) + strlen(scname[i]) + (int)(1 + log10(i)) + 2);
+ if (!str)
+ flexfatal(_("allocation of macro definition failed"));
snprintf(str, strsz, fmt, scname[i], i - 1);
buf_strappend(&tmpbuf, str);
free(str);
@@ -1441,7 +1443,7 @@ void flexinit (argc, argv)
num_backing_up = onesp = numprots = 0;
variable_trailing_context_rules = bol_needed = false;
- out_linenum = linenum = sectnum = 1;
+ linenum = sectnum = 1;
firstprot = NIL;
/* Used in mkprot() so that the first proto goes in slot 1
@@ -1576,9 +1578,11 @@ void readin ()
}
if (!do_yywrap) {
- if (!C_plus_plus) {
- outn ("\n#define yywrap(n) 1");
- }
+ if (!C_plus_plus)
+ if (reentrant)
+ outn ("\n#define yywrap(yyscanner) 1");
+ else
+ outn ("\n#define yywrap() 1");
outn ("#define YY_SKIP_YYWRAP");
}
diff --git a/misc.c b/misc.c
index 1009dea948b1..e3fdd50cdd9b 100644
--- a/misc.c
+++ b/misc.c
@@ -61,6 +61,8 @@ static void sko_push(bool dc)
if(!sko_stack){
sko_sz = 1;
sko_stack = (struct sko_state*)flex_alloc(sizeof(struct sko_state)*sko_sz);
+ if (!sko_stack)
+ flexfatal(_("allocation of sko_stack failed"));
sko_len = 0;
}
if(sko_len >= sko_sz){
@@ -184,7 +186,7 @@ int all_lower (str)
register char *str;
{
while (*str) {
- if (!isascii ((Char) * str) || !islower (*str))
+ if (!isascii ((Char) * str) || !islower ((Char) * str))
return 0;
++str;
}
@@ -199,7 +201,7 @@ int all_upper (str)
register char *str;
{
while (*str) {
- if (!isascii ((Char) * str) || !isupper (*str))
+ if (!isascii ((Char) * str) || !isupper ((Char) * str))
return 0;
++str;
}
@@ -208,33 +210,11 @@ int all_upper (str)
}
-/* bubble - bubble sort an integer array in increasing order
- *
- * synopsis
- * int v[n], n;
- * void bubble( v, n );
- *
- * description
- * sorts the first n elements of array v and replaces them in
- * increasing order.
- *
- * passed
- * v - the array to be sorted
- * n - the number of elements of 'v' to be sorted
- */
+/* intcmp - compares two integers for use by qsort. */
-void bubble (v, n)
- int v[], n;
+int intcmp (const void *a, const void *b)
{
- register int i, j, k;
-
- for (i = n; i > 1; --i)
- for (j = 1; j < i; ++j)
- if (v[j] > v[j + 1]) { /* compare */
- k = v[j]; /* exchange */
- v[j] = v[j + 1];
- v[j + 1] = k;
- }
+ return *(const int *) a - *(const int *) b;
}
@@ -314,52 +294,17 @@ Char *copy_unsigned_string (str)
}
-/* cshell - shell sort a character array in increasing order
- *
- * synopsis
- *
- * Char v[n];
- * int n, special_case_0;
- * cshell( v, n, special_case_0 );
- *
- * description
- * Does a shell sort of the first n elements of array v.
- * If special_case_0 is true, then any element equal to 0
- * is instead assumed to have infinite weight.
- *
- * passed
- * v - array to be sorted
- * n - number of elements of v to be sorted
- */
+/* cclcmp - compares two characters for use by qsort with '\0' sorting last. */
-void cshell (v, n, special_case_0)
- Char v[];
- int n, special_case_0;
+int cclcmp (const void *a, const void *b)
{
- int gap, i, j, jg;
- Char k;
-
- for (gap = n / 2; gap > 0; gap = gap / 2)
- for (i = gap; i < n; ++i)
- for (j = i - gap; j >= 0; j = j - gap) {
- jg = j + gap;
-
- if (special_case_0) {
- if (v[jg] == 0)
- break;
-
- else if (v[j] != 0
- && v[j] <= v[jg])
- break;
- }
-
- else if (v[j] <= v[jg])
- break;
-
- k = v[j];
- v[j] = v[jg];
- v[jg] = k;
- }
+ if (!*(const Char *) a)
+ return 1;
+ else
+ if (!*(const Char *) b)
+ return - 1;
+ else
+ return *(const Char *) a - *(const Char *) b;
}
@@ -454,15 +399,29 @@ void lerrif (msg, arg)
/* lerrsf - report an error message formatted with one string argument */
void lerrsf (msg, arg)
- const char *msg, arg[];
+ const char *msg, arg[];
{
char errmsg[MAXLINE];
- snprintf (errmsg, sizeof(errmsg), msg, arg);
+ snprintf (errmsg, sizeof(errmsg)-1, msg, arg);
+ errmsg[sizeof(errmsg)-1] = 0; /* ensure NULL termination */
flexerror (errmsg);
}
+/* lerrsf_fatal - as lerrsf, but call flexfatal */
+
+void lerrsf_fatal (msg, arg)
+ const char *msg, arg[];
+{
+ char errmsg[MAXLINE];
+
+ snprintf (errmsg, sizeof(errmsg)-1, msg, arg);
+ errmsg[sizeof(errmsg)-1] = 0; /* ensure NULL termination */
+ flexfatal (errmsg);
+}
+
+
/* line_directive_out - spit out a "#line" statement */
void line_directive_out (output_file, do_infile)
@@ -497,11 +456,7 @@ void line_directive_out (output_file, do_infile)
if (do_infile)
snprintf (directive, sizeof(directive), line_fmt, linenum, filename);
else {
- if (output_file == stdout)
- /* Account for the line directive itself. */
- ++out_linenum;
-
- snprintf (directive, sizeof(directive), line_fmt, out_linenum, filename);
+ snprintf (directive, sizeof(directive), line_fmt, 0, filename);
}
/* If output_file is nil then we should put the directive in
@@ -675,7 +630,7 @@ Char myesc (array)
int sptr = 2;
while (isascii (array[sptr]) &&
- isxdigit ((char) array[sptr]))
+ isxdigit (array[sptr]))
/* Don't increment inside loop control
* because if isdigit() is a macro it might
* expand into multiple increments ...
@@ -718,7 +673,6 @@ void out (str)
const char *str;
{
fputs (str, stdout);
- out_line_count (str);
}
void out_dec (fmt, n)
@@ -726,7 +680,6 @@ void out_dec (fmt, n)
int n;
{
fprintf (stdout, fmt, n);
- out_line_count (fmt);
}
void out_dec2 (fmt, n1, n2)
@@ -734,7 +687,6 @@ void out_dec2 (fmt, n1, n2)
int n1, n2;
{
fprintf (stdout, fmt, n1, n2);
- out_line_count (fmt);
}
void out_hex (fmt, x)
@@ -742,35 +694,18 @@ void out_hex (fmt, x)
unsigned int x;
{
fprintf (stdout, fmt, x);
- out_line_count (fmt);
-}
-
-void out_line_count (str)
- const char *str;
-{
- register int i;
-
- for (i = 0; str[i]; ++i)
- if (str[i] == '\n')
- ++out_linenum;
}
void out_str (fmt, str)
const char *fmt, str[];
{
fprintf (stdout,fmt, str);
- out_line_count (fmt);
- out_line_count (str);
}
void out_str3 (fmt, s1, s2, s3)
const char *fmt, s1[], s2[], s3[];
{
fprintf (stdout,fmt, s1, s2, s3);
- out_line_count (fmt);
- out_line_count (s1);
- out_line_count (s2);
- out_line_count (s3);
}
void out_str_dec (fmt, str, n)
@@ -778,17 +713,12 @@ void out_str_dec (fmt, str, n)
int n;
{
fprintf (stdout,fmt, str, n);
- out_line_count (fmt);
- out_line_count (str);
}
void outc (c)
int c;
{
fputc (c, stdout);
-
- if (c == '\n')
- ++out_linenum;
}
void outn (str)
@@ -796,8 +726,6 @@ void outn (str)
{
fputs (str,stdout);
fputc('\n',stdout);
- out_line_count (str);
- ++out_linenum;
}
/** Print "m4_define( [[def]], [[val]])m4_dnl\n".
diff --git a/missing b/missing
index 894e786e16c1..28055d2ae6f2 100755
--- a/missing
+++ b/missing
@@ -1,10 +1,10 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2005-06-08.21
+scriptversion=2009-04-28.21; # UTC
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
+# 2008, 2009 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
@@ -18,9 +18,7 @@ scriptversion=2005-06-08.21
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -33,6 +31,8 @@ if test $# -eq 0; then
fi
run=:
+sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
+sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
# In the cases where this matters, `missing' is being run in the
# srcdir already.
@@ -44,7 +44,7 @@ fi
msg="missing on your system"
-case "$1" in
+case $1 in
--run)
# Try to run requested program, and just exit if it succeeds.
run=
@@ -77,6 +77,7 @@ Supported PROGRAM values:
aclocal touch file \`aclocal.m4'
autoconf touch file \`configure'
autoheader touch file \`config.h.in'
+ autom4te touch the output file, or create a stub one
automake touch all \`Makefile.in' files
bison create \`y.tab.[ch]', if possible, from existing .[ch]
flex create \`lex.yy.c', if possible, from existing .c
@@ -86,6 +87,9 @@ Supported PROGRAM values:
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
+\`g' are ignored when checking the name.
+
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
@@ -103,15 +107,22 @@ Send bug reports to <bug-automake@gnu.org>."
esac
+# normalize program name to check for.
+program=`echo "$1" | sed '
+ s/^gnu-//; t
+ s/^gnu//; t
+ s/^g//; t'`
+
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
-# the program).
-case "$1" in
- lex|yacc)
+# the program). This is about non-GNU programs, so use $1 not
+# $program.
+case $1 in
+ lex*|yacc*)
# Not GNU programs, they don't have --version.
;;
- tar)
+ tar*)
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
@@ -135,7 +146,7 @@ esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
-case "$1" in
+case $program in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
@@ -145,7 +156,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch aclocal.m4
;;
- autoconf)
+ autoconf*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the
@@ -154,7 +165,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch configure
;;
- autoheader)
+ autoheader*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
@@ -164,7 +175,7 @@ WARNING: \`$1' is $msg. You should only need it if
test -z "$files" && files="config.h"
touch_files=
for f in $files; do
- case "$f" in
+ case $f in
*:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";;
@@ -184,7 +195,7 @@ WARNING: \`$1' is $msg. You should only need it if
while read f; do touch "$f"; done
;;
- autom4te)
+ autom4te*)
echo 1>&2 "\
WARNING: \`$1' is needed, but is $msg.
You might have modified some files without having the
@@ -192,8 +203,8 @@ WARNING: \`$1' is needed, but is $msg.
You can get \`$1' as part of \`Autoconf' from any GNU
archive site."
- file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
- test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -f "$file"; then
touch $file
else
@@ -207,80 +218,78 @@ WARNING: \`$1' is needed, but is $msg.
fi
;;
- bison|yacc)
+ bison*|yacc*)
echo 1>&2 "\
WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site."
rm -f y.tab.c y.tab.h
- if [ $# -ne 1 ]; then
+ if test $# -ne 1; then
eval LASTARG="\${$#}"
- case "$LASTARG" in
+ case $LASTARG in
*.y)
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.c
fi
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" y.tab.h
fi
;;
esac
fi
- if [ ! -f y.tab.h ]; then
+ if test ! -f y.tab.h; then
echo >y.tab.h
fi
- if [ ! -f y.tab.c ]; then
+ if test ! -f y.tab.c; then
echo 'main() { return 0; }' >y.tab.c
fi
;;
- lex|flex)
+ lex*|flex*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site."
rm -f lex.yy.c
- if [ $# -ne 1 ]; then
+ if test $# -ne 1; then
eval LASTARG="\${$#}"
- case "$LASTARG" in
+ case $LASTARG in
*.l)
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if [ -f "$SRCFILE" ]; then
+ if test -f "$SRCFILE"; then
cp "$SRCFILE" lex.yy.c
fi
;;
esac
fi
- if [ ! -f lex.yy.c ]; then
+ if test ! -f lex.yy.c; then
echo 'main() { return 0; }' >lex.yy.c
fi
;;
- help2man)
+ help2man*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."
- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
- if test -z "$file"; then
- file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
- fi
- if [ -f "$file" ]; then
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
+ if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
- exit 1
+ exit $?
fi
;;
- makeinfo)
+ makeinfo*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
@@ -289,11 +298,17 @@ WARNING: \`$1' is $msg. You should only need it if
DU, IRIX). You might want to install the \`Texinfo' package or
the \`GNU make' package. Grab either from any GNU archive site."
# The file to touch is that specified with -o ...
- file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ file=`echo "$*" | sed -n "$sed_output"`
+ test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
if test -z "$file"; then
# ... or it is the one specified with @setfilename ...
infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+ file=`sed -n '
+ /^@setfilename/{
+ s/.* \([^ ]*\) *$/\1/
+ p
+ q
+ }' $infile`
# ... or it is derived from the source name (dir/f.texi becomes f.info)
test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
fi
@@ -303,7 +318,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch $file
;;
- tar)
+ tar*)
shift
# We have already tried tar in the generic part.
@@ -317,13 +332,13 @@ WARNING: \`$1' is $msg. You should only need it if
fi
firstarg="$1"
if shift; then
- case "$firstarg" in
+ case $firstarg in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" "$@" && exit 0
;;
esac
- case "$firstarg" in
+ case $firstarg in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" "$@" && exit 0
@@ -356,5 +371,6 @@ exit 0
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
diff --git a/parse.c b/parse.c
index fc128f979a15..a884a9a40880 100644
--- a/parse.c
+++ b/parse.c
@@ -1,30 +1,39 @@
-/* A Bison parser, made by GNU Bison 2.1. */
-/* Skeleton parser for Yacc-like parsing with Bison,
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+/* A Bison parser, made by GNU Bison 2.4.1. */
- This program is free software; you can redistribute it and/or modify
+/* Skeleton implementation for Bison's Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
-
+
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA. */
-
-/* As a special exception, when this file is copied by Bison into a
- Bison output file, you may use that output file without restriction.
- This special exception was added by the Free Software Foundation
- in version 1.24 of Bison. */
-
-/* Written by Richard Stallman by simplifying the original so called
- ``semantic'' parser. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
+
+/* C LALR(1) parser skeleton written by Richard Stallman, by
+ simplifying the original so-called "semantic" parser. */
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
@@ -37,7 +46,7 @@
#define YYBISON 1
/* Bison version. */
-#define YYBISON_VERSION "2.1"
+#define YYBISON_VERSION "2.4.1"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
@@ -45,11 +54,126 @@
/* Pure parsers. */
#define YYPURE 0
+/* Push parsers. */
+#define YYPUSH 0
+
+/* Pull parsers. */
+#define YYPULL 1
+
/* Using locations. */
#define YYLSP_NEEDED 0
+/* Copy the first part of user declarations. */
+
+/* Line 189 of yacc.c */
+#line 34 "parse.y"
+
+/* Copyright (c) 1990 The Regents of the University of California. */
+/* All rights reserved. */
+
+/* This code is derived from software contributed to Berkeley by */
+/* Vern Paxson. */
+
+/* The United States Government has rights in this work pursuant */
+/* to contract no. DE-AC03-76SF00098 between the United States */
+/* Department of Energy and the University of California. */
+
+/* This file is part of flex. */
+
+/* Redistribution and use in source and binary forms, with or without */
+/* modification, are permitted provided that the following conditions */
+/* are met: */
+
+/* 1. Redistributions of source code must retain the above copyright */
+/* notice, this list of conditions and the following disclaimer. */
+/* 2. Redistributions in binary form must reproduce the above copyright */
+/* notice, this list of conditions and the following disclaimer in the */
+/* documentation and/or other materials provided with the distribution. */
+
+/* Neither the name of the University nor the names of its contributors */
+/* may be used to endorse or promote products derived from this software */
+/* without specific prior written permission. */
+
+/* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR */
+/* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */
+/* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */
+/* PURPOSE. */
+
+#include "flexdef.h"
+#include "tables.h"
+
+int pat, scnum, eps, headcnt, trailcnt, lastchar, i, rulelen;
+int trlcontxt, xcluflg, currccl, cclsorted, varlength, variable_trail_rule;
+
+int *scon_stk;
+int scon_stk_ptr;
+
+static int madeany = false; /* whether we've made the '.' character class */
+static int ccldot, cclany;
+int previous_continued_action; /* whether the previous rule's action was '|' */
+
+#define format_warn3(fmt, a1, a2) \
+ do{ \
+ char fw3_msg[MAXLINE];\
+ snprintf( fw3_msg, MAXLINE,(fmt), (a1), (a2) );\
+ warn( fw3_msg );\
+ }while(0)
+
+/* Expand a POSIX character class expression. */
+#define CCL_EXPR(func) \
+ do{ \
+ int c; \
+ for ( c = 0; c < csize; ++c ) \
+ if ( isascii(c) && func(c) ) \
+ ccladd( currccl, c ); \
+ }while(0)
+
+/* negated class */
+#define CCL_NEG_EXPR(func) \
+ do{ \
+ int c; \
+ for ( c = 0; c < csize; ++c ) \
+ if ( !func(c) ) \
+ ccladd( currccl, c ); \
+ }while(0)
+
+/* While POSIX defines isblank(), it's not ANSI C. */
+#define IS_BLANK(c) ((c) == ' ' || (c) == '\t')
+
+/* On some over-ambitious machines, such as DEC Alpha's, the default
+ * token type is "long" instead of "int"; this leads to problems with
+ * declaring yylval in flexdef.h. But so far, all the yacc's I've seen
+ * wrap their definitions of YYSTYPE with "#ifndef YYSTYPE"'s, so the
+ * following should ensure that the default token type is "int".
+ */
+#define YYSTYPE int
+
+
+
+/* Line 189 of yacc.c */
+#line 157 "parse.c"
+
+/* Enabling traces. */
+#ifndef YYDEBUG
+# define YYDEBUG 0
+#endif
+
+/* Enabling verbose error messages. */
+#ifdef YYERROR_VERBOSE
+# undef YYERROR_VERBOSE
+# define YYERROR_VERBOSE 1
+#else
+# define YYERROR_VERBOSE 0
+#endif
+
+/* Enabling the token table. */
+#ifndef YYTOKEN_TABLE
+# define YYTOKEN_TABLE 0
+#endif
+
+
/* Tokens. */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
@@ -153,138 +277,67 @@
-/* Copy the first part of user declarations. */
-#line 34 "parse.y"
-
-/* Copyright (c) 1990 The Regents of the University of California. */
-/* All rights reserved. */
-
-/* This code is derived from software contributed to Berkeley by */
-/* Vern Paxson. */
-
-/* The United States Government has rights in this work pursuant */
-/* to contract no. DE-AC03-76SF00098 between the United States */
-/* Department of Energy and the University of California. */
-
-/* This file is part of flex. */
-
-/* Redistribution and use in source and binary forms, with or without */
-/* modification, are permitted provided that the following conditions */
-/* are met: */
-
-/* 1. Redistributions of source code must retain the above copyright */
-/* notice, this list of conditions and the following disclaimer. */
-/* 2. Redistributions in binary form must reproduce the above copyright */
-/* notice, this list of conditions and the following disclaimer in the */
-/* documentation and/or other materials provided with the distribution. */
-
-/* Neither the name of the University nor the names of its contributors */
-/* may be used to endorse or promote products derived from this software */
-/* without specific prior written permission. */
-
-/* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR */
-/* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */
-/* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */
-/* PURPOSE. */
-
-#include "flexdef.h"
-#include "tables.h"
-
-int pat, scnum, eps, headcnt, trailcnt, lastchar, i, rulelen;
-int trlcontxt, xcluflg, currccl, cclsorted, varlength, variable_trail_rule;
-
-int *scon_stk;
-int scon_stk_ptr;
-
-static int madeany = false; /* whether we've made the '.' character class */
-static int ccldot, cclany;
-int previous_continued_action; /* whether the previous rule's action was '|' */
-
-#define format_warn3(fmt, a1, a2) \
- do{ \
- char fw3_msg[MAXLINE];\
- snprintf( fw3_msg, MAXLINE,(fmt), (a1), (a2) );\
- warn( fw3_msg );\
- }while(0)
-
-/* Expand a POSIX character class expression. */
-#define CCL_EXPR(func) \
- do{ \
- int c; \
- for ( c = 0; c < csize; ++c ) \
- if ( isascii(c) && func(c) ) \
- ccladd( currccl, c ); \
- }while(0)
-
-/* negated class */
-#define CCL_NEG_EXPR(func) \
- do{ \
- int c; \
- for ( c = 0; c < csize; ++c ) \
- if ( !func(c) ) \
- ccladd( currccl, c ); \
- }while(0)
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef int YYSTYPE;
+# define YYSTYPE_IS_TRIVIAL 1
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
+# define YYSTYPE_IS_DECLARED 1
+#endif
-/* While POSIX defines isblank(), it's not ANSI C. */
-#define IS_BLANK(c) ((c) == ' ' || (c) == '\t')
-/* On some over-ambitious machines, such as DEC Alpha's, the default
- * token type is "long" instead of "int"; this leads to problems with
- * declaring yylval in flexdef.h. But so far, all the yacc's I've seen
- * wrap their definitions of YYSTYPE with "#ifndef YYSTYPE"'s, so the
- * following should ensure that the default token type is "int".
- */
-#define YYSTYPE int
+/* Copy the second part of user declarations. */
+/* Line 264 of yacc.c */
+#line 293 "parse.c"
-/* Enabling traces. */
-#ifndef YYDEBUG
-# define YYDEBUG 0
+#ifdef short
+# undef short
#endif
-/* Enabling verbose error messages. */
-#ifdef YYERROR_VERBOSE
-# undef YYERROR_VERBOSE
-# define YYERROR_VERBOSE 1
+#ifdef YYTYPE_UINT8
+typedef YYTYPE_UINT8 yytype_uint8;
#else
-# define YYERROR_VERBOSE 0
+typedef unsigned char yytype_uint8;
#endif
-/* Enabling the token table. */
-#ifndef YYTOKEN_TABLE
-# define YYTOKEN_TABLE 0
+#ifdef YYTYPE_INT8
+typedef YYTYPE_INT8 yytype_int8;
+#elif (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+typedef signed char yytype_int8;
+#else
+typedef short int yytype_int8;
#endif
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-typedef int YYSTYPE;
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
+#ifdef YYTYPE_UINT16
+typedef YYTYPE_UINT16 yytype_uint16;
+#else
+typedef unsigned short int yytype_uint16;
#endif
-
-
-/* Copy the second part of user declarations. */
-
-
-/* Line 219 of yacc.c. */
-#line 273 "parse.c"
-
-#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
-# define YYSIZE_T __SIZE_TYPE__
-#endif
-#if ! defined (YYSIZE_T) && defined (size_t)
-# define YYSIZE_T size_t
-#endif
-#if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
-# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
+#ifdef YYTYPE_INT16
+typedef YYTYPE_INT16 yytype_int16;
+#else
+typedef short int yytype_int16;
#endif
-#if ! defined (YYSIZE_T)
-# define YYSIZE_T unsigned int
+
+#ifndef YYSIZE_T
+# ifdef __SIZE_TYPE__
+# define YYSIZE_T __SIZE_TYPE__
+# elif defined size_t
+# define YYSIZE_T size_t
+# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+# define YYSIZE_T size_t
+# else
+# define YYSIZE_T unsigned int
+# endif
#endif
+#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
+
#ifndef YY_
# if YYENABLE_NLS
# if ENABLE_NLS
@@ -297,7 +350,32 @@ typedef int YYSTYPE;
# endif
#endif
-#if ! defined (yyoverflow) || YYERROR_VERBOSE
+/* Suppress unused-variable warnings by "using" E. */
+#if ! defined lint || defined __GNUC__
+# define YYUSE(e) ((void) (e))
+#else
+# define YYUSE(e) /* empty */
+#endif
+
+/* Identity function, used to suppress warnings about constant conditions. */
+#ifndef lint
+# define YYID(n) (n)
+#else
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static int
+YYID (int yyi)
+#else
+static int
+YYID (yyi)
+ int yyi;
+#endif
+{
+ return yyi;
+}
+#endif
+
+#if ! defined yyoverflow || YYERROR_VERBOSE
/* The parser invokes alloca or malloc; define the necessary symbols. */
@@ -305,66 +383,78 @@ typedef int YYSTYPE;
# if YYSTACK_USE_ALLOCA
# ifdef __GNUC__
# define YYSTACK_ALLOC __builtin_alloca
+# elif defined __BUILTIN_VA_ARG_INCR
+# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
+# elif defined _AIX
+# define YYSTACK_ALLOC __alloca
+# elif defined _MSC_VER
+# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
+# define alloca _alloca
# else
# define YYSTACK_ALLOC alloca
-# if defined (__STDC__) || defined (__cplusplus)
+# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-# define YYINCLUDED_STDLIB_H
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
# endif
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
- /* Pacify GCC's `empty if-body' warning. */
-# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
+ /* Pacify GCC's `empty if-body' warning. */
+# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
# ifndef YYSTACK_ALLOC_MAXIMUM
/* The OS might guarantee only one guard page at the bottom of the stack,
and a page size can be as small as 4096 bytes. So we cannot safely
invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
to allow for a few compiler-allocated temporary stack slots. */
-# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */
+# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
# endif
# else
# define YYSTACK_ALLOC YYMALLOC
# define YYSTACK_FREE YYFREE
# ifndef YYSTACK_ALLOC_MAXIMUM
-# define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
+# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
# endif
-# ifdef __cplusplus
-extern "C" {
+# if (defined __cplusplus && ! defined _STDLIB_H \
+ && ! ((defined YYMALLOC || defined malloc) \
+ && (defined YYFREE || defined free)))
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
# endif
# ifndef YYMALLOC
# define YYMALLOC malloc
-# if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \
- && (defined (__STDC__) || defined (__cplusplus)))
+# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
# endif
# endif
# ifndef YYFREE
# define YYFREE free
-# if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \
- && (defined (__STDC__) || defined (__cplusplus)))
+# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
void free (void *); /* INFRINGES ON USER NAME SPACE */
# endif
# endif
-# ifdef __cplusplus
-}
-# endif
# endif
-#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
+#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
-#if (! defined (yyoverflow) \
- && (! defined (__cplusplus) \
- || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
+#if (! defined yyoverflow \
+ && (! defined __cplusplus \
+ || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
- short int yyss;
- YYSTYPE yyvs;
- };
+ yytype_int16 yyss_alloc;
+ YYSTYPE yyvs_alloc;
+};
/* The size of the maximum gap between one aligned stack and the next. */
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
@@ -372,13 +462,13 @@ union yyalloc
/* The size of an array large to enough to hold all stacks, each with
N elements. */
# define YYSTACK_BYTES(N) \
- ((N) * (sizeof (short int) + sizeof (YYSTYPE)) \
+ ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
+ YYSTACK_GAP_MAXIMUM)
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
-# if defined (__GNUC__) && 1 < __GNUC__
+# if defined __GNUC__ && 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
# else
@@ -389,7 +479,7 @@ union yyalloc
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
- while (0)
+ while (YYID (0))
# endif
# endif
@@ -398,37 +488,31 @@ union yyalloc
elements in the stack, and YYPTR gives the new location of the
stack. Advance YYPTR to a properly aligned location for the next
stack. */
-# define YYSTACK_RELOCATE(Stack) \
+# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
do \
{ \
YYSIZE_T yynewbytes; \
- YYCOPY (&yyptr->Stack, Stack, yysize); \
- Stack = &yyptr->Stack; \
+ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
+ Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
- while (0)
+ while (YYID (0))
#endif
-#if defined (__STDC__) || defined (__cplusplus)
- typedef signed char yysigned_char;
-#else
- typedef short int yysigned_char;
-#endif
-
-/* YYFINAL -- State number of the termination state. */
+/* YYFINAL -- State number of the termination state. */
#define YYFINAL 3
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 161
-/* YYNTOKENS -- Number of terminals. */
+/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 69
-/* YYNNTS -- Number of nonterminals. */
+/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 27
-/* YYNRULES -- Number of rules. */
+/* YYNRULES -- Number of rules. */
#define YYNRULES 97
-/* YYNRULES -- Number of states. */
+/* YYNRULES -- Number of states. */
#define YYNSTATES 140
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
@@ -439,7 +523,7 @@ union yyalloc
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
-static const unsigned char yytranslate[] =
+static const yytype_uint8 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
49, 2, 2, 2, 2, 2, 2, 2, 2, 2,
@@ -477,7 +561,7 @@ static const unsigned char yytranslate[] =
#if YYDEBUG
/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
YYRHS. */
-static const unsigned short int yyprhs[] =
+static const yytype_uint16 yyprhs[] =
{
0, 0, 3, 9, 10, 14, 17, 18, 20, 22,
24, 26, 29, 31, 33, 36, 39, 40, 44, 48,
@@ -491,8 +575,8 @@ static const unsigned short int yyprhs[] =
262, 264, 266, 268, 270, 272, 274, 277
};
-/* YYRHS -- A `-1'-separated list of the rules' RHS. */
-static const yysigned_char yyrhs[] =
+/* YYRHS -- A `-1'-separated list of the rules' RHS. */
+static const yytype_int8 yyrhs[] =
{
70, 0, -1, 71, 72, 73, 79, 80, -1, -1,
72, 74, 75, -1, 72, 76, -1, -1, 1, -1,
@@ -525,24 +609,24 @@ static const yysigned_char yyrhs[] =
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
-static const unsigned short int yyrline[] =
+static const yytype_uint16 yyrline[] =
{
0, 118, 118, 148, 155, 156, 157, 158, 162, 170,
173, 177, 180, 183, 187, 190, 191, 194, 199, 201,
203, 205, 207, 211, 213, 215, 219, 231, 267, 291,
314, 319, 322, 325, 343, 346, 348, 350, 354, 377,
433, 436, 479, 497, 503, 508, 535, 543, 546, 574,
- 588, 610, 617, 623, 629, 657, 671, 690, 724, 744,
- 754, 757, 760, 775, 776, 777, 782, 784, 791, 851,
- 869, 877, 885, 886, 887, 888, 889, 890, 891, 896,
- 897, 898, 899, 900, 906, 907, 908, 909, 910, 911,
- 912, 913, 914, 915, 916, 922, 930, 946
+ 588, 610, 617, 623, 629, 657, 671, 690, 724, 742,
+ 752, 755, 758, 773, 774, 775, 780, 782, 789, 849,
+ 867, 875, 883, 884, 885, 886, 887, 888, 889, 894,
+ 895, 896, 897, 898, 904, 905, 906, 907, 908, 909,
+ 910, 911, 912, 913, 914, 920, 928, 944
};
#endif
#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
- First, the terminals, then, starting at YYNTOKENS, nonterminals. */
+ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
"$end", "error", "$undefined", "CHAR", "NUMBER", "SECTEND", "SCDECL",
@@ -568,7 +652,7 @@ static const char *const yytname[] =
# ifdef YYPRINT
/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
token YYLEX-NUM. */
-static const unsigned short int yytoknum[] =
+static const yytype_uint16 yytoknum[] =
{
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
@@ -581,7 +665,7 @@ static const unsigned short int yytoknum[] =
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
-static const unsigned char yyr1[] =
+static const yytype_uint8 yyr1[] =
{
0, 69, 70, 71, 72, 72, 72, 72, 73, 74,
74, 75, 75, 75, 76, 77, 77, 78, 78, 78,
@@ -596,7 +680,7 @@ static const unsigned char yyr1[] =
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
-static const unsigned char yyr2[] =
+static const yytype_uint8 yyr2[] =
{
0, 2, 5, 0, 3, 2, 0, 1, 1, 1,
1, 2, 1, 1, 2, 2, 0, 3, 3, 3,
@@ -613,7 +697,7 @@ static const unsigned char yyr2[] =
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
STATE-NUM when YYTABLE doesn't specify something else to do. Zero
means the default is an error. */
-static const unsigned char yydefact[] =
+static const yytype_uint8 yydefact[] =
{
3, 0, 0, 1, 7, 0, 8, 9, 10, 16,
25, 0, 5, 14, 34, 13, 12, 4, 0, 0,
@@ -631,8 +715,8 @@ static const unsigned char yydefact[] =
0, 56, 0, 68, 0, 49, 0, 55, 48, 54
};
-/* YYDEFGOTO[NTERM-NUM]. */
-static const yysigned_char yydefgoto[] =
+/* YYDEFGOTO[NTERM-NUM]. */
+static const yytype_int8 yydefgoto[] =
{
-1, 1, 2, 5, 10, 11, 17, 12, 13, 24,
14, 26, 60, 36, 27, 48, 49, 61, 62, 63,
@@ -642,7 +726,7 @@ static const yysigned_char yydefgoto[] =
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -52
-static const short int yypact[] =
+static const yytype_int16 yypact[] =
{
-52, 17, 103, -52, -52, 113, -52, -52, -52, -52,
-52, 48, -52, 114, 6, -52, -52, 42, 7, 12,
@@ -661,7 +745,7 @@ static const short int yypact[] =
};
/* YYPGOTO[NTERM-NUM]. */
-static const short int yypgoto[] =
+static const yytype_int16 yypgoto[] =
{
-52, -52, -52, -52, -52, -52, -52, -52, -52, -52,
118, 129, -52, -52, -52, -52, 92, 102, -48, -52,
@@ -673,7 +757,7 @@ static const short int yypgoto[] =
number is the opposite. If zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */
#define YYTABLE_NINF -27
-static const short int yytable[] =
+static const yytype_int16 yytable[] =
{
51, 136, 52, 94, 90, 129, -26, 78, 53, 54,
73, 87, 88, 134, 92, 80, 130, 3, 95, 96,
@@ -694,7 +778,7 @@ static const short int yytable[] =
0, 89
};
-static const yysigned_char yycheck[] =
+static const yytype_int8 yycheck[] =
{
1, 4, 3, 3, 3, 45, 0, 58, 9, 10,
58, 42, 43, 4, 65, 63, 56, 0, 18, 19,
@@ -717,7 +801,7 @@ static const yysigned_char yycheck[] =
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
-static const unsigned char yystos[] =
+static const yytype_uint8 yystos[] =
{
0, 70, 71, 0, 1, 72, 5, 6, 7, 11,
73, 74, 76, 77, 79, 1, 8, 75, 12, 13,
@@ -760,7 +844,7 @@ do \
yychar = (Token); \
yylval = (Value); \
yytoken = YYTRANSLATE (yychar); \
- YYPOPSTACK; \
+ YYPOPSTACK (1); \
goto yybackup; \
} \
else \
@@ -768,7 +852,7 @@ do \
yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
-while (0)
+while (YYID (0))
#define YYTERROR 1
@@ -783,7 +867,7 @@ while (0)
#ifndef YYLLOC_DEFAULT
# define YYLLOC_DEFAULT(Current, Rhs, N) \
do \
- if (N) \
+ if (YYID (N)) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
@@ -797,7 +881,7 @@ while (0)
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
- while (0)
+ while (YYID (0))
#endif
@@ -809,8 +893,8 @@ while (0)
# if YYLTYPE_IS_TRIVIAL
# define YY_LOCATION_PRINT(File, Loc) \
fprintf (File, "%d.%d-%d.%d", \
- (Loc).first_line, (Loc).first_column, \
- (Loc).last_line, (Loc).last_column)
+ (Loc).first_line, (Loc).first_column, \
+ (Loc).last_line, (Loc).last_column)
# else
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
# endif
@@ -837,37 +921,100 @@ while (0)
do { \
if (yydebug) \
YYFPRINTF Args; \
-} while (0)
+} while (YYID (0))
-# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
-do { \
- if (yydebug) \
- { \
- YYFPRINTF (stderr, "%s ", Title); \
- yysymprint (stderr, \
- Type, Value); \
- YYFPRINTF (stderr, "\n"); \
- } \
-} while (0)
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
+do { \
+ if (yydebug) \
+ { \
+ YYFPRINTF (stderr, "%s ", Title); \
+ yy_symbol_print (stderr, \
+ Type, Value); \
+ YYFPRINTF (stderr, "\n"); \
+ } \
+} while (YYID (0))
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_value_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (!yyvaluep)
+ return;
+# ifdef YYPRINT
+ if (yytype < YYNTOKENS)
+ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+# else
+ YYUSE (yyoutput);
+# endif
+ switch (yytype)
+ {
+ default:
+ break;
+ }
+}
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (yytype < YYNTOKENS)
+ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ else
+ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+
+ yy_symbol_value_print (yyoutput, yytype, yyvaluep);
+ YYFPRINTF (yyoutput, ")");
+}
/*------------------------------------------------------------------.
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
| TOP (included). |
`------------------------------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
-yy_stack_print (short int *bottom, short int *top)
+yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
#else
static void
-yy_stack_print (bottom, top)
- short int *bottom;
- short int *top;
+yy_stack_print (yybottom, yytop)
+ yytype_int16 *yybottom;
+ yytype_int16 *yytop;
#endif
{
YYFPRINTF (stderr, "Stack now");
- for (/* Nothing. */; bottom <= top; ++bottom)
- YYFPRINTF (stderr, " %d", *bottom);
+ for (; yybottom <= yytop; yybottom++)
+ {
+ int yybot = *yybottom;
+ YYFPRINTF (stderr, " %d", yybot);
+ }
YYFPRINTF (stderr, "\n");
}
@@ -875,37 +1022,45 @@ yy_stack_print (bottom, top)
do { \
if (yydebug) \
yy_stack_print ((Bottom), (Top)); \
-} while (0)
+} while (YYID (0))
/*------------------------------------------------.
| Report that the YYRULE is going to be reduced. |
`------------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
-yy_reduce_print (int yyrule)
+yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
#else
static void
-yy_reduce_print (yyrule)
+yy_reduce_print (yyvsp, yyrule)
+ YYSTYPE *yyvsp;
int yyrule;
#endif
{
+ int yynrhs = yyr2[yyrule];
int yyi;
unsigned long int yylno = yyrline[yyrule];
- YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ",
- yyrule - 1, yylno);
- /* Print the symbols being reduced, and their result. */
- for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
- YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
- YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]);
+ YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
+ yyrule - 1, yylno);
+ /* The symbols being reduced. */
+ for (yyi = 0; yyi < yynrhs; yyi++)
+ {
+ YYFPRINTF (stderr, " $%d = ", yyi + 1);
+ yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
+ &(yyvsp[(yyi + 1) - (yynrhs)])
+ );
+ YYFPRINTF (stderr, "\n");
+ }
}
# define YY_REDUCE_PRINT(Rule) \
do { \
if (yydebug) \
- yy_reduce_print (Rule); \
-} while (0)
+ yy_reduce_print (yyvsp, Rule); \
+} while (YYID (0))
/* Nonzero means print parse trace. It is left uninitialized so that
multiple parsers can coexist. */
@@ -939,42 +1094,44 @@ int yydebug;
#if YYERROR_VERBOSE
# ifndef yystrlen
-# if defined (__GLIBC__) && defined (_STRING_H)
+# if defined __GLIBC__ && defined _STRING_H
# define yystrlen strlen
# else
/* Return the length of YYSTR. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static YYSIZE_T
-# if defined (__STDC__) || defined (__cplusplus)
yystrlen (const char *yystr)
-# else
+#else
+static YYSIZE_T
yystrlen (yystr)
- const char *yystr;
-# endif
+ const char *yystr;
+#endif
{
- const char *yys = yystr;
-
- while (*yys++ != '\0')
+ YYSIZE_T yylen;
+ for (yylen = 0; yystr[yylen]; yylen++)
continue;
-
- return yys - yystr - 1;
+ return yylen;
}
# endif
# endif
# ifndef yystpcpy
-# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
+# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
# define yystpcpy stpcpy
# else
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
YYDEST. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static char *
-# if defined (__STDC__) || defined (__cplusplus)
yystpcpy (char *yydest, const char *yysrc)
-# else
+#else
+static char *
yystpcpy (yydest, yysrc)
- char *yydest;
- const char *yysrc;
-# endif
+ char *yydest;
+ const char *yysrc;
+#endif
{
char *yyd = yydest;
const char *yys = yysrc;
@@ -1000,7 +1157,7 @@ yytnamerr (char *yyres, const char *yystr)
{
if (*yystr == '"')
{
- size_t yyn = 0;
+ YYSIZE_T yyn = 0;
char const *yyp = yystr;
for (;;)
@@ -1035,53 +1192,123 @@ yytnamerr (char *yyres, const char *yystr)
}
# endif
-#endif /* YYERROR_VERBOSE */
-
-
-
-#if YYDEBUG
-/*--------------------------------.
-| Print this symbol on YYOUTPUT. |
-`--------------------------------*/
-
-#if defined (__STDC__) || defined (__cplusplus)
-static void
-yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
-#else
-static void
-yysymprint (yyoutput, yytype, yyvaluep)
- FILE *yyoutput;
- int yytype;
- YYSTYPE *yyvaluep;
-#endif
+/* Copy into YYRESULT an error message about the unexpected token
+ YYCHAR while in state YYSTATE. Return the number of bytes copied,
+ including the terminating null byte. If YYRESULT is null, do not
+ copy anything; just return the number of bytes that would be
+ copied. As a special case, return 0 if an ordinary "syntax error"
+ message will do. Return YYSIZE_MAXIMUM if overflow occurs during
+ size calculation. */
+static YYSIZE_T
+yysyntax_error (char *yyresult, int yystate, int yychar)
{
- /* Pacify ``unused variable'' warnings. */
- (void) yyvaluep;
+ int yyn = yypact[yystate];
- if (yytype < YYNTOKENS)
- YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
+ return 0;
else
- YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+ {
+ int yytype = YYTRANSLATE (yychar);
+ YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
+ YYSIZE_T yysize = yysize0;
+ YYSIZE_T yysize1;
+ int yysize_overflow = 0;
+ enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
+ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
+ int yyx;
+
+# if 0
+ /* This is so xgettext sees the translatable formats that are
+ constructed on the fly. */
+ YY_("syntax error, unexpected %s");
+ YY_("syntax error, unexpected %s, expecting %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
+# endif
+ char *yyfmt;
+ char const *yyf;
+ static char const yyunexpected[] = "syntax error, unexpected %s";
+ static char const yyexpecting[] = ", expecting %s";
+ static char const yyor[] = " or %s";
+ char yyformat[sizeof yyunexpected
+ + sizeof yyexpecting - 1
+ + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
+ * (sizeof yyor - 1))];
+ char const *yyprefix = yyexpecting;
+
+ /* Start YYX at -YYN if negative to avoid negative indexes in
+ YYCHECK. */
+ int yyxbegin = yyn < 0 ? -yyn : 0;
+
+ /* Stay within bounds of both yycheck and yytname. */
+ int yychecklim = YYLAST - yyn + 1;
+ int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
+ int yycount = 1;
+
+ yyarg[0] = yytname[yytype];
+ yyfmt = yystpcpy (yyformat, yyunexpected);
+
+ for (yyx = yyxbegin; yyx < yyxend; ++yyx)
+ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+ {
+ if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
+ {
+ yycount = 1;
+ yysize = yysize0;
+ yyformat[sizeof yyunexpected - 1] = '\0';
+ break;
+ }
+ yyarg[yycount++] = yytname[yyx];
+ yysize1 = yysize + yytnamerr (0, yytname[yyx]);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
+ yyfmt = yystpcpy (yyfmt, yyprefix);
+ yyprefix = yyor;
+ }
+ yyf = YY_(yyformat);
+ yysize1 = yysize + yystrlen (yyf);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
-# ifdef YYPRINT
- if (yytype < YYNTOKENS)
- YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
-# endif
- switch (yytype)
- {
- default:
- break;
+ if (yysize_overflow)
+ return YYSIZE_MAXIMUM;
+
+ if (yyresult)
+ {
+ /* Avoid sprintf, as that infringes on the user's name space.
+ Don't have undefined behavior even if the translation
+ produced a string with the wrong number of "%s"s. */
+ char *yyp = yyresult;
+ int yyi = 0;
+ while ((*yyp = *yyf) != '\0')
+ {
+ if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
+ {
+ yyp += yytnamerr (yyp, yyarg[yyi++]);
+ yyf += 2;
+ }
+ else
+ {
+ yyp++;
+ yyf++;
+ }
+ }
+ }
+ return yysize;
}
- YYFPRINTF (yyoutput, ")");
}
+#endif /* YYERROR_VERBOSE */
+
-#endif /* ! YYDEBUG */
/*-----------------------------------------------.
| Release the memory associated to this symbol. |
`-----------------------------------------------*/
-#if defined (__STDC__) || defined (__cplusplus)
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
static void
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
#else
@@ -1092,8 +1319,7 @@ yydestruct (yymsg, yytype, yyvaluep)
YYSTYPE *yyvaluep;
#endif
{
- /* Pacify ``unused variable'' warnings. */
- (void) yyvaluep;
+ YYUSE (yyvaluep);
if (!yymsg)
yymsg = "Deleting";
@@ -1103,21 +1329,19 @@ yydestruct (yymsg, yytype, yyvaluep)
{
default:
- break;
+ break;
}
}
-
/* Prevent warnings from -Wmissing-prototypes. */
-
#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
+#if defined __STDC__ || defined __cplusplus
int yyparse (void *YYPARSE_PARAM);
-# else
+#else
int yyparse ();
-# endif
+#endif
#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
+#if defined __STDC__ || defined __cplusplus
int yyparse (void);
#else
int yyparse ();
@@ -1125,11 +1349,10 @@ int yyparse ();
#endif /* ! YYPARSE_PARAM */
-
-/* The look-ahead symbol. */
+/* The lookahead symbol. */
int yychar;
-/* The semantic value of the look-ahead symbol. */
+/* The semantic value of the lookahead symbol. */
YYSTYPE yylval;
/* Number of syntax errors so far. */
@@ -1137,82 +1360,94 @@ int yynerrs;
-/*----------.
-| yyparse. |
-`----------*/
+/*-------------------------.
+| yyparse or yypush_parse. |
+`-------------------------*/
#ifdef YYPARSE_PARAM
-# if defined (__STDC__) || defined (__cplusplus)
-int yyparse (void *YYPARSE_PARAM)
-# else
-int yyparse (YYPARSE_PARAM)
- void *YYPARSE_PARAM;
-# endif
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+int
+yyparse (void *YYPARSE_PARAM)
+#else
+int
+yyparse (YYPARSE_PARAM)
+ void *YYPARSE_PARAM;
+#endif
#else /* ! YYPARSE_PARAM */
-#if defined (__STDC__) || defined (__cplusplus)
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
int
yyparse (void)
#else
int
yyparse ()
- ;
+
#endif
#endif
{
-
- int yystate;
- int yyn;
- int yyresult;
- /* Number of tokens to shift before error messages enabled. */
- int yyerrstatus;
- /* Look-ahead token as an internal (translated) token number. */
- int yytoken = 0;
- /* Three stacks and their tools:
- `yyss': related to states,
- `yyvs': related to semantic values,
- `yyls': related to locations.
- Refer to the stacks thru separate pointers, to allow yyoverflow
- to reallocate them elsewhere. */
+ int yystate;
+ /* Number of tokens to shift before error messages enabled. */
+ int yyerrstatus;
- /* The state stack. */
- short int yyssa[YYINITDEPTH];
- short int *yyss = yyssa;
- short int *yyssp;
+ /* The stacks and their tools:
+ `yyss': related to states.
+ `yyvs': related to semantic values.
- /* The semantic value stack. */
- YYSTYPE yyvsa[YYINITDEPTH];
- YYSTYPE *yyvs = yyvsa;
- YYSTYPE *yyvsp;
+ Refer to the stacks thru separate pointers, to allow yyoverflow
+ to reallocate them elsewhere. */
+ /* The state stack. */
+ yytype_int16 yyssa[YYINITDEPTH];
+ yytype_int16 *yyss;
+ yytype_int16 *yyssp;
+ /* The semantic value stack. */
+ YYSTYPE yyvsa[YYINITDEPTH];
+ YYSTYPE *yyvs;
+ YYSTYPE *yyvsp;
-#define YYPOPSTACK (yyvsp--, yyssp--)
-
- YYSIZE_T yystacksize = YYINITDEPTH;
+ YYSIZE_T yystacksize;
+ int yyn;
+ int yyresult;
+ /* Lookahead token as an internal (translated) token number. */
+ int yytoken;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
+#if YYERROR_VERBOSE
+ /* Buffer for error messages, and its allocated size. */
+ char yymsgbuf[128];
+ char *yymsg = yymsgbuf;
+ YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
+#endif
- /* When reducing, the number of symbols on the RHS of the reduced
- rule. */
- int yylen;
+#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
+
+ /* The number of symbols on the RHS of the reduced rule.
+ Keep to zero when no symbol should be popped. */
+ int yylen = 0;
+
+ yytoken = 0;
+ yyss = yyssa;
+ yyvs = yyvsa;
+ yystacksize = YYINITDEPTH;
YYDPRINTF ((stderr, "Starting parse\n"));
yystate = 0;
yyerrstatus = 0;
yynerrs = 0;
- yychar = YYEMPTY; /* Cause a token to be read. */
+ yychar = YYEMPTY; /* Cause a token to be read. */
/* Initialize stack pointers.
Waste one element of value and location stack
so that they stay on the same level as the state stack.
The wasted elements are never initialized. */
-
yyssp = yyss;
yyvsp = yyvs;
@@ -1223,8 +1458,7 @@ yyparse ()
`------------------------------------------------------------*/
yynewstate:
/* In all cases, when you get here, the value and location stacks
- have just been pushed. so pushing a state here evens the stacks.
- */
+ have just been pushed. So pushing a state here evens the stacks. */
yyssp++;
yysetstate:
@@ -1237,12 +1471,11 @@ yyparse ()
#ifdef yyoverflow
{
- /* Give user a chance to reallocate the stack. Use copies of
+ /* Give user a chance to reallocate the stack. Use copies of
these so that the &'s don't force the real ones into
memory. */
YYSTYPE *yyvs1 = yyvs;
- short int *yyss1 = yyss;
-
+ yytype_int16 *yyss1 = yyss;
/* Each stack pointer address is followed by the size of the
data in use in that stack, in bytes. This used to be a
@@ -1251,7 +1484,6 @@ yyparse ()
yyoverflow (YY_("memory exhausted"),
&yyss1, yysize * sizeof (*yyssp),
&yyvs1, yysize * sizeof (*yyvsp),
-
&yystacksize);
yyss = yyss1;
@@ -1269,14 +1501,13 @@ yyparse ()
yystacksize = YYMAXDEPTH;
{
- short int *yyss1 = yyss;
+ yytype_int16 *yyss1 = yyss;
union yyalloc *yyptr =
(union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
if (! yyptr)
goto yyexhaustedlab;
- YYSTACK_RELOCATE (yyss);
- YYSTACK_RELOCATE (yyvs);
-
+ YYSTACK_RELOCATE (yyss_alloc, yyss);
+ YYSTACK_RELOCATE (yyvs_alloc, yyvs);
# undef YYSTACK_RELOCATE
if (yyss1 != yyssa)
YYSTACK_FREE (yyss1);
@@ -1287,7 +1518,6 @@ yyparse ()
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
-
YYDPRINTF ((stderr, "Stack size increased to %lu\n",
(unsigned long int) yystacksize));
@@ -1297,6 +1527,9 @@ yyparse ()
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
+ if (yystate == YYFINAL)
+ YYACCEPT;
+
goto yybackup;
/*-----------.
@@ -1304,19 +1537,17 @@ yyparse ()
`-----------*/
yybackup:
-/* Do appropriate processing given the current state. */
-/* Read a look-ahead token if we need one and don't already have one. */
-/* yyresume: */
-
- /* First try to decide what to do without reference to look-ahead token. */
+ /* Do appropriate processing given the current state. Read a
+ lookahead token if we need one and don't already have one. */
+ /* First try to decide what to do without reference to lookahead token. */
yyn = yypact[yystate];
if (yyn == YYPACT_NINF)
goto yydefault;
- /* Not known => get a look-ahead token if don't already have one. */
+ /* Not known => get a lookahead token if don't already have one. */
- /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
+ /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
if (yychar == YYEMPTY)
{
YYDPRINTF ((stderr, "Reading a token: "));
@@ -1348,25 +1579,20 @@ yybackup:
goto yyreduce;
}
- if (yyn == YYFINAL)
- YYACCEPT;
-
- /* Shift the look-ahead token. */
- YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
-
- /* Discard the token being shifted unless it is eof. */
- if (yychar != YYEOF)
- yychar = YYEMPTY;
-
- *++yyvsp = yylval;
-
-
/* Count tokens shifted since error; after three, turn off error
status. */
if (yyerrstatus)
yyerrstatus--;
+ /* Shift the lookahead token. */
+ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
+
+ /* Discard the shifted token. */
+ yychar = YYEMPTY;
+
yystate = yyn;
+ *++yyvsp = yylval;
+
goto yynewstate;
@@ -1402,6 +1628,8 @@ yyreduce:
switch (yyn)
{
case 2:
+
+/* Line 1455 of yacc.c */
#line 119 "parse.y"
{ /* add default rule */
int def_rule;
@@ -1432,6 +1660,8 @@ yyreduce:
break;
case 3:
+
+/* Line 1455 of yacc.c */
#line 148 "parse.y"
{ /* initialize for processing rules */
@@ -1441,11 +1671,15 @@ yyreduce:
break;
case 7:
+
+/* Line 1455 of yacc.c */
#line 159 "parse.y"
{ synerr( _("unknown error processing section 1") ); }
break;
case 8:
+
+/* Line 1455 of yacc.c */
#line 163 "parse.y"
{
check_options();
@@ -1455,31 +1689,43 @@ yyreduce:
break;
case 9:
+
+/* Line 1455 of yacc.c */
#line 171 "parse.y"
{ xcluflg = false; }
break;
case 10:
+
+/* Line 1455 of yacc.c */
#line 174 "parse.y"
{ xcluflg = true; }
break;
case 11:
+
+/* Line 1455 of yacc.c */
#line 178 "parse.y"
{ scinstal( nmstr, xcluflg ); }
break;
case 12:
+
+/* Line 1455 of yacc.c */
#line 181 "parse.y"
{ scinstal( nmstr, xcluflg ); }
break;
case 13:
+
+/* Line 1455 of yacc.c */
#line 184 "parse.y"
{ synerr( _("bad start condition list") ); }
break;
case 17:
+
+/* Line 1455 of yacc.c */
#line 195 "parse.y"
{
outfilename = copy_string( nmstr );
@@ -1488,41 +1734,57 @@ yyreduce:
break;
case 18:
+
+/* Line 1455 of yacc.c */
#line 200 "parse.y"
{ extra_type = copy_string( nmstr ); }
break;
case 19:
+
+/* Line 1455 of yacc.c */
#line 202 "parse.y"
{ prefix = copy_string( nmstr ); }
break;
case 20:
+
+/* Line 1455 of yacc.c */
#line 204 "parse.y"
{ yyclass = copy_string( nmstr ); }
break;
case 21:
+
+/* Line 1455 of yacc.c */
#line 206 "parse.y"
{ headerfilename = copy_string( nmstr ); }
break;
case 22:
+
+/* Line 1455 of yacc.c */
#line 208 "parse.y"
{ tablesext = true; tablesfilename = copy_string( nmstr ); }
break;
case 23:
+
+/* Line 1455 of yacc.c */
#line 212 "parse.y"
- { scon_stk_ptr = (yyvsp[-3]); }
+ { scon_stk_ptr = (yyvsp[(2) - (5)]); }
break;
case 24:
+
+/* Line 1455 of yacc.c */
#line 214 "parse.y"
- { scon_stk_ptr = (yyvsp[-3]); }
+ { scon_stk_ptr = (yyvsp[(2) - (5)]); }
break;
case 26:
+
+/* Line 1455 of yacc.c */
#line 219 "parse.y"
{
/* Initialize for a parse of one rule. */
@@ -1537,9 +1799,11 @@ yyreduce:
break;
case 27:
+
+/* Line 1455 of yacc.c */
#line 232 "parse.y"
{
- pat = (yyvsp[0]);
+ pat = (yyvsp[(2) - (2)]);
finish_rule( pat, variable_trail_rule,
headcnt, trailcnt , previous_continued_action);
@@ -1575,9 +1839,11 @@ yyreduce:
break;
case 28:
+
+/* Line 1455 of yacc.c */
#line 268 "parse.y"
{
- pat = (yyvsp[0]);
+ pat = (yyvsp[(1) - (1)]);
finish_rule( pat, variable_trail_rule,
headcnt, trailcnt , previous_continued_action);
@@ -1601,6 +1867,8 @@ yyreduce:
break;
case 29:
+
+/* Line 1455 of yacc.c */
#line 292 "parse.y"
{
if ( scon_stk_ptr > 0 )
@@ -1626,21 +1894,29 @@ yyreduce:
break;
case 30:
+
+/* Line 1455 of yacc.c */
#line 315 "parse.y"
{ synerr( _("unrecognized rule") ); }
break;
case 31:
+
+/* Line 1455 of yacc.c */
#line 319 "parse.y"
{ (yyval) = scon_stk_ptr; }
break;
case 32:
+
+/* Line 1455 of yacc.c */
#line 323 "parse.y"
- { (yyval) = (yyvsp[-2]); }
+ { (yyval) = (yyvsp[(2) - (4)]); }
break;
case 33:
+
+/* Line 1455 of yacc.c */
#line 326 "parse.y"
{
(yyval) = scon_stk_ptr;
@@ -1660,16 +1936,22 @@ yyreduce:
break;
case 34:
+
+/* Line 1455 of yacc.c */
#line 343 "parse.y"
{ (yyval) = scon_stk_ptr; }
break;
case 37:
+
+/* Line 1455 of yacc.c */
#line 351 "parse.y"
{ synerr( _("bad start condition list") ); }
break;
case 38:
+
+/* Line 1455 of yacc.c */
#line 355 "parse.y"
{
if ( (scnum = sclookup( nmstr )) == 0 )
@@ -1694,17 +1976,19 @@ yyreduce:
break;
case 39:
+
+/* Line 1455 of yacc.c */
#line 378 "parse.y"
{
- if ( transchar[lastst[(yyvsp[0])]] != SYM_EPSILON )
+ if ( transchar[lastst[(yyvsp[(2) - (2)])]] != SYM_EPSILON )
/* Provide final transition \now/ so it
* will be marked as a trailing context
* state.
*/
- (yyvsp[0]) = link_machines( (yyvsp[0]),
+ (yyvsp[(2) - (2)]) = link_machines( (yyvsp[(2) - (2)]),
mkstate( SYM_EPSILON ) );
- mark_beginning_as_normal( (yyvsp[0]) );
+ mark_beginning_as_normal( (yyvsp[(2) - (2)]) );
current_state_type = STATE_NORMAL;
if ( previous_continued_action )
@@ -1739,7 +2023,7 @@ yyreduce:
* trail rule, and add_accept() can create
* a new state ...
*/
- add_accept( (yyvsp[-1]),
+ add_accept( (yyvsp[(1) - (2)]),
num_rules | YY_TRAILING_HEAD_MASK );
variable_trail_rule = true;
}
@@ -1747,16 +2031,20 @@ yyreduce:
else
trailcnt = rulelen;
- (yyval) = link_machines( (yyvsp[-1]), (yyvsp[0]) );
+ (yyval) = link_machines( (yyvsp[(1) - (2)]), (yyvsp[(2) - (2)]) );
}
break;
case 40:
+
+/* Line 1455 of yacc.c */
#line 434 "parse.y"
{ synerr( _("trailing context used twice") ); }
break;
case 41:
+
+/* Line 1455 of yacc.c */
#line 437 "parse.y"
{
headcnt = 0;
@@ -1788,7 +2076,7 @@ yyreduce:
/* Again, see the comment in the rule for
* "re2 re" above.
*/
- add_accept( (yyvsp[-1]),
+ add_accept( (yyvsp[(1) - (2)]),
num_rules | YY_TRAILING_HEAD_MASK );
variable_trail_rule = true;
}
@@ -1796,15 +2084,17 @@ yyreduce:
trlcontxt = true;
eps = mkstate( SYM_EPSILON );
- (yyval) = link_machines( (yyvsp[-1]),
+ (yyval) = link_machines( (yyvsp[(1) - (2)]),
link_machines( eps, mkstate( '\n' ) ) );
}
break;
case 42:
+
+/* Line 1455 of yacc.c */
#line 480 "parse.y"
{
- (yyval) = (yyvsp[0]);
+ (yyval) = (yyvsp[(1) - (1)]);
if ( trlcontxt )
{
@@ -1820,19 +2110,25 @@ yyreduce:
break;
case 43:
+
+/* Line 1455 of yacc.c */
#line 498 "parse.y"
{
varlength = true;
- (yyval) = mkor( (yyvsp[-2]), (yyvsp[0]) );
+ (yyval) = mkor( (yyvsp[(1) - (3)]), (yyvsp[(3) - (3)]) );
}
break;
case 44:
+
+/* Line 1455 of yacc.c */
#line 504 "parse.y"
- { (yyval) = (yyvsp[0]); }
+ { (yyval) = (yyvsp[(1) - (1)]); }
break;
case 45:
+
+/* Line 1455 of yacc.c */
#line 509 "parse.y"
{
/* This rule is written separately so the
@@ -1856,72 +2152,82 @@ yyreduce:
rulelen = 0;
current_state_type = STATE_TRAILING_CONTEXT;
- (yyval) = (yyvsp[-1]);
+ (yyval) = (yyvsp[(1) - (2)]);
}
break;
case 46:
+
+/* Line 1455 of yacc.c */
#line 536 "parse.y"
{
/* This is where concatenation of adjacent patterns
* gets done.
*/
- (yyval) = link_machines( (yyvsp[-1]), (yyvsp[0]) );
+ (yyval) = link_machines( (yyvsp[(1) - (2)]), (yyvsp[(2) - (2)]) );
}
break;
case 47:
+
+/* Line 1455 of yacc.c */
#line 544 "parse.y"
- { (yyval) = (yyvsp[0]); }
+ { (yyval) = (yyvsp[(1) - (1)]); }
break;
case 48:
+
+/* Line 1455 of yacc.c */
#line 547 "parse.y"
{
varlength = true;
- if ( (yyvsp[-3]) > (yyvsp[-1]) || (yyvsp[-3]) < 0 )
+ if ( (yyvsp[(3) - (6)]) > (yyvsp[(5) - (6)]) || (yyvsp[(3) - (6)]) < 0 )
{
synerr( _("bad iteration values") );
- (yyval) = (yyvsp[-5]);
+ (yyval) = (yyvsp[(1) - (6)]);
}
else
{
- if ( (yyvsp[-3]) == 0 )
+ if ( (yyvsp[(3) - (6)]) == 0 )
{
- if ( (yyvsp[-1]) <= 0 )
+ if ( (yyvsp[(5) - (6)]) <= 0 )
{
synerr(
_("bad iteration values") );
- (yyval) = (yyvsp[-5]);
+ (yyval) = (yyvsp[(1) - (6)]);
}
else
(yyval) = mkopt(
- mkrep( (yyvsp[-5]), 1, (yyvsp[-1]) ) );
+ mkrep( (yyvsp[(1) - (6)]), 1, (yyvsp[(5) - (6)]) ) );
}
else
- (yyval) = mkrep( (yyvsp[-5]), (yyvsp[-3]), (yyvsp[-1]) );
+ (yyval) = mkrep( (yyvsp[(1) - (6)]), (yyvsp[(3) - (6)]), (yyvsp[(5) - (6)]) );
}
}
break;
case 49:
+
+/* Line 1455 of yacc.c */
#line 575 "parse.y"
{
varlength = true;
- if ( (yyvsp[-2]) <= 0 )
+ if ( (yyvsp[(3) - (5)]) <= 0 )
{
synerr( _("iteration value must be positive") );
- (yyval) = (yyvsp[-4]);
+ (yyval) = (yyvsp[(1) - (5)]);
}
else
- (yyval) = mkrep( (yyvsp[-4]), (yyvsp[-2]), INFINITE_REPEAT );
+ (yyval) = mkrep( (yyvsp[(1) - (5)]), (yyvsp[(3) - (5)]), INFINITE_REPEAT );
}
break;
case 50:
+
+/* Line 1455 of yacc.c */
#line 589 "parse.y"
{
/* The series could be something like "(foo)",
@@ -1930,91 +2236,103 @@ yyreduce:
*/
varlength = true;
- if ( (yyvsp[-1]) <= 0 )
+ if ( (yyvsp[(3) - (4)]) <= 0 )
{
synerr( _("iteration value must be positive")
);
- (yyval) = (yyvsp[-3]);
+ (yyval) = (yyvsp[(1) - (4)]);
}
else
- (yyval) = link_machines( (yyvsp[-3]),
- copysingl( (yyvsp[-3]), (yyvsp[-1]) - 1 ) );
+ (yyval) = link_machines( (yyvsp[(1) - (4)]),
+ copysingl( (yyvsp[(1) - (4)]), (yyvsp[(3) - (4)]) - 1 ) );
}
break;
case 51:
+
+/* Line 1455 of yacc.c */
#line 611 "parse.y"
{
varlength = true;
- (yyval) = mkclos( (yyvsp[-1]) );
+ (yyval) = mkclos( (yyvsp[(1) - (2)]) );
}
break;
case 52:
+
+/* Line 1455 of yacc.c */
#line 618 "parse.y"
{
varlength = true;
- (yyval) = mkposcl( (yyvsp[-1]) );
+ (yyval) = mkposcl( (yyvsp[(1) - (2)]) );
}
break;
case 53:
+
+/* Line 1455 of yacc.c */
#line 624 "parse.y"
{
varlength = true;
- (yyval) = mkopt( (yyvsp[-1]) );
+ (yyval) = mkopt( (yyvsp[(1) - (2)]) );
}
break;
case 54:
+
+/* Line 1455 of yacc.c */
#line 630 "parse.y"
{
varlength = true;
- if ( (yyvsp[-3]) > (yyvsp[-1]) || (yyvsp[-3]) < 0 )
+ if ( (yyvsp[(3) - (6)]) > (yyvsp[(5) - (6)]) || (yyvsp[(3) - (6)]) < 0 )
{
synerr( _("bad iteration values") );
- (yyval) = (yyvsp[-5]);
+ (yyval) = (yyvsp[(1) - (6)]);
}
else
{
- if ( (yyvsp[-3]) == 0 )
+ if ( (yyvsp[(3) - (6)]) == 0 )
{
- if ( (yyvsp[-1]) <= 0 )
+ if ( (yyvsp[(5) - (6)]) <= 0 )
{
synerr(
_("bad iteration values") );
- (yyval) = (yyvsp[-5]);
+ (yyval) = (yyvsp[(1) - (6)]);
}
else
(yyval) = mkopt(
- mkrep( (yyvsp[-5]), 1, (yyvsp[-1]) ) );
+ mkrep( (yyvsp[(1) - (6)]), 1, (yyvsp[(5) - (6)]) ) );
}
else
- (yyval) = mkrep( (yyvsp[-5]), (yyvsp[-3]), (yyvsp[-1]) );
+ (yyval) = mkrep( (yyvsp[(1) - (6)]), (yyvsp[(3) - (6)]), (yyvsp[(5) - (6)]) );
}
}
break;
case 55:
+
+/* Line 1455 of yacc.c */
#line 658 "parse.y"
{
varlength = true;
- if ( (yyvsp[-2]) <= 0 )
+ if ( (yyvsp[(3) - (5)]) <= 0 )
{
synerr( _("iteration value must be positive") );
- (yyval) = (yyvsp[-4]);
+ (yyval) = (yyvsp[(1) - (5)]);
}
else
- (yyval) = mkrep( (yyvsp[-4]), (yyvsp[-2]), INFINITE_REPEAT );
+ (yyval) = mkrep( (yyvsp[(1) - (5)]), (yyvsp[(3) - (5)]), INFINITE_REPEAT );
}
break;
case 56:
+
+/* Line 1455 of yacc.c */
#line 672 "parse.y"
{
/* The singleton could be something like "(foo)",
@@ -2023,19 +2341,21 @@ yyreduce:
*/
varlength = true;
- if ( (yyvsp[-1]) <= 0 )
+ if ( (yyvsp[(3) - (4)]) <= 0 )
{
synerr( _("iteration value must be positive") );
- (yyval) = (yyvsp[-3]);
+ (yyval) = (yyvsp[(1) - (4)]);
}
else
- (yyval) = link_machines( (yyvsp[-3]),
- copysingl( (yyvsp[-3]), (yyvsp[-1]) - 1 ) );
+ (yyval) = link_machines( (yyvsp[(1) - (4)]),
+ copysingl( (yyvsp[(1) - (4)]), (yyvsp[(3) - (4)]) - 1 ) );
}
break;
case 57:
+
+/* Line 1455 of yacc.c */
#line 691 "parse.y"
{
if ( ! madeany )
@@ -2072,90 +2392,108 @@ yyreduce:
break;
case 58:
+
+/* Line 1455 of yacc.c */
#line 725 "parse.y"
{
- /* Sort characters for fast searching. We
- * use a shell sort since this list could
- * be large.
+ /* Sort characters for fast searching.
*/
- cshell( ccltbl + cclmap[(yyvsp[0])], ccllen[(yyvsp[0])], true );
+ qsort( ccltbl + cclmap[(yyvsp[(1) - (1)])], ccllen[(yyvsp[(1) - (1)])], sizeof (*ccltbl), cclcmp );
if ( useecs )
- mkeccl( ccltbl + cclmap[(yyvsp[0])], ccllen[(yyvsp[0])],
+ mkeccl( ccltbl + cclmap[(yyvsp[(1) - (1)])], ccllen[(yyvsp[(1) - (1)])],
nextecm, ecgroup, csize, csize );
++rulelen;
- if (ccl_has_nl[(yyvsp[0])])
+ if (ccl_has_nl[(yyvsp[(1) - (1)])])
rule_has_nl[num_rules] = true;
- (yyval) = mkstate( -(yyvsp[0]) );
+ (yyval) = mkstate( -(yyvsp[(1) - (1)]) );
}
break;
case 59:
-#line 745 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 743 "parse.y"
{
++rulelen;
- if (ccl_has_nl[(yyvsp[0])])
+ if (ccl_has_nl[(yyvsp[(1) - (1)])])
rule_has_nl[num_rules] = true;
- (yyval) = mkstate( -(yyvsp[0]) );
+ (yyval) = mkstate( -(yyvsp[(1) - (1)]) );
}
break;
case 60:
-#line 755 "parse.y"
- { (yyval) = (yyvsp[-1]); }
+
+/* Line 1455 of yacc.c */
+#line 753 "parse.y"
+ { (yyval) = (yyvsp[(2) - (3)]); }
break;
case 61:
-#line 758 "parse.y"
- { (yyval) = (yyvsp[-1]); }
+
+/* Line 1455 of yacc.c */
+#line 756 "parse.y"
+ { (yyval) = (yyvsp[(2) - (3)]); }
break;
case 62:
-#line 761 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 759 "parse.y"
{
++rulelen;
- if ((yyvsp[0]) == nlch)
+ if ((yyvsp[(1) - (1)]) == nlch)
rule_has_nl[num_rules] = true;
- if (sf_case_ins() && has_case((yyvsp[0])))
+ if (sf_case_ins() && has_case((yyvsp[(1) - (1)])))
/* create an alternation, as in (a|A) */
- (yyval) = mkor (mkstate((yyvsp[0])), mkstate(reverse_case((yyvsp[0]))));
+ (yyval) = mkor (mkstate((yyvsp[(1) - (1)])), mkstate(reverse_case((yyvsp[(1) - (1)]))));
else
- (yyval) = mkstate( (yyvsp[0]) );
+ (yyval) = mkstate( (yyvsp[(1) - (1)]) );
}
break;
case 63:
-#line 775 "parse.y"
- { (yyval) = ccl_set_diff ((yyvsp[-2]), (yyvsp[0])); }
+
+/* Line 1455 of yacc.c */
+#line 773 "parse.y"
+ { (yyval) = ccl_set_diff ((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)])); }
break;
case 64:
-#line 776 "parse.y"
- { (yyval) = ccl_set_union ((yyvsp[-2]), (yyvsp[0])); }
+
+/* Line 1455 of yacc.c */
+#line 774 "parse.y"
+ { (yyval) = ccl_set_union ((yyvsp[(1) - (3)]), (yyvsp[(3) - (3)])); }
break;
case 66:
-#line 782 "parse.y"
- { (yyval) = (yyvsp[-1]); }
+
+/* Line 1455 of yacc.c */
+#line 780 "parse.y"
+ { (yyval) = (yyvsp[(2) - (3)]); }
break;
case 67:
-#line 785 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 783 "parse.y"
{
- cclnegate( (yyvsp[-1]) );
- (yyval) = (yyvsp[-1]);
+ cclnegate( (yyvsp[(3) - (4)]) );
+ (yyval) = (yyvsp[(3) - (4)]);
}
break;
case 68:
-#line 792 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 790 "parse.y"
{
if (sf_case_ins())
@@ -2166,87 +2504,93 @@ yyreduce:
* sure what range the user is trying to express.
* Examples: [@-z] or [S-t]
*/
- if (has_case ((yyvsp[-2])) != has_case ((yyvsp[0]))
- || (has_case ((yyvsp[-2])) && (b_islower ((yyvsp[-2])) != b_islower ((yyvsp[0]))))
- || (has_case ((yyvsp[-2])) && (b_isupper ((yyvsp[-2])) != b_isupper ((yyvsp[0])))))
+ if (has_case ((yyvsp[(2) - (4)])) != has_case ((yyvsp[(4) - (4)]))
+ || (has_case ((yyvsp[(2) - (4)])) && (b_islower ((yyvsp[(2) - (4)])) != b_islower ((yyvsp[(4) - (4)]))))
+ || (has_case ((yyvsp[(2) - (4)])) && (b_isupper ((yyvsp[(2) - (4)])) != b_isupper ((yyvsp[(4) - (4)])))))
format_warn3 (
_("the character range [%c-%c] is ambiguous in a case-insensitive scanner"),
- (yyvsp[-2]), (yyvsp[0]));
+ (yyvsp[(2) - (4)]), (yyvsp[(4) - (4)]));
/* If the range spans uppercase characters but not
* lowercase (or vice-versa), then should we automatically
* include lowercase characters in the range?
* Example: [@-_] spans [a-z] but not [A-Z]
*/
- else if (!has_case ((yyvsp[-2])) && !has_case ((yyvsp[0])) && !range_covers_case ((yyvsp[-2]), (yyvsp[0])))
+ else if (!has_case ((yyvsp[(2) - (4)])) && !has_case ((yyvsp[(4) - (4)])) && !range_covers_case ((yyvsp[(2) - (4)]), (yyvsp[(4) - (4)])))
format_warn3 (
_("the character range [%c-%c] is ambiguous in a case-insensitive scanner"),
- (yyvsp[-2]), (yyvsp[0]));
+ (yyvsp[(2) - (4)]), (yyvsp[(4) - (4)]));
}
- if ( (yyvsp[-2]) > (yyvsp[0]) )
+ if ( (yyvsp[(2) - (4)]) > (yyvsp[(4) - (4)]) )
synerr( _("negative range in character class") );
else
{
- for ( i = (yyvsp[-2]); i <= (yyvsp[0]); ++i )
- ccladd( (yyvsp[-3]), i );
+ for ( i = (yyvsp[(2) - (4)]); i <= (yyvsp[(4) - (4)]); ++i )
+ ccladd( (yyvsp[(1) - (4)]), i );
/* Keep track if this ccl is staying in
* alphabetical order.
*/
- cclsorted = cclsorted && ((yyvsp[-2]) > lastchar);
- lastchar = (yyvsp[0]);
+ cclsorted = cclsorted && ((yyvsp[(2) - (4)]) > lastchar);
+ lastchar = (yyvsp[(4) - (4)]);
/* Do it again for upper/lowercase */
- if (sf_case_ins() && has_case((yyvsp[-2])) && has_case((yyvsp[0]))){
- (yyvsp[-2]) = reverse_case ((yyvsp[-2]));
- (yyvsp[0]) = reverse_case ((yyvsp[0]));
+ if (sf_case_ins() && has_case((yyvsp[(2) - (4)])) && has_case((yyvsp[(4) - (4)]))){
+ (yyvsp[(2) - (4)]) = reverse_case ((yyvsp[(2) - (4)]));
+ (yyvsp[(4) - (4)]) = reverse_case ((yyvsp[(4) - (4)]));
- for ( i = (yyvsp[-2]); i <= (yyvsp[0]); ++i )
- ccladd( (yyvsp[-3]), i );
+ for ( i = (yyvsp[(2) - (4)]); i <= (yyvsp[(4) - (4)]); ++i )
+ ccladd( (yyvsp[(1) - (4)]), i );
- cclsorted = cclsorted && ((yyvsp[-2]) > lastchar);
- lastchar = (yyvsp[0]);
+ cclsorted = cclsorted && ((yyvsp[(2) - (4)]) > lastchar);
+ lastchar = (yyvsp[(4) - (4)]);
}
}
- (yyval) = (yyvsp[-3]);
+ (yyval) = (yyvsp[(1) - (4)]);
}
break;
case 69:
-#line 852 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 850 "parse.y"
{
- ccladd( (yyvsp[-1]), (yyvsp[0]) );
- cclsorted = cclsorted && ((yyvsp[0]) > lastchar);
- lastchar = (yyvsp[0]);
+ ccladd( (yyvsp[(1) - (2)]), (yyvsp[(2) - (2)]) );
+ cclsorted = cclsorted && ((yyvsp[(2) - (2)]) > lastchar);
+ lastchar = (yyvsp[(2) - (2)]);
/* Do it again for upper/lowercase */
- if (sf_case_ins() && has_case((yyvsp[0]))){
- (yyvsp[0]) = reverse_case ((yyvsp[0]));
- ccladd ((yyvsp[-1]), (yyvsp[0]));
+ if (sf_case_ins() && has_case((yyvsp[(2) - (2)]))){
+ (yyvsp[(2) - (2)]) = reverse_case ((yyvsp[(2) - (2)]));
+ ccladd ((yyvsp[(1) - (2)]), (yyvsp[(2) - (2)]));
- cclsorted = cclsorted && ((yyvsp[0]) > lastchar);
- lastchar = (yyvsp[0]);
+ cclsorted = cclsorted && ((yyvsp[(2) - (2)]) > lastchar);
+ lastchar = (yyvsp[(2) - (2)]);
}
- (yyval) = (yyvsp[-1]);
+ (yyval) = (yyvsp[(1) - (2)]);
}
break;
case 70:
-#line 870 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 868 "parse.y"
{
/* Too hard to properly maintain cclsorted. */
cclsorted = false;
- (yyval) = (yyvsp[-1]);
+ (yyval) = (yyvsp[(1) - (2)]);
}
break;
case 71:
-#line 877 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 875 "parse.y"
{
cclsorted = true;
lastchar = 0;
@@ -2255,37 +2599,51 @@ yyreduce:
break;
case 72:
-#line 885 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 883 "parse.y"
{ CCL_EXPR(isalnum); }
break;
case 73:
-#line 886 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 884 "parse.y"
{ CCL_EXPR(isalpha); }
break;
case 74:
-#line 887 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 885 "parse.y"
{ CCL_EXPR(IS_BLANK); }
break;
case 75:
-#line 888 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 886 "parse.y"
{ CCL_EXPR(iscntrl); }
break;
case 76:
-#line 889 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 887 "parse.y"
{ CCL_EXPR(isdigit); }
break;
case 77:
-#line 890 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 888 "parse.y"
{ CCL_EXPR(isgraph); }
break;
case 78:
-#line 891 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 889 "parse.y"
{
CCL_EXPR(islower);
if (sf_case_ins())
@@ -2294,27 +2652,37 @@ yyreduce:
break;
case 79:
-#line 896 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 894 "parse.y"
{ CCL_EXPR(isprint); }
break;
case 80:
-#line 897 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 895 "parse.y"
{ CCL_EXPR(ispunct); }
break;
case 81:
-#line 898 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 896 "parse.y"
{ CCL_EXPR(isspace); }
break;
case 82:
-#line 899 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 897 "parse.y"
{ CCL_EXPR(isxdigit); }
break;
case 83:
-#line 900 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 898 "parse.y"
{
CCL_EXPR(isupper);
if (sf_case_ins())
@@ -2323,57 +2691,79 @@ yyreduce:
break;
case 84:
-#line 906 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 904 "parse.y"
{ CCL_NEG_EXPR(isalnum); }
break;
case 85:
-#line 907 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 905 "parse.y"
{ CCL_NEG_EXPR(isalpha); }
break;
case 86:
-#line 908 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 906 "parse.y"
{ CCL_NEG_EXPR(IS_BLANK); }
break;
case 87:
-#line 909 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 907 "parse.y"
{ CCL_NEG_EXPR(iscntrl); }
break;
case 88:
-#line 910 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 908 "parse.y"
{ CCL_NEG_EXPR(isdigit); }
break;
case 89:
-#line 911 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 909 "parse.y"
{ CCL_NEG_EXPR(isgraph); }
break;
case 90:
-#line 912 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 910 "parse.y"
{ CCL_NEG_EXPR(isprint); }
break;
case 91:
-#line 913 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 911 "parse.y"
{ CCL_NEG_EXPR(ispunct); }
break;
case 92:
-#line 914 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 912 "parse.y"
{ CCL_NEG_EXPR(isspace); }
break;
case 93:
-#line 915 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 913 "parse.y"
{ CCL_NEG_EXPR(isxdigit); }
break;
case 94:
-#line 916 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 914 "parse.y"
{
if ( sf_case_ins() )
warn(_("[:^lower:] is ambiguous in case insensitive scanner"));
@@ -2383,7 +2773,9 @@ yyreduce:
break;
case 95:
-#line 922 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 920 "parse.y"
{
if ( sf_case_ins() )
warn(_("[:^upper:] ambiguous in case insensitive scanner"));
@@ -2393,43 +2785,45 @@ yyreduce:
break;
case 96:
-#line 931 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 929 "parse.y"
{
- if ( (yyvsp[0]) == nlch )
+ if ( (yyvsp[(2) - (2)]) == nlch )
rule_has_nl[num_rules] = true;
++rulelen;
- if (sf_case_ins() && has_case((yyvsp[0])))
- (yyval) = mkor (mkstate((yyvsp[0])), mkstate(reverse_case((yyvsp[0]))));
+ if (sf_case_ins() && has_case((yyvsp[(2) - (2)])))
+ (yyval) = mkor (mkstate((yyvsp[(2) - (2)])), mkstate(reverse_case((yyvsp[(2) - (2)]))));
else
- (yyval) = mkstate ((yyvsp[0]));
+ (yyval) = mkstate ((yyvsp[(2) - (2)]));
- (yyval) = link_machines( (yyvsp[-1]), (yyval));
+ (yyval) = link_machines( (yyvsp[(1) - (2)]), (yyval));
}
break;
case 97:
-#line 946 "parse.y"
+
+/* Line 1455 of yacc.c */
+#line 944 "parse.y"
{ (yyval) = mkstate( SYM_EPSILON ); }
break;
+
+/* Line 1455 of yacc.c */
+#line 2817 "parse.c"
default: break;
}
+ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
-/* Line 1126 of yacc.c. */
-#line 2423 "parse.c"
-
- yyvsp -= yylen;
- yyssp -= yylen;
-
-
+ YYPOPSTACK (yylen);
+ yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
*++yyvsp = yyval;
-
/* Now `shift' the result of the reduction. Determine what state
that goes to, based on the state we popped back to and the rule
number reduced by. */
@@ -2453,133 +2847,65 @@ yyerrlab:
if (!yyerrstatus)
{
++yynerrs;
-#if YYERROR_VERBOSE
- yyn = yypact[yystate];
-
- if (YYPACT_NINF < yyn && yyn < YYLAST)
- {
- int yytype = YYTRANSLATE (yychar);
- YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
- YYSIZE_T yysize = yysize0;
- YYSIZE_T yysize1;
- int yysize_overflow = 0;
- char *yymsg = 0;
-# define YYERROR_VERBOSE_ARGS_MAXIMUM 5
- char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
- int yyx;
-
-#if 0
- /* This is so xgettext sees the translatable formats that are
- constructed on the fly. */
- YY_("syntax error, unexpected %s");
- YY_("syntax error, unexpected %s, expecting %s");
- YY_("syntax error, unexpected %s, expecting %s or %s");
- YY_("syntax error, unexpected %s, expecting %s or %s or %s");
- YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
-#endif
- char *yyfmt;
- char const *yyf;
- static char const yyunexpected[] = "syntax error, unexpected %s";
- static char const yyexpecting[] = ", expecting %s";
- static char const yyor[] = " or %s";
- char yyformat[sizeof yyunexpected
- + sizeof yyexpecting - 1
- + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
- * (sizeof yyor - 1))];
- char const *yyprefix = yyexpecting;
-
- /* Start YYX at -YYN if negative to avoid negative indexes in
- YYCHECK. */
- int yyxbegin = yyn < 0 ? -yyn : 0;
-
- /* Stay within bounds of both yycheck and yytname. */
- int yychecklim = YYLAST - yyn;
- int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
- int yycount = 1;
-
- yyarg[0] = yytname[yytype];
- yyfmt = yystpcpy (yyformat, yyunexpected);
-
- for (yyx = yyxbegin; yyx < yyxend; ++yyx)
- if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+#if ! YYERROR_VERBOSE
+ yyerror (YY_("syntax error"));
+#else
+ {
+ YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
+ if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
+ {
+ YYSIZE_T yyalloc = 2 * yysize;
+ if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
+ yyalloc = YYSTACK_ALLOC_MAXIMUM;
+ if (yymsg != yymsgbuf)
+ YYSTACK_FREE (yymsg);
+ yymsg = (char *) YYSTACK_ALLOC (yyalloc);
+ if (yymsg)
+ yymsg_alloc = yyalloc;
+ else
{
- if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
- {
- yycount = 1;
- yysize = yysize0;
- yyformat[sizeof yyunexpected - 1] = '\0';
- break;
- }
- yyarg[yycount++] = yytname[yyx];
- yysize1 = yysize + yytnamerr (0, yytname[yyx]);
- yysize_overflow |= yysize1 < yysize;
- yysize = yysize1;
- yyfmt = yystpcpy (yyfmt, yyprefix);
- yyprefix = yyor;
+ yymsg = yymsgbuf;
+ yymsg_alloc = sizeof yymsgbuf;
}
+ }
- yyf = YY_(yyformat);
- yysize1 = yysize + yystrlen (yyf);
- yysize_overflow |= yysize1 < yysize;
- yysize = yysize1;
-
- if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM)
- yymsg = (char *) YYSTACK_ALLOC (yysize);
- if (yymsg)
- {
- /* Avoid sprintf, as that infringes on the user's name space.
- Don't have undefined behavior even if the translation
- produced a string with the wrong number of "%s"s. */
- char *yyp = yymsg;
- int yyi = 0;
- while ((*yyp = *yyf))
- {
- if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
- {
- yyp += yytnamerr (yyp, yyarg[yyi++]);
- yyf += 2;
- }
- else
- {
- yyp++;
- yyf++;
- }
- }
- yyerror (yymsg);
- YYSTACK_FREE (yymsg);
- }
- else
- {
- yyerror (YY_("syntax error"));
+ if (0 < yysize && yysize <= yymsg_alloc)
+ {
+ (void) yysyntax_error (yymsg, yystate, yychar);
+ yyerror (yymsg);
+ }
+ else
+ {
+ yyerror (YY_("syntax error"));
+ if (yysize != 0)
goto yyexhaustedlab;
- }
- }
- else
-#endif /* YYERROR_VERBOSE */
- yyerror (YY_("syntax error"));
+ }
+ }
+#endif
}
if (yyerrstatus == 3)
{
- /* If just tried and failed to reuse look-ahead token after an
+ /* If just tried and failed to reuse lookahead token after an
error, discard it. */
if (yychar <= YYEOF)
- {
+ {
/* Return failure if at end of input. */
if (yychar == YYEOF)
YYABORT;
- }
+ }
else
{
- yydestruct ("Error: discarding", yytoken, &yylval);
+ yydestruct ("Error: discarding",
+ yytoken, &yylval);
yychar = YYEMPTY;
}
}
- /* Else will try to reuse look-ahead token after shifting the error
+ /* Else will try to reuse lookahead token after shifting the error
token. */
goto yyerrlab1;
@@ -2592,11 +2918,14 @@ yyerrorlab:
/* Pacify compilers like GCC when the user code never invokes
YYERROR and the label yyerrorlab therefore never appears in user
code. */
- if (0)
+ if (/*CONSTCOND*/ 0)
goto yyerrorlab;
-yyvsp -= yylen;
- yyssp -= yylen;
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYERROR. */
+ YYPOPSTACK (yylen);
+ yylen = 0;
+ YY_STACK_PRINT (yyss, yyssp);
yystate = *yyssp;
goto yyerrlab1;
@@ -2626,19 +2955,17 @@ yyerrlab1:
YYABORT;
- yydestruct ("Error: popping", yystos[yystate], yyvsp);
- YYPOPSTACK;
+ yydestruct ("Error: popping",
+ yystos[yystate], yyvsp);
+ YYPOPSTACK (1);
yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
}
- if (yyn == YYFINAL)
- YYACCEPT;
-
*++yyvsp = yylval;
- /* Shift the error token. */
+ /* Shift the error token. */
YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
yystate = yyn;
@@ -2659,7 +2986,7 @@ yyabortlab:
yyresult = 1;
goto yyreturn;
-#ifndef yyoverflow
+#if !defined(yyoverflow) || YYERROR_VERBOSE
/*-------------------------------------------------.
| yyexhaustedlab -- memory exhaustion comes here. |
`-------------------------------------------------*/
@@ -2670,24 +2997,35 @@ yyexhaustedlab:
#endif
yyreturn:
- if (yychar != YYEOF && yychar != YYEMPTY)
+ if (yychar != YYEMPTY)
yydestruct ("Cleanup: discarding lookahead",
yytoken, &yylval);
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYABORT or YYACCEPT. */
+ YYPOPSTACK (yylen);
+ YY_STACK_PRINT (yyss, yyssp);
while (yyssp != yyss)
{
yydestruct ("Cleanup: popping",
yystos[*yyssp], yyvsp);
- YYPOPSTACK;
+ YYPOPSTACK (1);
}
#ifndef yyoverflow
if (yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
- return yyresult;
+#if YYERROR_VERBOSE
+ if (yymsg != yymsgbuf)
+ YYSTACK_FREE (yymsg);
+#endif
+ /* Make sure YYID is used. */
+ return YYID (yyresult);
}
-#line 949 "parse.y"
+
+/* Line 1675 of yacc.c */
+#line 947 "parse.y"
@@ -2710,6 +3048,10 @@ void build_eof_action()
else
{
sceof[scon_stk[i]] = true;
+
+ if (previous_continued_action /* && previous action was regular */)
+ add_action("YY_RULE_SETUP\n");
+
snprintf( action_text, sizeof(action_text), "case YY_STATE_EOF(%s):\n",
scname[scon_stk[i]] );
add_action( action_text );
diff --git a/parse.h b/parse.h
index 393c0ebc013e..21bdec0cc77c 100644
--- a/parse.h
+++ b/parse.h
@@ -1,27 +1,37 @@
-/* A Bison parser, made by GNU Bison 2.1. */
-/* Skeleton parser for Yacc-like parsing with Bison,
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+/* A Bison parser, made by GNU Bison 2.4.1. */
- This program is free software; you can redistribute it and/or modify
+/* Skeleton interface for Bison's Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
-
+
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
-/* As a special exception, when this file is copied by Bison into a
- Bison output file, you may use that output file without restriction.
- This special exception was added by the Free Software Foundation
- in version 1.24 of Bison. */
/* Tokens. */
#ifndef YYTOKENTYPE
@@ -126,14 +136,13 @@
-#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef int YYSTYPE;
+# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
-# define YYSTYPE_IS_TRIVIAL 1
#endif
extern YYSTYPE yylval;
-
diff --git a/parse.y b/parse.y
index 871ff7e6b6db..bbc738c8d4c9 100644
--- a/parse.y
+++ b/parse.y
@@ -723,11 +723,9 @@ singleton : singleton '*'
| fullccl
{
- /* Sort characters for fast searching. We
- * use a shell sort since this list could
- * be large.
+ /* Sort characters for fast searching.
*/
- cshell( ccltbl + cclmap[$1], ccllen[$1], true );
+ qsort( ccltbl + cclmap[$1], ccllen[$1], sizeof (*ccltbl), cclcmp );
if ( useecs )
mkeccl( ccltbl + cclmap[$1], ccllen[$1],
@@ -968,6 +966,10 @@ void build_eof_action()
else
{
sceof[scon_stk[i]] = true;
+
+ if (previous_continued_action /* && previous action was regular */)
+ add_action("YY_RULE_SETUP\n");
+
snprintf( action_text, sizeof(action_text), "case YY_STATE_EOF(%s):\n",
scname[scon_stk[i]] );
add_action( action_text );
diff --git a/regex.c b/regex.c
index 553397174f10..e12cf6501819 100644
--- a/regex.c
+++ b/regex.c
@@ -55,14 +55,20 @@ void flex_regcomp(regex_t *preg, const char *regex, int cflags)
if ((err = regcomp (preg, regex, cflags)) != 0) {
const int errbuf_sz = 200;
- char * errbuf=0;
+ char *errbuf, *rxerr;
- errbuf = (char*)flex_alloc(errbuf_sz *sizeof(char));
- regerror (err, preg, errbuf, errbuf_sz);
- snprintf (errbuf, errbuf_sz, "regcomp failed: %s\n", errbuf);
+ errbuf = (char*)flex_alloc(errbuf_sz *sizeof(char));
+ if (!errbuf)
+ flexfatal(_("Unable to allocate buffer to report regcomp"));
+ rxerr = (char*)flex_alloc(errbuf_sz *sizeof(char));
+ if (!rxerr)
+ flexfatal(_("Unable to allocate buffer for regerror"));
+ regerror (err, preg, rxerr, errbuf_sz);
+ snprintf (errbuf, errbuf_sz, "regcomp for \"%s\" failed: %s", regex, rxerr);
flexfatal (errbuf);
free(errbuf);
+ free(rxerr);
}
}
@@ -80,6 +86,8 @@ char *regmatch_dup (regmatch_t * m, const char *src)
return NULL;
len = m->rm_eo - m->rm_so;
str = (char *) flex_alloc ((len + 1) * sizeof (char));
+ if (!str)
+ flexfatal(_("Unable to allocate a copy of the match"));
strncpy (str, src + m->rm_so, len);
str[len] = 0;
return str;
diff --git a/scan.c b/scan.c
index d7f5db325b5b..1c5894d9b0e6 100644
--- a/scan.c
+++ b/scan.c
@@ -8,7 +8,7 @@
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
-#define YY_FLEX_SUBMINOR_VERSION 35
+#define YY_FLEX_SUBMINOR_VERSION 36
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
@@ -53,7 +53,6 @@ typedef int flex_int32_t;
typedef unsigned char flex_uint8_t;
typedef unsigned short int flex_uint16_t;
typedef unsigned int flex_uint32_t;
-#endif /* ! C99 */
/* Limits of integral types. */
#ifndef INT8_MIN
@@ -84,6 +83,8 @@ typedef unsigned int flex_uint32_t;
#define UINT32_MAX (4294967295U)
#endif
+#endif /* ! C99 */
+
#endif /* ! FLEXINT_H */
#ifdef __cplusplus
@@ -152,7 +153,12 @@ typedef unsigned int flex_uint32_t;
typedef struct yy_buffer_state *YY_BUFFER_STATE;
#endif
-extern int yyleng;
+#ifndef YY_TYPEDEF_YY_SIZE_T
+#define YY_TYPEDEF_YY_SIZE_T
+typedef size_t yy_size_t;
+#endif
+
+extern yy_size_t yyleng;
extern FILE *yyin, *yyout;
@@ -178,11 +184,6 @@ extern FILE *yyin, *yyout;
#define unput(c) yyunput( c, (yytext_ptr) )
-#ifndef YY_TYPEDEF_YY_SIZE_T
-#define YY_TYPEDEF_YY_SIZE_T
-typedef size_t yy_size_t;
-#endif
-
#ifndef YY_STRUCT_YY_BUFFER_STATE
#define YY_STRUCT_YY_BUFFER_STATE
struct yy_buffer_state
@@ -200,7 +201,7 @@ struct yy_buffer_state
/* Number of characters read into yy_ch_buf, not including EOB
* characters.
*/
- int yy_n_chars;
+ yy_size_t yy_n_chars;
/* Whether we "own" the buffer - i.e., we know we created it,
* and can realloc() it to grow it, and should free() it to
@@ -270,8 +271,8 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
/* yy_hold_char holds the character lost when yytext is formed. */
static char yy_hold_char;
-static int yy_n_chars; /* number of characters read into yy_ch_buf */
-int yyleng;
+static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */
+yy_size_t yyleng;
/* Points to current character in buffer. */
static char *yy_c_buf_p = (char *) 0;
@@ -299,7 +300,7 @@ static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file );
YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size );
YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str );
-YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,int len );
+YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len );
void *yyalloc (yy_size_t );
void *yyrealloc (void *,yy_size_t );
@@ -1973,7 +1974,7 @@ extern const char *escaped_qstart, *escaped_qend;
-#line 1977 "scan.c"
+#line 1978 "scan.c"
#define INITIAL 0
#define SECT2 1
@@ -2035,7 +2036,7 @@ FILE *yyget_out (void );
void yyset_out (FILE * out_str );
-int yyget_leng (void );
+yy_size_t yyget_leng (void );
char *yyget_text (void );
@@ -2093,7 +2094,7 @@ static int input (void );
/* This used to be an fputs(), but since the string might contain NUL's,
* we now use fwrite().
*/
-#define ECHO fwrite( yytext, yyleng, 1, yyout )
+#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
#endif
/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
@@ -2104,7 +2105,7 @@ static int input (void );
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
{ \
int c = '*'; \
- int n; \
+ size_t n; \
for ( n = 0; n < max_size && \
(c = getc( yyin )) != EOF && c != '\n'; ++n ) \
buf[n] = (char) c; \
@@ -2200,7 +2201,7 @@ YY_DECL
Char nmdef[MAXLINE];
-#line 2204 "scan.c"
+#line 2205 "scan.c"
if ( !(yy_init) )
{
@@ -2416,7 +2417,7 @@ YY_RULE_SETUP
}
else
{
- synerr( _("Input line too long\n"));
+ synerr( _("Definition name too long\n"));
FLEX_EXIT(EXIT_FAILURE);
}
@@ -2649,7 +2650,7 @@ YY_RULE_SETUP
}
else
{
- synerr( _("Input line too long\n"));
+ format_synerr( _("Definition value for {%s} too long\n"), nmstr);
FLEX_EXIT(EXIT_FAILURE);
}
/* Skip trailing whitespace. */
@@ -3096,7 +3097,7 @@ YY_RULE_SETUP
}
else
{
- synerr( _("Input line too long\n"));
+ synerr( _("Option line too long\n"));
FLEX_EXIT(EXIT_FAILURE);
}
nmstr[strlen( nmstr ) - 1] = '\0';
@@ -3908,7 +3909,7 @@ YY_RULE_SETUP
case 225:
YY_RULE_SETUP
#line 886 "scan.l"
-ACTION_ECHO_QEND;
+ACTION_ECHO_QSTART;
YY_BREAK
case 226:
YY_RULE_SETUP
@@ -3954,7 +3955,7 @@ ACTION_ECHO; --bracelevel;
case 231:
YY_RULE_SETUP
#line 909 "scan.l"
-ACTION_ECHO_QEND;
+ACTION_ECHO_QSTART;
YY_BREAK
case 232:
YY_RULE_SETUP
@@ -4107,7 +4108,7 @@ YY_RULE_SETUP
#line 969 "scan.l"
YY_FATAL_ERROR( "flex scanner jammed" );
YY_BREAK
-#line 4111 "scan.c"
+#line 4112 "scan.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(SECT2):
case YY_STATE_EOF(CODEBLOCK):
@@ -4306,7 +4307,7 @@ static int yy_get_next_buffer (void)
else
{
- int num_to_read =
+ yy_size_t num_to_read =
YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
while ( num_to_read <= 0 )
@@ -4322,7 +4323,7 @@ static int yy_get_next_buffer (void)
/* Read in more data. */
YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
- (yy_n_chars), (size_t) num_to_read );
+ (yy_n_chars), num_to_read );
YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
}
@@ -4413,7 +4414,7 @@ static int yy_get_next_buffer (void)
if ( ! yy_is_jam )
*(yy_state_ptr)++ = yy_current_state;
- return yy_is_jam ? 0 : yy_current_state;
+ return yy_is_jam ? 0 : yy_current_state;
}
static void yyunput (int c, register char * yy_bp )
@@ -4428,7 +4429,7 @@ static int yy_get_next_buffer (void)
if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
{ /* need to shift things up to make room */
/* +2 for EOB chars. */
- register int number_to_move = (yy_n_chars) + 2;
+ register yy_size_t number_to_move = (yy_n_chars) + 2;
register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
register char *source =
@@ -4477,7 +4478,7 @@ static int yy_get_next_buffer (void)
else
{ /* need more input */
- int offset = (yy_c_buf_p) - (yytext_ptr);
+ yy_size_t offset = (yy_c_buf_p) - (yytext_ptr);
++(yy_c_buf_p);
switch ( yy_get_next_buffer( ) )
@@ -4639,10 +4640,6 @@ static void yy_load_buffer_state (void)
yyfree((void *) b );
}
-#ifndef __cplusplus
-extern int isatty (int );
-#endif /* __cplusplus */
-
/* Initializes or reinitializes a buffer.
* This function is sometimes called more than once on the same buffer,
* such as during a yyrestart() or at EOF.
@@ -4755,7 +4752,7 @@ void yypop_buffer_state (void)
*/
static void yyensure_buffer_stack (void)
{
- int num_to_alloc;
+ yy_size_t num_to_alloc;
if (!(yy_buffer_stack)) {
@@ -4847,12 +4844,12 @@ YY_BUFFER_STATE yy_scan_string (yyconst char * yystr )
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
* scan from a @e copy of @a bytes.
- * @param bytes the byte buffer to scan
- * @param len the number of bytes in the buffer pointed to by @a bytes.
+ * @param yybytes the byte buffer to scan
+ * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
*
* @return the newly allocated buffer state object.
*/
-YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, int _yybytes_len )
+YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len )
{
YY_BUFFER_STATE b;
char *buf;
@@ -4971,7 +4968,7 @@ FILE *yyget_out (void)
/** Get the length of the current token.
*
*/
-int yyget_leng (void)
+yy_size_t yyget_leng (void)
{
return yyleng;
}
diff --git a/scan.l b/scan.l
index 23158764112f..1bcb09b42c33 100644
--- a/scan.l
+++ b/scan.l
@@ -189,7 +189,7 @@ M4QEND "]]"
}
else
{
- synerr( _("Input line too long\n"));
+ synerr( _("Definition name too long\n"));
FLEX_EXIT(EXIT_FAILURE);
}
@@ -297,7 +297,7 @@ M4QEND "]]"
}
else
{
- synerr( _("Input line too long\n"));
+ format_synerr( _("Definition value for {%s} too long\n"), nmstr);
FLEX_EXIT(EXIT_FAILURE);
}
/* Skip trailing whitespace. */
@@ -440,7 +440,7 @@ M4QEND "]]"
}
else
{
- synerr( _("Input line too long\n"));
+ synerr( _("Option line too long\n"));
FLEX_EXIT(EXIT_FAILURE);
}
nmstr[strlen( nmstr ) - 1] = '\0';
@@ -883,7 +883,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */
}
}
- {M4QSTART} ACTION_ECHO_QEND;
+ {M4QSTART} ACTION_ECHO_QSTART;
{M4QEND} ACTION_ECHO_QEND;
. ACTION_ECHO;
{NL} {
@@ -906,7 +906,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */
<ACTION>{
"{" ACTION_ECHO; ++bracelevel;
"}" ACTION_ECHO; --bracelevel;
- {M4QSTART} ACTION_ECHO_QEND;
+ {M4QSTART} ACTION_ECHO_QSTART;
{M4QEND} ACTION_ECHO_QEND;
[^[:alpha:]_{}"'/\n\[\]]+ ACTION_ECHO;
[\[\]] ACTION_ECHO;
diff --git a/scanflags.c b/scanflags.c
index 20ff501116f2..f75aa827de14 100644
--- a/scanflags.c
+++ b/scanflags.c
@@ -60,6 +60,9 @@ sf_init (void)
{
assert(_sf_stk == NULL);
_sf_stk = (scanflags_t*) flex_alloc ( sizeof(scanflags_t) * (_sf_max = 32));
+ if (!_sf_stk)
+ lerrsf_fatal(_("Unable to allocate %ld of stack"),
+ (long)sizeof(scanflags_t));
_sf_stk[_sf_top_ix] = 0;
}
diff --git a/scanopt.c b/scanopt.c
index 2c8d59319dbf..f76ecd34dac0 100644
--- a/scanopt.c
+++ b/scanopt.c
@@ -189,7 +189,7 @@ scanopt_t *scanopt_init (options, argc, argv, flags)
s->aux = (struct _aux *) malloc (s->optc * sizeof (struct _aux));
for (i = 0; i < s->optc; i++) {
- const char *p, *pname;
+ const Char *p, *pname;
const struct optspec_t *opt;
struct _aux *aux;
@@ -200,11 +200,11 @@ scanopt_t *scanopt_init (options, argc, argv, flags)
if (opt->opt_fmt[0] == '-' && opt->opt_fmt[1] == '-') {
aux->flags |= IS_LONG;
- pname = opt->opt_fmt + 2;
+ pname = (const Char *)(opt->opt_fmt + 2);
s->has_long = 1;
}
else {
- pname = opt->opt_fmt + 1;
+ pname = (const Char *)(opt->opt_fmt + 1);
s->has_short = 1;
}
aux->printlen = strlen (opt->opt_fmt);
@@ -481,7 +481,7 @@ int scanopt_usage (scanner, fp, usage)
while (*p && n < maxlen[1]
&& *p != '\n') {
- if (isspace (*p)
+ if (isspace ((Char)(*p))
|| *p == '-') lastws =
p;
n++;
@@ -504,8 +504,7 @@ int scanopt_usage (scanner, fp, usage)
if (lastws) {
fprintf (fp,
"%.*s\n",
- lastws -
- pstart,
+ (int)(lastws - pstart),
pstart);
pstart =
lastws + 1;
diff --git a/skel.c b/skel.c
index ee9f6ef30b5c..45a4a1105678 100644
--- a/skel.c
+++ b/skel.c
@@ -90,7 +90,7 @@ const char *skel[] = {
"#define FLEX_SCANNER",
"#define YY_FLEX_MAJOR_VERSION 2",
"#define YY_FLEX_MINOR_VERSION 5",
- "#define YY_FLEX_SUBMINOR_VERSION 35",
+ "#define YY_FLEX_SUBMINOR_VERSION 37",
"#if YY_FLEX_SUBMINOR_VERSION > 0",
"#define FLEX_BETA",
"#endif",
@@ -244,7 +244,6 @@ const char *skel[] = {
"typedef unsigned char flex_uint8_t; ",
"typedef unsigned short int flex_uint16_t;",
"typedef unsigned int flex_uint32_t;",
- "#endif /* ! C99 */",
"",
"/* Limits of integral types. */",
"#ifndef INT8_MIN",
@@ -275,6 +274,7 @@ const char *skel[] = {
"#define UINT32_MAX (4294967295U)",
"#endif",
"",
+ "#endif /* ! C99 */",
"",
"#endif /* ! FLEXINT_H */",
"",
@@ -285,6 +285,7 @@ const char *skel[] = {
"#include <iostream> ",
"#include <errno.h>",
"#include <cstdlib>",
+ "#include <cstdio>",
"#include <cstring>",
"/* end standard C++ headers. */",
"%endif",
@@ -355,6 +356,8 @@ const char *skel[] = {
"",
"%# Declare yyguts variable",
"m4_define( [[M4_YY_DECL_GUTS_VAR]], [[struct yyguts_t * yyg = (struct yyguts_t*)yyscanner]])",
+ "%# Perform a noop access on yyguts to prevent unused variable complains",
+ "m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[(void)yyg]])",
"%# For use wherever a Global is accessed or assigned.",
"m4_define( [[YY_G]], [[yyg->$1]])",
"",
@@ -412,6 +415,7 @@ const char *skel[] = {
"",
"%# Define these macros to be no-ops.",
"m4_define( [[M4_YY_DECL_GUTS_VAR]], [[m4_dnl]])",
+ "m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[m4_dnl]])",
"m4_define( [[YY_G]], [[($1)]])",
"m4_define( [[M4_YY_PROTO_LAST_ARG]])",
"m4_define( [[M4_YY_PROTO_ONLY_ARG]], [[void]])",
@@ -526,8 +530,13 @@ const char *skel[] = {
"typedef struct yy_buffer_state *YY_BUFFER_STATE;",
"#endif",
"",
+ "#ifndef YY_TYPEDEF_YY_SIZE_T",
+ "#define YY_TYPEDEF_YY_SIZE_T",
+ "typedef size_t yy_size_t;",
+ "#endif",
+ "",
"%if-not-reentrant",
- "extern int yyleng;",
+ "extern yy_size_t yyleng;",
"%endif",
"",
"%if-c-only",
@@ -589,11 +598,6 @@ const char *skel[] = {
"#define unput(c) yyunput( c, YY_G(yytext_ptr) M4_YY_CALL_LAST_ARG )",
"]])",
"",
- "#ifndef YY_TYPEDEF_YY_SIZE_T",
- "#define YY_TYPEDEF_YY_SIZE_T",
- "typedef size_t yy_size_t;",
- "#endif",
- "",
"#ifndef YY_STRUCT_YY_BUFFER_STATE",
"#define YY_STRUCT_YY_BUFFER_STATE",
"struct yy_buffer_state",
@@ -618,7 +622,7 @@ const char *skel[] = {
" /* Number of characters read into yy_ch_buf, not including EOB",
" * characters.",
" */",
- " int yy_n_chars;",
+ " yy_size_t yy_n_chars;",
"",
" /* Whether we \"own\" the buffer - i.e., we know we created it,",
" * and can realloc() it to grow it, and should free() it to",
@@ -707,8 +711,8 @@ const char *skel[] = {
"%not-for-header",
"/* yy_hold_char holds the character lost when yytext is formed. */",
"static char yy_hold_char;",
- "static int yy_n_chars; /* number of characters read into yy_ch_buf */",
- "int yyleng;",
+ "static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */",
+ "yy_size_t yyleng;",
"",
"/* Points to current character in buffer. */",
"static char *yy_c_buf_p = (char *) 0;",
@@ -744,7 +748,7 @@ const char *skel[] = {
"",
"YY_BUFFER_STATE yy_scan_buffer M4_YY_PARAMS( char *base, yy_size_t size M4_YY_PROTO_LAST_ARG );",
"YY_BUFFER_STATE yy_scan_string M4_YY_PARAMS( yyconst char *yy_str M4_YY_PROTO_LAST_ARG );",
- "YY_BUFFER_STATE yy_scan_bytes M4_YY_PARAMS( yyconst char *bytes, int len M4_YY_PROTO_LAST_ARG );",
+ "YY_BUFFER_STATE yy_scan_bytes M4_YY_PARAMS( yyconst char *bytes, yy_size_t len M4_YY_PROTO_LAST_ARG );",
"",
"%endif",
"",
@@ -870,8 +874,8 @@ const char *skel[] = {
" size_t yy_buffer_stack_max; /**< capacity of stack. */",
" YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */",
" char yy_hold_char;",
- " int yy_n_chars;",
- " int yyleng_r;",
+ " yy_size_t yy_n_chars;",
+ " yy_size_t yyleng_r;",
" char *yy_c_buf_p;",
" int yy_init;",
" int yy_start;",
@@ -1008,7 +1012,7 @@ const char *skel[] = {
"",
"m4_ifdef( [[M4_YY_NO_GET_LENG]],,",
"[[",
- "int yyget_leng M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );",
+ "yy_size_t yyget_leng M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );",
"]])",
"",
"m4_ifdef( [[M4_YY_NO_GET_TEXT]],,",
@@ -1026,6 +1030,22 @@ const char *skel[] = {
"void yyset_lineno M4_YY_PARAMS( int line_number M4_YY_PROTO_LAST_ARG );",
"]])",
"",
+ "m4_ifdef( [[M4_YY_REENTRANT]],",
+ "[[",
+ "m4_ifdef( [[M4_YY_NO_GET_COLUMN]],,",
+ "[[",
+ "int yyget_column M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );",
+ "]])",
+ "]])",
+ "",
+ "m4_ifdef( [[M4_YY_REENTRANT]],",
+ "[[",
+ "m4_ifdef( [[M4_YY_NO_SET_COLUMN]],,",
+ "[[",
+ "void yyset_column M4_YY_PARAMS( int column_no M4_YY_PROTO_LAST_ARG );",
+ "]])",
+ "]])",
+ "",
"%if-bison-bridge",
"m4_ifdef( [[M4_YY_NO_GET_LVAL]],,",
"[[",
@@ -1141,7 +1161,7 @@ const char *skel[] = {
"/* This used to be an fputs(), but since the string might contain NUL's,",
" * we now use fwrite().",
" */",
- "#define ECHO fwrite( yytext, yyleng, 1, yyout )",
+ "#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)",
"%endif",
"%if-c++-only C++ definition",
"#define ECHO LexerOutput( yytext, yyleng )",
@@ -1840,7 +1860,7 @@ const char *skel[] = {
"",
" else",
" {",
- " int num_to_read =",
+ " yy_size_t num_to_read =",
" YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;",
"",
" while ( num_to_read <= 0 )",
@@ -1852,14 +1872,14 @@ const char *skel[] = {
"]],",
"[[",
" /* just a shorter name for the current buffer */",
- " YY_BUFFER_STATE b = YY_CURRENT_BUFFER;",
+ " YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;",
"",
" int yy_c_buf_p_offset =",
" (int) (YY_G(yy_c_buf_p) - b->yy_ch_buf);",
"",
" if ( b->yy_is_our_buffer )",
" {",
- " int new_size = b->yy_buf_size * 2;",
+ " yy_size_t new_size = b->yy_buf_size * 2;",
"",
" if ( new_size <= 0 )",
" b->yy_buf_size += b->yy_buf_size / 8;",
@@ -1891,7 +1911,7 @@ const char *skel[] = {
"",
" /* Read in more data. */",
" YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),",
- " YY_G(yy_n_chars), (size_t) num_to_read );",
+ " YY_G(yy_n_chars), num_to_read );",
"",
" YY_CURRENT_BUFFER_LVALUE->yy_n_chars = YY_G(yy_n_chars);",
" }",
@@ -1975,6 +1995,7 @@ const char *skel[] = {
" M4_YY_DECL_GUTS_VAR(); /* This var may be unused depending upon options. */",
"%% [17.0] code to find the next state, and perhaps do backing up, goes here",
"",
+ " M4_YY_NOOP_GUTS_VAR();",
" return yy_is_jam ? 0 : yy_current_state;",
"}",
"",
@@ -1999,7 +2020,7 @@ const char *skel[] = {
" if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )",
" { /* need to shift things up to make room */",
" /* +2 for EOB chars. */",
- " register int number_to_move = YY_G(yy_n_chars) + 2;",
+ " register yy_size_t number_to_move = YY_G(yy_n_chars) + 2;",
" register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[",
" YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];",
" register char *source =",
@@ -2065,7 +2086,7 @@ const char *skel[] = {
"",
" else",
" { /* need more input */",
- " int offset = YY_G(yy_c_buf_p) - YY_G(yytext_ptr);",
+ " yy_size_t offset = YY_G(yy_c_buf_p) - YY_G(yytext_ptr);",
" ++YY_G(yy_c_buf_p);",
"",
" switch ( yy_get_next_buffer( M4_YY_CALL_ONLY_ARG ) )",
@@ -2261,25 +2282,6 @@ const char *skel[] = {
"}",
"",
"",
- "%if-c-only",
- "m4_ifdef( [[M4_YY_ALWAYS_INTERACTIVE]],,",
- "[[",
- " m4_ifdef( [[M4_YY_NEVER_INTERACTIVE]],,",
- " [[",
- "#ifndef __cplusplus",
- "extern int isatty M4_YY_PARAMS( int );",
- "#endif /* __cplusplus */",
- " ]])",
- "]])",
- "%endif",
- "",
- "%if-c++-only",
- "m4_ifdef( [[M4_YY_NEVER_INTERACTIVE]],,",
- "[[",
- "extern \"C\" int isatty M4_YY_PARAMS( int );",
- "]])",
- "%endif",
- "",
"/* Initializes or reinitializes a buffer.",
" * This function is sometimes called more than once on the same buffer,",
" * such as during a yyrestart() or at EOF.",
@@ -2444,7 +2446,7 @@ const char *skel[] = {
"void yyFlexLexer::yyensure_buffer_stack(void)",
"%endif",
"{",
- " int num_to_alloc;",
+ " yy_size_t num_to_alloc;",
" M4_YY_DECL_GUTS_VAR();",
"",
" if (!YY_G(yy_buffer_stack)) {",
@@ -2559,12 +2561,12 @@ const char *skel[] = {
"%if-c-only",
"/** Setup the input buffer state to scan the given bytes. The next call to yylex() will",
" * scan from a @e copy of @a bytes.",
- " * @param bytes the byte buffer to scan",
- " * @param len the number of bytes in the buffer pointed to by @a bytes.",
+ " * @param yybytes the byte buffer to scan",
+ " * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.",
" * M4_YY_DOC_PARAM",
" * @return the newly allocated buffer state object.",
" */",
- "YY_BUFFER_STATE yy_scan_bytes YYFARGS2( yyconst char *,yybytes, int ,_yybytes_len)",
+ "YY_BUFFER_STATE yy_scan_bytes YYFARGS2( yyconst char *,yybytes, yy_size_t ,_yybytes_len)",
"{",
" YY_BUFFER_STATE b;",
" char *buf;",
@@ -2790,7 +2792,7 @@ const char *skel[] = {
"/** Get the length of the current token.",
" * M4_YY_DOC_PARAM",
" */",
- "int yyget_leng YYFARGS0(void)",
+ "yy_size_t yyget_leng YYFARGS0(void)",
"{",
" M4_YY_DECL_GUTS_VAR();",
" return yyleng;",
@@ -2838,7 +2840,7 @@ const char *skel[] = {
" [[",
" /* lineno is only valid if an input buffer exists. */",
" if (! YY_CURRENT_BUFFER )",
- " yy_fatal_error( \"yyset_lineno called with no buffer\" M4_YY_CALL_LAST_ARG); ",
+ " YY_FATAL_ERROR( \"yyset_lineno called with no buffer\" );",
" ]])",
" yylineno = line_number;",
"}",
@@ -2860,7 +2862,7 @@ const char *skel[] = {
" [[",
" /* column is only valid if an input buffer exists. */",
" if (! YY_CURRENT_BUFFER )",
- " yy_fatal_error( \"yyset_column called with no buffer\" M4_YY_CALL_LAST_ARG); ",
+ " YY_FATAL_ERROR( \"yyset_column called with no buffer\" );",
" ]])",
" yycolumn = column_no;",
"}",
@@ -3325,7 +3327,7 @@ const char *skel[] = {
" return -1;",
"",
" if (th->th_magic != YYTBL_MAGIC){",
- " yy_fatal_error(\"bad magic number\" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"bad magic number\" ); /* TODO: not fatal. */",
" return -1;",
" }",
"",
@@ -3336,7 +3338,7 @@ const char *skel[] = {
"",
" /* Sanity check on header size. Greater than 1k suggests some funny business. */",
" if (th->th_hsize < 16 || th->th_hsize > 1024){",
- " yy_fatal_error(\"insane header size detected\" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"insane header size detected\" ); /* TODO: not fatal. */",
" return -1;",
" }",
"",
@@ -3401,7 +3403,7 @@ const char *skel[] = {
" transdmap = yytbl_dmap_lookup (dmap, YYTD_ID_TRANSITION M4_YY_CALL_LAST_ARG);",
"",
" if ((dmap = yytbl_dmap_lookup (dmap, td.td_id M4_YY_CALL_LAST_ARG)) == NULL){",
- " yy_fatal_error(\"table id not found in map.\" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"table id not found in map.\" ); /* TODO: not fatal. */",
" return -1;",
" }",
"",
@@ -3468,7 +3470,7 @@ const char *skel[] = {
" t32 = t8;",
" break;",
" default: ",
- " yy_fatal_error(\"invalid td_flags\" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"invalid td_flags\" ); /* TODO: not fatal. */",
" return -1;",
" }",
" }",
@@ -3488,26 +3490,26 @@ const char *skel[] = {
" case sizeof (flex_int32_t):",
" if (M4_YY_TABLES_VERIFY){",
" if( ((flex_int32_t *) v)[0] != (flex_int32_t) t32)",
- " yy_fatal_error(\"tables verification failed at YYTD_STRUCT flex_int32_t\" M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"tables verification failed at YYTD_STRUCT flex_int32_t\" );",
" }else",
" ((flex_int32_t *) v)[0] = (flex_int32_t) t32;",
" break;",
" case sizeof (flex_int16_t):",
" if (M4_YY_TABLES_VERIFY ){",
" if(((flex_int16_t *) v)[0] != (flex_int16_t) t32)",
- " yy_fatal_error(\"tables verification failed at YYTD_STRUCT flex_int16_t\" M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"tables verification failed at YYTD_STRUCT flex_int16_t\" );",
" }else",
" ((flex_int16_t *) v)[0] = (flex_int16_t) t32;",
" break;",
" case sizeof(flex_int8_t):",
" if (M4_YY_TABLES_VERIFY ){",
" if( ((flex_int8_t *) v)[0] != (flex_int8_t) t32)",
- " yy_fatal_error(\"tables verification failed at YYTD_STRUCT flex_int8_t\" M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"tables verification failed at YYTD_STRUCT flex_int8_t\" );",
" }else",
" ((flex_int8_t *) v)[0] = (flex_int8_t) t32;",
" break;",
" default:",
- " yy_fatal_error(\"invalid dmap->dm_sz for struct\" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"invalid dmap->dm_sz for struct\" ); /* TODO: not fatal. */",
" return -1;",
" }",
"",
@@ -3521,7 +3523,7 @@ const char *skel[] = {
"",
"",
" if (!transdmap){",
- " yy_fatal_error(\"transition table not found\" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"transition table not found\" ); /* TODO: not fatal. */",
" return -1;",
" }",
" ",
@@ -3532,7 +3534,7 @@ const char *skel[] = {
"",
" if(M4_YY_TABLES_VERIFY ){",
" if( ((struct yy_trans_info **) p)[0] != v)",
- " yy_fatal_error(\"tables verification failed at YYTD_PTRANS\" M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"tables verification failed at YYTD_PTRANS\" );",
" }else",
" ((struct yy_trans_info **) p)[0] = v;",
" ",
@@ -3545,7 +3547,7 @@ const char *skel[] = {
" case sizeof (flex_int32_t):",
" if(M4_YY_TABLES_VERIFY ){",
" if( ((flex_int32_t *) p)[0] != (flex_int32_t) t32)",
- " yy_fatal_error(\"tables verification failed at flex_int32_t\" M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"tables verification failed at flex_int32_t\" );",
" }else",
" ((flex_int32_t *) p)[0] = (flex_int32_t) t32;",
" p = ((flex_int32_t *) p) + 1;",
@@ -3553,7 +3555,7 @@ const char *skel[] = {
" case sizeof (flex_int16_t):",
" if(M4_YY_TABLES_VERIFY ){",
" if( ((flex_int16_t *) p)[0] != (flex_int16_t) t32)",
- " yy_fatal_error(\"tables verification failed at flex_int16_t\" M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"tables verification failed at flex_int16_t\" );",
" }else",
" ((flex_int16_t *) p)[0] = (flex_int16_t) t32;",
" p = ((flex_int16_t *) p) + 1;",
@@ -3561,13 +3563,13 @@ const char *skel[] = {
" case sizeof (flex_int8_t):",
" if(M4_YY_TABLES_VERIFY ){",
" if( ((flex_int8_t *) p)[0] != (flex_int8_t) t32)",
- " yy_fatal_error(\"tables verification failed at flex_int8_t\" M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"tables verification failed at flex_int8_t\" );",
" }else",
" ((flex_int8_t *) p)[0] = (flex_int8_t) t32;",
" p = ((flex_int8_t *) p) + 1;",
" break;",
" default:",
- " yy_fatal_error(\"invalid dmap->dm_sz for plain int\" /*TODO: not fatal.*/ M4_YY_CALL_LAST_ARG);",
+ " YY_FATAL_ERROR( \"invalid dmap->dm_sz for plain int\" ); /* TODO: not fatal. */",
" return -1;",
" }",
" }",
diff --git a/tables.c b/tables.c
index daa2e878d995..f3f056faedac 100644
--- a/tables.c
+++ b/tables.c
@@ -57,8 +57,10 @@ int yytbl_write16 (struct yytbl_writer *wr, flex_uint16_t v);
int yytbl_write8 (struct yytbl_writer *wr, flex_uint8_t v);
int yytbl_writen (struct yytbl_writer *wr, void *v, flex_int32_t len);
static flex_int32_t yytbl_data_geti (const struct yytbl_data *tbl, int i);
+/* XXX Not used
static flex_int32_t yytbl_data_getijk (const struct yytbl_data *tbl, int i,
int j, int k);
+ */
/** Initialize the table writer.
@@ -330,6 +332,8 @@ int yytbl_write8 (struct yytbl_writer *wr, flex_uint8_t v)
}
+/* XXX Not Used */
+#if 0
/** Extract data element [i][j] from array data tables.
* @param tbl data table
* @param i index into higher dimension array. i should be zero for one-dimensional arrays.
@@ -364,6 +368,7 @@ static flex_int32_t yytbl_data_getijk (const struct yytbl_data *tbl, int i,
return 0;
}
+#endif /* Not used */
/** Extract data element [i] from array data tables treated as a single flat array of integers.
* Be careful for 2-dimensional arrays or for YYTD_ID_TRANSITION, which is an array
diff --git a/ylwrap b/ylwrap
new file mode 100755
index 000000000000..84d563405e6e
--- /dev/null
+++ b/ylwrap
@@ -0,0 +1,222 @@
+#! /bin/sh
+# ylwrap - wrapper for lex/yacc invocations.
+
+scriptversion=2009-04-28.21; # UTC
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005,
+# 2007, 2009 Free Software Foundation, Inc.
+#
+# Written by Tom Tromey <tromey@cygnus.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+case "$1" in
+ '')
+ echo "$0: No files given. Try \`$0 --help' for more information." 1>&2
+ exit 1
+ ;;
+ --basedir)
+ basedir=$2
+ shift 2
+ ;;
+ -h|--h*)
+ cat <<\EOF
+Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]...
+
+Wrapper for lex/yacc invocations, renaming files as desired.
+
+ INPUT is the input file
+ OUTPUT is one file PROG generates
+ DESIRED is the file we actually want instead of OUTPUT
+ PROGRAM is program to run
+ ARGS are passed to PROG
+
+Any number of OUTPUT,DESIRED pairs may be used.
+
+Report bugs to <bug-automake@gnu.org>.
+EOF
+ exit $?
+ ;;
+ -v|--v*)
+ echo "ylwrap $scriptversion"
+ exit $?
+ ;;
+esac
+
+
+# The input.
+input="$1"
+shift
+case "$input" in
+ [\\/]* | ?:[\\/]*)
+ # Absolute path; do nothing.
+ ;;
+ *)
+ # Relative path. Make it absolute.
+ input="`pwd`/$input"
+ ;;
+esac
+
+pairlist=
+while test "$#" -ne 0; do
+ if test "$1" = "--"; then
+ shift
+ break
+ fi
+ pairlist="$pairlist $1"
+ shift
+done
+
+# The program to run.
+prog="$1"
+shift
+# Make any relative path in $prog absolute.
+case "$prog" in
+ [\\/]* | ?:[\\/]*) ;;
+ *[\\/]*) prog="`pwd`/$prog" ;;
+esac
+
+# FIXME: add hostname here for parallel makes that run commands on
+# other machines. But that might take us over the 14-char limit.
+dirname=ylwrap$$
+trap "cd '`pwd`'; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15
+mkdir $dirname || exit 1
+
+cd $dirname
+
+case $# in
+ 0) "$prog" "$input" ;;
+ *) "$prog" "$@" "$input" ;;
+esac
+ret=$?
+
+if test $ret -eq 0; then
+ set X $pairlist
+ shift
+ first=yes
+ # Since DOS filename conventions don't allow two dots,
+ # the DOS version of Bison writes out y_tab.c instead of y.tab.c
+ # and y_tab.h instead of y.tab.h. Test to see if this is the case.
+ y_tab_nodot="no"
+ if test -f y_tab.c || test -f y_tab.h; then
+ y_tab_nodot="yes"
+ fi
+
+ # The directory holding the input.
+ input_dir=`echo "$input" | sed -e 's,\([\\/]\)[^\\/]*$,\1,'`
+ # Quote $INPUT_DIR so we can use it in a regexp.
+ # FIXME: really we should care about more than `.' and `\'.
+ input_rx=`echo "$input_dir" | sed 's,\\\\,\\\\\\\\,g;s,\\.,\\\\.,g'`
+
+ while test "$#" -ne 0; do
+ from="$1"
+ # Handle y_tab.c and y_tab.h output by DOS
+ if test $y_tab_nodot = "yes"; then
+ if test $from = "y.tab.c"; then
+ from="y_tab.c"
+ else
+ if test $from = "y.tab.h"; then
+ from="y_tab.h"
+ fi
+ fi
+ fi
+ if test -f "$from"; then
+ # If $2 is an absolute path name, then just use that,
+ # otherwise prepend `../'.
+ case "$2" in
+ [\\/]* | ?:[\\/]*) target="$2";;
+ *) target="../$2";;
+ esac
+
+ # We do not want to overwrite a header file if it hasn't
+ # changed. This avoid useless recompilations. However the
+ # parser itself (the first file) should always be updated,
+ # because it is the destination of the .y.c rule in the
+ # Makefile. Divert the output of all other files to a temporary
+ # file so we can compare them to existing versions.
+ if test $first = no; then
+ realtarget="$target"
+ target="tmp-`echo $target | sed s/.*[\\/]//g`"
+ fi
+ # Edit out `#line' or `#' directives.
+ #
+ # We don't want the resulting debug information to point at
+ # an absolute srcdir; it is better for it to just mention the
+ # .y file with no path.
+ #
+ # We want to use the real output file name, not yy.lex.c for
+ # instance.
+ #
+ # We want the include guards to be adjusted too.
+ FROM=`echo "$from" | sed \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
+ -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
+ TARGET=`echo "$2" | sed \
+ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
+ -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
+
+ sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \
+ -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$?
+
+ # Check whether header files must be updated.
+ if test $first = no; then
+ if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then
+ echo "$2" is unchanged
+ rm -f "$target"
+ else
+ echo updating "$2"
+ mv -f "$target" "$realtarget"
+ fi
+ fi
+ else
+ # A missing file is only an error for the first file. This
+ # is a blatant hack to let us support using "yacc -d". If -d
+ # is not specified, we don't want an error when the header
+ # file is "missing".
+ if test $first = yes; then
+ ret=1
+ fi
+ fi
+ shift
+ shift
+ first=no
+ done
+else
+ ret=$?
+fi
+
+# Remove the directory.
+cd ..
+rm -rf $dirname
+
+exit $ret
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End: