2017-03-23 12:47:28 +00:00
|
|
|
#
|
|
|
|
# Component Makefile
|
|
|
|
#
|
|
|
|
|
|
|
|
COMPONENT_ADD_INCLUDEDIRS := . ./musashi
|
|
|
|
COMPONENT_SRCDIRS := . musashi
|
|
|
|
|
|
|
|
MUSASHI_GEN_SRC := musashi/m68kops_pre.c musashi/m68kopac.c musashi/m68kopdm.c musashi/m68kopnz.c
|
|
|
|
MUSASHI_GEN_OBJ := $(MUSASHI_GEN_SRC:%.c=%.o)
|
2017-03-24 10:12:59 +00:00
|
|
|
COMPONENT_OBJS := $(MUSASHI_GEN_OBJ) musashi/m68kcpu.o emu.o iwm.o via.o rtc.o ncr.o scc.o mouse.o
|
2017-03-23 12:47:28 +00:00
|
|
|
|
|
|
|
CFLAGS += -Wno-error=implicit-function-declaration
|
|
|
|
|
|
|
|
#Some deeper Make magic to generate the file that generates bits and pieces of the
|
|
|
|
#68K emu, and run that to get the C files we need.
|
|
|
|
#We generate the things in the src dir, which is less optimal, but eh, it works.
|
|
|
|
|
|
|
|
COMPONENT_EXTRA_CLEAN := $(addprefix $(COMPONENT_PATH)/musashi/,$(MUSASHI_GEN_SRC) m68kmake)
|
|
|
|
|
|
|
|
#Using wildcard magic here because otherwise Make will invoke this multiple times.
|
|
|
|
#$(COMPONENT_PATH)/musashi/
|
2017-03-24 10:12:59 +00:00
|
|
|
$(COMPONENT_PATH)/musashi/m68kop%.c: $(COMPONENT_PATH)/musashi/m68kmake
|
|
|
|
cd $(COMPONENT_PATH)/musashi/; ./m68kmake
|
|
|
|
|
|
|
|
$(COMPONENT_PATH)/musashi/m68kops_pre.c: $(COMPONENT_PATH)/musashi/m68kops_gen
|
|
|
|
cd $(COMPONENT_PATH)/musashi/; ./m68kops_gen > m68kops_pre.c
|
|
|
|
|
|
|
|
$(COMPONENT_PATH)/musashi/m68kops_gen: $(COMPONENT_PATH)/musashi/m68kops_gen.c
|
2017-03-24 11:30:16 +00:00
|
|
|
cd $(COMPONENT_PATH)/musashi/; $(HOSTCC) -std=gnu99 -o m68kops_gen m68kops.c
|
2017-03-23 12:47:28 +00:00
|
|
|
|
|
|
|
$(COMPONENT_PATH)/musashi/m68kmake: $(COMPONENT_PATH)/musashi/m68kmake.c
|
2017-03-24 11:30:16 +00:00
|
|
|
$(HOSTCC) -std=gnu99 -o $@ $^
|