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