############################################################################## ## MingW32 Win32-Cross-Compile Variant of AS1600 MAKEFILE ############################################################################## ############################################################################## ## Project directory structure ############################################################################## B=../../bin ############################################################################## ## Project-wide build flags ############################################################################## P = PATH=/usr/local/win32/bin:$$PATH; export PATH; #WARN = -Wall -W -Wshadow -Wpointer-arith \ #WARN += -Wbad-function-cast -Wcast-qual WARN = CC = $(P) gcc DEF_FLAGS = -DWIN32 -DNOGETOPT -DDOSTMP #OPT_FLAGS = -O #OPT_FLAGS = -O2 -ggdb $(WARN) OPT_FLAGS = -O6 $(WARN) #OPT_FLAGS = -O2 -pg -ggdb $(WARN) CFLAGS = $(OPT_FLAGS) -I. -I.. $(DEF_FLAGS) LFLAGS = -L../lib PROG = $(B)/as1600.exe TOCLEAN = $(B)/as1600.exe $(ASMOBJ) as1600.c ############################################################################## ## Build-rules ############################################################################## all: $(PROG) clean: rm -f $(OBJS) rm -f $(TOCLEAN) %.o: %.c $(CC) -o $@ $(CFLAGS) -c $< ASMSRC = as1600.c fraosub.c frapsub.c frasmain.c fryylex.c ASMOBJ = as1600.o fraosub.o frapsub.o frasmain.o fryylex.o $(B)/as1600.exe: $(ASMOBJ) $(CC) -o $(B)/as1600.exe $(CFLAGS) -static $(ASMOBJ) -lm as1600.o: fraebin.h fraeuni.h fragcon.h frasmdat.h fraosub.o: fraebin.h fraeuni.h fragcon.h frasmdat.h frapsub.o: fraebin.h fraeuni.h fragcon.h frasmdat.h frasmain.o: fraebin.h fraeuni.h fragcon.h frasmdat.h fryylex.o: fraebin.h fraeuni.h fragcon.h frasmdat.h as1600.o: getopt.h as1600.y as1600.c as1600.h fraosub.o: getopt.h as1600.y as1600.c as1600.h frapsub.o: getopt.h as1600.y as1600.c as1600.h frasmain.o: getopt.h as1600.y as1600.c as1600.h fryylex.o: getopt.h as1600.y as1600.c as1600.h as1600.c: as1600.y bison -o as1600.c --defines as1600.y all: $(PROG)