fremantle gui fixes (not complete)
[drnoksnes] / Makefile
1 #!/usr/bin/make
2
3 CPPFLAGS := -I. $(shell sdl-config --cflags) $(shell pkg-config --cflags x11 xsp) -I/usr/include/hgw
4 LDLIBS := -lz $(shell sdl-config --libs) $(shell pkg-config --libs x11 xsp) -lpopt -lhgw
5
6 # Default CFLAGS for building in N8x0
7 CFLAGS ?= -DMAEMO -DMAEMO_VERSION=4 -march=armv6j -mtune=arm1136jf-s -mfpu=vfp -mfloat-abi=softfp -O2 -g -Wall -static-libgcc
8 ASFLAGS ?= -march=armv6j -mfpu=vfp -mfloat-abi=softfp -g
9 CXXFLAGS ?= $(CFLAGS)
10
11 GAME_VERSION ?= $(shell head -n 1 debian/changelog | sed 's/[^0-9.-]//g')-git
12 export GAME_VERSION
13 export DESTDIR
14
15 # SNES stuff
16 OBJS = 2xsaiwin.o apu.o c4.o c4emu.o cheats.o cheats2.o clip.o cpu.o cpuexec.o data.o
17 OBJS += dma.o dsp1.o fxemu.o fxinst.o gfx.o globals.o loadzip.o memmap.o netplay.o ppu.o
18 OBJS += sdd1.o sdd1emu.o snapshot.o soundux.o spc700.o srtc.o tile.o
19 # ASM CPU Core, ripped from Yoyo's OpenSnes9X
20 OBJS += os9x_asm_cpu.o os9x_65c816.o spc700a.o
21 # and some asm from LJP...
22 OBJS += m3d_func.o misc.o
23 # from open-whatever sdk
24 OBJS += unzip.o ioapi.o
25 # my extensions to snes9x (speedhacks support)
26 OBJS += hacks.o
27 # the glue code that sticks it all together in a monstruous way
28 OBJS += platform/path.o platform/config.o platform/hgw.o
29 OBJS += platform/sdl.o platform/sdlv.o platform/sdla.o platform/sdli.o
30
31 # automatic dependencies
32 DEPS := $(OBJS:.o=.d)
33
34 all: drnoksnes gui
35
36 clean: gui_clean
37         rm -f drnoksnes *.o *.d platform/*.o platform/*.d
38         rm -f build-stamp configure-stamp
39
40 remake: clean deps all
41
42 -include $(DEPS)
43
44 drnoksnes: $(OBJS)
45         $(CXX) $(CXXFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@
46
47 install: drnoksnes
48         install drnoksnes $(DESTDIR)/usr/games
49         $(MAKE) -C gui install
50
51 deps: $(DEPS)
52 %.d: %.cpp
53         @$(CXX) $(CPPFLAGS) -MM $^ -MF $@ -MT $@ -MT $*.o
54 %.d: %.c
55         @$(CC) $(CPPFLAGS) -MM $^ -MF $@ -MT $@ -MT $*.o
56 %.d: %.s
57         @touch $@
58
59 gui:
60         $(MAKE) -C gui all
61         
62 gui_clean:
63         $(MAKE) -C gui clean
64         
65 .PHONY: all clean remake deps install gui gui_clean