start new makefile, migrate to libpicofe
[picodrive.git] / Makefile
1 # settings
2 #use_fbdev = 1
3 #fake_in_gp2x = 1
4
5 use_musashi = 1
6 #use_fame = 1
7 use_cz80 = 1
8 #use_sh2drc = 1
9 use_sh2mame = 1
10
11 #drc_debug = 3
12 #drc_debug_interp = 1
13 #profile = 1
14
15 -include Makefile.local
16
17 ifndef ARCH
18 ARCH = x86
19 endif
20
21 CC ?= $(CROSS_COMPILE)gcc
22
23 DEFINES = _UNZIP_SUPPORT IO_STATS IN_EVDEV
24 CFLAGS += -ggdb -Wall -falign-functions=2
25 CFLAGS += -I.
26 CFLAGS += -Iplatform/linux/
27 LDLIBS += -lm -lpng
28
29 all: PicoDrive
30
31 # frontend
32 OBJS += platform/linux/io.o platform/linux/emu.o platform/linux/blit.o \
33         platform/linux/log_io.o
34
35 # common
36 OBJS += platform/common/main.o platform/common/emu.o platform/common/menu_pico.o \
37         platform/common/config.o
38
39 # libpicofe
40 OBJS += platform/libpicofe/input.o platform/libpicofe/readpng.o \
41         platform/libpicofe/fonts.o platform/libpicofe/linux/in_evdev.o \
42         platform/libpicofe/linux/plat.o platform/libpicofe/linux/sndout_oss.o
43
44 OBJS += platform/libpicofe/plat_dummy.o
45
46 ifeq "$(use_fbdev)" "1"
47 DEFINES += FBDEV
48 OBJS += fbdev.o
49 else
50 LDLIBS += -lpthread
51 LDLIBS += -lX11
52 endif
53
54 ifeq "$(ARCH)" "arm"
55 OBJS += pico/carthw/svp/stub_arm.o
56 endif
57 OBJS += pico/sound/mix.o
58 OBJS += pico/carthw/svp/compiler.o
59
60 # zlib
61 OBJS += zlib/gzio.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o \
62         zlib/deflate.o zlib/crc32.o zlib/adler32.o zlib/zutil.o zlib/compress.o zlib/uncompr.o
63 # unzip
64 OBJS += unzip/unzip.o unzip/unzip_stream.o
65
66 include platform/common/common.mak
67
68 CFLAGS += $(addprefix -D,$(DEFINES))
69
70 clean:
71         $(RM) PicoDrive $(OBJS)
72
73 PicoDrive : $(OBJS)
74         $(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDLIBS) -Wl,-Map=PicoDrive.map -o $@
75
76 pprof: platform/linux/pprof.c
77         $(CC) -O2 -ggdb -DPPROF -DPPROF_TOOL -I../../ -I. $^ -o $@