32x: final renderer tweaks; PWM disable kills PWM irqs
[libpicofe.git] / common / common.mak
CommitLineData
d2f29611 1ifneq ($(DEBUG),)
2CFLAGS += -ggdb
3endif
4ifeq "$(profile)" "1"
5CFLAGS += -fprofile-generate
6endif
7ifeq "$(profile)" "2"
8CFLAGS += -fprofile-use
9endif
5ff8efa9 10ifeq "$(pprof)" "1"
11DEFINES += PPROF
12OBJS += platform/linux/pprof.o
13endif
d2f29611 14
15# === Pico core ===
16# Pico
17OBJS += pico/area.o pico/cart.o pico/memory.o pico/pico.o pico/sek.o pico/z80if.o \
18 pico/videoport.o pico/draw2.o pico/draw.o pico/mode4.o pico/sms.o \
19 pico/misc.o pico/eeprom.o pico/patch.o pico/debug.o
20# CD
21OBJS += pico/cd/pico.o pico/cd/memory.o pico/cd/sek.o pico/cd/LC89510.o \
22 pico/cd/cd_sys.o pico/cd/cd_file.o pico/cd/cue.o pico/cd/gfx_cd.o \
23 pico/cd/area.o pico/cd/misc.o pico/cd/pcm.o pico/cd/buffering.o
24# 32X
25OBJS += pico/32x/32x.o pico/32x/memory.o pico/32x/draw.o pico/32x/pwm.o
26# Pico
27OBJS += pico/pico/pico.o pico/pico/memory.o pico/pico/xpcm.o
28# carthw
29OBJS += pico/carthw/carthw.o
30# SVP
31OBJS += pico/carthw/svp/svp.o pico/carthw/svp/memory.o \
32 pico/carthw/svp/ssp16.o
33# sound
34OBJS += pico/sound/sound.o
35OBJS += pico/sound/sn76496.o pico/sound/ym2612.o
36
b0e318f7 37# === CPU cores ===
38# --- M68k ---
39ifeq "$(use_musashi)" "1"
40DEFINES += EMU_M68K
41OBJS += cpu/musashi/m68kops.o cpu/musashi/m68kcpu.o
42#OBJS += cpu/musashi/m68kdasm.o
43endif
44ifeq "$(use_cyclone)" "1"
45DEFINES += EMU_C68K
46OBJS += pico/m68kif_cyclone.o cpu/Cyclone/proj/Cyclone.o cpu/Cyclone/tools/idle.o
47endif
48ifeq "$(use_fame)" "1"
49DEFINES += EMU_F68K
50OBJS += cpu/fame/famec.o
51endif
52
53# --- Z80 ---
54ifeq "$(use_mz80)" "1"
55DEFINES += _USE_MZ80
56OBJS += cpu/mz80/mz80.o
57endif
58#
59ifeq "$(use_drz80)" "1"
60DEFINES += _USE_DRZ80
61OBJS += cpu/DrZ80/drz80.o
62endif
63#
64ifeq "$(use_cz80)" "1"
65DEFINES += _USE_CZ80
66OBJS += cpu/cz80/cz80.o
67endif
68
69# --- SH2 ---
70OBJS += cpu/sh2/sh2.o
71OBJS += cpu/drc/cmn.o
72#
73ifeq "$(use_sh2drc)" "1"
74DEFINES += DRC_SH2
75OBJS += cpu/sh2/compiler.o
b0e318f7 76ifdef drc_debug
77DEFINES += DRC_DEBUG=$(drc_debug)
78OBJS += cpu/sh2/mame/sh2dasm.o
79OBJS += platform/linux/host_dasm.o
80LDFLAGS += -lbfd -lopcodes -liberty
81endif
82ifeq "$(drc_debug_interp)" "1"
83DEFINES += DRC_DEBUG_INTERP
84use_sh2mame = 1
85endif
86endif
87#
88ifeq "$(use_sh2mame)" "1"
89OBJS += cpu/sh2/mame/sh2pico.o
90endif
91
92
d2f29611 93DIRS += platform platform/common pico pico/cd pico/pico pico/32x pico/sound pico/carthw/svp \
94 cpu cpu/musashi cpu/cz80 cpu/fame cpu/sh2/mame cpu/drc
95
96
97# common rules
98.c.o:
99 @echo ">>>" $<
100 $(CC) $(CFLAGS) -c $< -o $@
101.s.o:
102 @echo ">>>" $<
103 $(CC) $(CFLAGS) -c $< -o $@
104
105clean_prof:
106 find ../.. -name '*.gcno' -delete
107 find ../.. -name '*.gcda' -delete
108
109mkdirs:
110 mkdir -p $(DIRS)
111
112../../tools/textfilter: ../../tools/textfilter.c
113 make -C ../../tools/ textfilter
114
115
b0e318f7 116# random deps
117pico/carthw/svp/compiler.o : ../../cpu/drc/emit_$(ARCH).c
118cpu/sh2/compiler.o : ../../cpu/drc/emit_$(ARCH).c
119cpu/sh2/mame/sh2pico.o : ../../cpu/sh2/mame/sh2.c
120pico/pico.o pico/cd/pico.o : ../../pico/pico_cmn.c ../../pico/pico_int.h
121pico/memory.o pico/cd/memory.o : ../../pico/pico_int.h ../../pico/memory.h
122
123../../cpu/musashi/m68kops.c :
124 @make -C ../../cpu/musashi
125
126../../cpu/mz80/mz80.asm :
127 @make -C ../../cpu/mz80/
128
129cpu/fame/famec.o : ../../cpu/fame/famec.c ../../cpu/fame/famec_opcodes.h
130 @echo ">>>" $<
131 $(CC) $(CFLAGS) -Wno-unused -c $< -o $@
132
133../../cpu/Cyclone/proj/Cyclone.s:
134 @echo building Cyclone...
135 @make -C ../../cpu/Cyclone/proj CONFIG_FILE=config_pico.h
136