|
|
UNAME = $(shell uname) | UNAME = $(shell uname) |
CC = gcc |
|
CFLAGS = -g -Wall -O2 |
|
LIBS = -lz | LIBS = -lz |
OFILES = util.o keywords.o flasm.o unflasm.o lex.yy.o assembler.tab.o | OFILES = util.o keywords.o flasm.o unflasm.o lex.yy.o assembler.tab.o |
GARBAGE = assembler.tab.* lex.yy.c memwatch.o gmon.out memwatch.log core | GARBAGE = assembler.tab.* lex.yy.c memwatch.o gmon.out memwatch.log core |
|
|
ifneq (,$(findstring debug,$(MAKECMDGOALS))) | ifneq (,$(findstring debug,$(MAKECMDGOALS))) |
CFLAGS += -DMEMWATCH -pg -p -pedantic -W -Wcast-align -Wcast-qual -Wshadow -Wnested-externs -Wstrict-prototypes -Waggregate-return -Wmissing-prototypes -Wpointer-arith | CFLAGS += -DMEMWATCH -pg -p -pedantic -W -Wcast-align -Wcast-qual -Wshadow -Wnested-externs -Wstrict-prototypes -Waggregate-return -Wmissing-prototypes -Wpointer-arith |
OFILES += memwatch.o | OFILES += memwatch.o |
else |
|
CFLAGS += -s |
|
endif | endif |
| |
# executable should not depend on cygwin.dll | # executable should not depend on cygwin.dll |
|
|
-rm -f ${OFILES} ${GARBAGE} | -rm -f ${OFILES} ${GARBAGE} |
| |
flasm: ${OFILES} | flasm: ${OFILES} |
${CC} $(CFLAGS) -o flasm ${OFILES} ${LIBS} |
${CC} $(CFLAGS) $(LDFLAGS) -o flasm ${OFILES} ${LIBS} |
| |
assembler.tab.c assembler.tab.h: assembler.y | assembler.tab.c assembler.tab.h: assembler.y |
bison --defines --debug assembler.y | bison --defines --debug assembler.y |