.PHONY:all
CFLAGS=-std=c99 -pedantic -Wall -O2 -march=native -g -D _POSIX_C_SOURCE=200809 -Werror=implicit-function-declaration
all:zyg
zyg: driver.o parser.o lexer.o queue.o sema.o lib/z80e/cpu.o lib/z80e/log.o lib/z80e/registers.o
$(CC) -o $@ $^ -lrt -lc3 $(CFLAGS)
driver.o lib/z80e/cpu.o lib/z80e/log.o lib/z80e/registers.o: EXTRA_CFLAGS := -Wno-pedantic
make.conf:
uname -m >make.conf
%.o: %.c *.h make.conf
$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -DMACHINE=`cat make.conf` -c $< -o $@
clean:
rm -f *.o zyg lib/z80e/*.o
test/%: zyg
./zyg ./$@.zig -S
testall: zyg
./test.bash
profile: zyg
./profile.sh