📄 makefile
字号:
################################################################################ Makefile for flex 2.5.0.6 (beta) with Borland C/C++ version 4.02## This will probably need to be adjusted for your existing lexer/parser# generators. See definitions for FLEX and YACC near the bottom of the# makefile.## This makefile builds initflex.exe and flex.exe by default. It# removes initflex.exe after making flex.exe. After that, you may# choose to try alternate compression options for your everyday flex# executable.## This will build flex with the large model. Don't use huge, but if you# feel like experimenting with other models, post your success stories to # comp.compilers, OK?## This makefile does *not* implement the big testing found in "makefile.in".## I also assume the availability of sed and the gnu file utilities on the# system - they're readily available, so if you don't have them, why not?# <grin>## The resulting generated lexer (the real goal, right?) will compile# (and run nicely, too) as a .c file, as well as being included such as# extern "C" { #include "lexyyc" } in a .cplusplus file.################################################################################DEBUG = 1.autodependall: initflex.exe flex.exe rm initflex.exe initflex.map################################################################################# standard utilitities? ha.#CC = bccCPP = bcc################################################################################MODEL = l!if $(DEBUG) == 1!message Building with debug.debugCompile = -vdebugLink = /v!else!message Building without debug.debugCompile =debugLink =!endifLOADER = c0$(MODEL).objLIBS = c$(MODEL).libLINKFLAGS = $(debugLink)DATASEG = -dc -FfSizeOPT = -Os -G-Defines =COMMON = -A -c -m$(MODEL) $(SizeOPT) $(DATASEG) $(Defines) $(debugCompile)CFLAGS = -o$@ $(COMMON)CCFLAGS = -o$@ $(COMMON) -Pcc###############################################################################.SUFFIXES: .cc.cc.obj: $(CPP) $(CCFLAGS) $<.c.obj: $(CPP) $(CFLAGS) $<################################################################################# source & object files#BASESRC = ccl.c dfa.c ecs.c gen.c main.c misc.c nfa.c parse.c \ sym.c tblcmp.c yylex.c skel.cINITSRC = $(BASESRC) initscan.cINITOBJS = $(INITSRC:.c=.obj)SRC = $(BASESRC) scan.cOBJS = $(SRC:.c=.obj)objects: $(OBJS) @echo $(OBJS)################################################################################# Executable#initflex.exe: $(INITOBJS) tlink $(LINKFLAGS) @&&!$(LOADER) $**$&.exe$(LIBS)!flex.exe: $(OBJS) tlink $(LINKFLAGS) @&&!$(LOADER) $**$&.exe$(LIBS)!# ################################################################################# Lex files#FLEX = .\initflexFLEX_FLAGS = -istscan.c: scan.l $(FLEX) $(FLEX_FLAGS) scan.l >scan.tmp sed s,\"$(srcdir)/scan.l\",\"scan.l\", <scan.tmp >scan.c @rm scan.tmp################################################################################# YACC files#YACC = .\bisonYFLAGS = -vdylparse.c: parse.y $(YACC) -ydl parse.y @sed "/extern char.*malloc/d" <y_tab.c >parse.c @rm -f y_tab.c @mv y_tab.h parse.h################################################################################# cleanup#clean: -rm *.obj *.map initflex.exerealclean: clean -rm flex.exe## end Makefile################################################################################
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -