116 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| #
 | |
| # make file for "flex" tool
 | |
| # @(#) $Header: /usr/fsys/odin/a/vern/flex/RCS/Makefile,v 2.9 90/05/26 17:28:44
 | |
|  vern Exp $ (LBL)
 | |
| #
 | |
| # the first time around use "make f_flex"
 | |
| #
 | |
| #  This makefile is specific for Microsoft's C/C++ compiler  (v7), nmake and
 | |
| #  lib      
 | |
| #         - Paul Stuart, Jan 93 (pjs@scammell.ecos.tne.oz.au)
 | |
| #
 | |
| 
 | |
| 
 | |
| SKELFLAGS = -DDEFAULT_SKELETON_FILE=\"c:/src/flex/flex.skl\"
 | |
| CFLAGS = -nologo -AL -W2 -F 8000 -Ox -Gt16000 -DMS_DOS -DUSG
 | |
| LDFLAGS = /nologo /NOI /BATCH /ONERROR:NOEXE  /STACK:8000
 | |
| FLEX_FLAGS = -ist8 -Sflex.skl
 | |
| 
 | |
| FLEX = .\flex.exe
 | |
| CC = cl
 | |
| YACC = c:\lib\byacc
 | |
| MAKE = nmake /nologo
 | |
| 
 | |
| #
 | |
| # break obj-list into two because of 128 character command-line limit of
 | |
| # Microsoft's link and lib utilities.
 | |
| #
 | |
| FLEXOBJS1 = \
 | |
| 	ccl.obj \
 | |
| 	dfa.obj \
 | |
| 	ecs.obj \
 | |
| 	gen.obj \
 | |
| 	main.obj \
 | |
| 	misc.obj \
 | |
| 	nfa.obj \
 | |
| 	parse.obj
 | |
| 
 | |
| FLEXOBJS2 = \
 | |
| 	scan.obj \
 | |
| 	sym.obj \
 | |
| 	tblcmp.obj \
 | |
| 	yylex.obj
 | |
| 
 | |
| FLEX_C_SOURCES = \
 | |
| 	ccl.c \
 | |
| 	dfa.c \
 | |
| 	ecs.c \
 | |
| 	gen.c \
 | |
| 	main.c \
 | |
| 	misc.c \
 | |
| 	nfa.c \
 | |
| 	parse.c \
 | |
| 	scan.c \
 | |
| 	sym.c \
 | |
| 	tblcmp.c \
 | |
| 	yylex.c
 | |
| 
 | |
| FLEX_LIB_OBJS = \
 | |
| 	libmain.obj
 | |
| 
 | |
| 
 | |
| all : flex.exe 
 | |
| 
 | |
| #
 | |
| # lib is used to get around the 128 character command-line limit of 'link'.
 | |
| #
 | |
| flex.exe : $(FLEXOBJS1) $(FLEXOBJS2)
 | |
| 	lib /nologo tmplib $(FLEXOBJS1);
 | |
| 	link $(LDFLAGS) $(FLEXOBJS2),$*.exe,,tmplib;
 | |
| 	del tmplib.lib
 | |
| 
 | |
| f_flex:
 | |
| 	copy initscan.c scan.c
 | |
| 	touch scan.c
 | |
| 	@echo  compiling first flex  
 | |
| 	$(MAKE) flex.exe 
 | |
| 	del scan.c
 | |
| 	@echo using first flex to generate final version...
 | |
| 	$(MAKE) flex.exe
 | |
| 
 | |
| #
 | |
| # general inference rule
 | |
| #
 | |
| .c.obj:
 | |
| 	$(CC) -c $(CFLAGS) $*.c
 | |
| 
 | |
| parse.h parse.c : parse.y
 | |
| 	$(YACC) -d parse.y
 | |
| 	@mv y_tab.c parse.c
 | |
| 	@mv y_tab.h parse.h
 | |
| 
 | |
| scan.c : scan.l
 | |
| 	$(FLEX) $(FLEX_FLAGS) $(COMPRESSION) scan.l >scan.c
 | |
| 
 | |
| 
 | |
| scan.obj : scan.c parse.h flexdef.h
 | |
| 
 | |
| main.obj : main.c flexdef.h
 | |
| 	$(CC) $(CFLAGS) -c $(SKELFLAGS) main.c
 | |
| 
 | |
| ccl.obj : ccl.c flexdef.h
 | |
| dfa.obj : dfa.c flexdef.h
 | |
| ecs.obj : ecs.c flexdef.h
 | |
| gen.obj : gen.c flexdef.h
 | |
| misc.obj : misc.c flexdef.h
 | |
| nfa.obj : nfa.c flexdef.h
 | |
| parse.obj : parse.c flexdef.h
 | |
| sym.obj : sym.c flexdef.h
 | |
| tblcmp.obj : tblcmp.c flexdef.h
 | |
| yylex.obj : yylex.c flexdef.h
 | |
| 
 | |
| 
 | |
| clean :
 | |
| 	del *.obj
 | |
| 	del *.map
 | 
