summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorVern Paxson <vern@ee.lbl.gov>1988-04-10 20:55:02 +0000
committerVern Paxson <vern@ee.lbl.gov>1988-04-10 20:55:02 +0000
commitd7919e2ef2d42a140092c1d95b2de9394a75e90c (patch)
tree02ac7e393a5b56c40c1f2d3d44128a8bbb6ecbb0 /README
parent9d7b9720120c63ec34691a469b4526bd74626025 (diff)
Initial revision
Diffstat (limited to 'README')
-rw-r--r--README126
1 files changed, 126 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..9354207
--- /dev/null
+++ b/README
@@ -0,0 +1,126 @@
+This is the initial release of flex, a replacement for the lex(1)
+tool. As the copyright indicates, this distribution can be freely
+redistributed.
+
+Some notes on the distribution:
+
+ Yes, there are some niggling lex features which are not available which
+ seem like they'd be easy to add. They're not, or if they are then the
+ straight-forward implementation of them would slow down the scanner.
+ Unfortunately I am unable to do any further work on flex other than bug
+ fixes, so if there's something you've just gotta have, you'd better
+ be willing to dive into the code. I'll be happy to give (fairly
+ high-level) advice on how to proceed.
+
+ The compressed tables have been tested pretty thoroughly in the past,
+ though may be suffering from bit-rot. The fast/full tables have been
+ recently implemented and are more likely to have bugs.
+
+ For a System V machine, add the #define "SV". Not guaranteed to do
+ the full job, but a step in the right direction.
+
+ Flex has been successfully ported to Sun Unix and 4.3BSD Vax Unix.
+
+
+The flex distribution consists of the following files:
+
+ README This message
+
+ Makefile
+ flexdef.h
+ parse.y
+ scan.l
+ ccl.c
+ dfa.c flex sources
+ ecs.c
+ main.c
+ misc.c
+ nfa.c
+ scan.c
+ sym.c
+ tblcmp.c
+ yylex.c
+
+ flex.skel
+ flex.fastskel
+ flexskelcom.h skeleton scanner sources
+ flexskeldef.h
+ fastskeldef.h
+
+ flex.1 manual entry
+
+ Timings a brief note comparing timings of flex vs. lex
+
+The files are packaged as three compressed shell archives, ~90Kb in size
+total. Create a directory where you want flex to live, cd there, and use
+
+ uncompress flexdist.1.Z
+ uncompress flexdist.2.Z
+ uncompress flexdist.3.Z
+ sh flexdist.1
+ sh flexdist.2
+ sh flexdist.3
+
+to extract them.
+
+Either move {flexskelcom.h,flexskeldef.h,fastskeldef.h} into /usr/include
+or edit {flex.skel,flex.fastskel,flexskeldef.h,fastskeldef.h,scan.c}
+and wire in the full pathname of where you are going to keep the include files.
+
+Decide where you want to keep {flex.skel,flex.fastskel} (suggestion:
+/usr/local/lib) and move it there. Edit "Makefile" and change the
+definitions of SKELETON_FILE and F_SKELETON_FILE to reflect the full
+pathnames of {flex.skel,flex.fastskel}.
+
+To make flex for the first time, use:
+
+ make first_flex
+
+which uses a pre-generated copy of the scanner whose source is in flex.
+For subsequent makes, just use:
+
+ make
+
+Assuming it builds successfully, you can test it using
+
+ make test
+
+The "diff" should not show any differences.
+
+If you're feeling adventurous, rebuild scan.c using various
+combinations of FLEX_FLAGS, each time trying "make test" when
+you're done. To rebuild it, do
+
+ rm scan.c
+ make FLEX_FLAGS="..."
+
+where "..." is one of:
+
+ -ist -c
+ -ist -ce
+ -ist -cm
+ -istf
+ -istF
+
+and testing using:
+
+ make FLEX_FLAGS="..." test
+
+
+Format the manual entry using
+
+ nroff -man flex.1
+
+
+Please send problems and feedback to:
+
+ vern@lbl-{csam,rtsg}.arpa or ucbvax!lbl-csam.arpa!vern
+
+ Vern Paxson
+ Real Time Systems Group
+ Bldg. 46A
+ Lawrence Berkeley Laboratory
+ 1 Cyclotron Rd.
+ Berkeley, CA 94720
+
+ (415) 486-6411