pandora: tripplebuffer fbdev out, refactoring
[libpicofe.git] / pandora / Makefile
1 #export CROSS = arm-none-linux-gnueabi-\r
2 CROSS ?= $(CROSS_COMPILE)\r
3 LIBROOT = /home/notaz/dev/pnd/libroot\r
4 \r
5 # settings\r
6 use_cyclone = 1\r
7 #use_musashi = 1\r
8 use_drz80 = 1\r
9 use_sh2drc = 1\r
10 #use_sh2mame = 1\r
11 \r
12 asm_memory = 1\r
13 asm_render = 1\r
14 asm_ym2612 = 1\r
15 asm_misc = 1\r
16 asm_cdpico = 1\r
17 asm_cdmemory = 1\r
18 #profile = 1\r
19 #drc_debug = 3\r
20 \r
21 -include Makefile.local\r
22 \r
23 ifeq "$(use_musashi)" "1"\r
24 # due to CPU stop flag acces\r
25 asm_cdpico = 0\r
26 asm_cdmemory = 0\r
27 endif\r
28 \r
29 ARCH = arm\r
30 DEFINES += ARM PANDORA IN_EVDEV\r
31 CFLAGS += -I../.. -I. -I$(LIBROOT)/include\r
32 CFLAGS += -Wall -Winline -mcpu=cortex-a8 -mtune=cortex-a8 -march=armv7-a\r
33 ifeq ($(DEBUG),)\r
34 CFLAGS += -O2 -fomit-frame-pointer -fstrict-aliasing -ffast-math\r
35 endif\r
36 LDFLAGS += -lm -lpng -L$(LIBROOT)/lib -static\r
37 ASFLAGS = -mcpu=cortex-a8\r
38 CC = $(CROSS)gcc\r
39 STRIP = $(CROSS)strip\r
40 AS = $(CROSS)as\r
41 LD = $(CROSS)ld\r
42 OBJCOPY = $(CROSS)objcopy\r
43 \r
44 # frontend\r
45 OBJS += pandora.o emu.o asm_utils.o\r
46 \r
47 # common\r
48 OBJS += platform/common/emu.o platform/common/menu.o platform/common/fonts.o platform/common/config.o \\r
49         platform/common/arm_utils.o platform/common/mp3_helix.o platform/common/arm_linux.o \\r
50         platform/common/readpng.o platform/common/input.o platform/common/main.o \\r
51         platform/linux/fbdev.o platform/linux/in_evdev.o platform/linux/sndout_oss.o \\r
52         platform/linux/plat.o\r
53 \r
54 # ARM stuff\r
55 OBJS += pico/carthw/svp/compiler.o pico/carthw/svp/stub_arm.o\r
56 OBJS += pico/sound/mix_arm.o\r
57 \r
58 # zlib\r
59 OBJS += zlib/gzio.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o \\r
60         zlib/deflate.o zlib/crc32.o zlib/adler32.o zlib/zutil.o zlib/compress.o\r
61 # unzip\r
62 OBJS += unzip/unzip.o unzip/unzip_stream.o\r
63 \r
64 vpath %.c = ../..\r
65 vpath %.s = ../..\r
66 vpath %.S = ../..\r
67 DIRS += platform/linux zlib unzip\r
68 \r
69 all: mkdirs PicoDrive\r
70 \r
71 include ../common/common.mak\r
72 include ../common/common_arm.mak\r
73 include ../common/revision.mak\r
74 \r
75 CFLAGS += $(addprefix -D,$(DEFINES))\r
76 \r
77 PicoDrive : $(OBJS) ../common/helix/$(CROSS)helix-mp3.a\r
78         @echo ">>>" $@\r
79         $(CC) -o $@ $(CFLAGS) $^ $(LDFLAGS) -Wl,-Map=PicoDrive.map\r
80 ifeq ($(DEBUG),)\r
81         $(STRIP) $@\r
82 endif\r
83 \r
84 clean: tidy\r
85         $(RM) PicoDrive\r
86 tidy:\r
87         $(RM) $(OBJS)\r
88 \r
89 readme.txt: ../../tools/textfilter ../base_readme.txt\r
90         ../../tools/textfilter ../base_readme.txt $@ GP2X\r
91 \r
92 # ----------- release -----------\r
93 ifneq ($(findstring rel,$(MAKECMDGOALS)),)\r
94 $(error TODO)\r
95 ifeq ($(VER),)\r
96 $(error need VER)\r
97 endif\r
98 endif\r
99 \r