2016-09-14 22:01:04 +00:00
|
|
|
LINUX_CC := cc
|
2016-11-05 20:38:25 +00:00
|
|
|
LINUX_SRC := src/gol_linux.c
|
2016-09-14 22:01:04 +00:00
|
|
|
LINUX_CFLAGS := -Wall -Wextra -pedantic-errors -ansi -std=gnu99 -lncurses -lm -O3
|
2016-11-05 20:38:25 +00:00
|
|
|
LINUX_OUT := bin/gol.out
|
2016-09-13 13:32:11 +00:00
|
|
|
|
2016-09-14 22:01:04 +00:00
|
|
|
APPLE2_CL := $(CC65_HOME)/bin/cl65
|
|
|
|
APPLE2_CC := $(CC65_HOME)/bin/cc65
|
2016-11-05 20:38:25 +00:00
|
|
|
APPLE2_SRC := src/gol_apple2.c src/gol_apple2_optimized.asm src/gfx.asm src/rnd_colors.asm src/file_io.c src/mli.asm
|
2016-09-14 22:01:04 +00:00
|
|
|
APPLE2_MAP := gol_apple2.map
|
|
|
|
APPLE2_CFLAGS := -Oirs -v -t apple2
|
2016-11-05 20:38:25 +00:00
|
|
|
APPLE2_OUT := bin/gol.a2
|
2016-09-13 13:32:11 +00:00
|
|
|
|
2016-11-05 20:38:25 +00:00
|
|
|
all: directories linux apple2
|
|
|
|
|
|
|
|
directories:
|
|
|
|
mkdir -p bin
|
2016-09-13 21:55:53 +00:00
|
|
|
|
2016-09-13 23:16:49 +00:00
|
|
|
linux: $(LINUX_SRC)
|
2016-09-14 22:01:04 +00:00
|
|
|
$(LINUX_CC) -o $(LINUX_OUT) $? $(LINUX_CFLAGS)
|
2016-09-13 21:55:53 +00:00
|
|
|
|
2016-09-14 22:01:04 +00:00
|
|
|
apple2: $(APPLE2_SRC)
|
2016-12-13 00:45:27 +00:00
|
|
|
$(APPLE2_CL) -m $(APPLE2_MAP) -o $(APPLE2_OUT) $? $(APPLE2_CFLAGS) -C src/game-of-life.cfg
|
2016-09-13 13:32:11 +00:00
|
|
|
|
2016-09-14 22:01:04 +00:00
|
|
|
apple2-asm: $(APPLE2_SRC)
|
|
|
|
$(APPLE2_CC) $(APPLE2_CFLAGS) -r -T $?
|
2016-09-13 13:32:11 +00:00
|
|
|
|
2016-09-14 22:01:04 +00:00
|
|
|
clean: $(SRC)
|
2016-11-05 20:38:25 +00:00
|
|
|
rm -f $(APPLE2_MAP) src/*.o src/*.s gmon.out & rm -r bin/
|