2024-01-29 13:03:43 +00:00
|
|
|
QUIET=1
|
|
|
|
|
2024-01-22 12:11:07 +00:00
|
|
|
all:first
|
|
|
|
|
2024-02-03 22:54:20 +00:00
|
|
|
OBJECT_FILES=gui.o main.o simdata.o assembly.o cpu.o
|
|
|
|
|
|
|
|
make.deps: $(subst .o,.c,${OBJECT_FILES}) $(wildcard *.h)
|
|
|
|
@$(CC) -MM $(subst .o,.c,${OBJECT_FILES}) > make.deps
|
|
|
|
|
|
|
|
include make.deps
|
|
|
|
|
2024-01-29 13:03:43 +00:00
|
|
|
|
|
|
|
ifeq "${QUIET}" "1"
|
|
|
|
QUIET_CC = @echo ' CC '$@;
|
|
|
|
QUIET_LINK = @echo ' LINK '$@;
|
2024-02-03 18:03:37 +00:00
|
|
|
QUIET_FAS = @echo ' FAS '$@;
|
2024-01-29 13:03:43 +00:00
|
|
|
QUIET_CLEAN = @echo ' CLEAN .';
|
|
|
|
Q = @
|
|
|
|
else
|
|
|
|
Q =
|
|
|
|
endif
|
|
|
|
|
2024-02-03 18:03:37 +00:00
|
|
|
all:test.rom
|
|
|
|
|
2024-01-29 13:03:43 +00:00
|
|
|
first: ${OBJECT_FILES}
|
|
|
|
${QUIET_LINK}
|
2024-02-14 02:45:28 +00:00
|
|
|
${Q}gcc -ggdb $^ -fsanitize=address -fsanitize=undefined -fsanitize=leak -lncursesw -ltinfow -o $@
|
2024-01-22 12:11:07 +00:00
|
|
|
|
2024-02-03 18:03:37 +00:00
|
|
|
%.rom:%.asm first
|
|
|
|
$(QUIET_FAS)
|
2024-02-16 17:06:27 +00:00
|
|
|
${Q}./first -i $< -a $@
|
2024-02-03 18:03:37 +00:00
|
|
|
|
2024-01-22 12:11:07 +00:00
|
|
|
%.o:%.c
|
2024-01-29 13:03:43 +00:00
|
|
|
${QUIET_CC}
|
2024-02-14 02:45:28 +00:00
|
|
|
${Q}gcc -ggdb -c $< -Wall -Wextra -Werror -fsanitize=address
|
2024-01-22 12:11:07 +00:00
|
|
|
|
|
|
|
.PHONY: clean
|
|
|
|
clean:
|
2024-01-29 13:03:43 +00:00
|
|
|
${QUIET_CLEAN}
|
|
|
|
${Q} rm -f ${OBJECT_FILES} first
|