Received: from 128.84.254.220 by ee.lbl.gov for (8.6.8.1/1.43r) id PAA27266; Mon, 18 Apr 1994 15:08:26 -0700 Received: from CLOYD.CS.CORNELL.EDU by thialfi.cs.cornell.edu (5.67/I-1.99E) id AA28742; Mon, 18 Apr 94 18:08:14 -0400 Received: from iraun1.ira.uka.de by cloyd.cs.cornell.edu (5.67/I-1.99D) id AA19613; Mon, 18 Apr 94 18:08:19 -0400 Received: from t500i2.telematik.informatik. (actually t500i2.telematik.informatik.uni-karlsruhe.de) by iraun1.ira.uka.de with SMTP (PP); Tue, 19 Apr 1994 00:07:55 +0200 Received: by t500i2.telematik.informatik.uni-karlsruhe.de (5.57/Ultrix3.0-C) id AA10269; Tue, 19 Apr 94 00:09:14 +0200 From: beigl@t500i2.telematik.informatik.uni-karlsruhe.de (Michael Beigl) Message-Id: <9404182209.AA10269@t500i2.telematik.informatik.uni-karlsruhe.de> Subject: Makefile-TurboC To: vern@cs.cornell.edu Date: Tue, 19 Apr 1994 00:09:13 +0200 (MET DST) X-Mailer: ELM [version 2.4 PL22] Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 2739 Hello Here are some additional adjustments to my Makefile. I was using "pure" DOS and an old Turbo C++ 1.0 version, so I had some problems with systemtools like mv etc. and problems with variables in my Makefile. Now follows my Makefile ############################################################################ # make file for "flex" tool # @(#) $Header$ (LBL) # Porting considerations: # # For BSD machines: # CFLAGS = # LDFLAGS = -s # LINK = $(CC) $(CFLAGS) -o flex $(LDFLAGS) $(FLEXOBJS) # SKELETON_DIR = . # SKELETON_FILE = flex.skel # SKELFLAGS = -DDEFAULT_SKELETON_FILE=\"$(SKELETON_DIR)/$(SKELETON_FILE)\" # O = o # YTAB = y.tab # FLEX = ./flex # # For System V Unix or Vax/VMS machines, merely add: # CFLAGS = -DSYS_V # # For MS-DOS, Turbo C: CC = tcc # -2+ 286 Options CFLAGS = -DSYS_V -DMS_DOS -O -G -Z -ml -v -2 # /3 enable 32 bit processing # /ye expanded memory swapping # /yx extended memory swapping LINK = tlink @flex.lnk/c/x/v/3/ye SKELETON_DIR = . SKELETON_FILE = flex.skl SKELFLAGS = -DDEFAULT_SKELETON_FILE="$(SKELETON_DIR)/$(SKELETON_FILE)" O = obj EXE = .exe YTAB = y_tab FLEX = flex YACC = /yacc/byacc # # the first time around use "make first_flex" # FLEX_FLAGS = FLEXOBJS = \ ccl.$O \ dfa.$O \ ecs.$O \ gen.$O \ main.$O \ misc.$O \ nfa.$O \ parse.$O \ scan.$O \ sym.$O \ tblcmp.$O \ yylex.$O 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_C_SOURCES_1 = \ ccl.c \ dfa.c \ ecs.c \ gen.c \ main.c \ misc.c FLEX_C_SOURCES_2 = \ nfa.c \ parse.c \ scan.c \ sym.c \ tblcmp.c \ yylex.c flex.exe: $(FLEXOBJS) $(LINK) flex: $(FLEX_C_SOURCES) $(CC) $(CFLAGS) -c $(SKELFLAGS) $(FLEX_C_SOURCES_1) $(CC) $(CFLAGS) -c $(SKELFLAGS) $(FLEX_C_SOURCES_2) $(LINK) first_flex: copy initscan.c scan.c $(MAKE) flex parse.h parse.c: parse.y $(YACC) -d parse.y @rename $(YTAB).c parse.c @rename $(YTAB).h parse.h scan.c: scan.l $(FLEX) -ist $(FLEX_FLAGS) scan.l >scan.c scan.$O: scan.c parse.h main.$O: main.c $(CC) $(CFLAGS) -c $(SKELFLAGS) main.c flex.man: flex.1 nroff -man flex.1 >flex.man lint: $(FLEX_C_SOURCES) lint $(FLEX_C_SOURCES) > flex.lint distrib: rename scan.c initscan.c attrib +R -A -H -S initscan.c $(MAKE) clean clean: del *.obj del *.lint del core del errs del flex.exe del parse.c del parse.h del flex.man del tags tags: ctags $(FLEX_C_SOURCES) vms: flex.man $(MAKE) distrib test: $(FLEX) -ist $(FLEX_FLAGS) scan.l | diff scan.c - ############################################################################ I think this Makefile will help some other simple DOS user M. Beigl