1 # This file is part of flex.
3 # Redistribution and use in source and binary forms, with or without
4 # modification, are permitted provided that the following conditions
7 # 1. Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer.
9 # 2. Redistributions in binary form must reproduce the above copyright
10 # notice, this list of conditions and the following disclaimer in the
11 # documentation and/or other materials provided with the distribution.
13 # Neither the name of the University nor the names of its contributors
14 # may be used to endorse or promote products derived from this software
15 # without specific prior written permission.
17 # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
18 # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
19 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
24 # Possible values for DEFS:
26 # By default, flex generates 8-bit scanners when using table compression,
27 # and 7-bit scanners when using uncompressed tables (-f or -F options).
28 # For flex to always generate 8-bit scanners, add "-DDEFAULT_CSIZE=256"
31 # For Vax/VMS, add "-DVMS" to DEFS.
33 # For MS-DOS, add "-DMS_DOS" to DEFS. See the directory MISC/MSDOS for
37 ACLOCAL_AMFLAGS = -I m4
48 lib_LIBRARIES = libfl.a
88 MAINTAINERCLEANFILES = \
120 README.cvs-snapshot \
142 localedir = $(datadir)/locale
143 AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I@includedir@ -I$(top_srcdir)/intl
144 LIBS = @LIBINTL@ @LIBS@
146 skel.c: flex.skl mkskel.sh flexint.h tables_shared.h
147 sed 's/m4_/m4postproc_/g; s/m4preproc_/m4_/g' $(srcdir)/flex.skl | $(m4) -P -DFLEX_MAJOR_VERSION=`echo $(VERSION)|cut -f 1 -d .` -DFLEX_MINOR_VERSION=`echo $(VERSION)|cut -f 2 -d .` -DFLEX_SUBMINOR_VERSION=`echo $(VERSION)|cut -f 3 -d .` | sed 's/m4postproc_/m4_/g' | $(SHELL) $(srcdir)/mkskel.sh >skel.c
149 # Explicitly describe dependencies.
150 # You can recreate this with `gcc -I. -MM *.c'
151 buf.o: buf.c flexdef.h flexint.h
152 ccl.o: ccl.c flexdef.h flexint.h
153 dfa.o: dfa.c flexdef.h flexint.h tables.h tables_shared.h
154 ecs.o: ecs.c flexdef.h flexint.h
155 gen.o: gen.c flexdef.h flexint.h tables.h tables_shared.h
157 libyywrap.o: libyywrap.c
158 main.o: main.c flexdef.h flexint.h version.h options.h scanopt.h \
159 tables.h tables_shared.h
160 misc.o: misc.c flexdef.h flexint.h tables.h tables_shared.h
161 nfa.o: nfa.c flexdef.h flexint.h
162 options.o: options.c options.h scanopt.h flexdef.h flexint.h
163 parse.o: parse.c flexdef.h flexint.h tables.h tables_shared.h
164 scan.o: scan.c flexdef.h flexint.h parse.h
165 scanopt.o: scanopt.c flexdef.h flexint.h scanopt.h
166 skel.o: skel.c flexdef.h flexint.h
167 sym.o: sym.c flexdef.h flexint.h
168 tables.o: tables.c flexdef.h flexint.h tables.h tables_shared.h
169 tables_shared.o: tables_shared.c flexdef.h flexint.h tables.h \
171 tblcmp.o: tblcmp.c flexdef.h flexint.h
172 yylex.o: yylex.c flexdef.h flexint.h parse.h
173 filter.o: filter.c flexdef.h flexint.h
175 # Create a tags file.
177 ctags --c-types='defgmstuv' $(srcdir)/*.[ch]
179 # Create the ChangeLog, but only if we're inside a cvs working directory
182 if [ -d CVS ] ; then \
183 sh $(srcdir)/tools/cvs2cl.pl -F trunk -U $(srcdir)/tools/cvsauthors \
186 # Run GNU indent on sources. Don't run this unless all the sources compile cleanly.
189 # 1. Check for .indent.pro, otherwise indent will use unknown
190 # settings, or worse, the GNU defaults.)
191 # 2. Check that this is GNU indent.
192 # 3. Make sure to process only the NON-generated .c and .h files.
193 # 4. Run indent twice per file. The first time is a test.
194 # Otherwise, indent overwrites your file even if it fails!
221 if [ -f .indent.pro ] ; then \
222 for f in $(indentfiles);\
224 echo indenting $$f ;\
225 $(indent) < $$f >/dev/null && indent $$f || echo $$f FAILED to indent ;\
229 .PHONY: ChangeLog tags indent