kvisc/pc/Makefile

34 lines
779 B
Makefile

# The OS/K Team licenses this file to you under the MIT license.
# See the LICENSE file in the project root for more information.
all: k.exe
src = instrs/instrs.c main.c regs.c dump.c \
instrs/jumps.c except.c decd.c mem.c instrs/logic.c \
instrs/stack.c instrs/super.c instrs/arith.c log.c \
instrs/debug.c instrs/mov.c
obj = disd.o $(patsubst %.c,%.o,$(src))
CFLAGS=-O2 -g -Wall -fno-builtin-log
disd.o: i_arch.h *.h */*.h
@cc $(CFLAGS) -D_NEED_DISASM -c decd.c -o $@
%.o: %.c i_arch.h *.h */*.h $(src)
@cc $(CFLAGS) -c $< -o $@
i_arch.h: instrs/INSTRS instrs/arch_i.py
@cd instrs && python3 arch_i.py
.PHONY: clean
clean:
@rm *.o */*.o instrs/arch_i.h
k.exe: i_arch.h $(obj)
@gcc -O2 -Wall $(obj) -o k.exe
@rm instrs/arch_i.h
@rm *.o */*.o