mirror of
https://gitlab.os-k.eu/os-k-team/kvisc.git
synced 2023-08-25 14:05:46 +02:00
34 lines
779 B
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
|
|
|