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