# ################################################### # This is a makefile for mawk, # an implementation of The AWK Programmin Language, 1988. # # SHELL=/bin/sh #################################### # user settable macros # CC = cc #CC = gcc #CFLAGS = -O #CFLAGS = -O -YSYSTEM_FIVE # ultrix_vax 4.1 (no SYSTEM_FIVE on MIPS) #CFLAGS - -O -YSYSTEM_FIVE -DHAVE_VOID_PTR=0 #ultrix 3.1 #CFLAGS = -O -f68881 # sun3 with coprocessor CFLAGS = -O -Dvoid=int # V7 LDFLAGS = # use your favorite yacc # if you don't change parse.y or parse2.xc # then you can use the parse.c and parse.h provided and don't need yacc # The parse.c and parse.h in the distribution were made with # Berkeley yacc # YACC=yacc -d #YACC=bison -dy #YACC=byacc -d ####################################### # The following stuff is for compilers whose symbols are unique only # to 7 (external) or 8 (local) characters. .SUFFIXES : .SUFFIXES : .o .c .cl .y .h .hl .cl.o: hash8 -r va_alist -r va_start encode TABLE <$< >$*.c $(CC) $(CFLAGS) $(CFLAGS2) -c $*.c 2>&1 | hash8 decode TABLE rm $*.c .c.o: $(CC) $(CFLAGS) $(CFLAGS2) -c $*.c 2>&1 | hash8 decode TABLE .cl.c: hash8 -r va_alist -r va_start encode TABLE <$< >$*.c .hl.h: hash8 -r va_alist -r va_start encode TABLE <$< >$@ ####################################### O=parse.o scan.o memory.o main.o hash.o execute.o code.o\ da.o error.o init.o bi_vars.o cast.o print.o bi_funct.o\ kw.o jmp.o array.o field.o split.o re_cmpl.o zmalloc.o\ fin.o files.o scancode.o matherr.o fcall.o version.o REXP_O=rexp/rexp.o rexp/rexp0.o rexp/rexp1.o rexp/rexp2.o\ rexp/rexp3.o rexp/rexpdb.o mawk_and_test : mawk mawk_test fpe_test mawk : $(O) rexp/regexp.a $(CC) $(LDFLAGS) -o mawk $(O) -lm rexp/regexp.a mawk_test : mawk # test that we have a sane mawk @cp mawk test/mawk cd test ; ./mawk_test.v7 @rm test/mawk fpe_test : mawk # test FPEs are handled OK @cp mawk test/mawk @echo ; echo testing floating point exception handling cd test ; ./fpe_test.v7 @rm test/mawk rexp/regexp.a : $(REXP_O) cd rexp ; make CC=$(CC) parse.cl : parse.y parse2.xcl @echo expect 4 shift/reduce conflicts $(YACC) parse.y cat y.tab.c parse2.xcl > parse.cl && rm y.tab.c -if cmp -s y.tab.h parse.hl ;\ then rm y.tab.h ;\ else mv y.tab.h parse.hl ; fi scancode.cl : makescan.cl scan.h hash8 -r va_alist -r va_start encode TABLE makescan.c $(CC) -o makescan.exe $(CFLAGS) makescan.c ./makescan.exe > scancode.cl rm makescan.c makescan.exe clean : rm -f *.o rexp/*.o rexp/regexp.a test/mawk core test/core # output from mawk -f deps.awk *.c array.o : bi_vars.h sizes.h zmalloc.h memory.h types.h field.h mawk.h config.h symtype.h config/Idefault.h bi_funct.o : fin.h bi_vars.h sizes.h memory.h zmalloc.h regexp.h types.h field.h repl.h files.h bi_funct.h mawk.h config.h symtype.h init.h config/Idefault.h bi_vars.o : bi_vars.h sizes.h memory.h zmalloc.h types.h field.h mawk.h config.h symtype.h config/Idefault.h init.h cast.o : parse.h sizes.h memory.h zmalloc.h types.h field.h scan.h repl.h mawk.h config.h symtype.h config/Idefault.h code.o : sizes.h memory.h zmalloc.h types.h field.h code.h jmp.h mawk.h config.h symtype.h config/Idefault.h init.h da.o : sizes.h memory.h zmalloc.h types.h field.h repl.h code.h bi_funct.h mawk.h config.h symtype.h config/Idefault.h error.o : parse.h bi_vars.h sizes.h types.h scan.h mawk.h config.h symtype.h config/Idefault.h execute.o : bi_vars.h fin.h sizes.h memory.h zmalloc.h regexp.h types.h field.h code.h repl.h bi_funct.h mawk.h config.h symtype.h config/Idefault.h fcall.o : sizes.h memory.h zmalloc.h types.h code.h mawk.h config.h symtype.h config/Idefault.h field.o : parse.h bi_vars.h sizes.h memory.h zmalloc.h regexp.h types.h field.h scan.h repl.h mawk.h config.h symtype.h config/Idefault.h init.h files.o : fin.h sizes.h memory.h zmalloc.h types.h files.h mawk.h config.h config/Idefault.h fin.o : parse.h fin.h bi_vars.h sizes.h memory.h zmalloc.h types.h field.h scan.h mawk.h config.h symtype.h config/Idefault.h hash.o : sizes.h memory.h zmalloc.h types.h mawk.h config.h symtype.h config/Idefault.h init.o : bi_vars.h sizes.h memory.h zmalloc.h types.h field.h code.h mawk.h config.h symtype.h config/Idefault.h init.h jmp.o : sizes.h memory.h zmalloc.h types.h code.h mawk.h jmp.h config.h symtype.h config/Idefault.h init.h kw.o : parse.h sizes.h types.h mawk.h config.h symtype.h config/Idefault.h init.h main.o : fin.h bi_vars.h sizes.h memory.h zmalloc.h types.h field.h code.h files.h mawk.h config.h symtype.h config/Idefault.h init.h makescan.o : parse.h scan.h symtype.h matherr.o : sizes.h types.h mawk.h config.h config/Idefault.h memory.o : sizes.h memory.h zmalloc.h types.h mawk.h config.h config/Idefault.h parse.o : bi_vars.h sizes.h memory.h zmalloc.h types.h field.h code.h files.h bi_funct.h mawk.h jmp.h config.h symtype.h config/Idefault.h print.o : bi_vars.h parse.h sizes.h memory.h zmalloc.h types.h field.h scan.h files.h bi_funct.h mawk.h config.h symtype.h config/Idefault.h re_cmpl.o : parse.h sizes.h memory.h zmalloc.h regexp.h types.h scan.h repl.h mawk.h config.h symtype.h config/Idefault.h scan.o : parse.h fin.h sizes.h memory.h zmalloc.h types.h field.h scan.h repl.h code.h files.h mawk.h config.h symtype.h config/Idefault.h init.h split.o : bi_vars.h parse.h sizes.h memory.h zmalloc.h regexp.h types.h field.h scan.h bi_funct.h mawk.h config.h symtype.h config/Idefault.h version.o : patchlev.h sizes.h types.h mawk.h config.h config/Idefault.h zmalloc.o : sizes.h zmalloc.h types.h mawk.h config.h config/Idefault.h