blob: 3aab9c9099135bb056997f6bf8cb4aa3c129445c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
diff --git a/makefile b/makefile
index 427d696..653a5d3 100644
--- a/makefile
+++ b/makefile
@@ -1,20 +1,58 @@
-.PHONY: all
-.PHONY: clean
+prefix = ${DESTDIR}/usr/local
+exec_prefix = ${prefix}
+bindir = ${exec_prefix}/bin
-.PHONY: linux
-linux:
- make -f makefile.linux
- rm -f sys/*/*.o src/*.o
+LD = $(CC)
+AS = $(CC)
+INSTALL = /usr/bin/install -c
-.PHONY: windows
-windows:
- make -f makefile.windows
- rm -f sys/*/*.o src/*.o
+CFLAGS = -std=c99 -Wall -O3 -I./include
+LDFLAGS = $(CFLAGS) -s -lSDL2
+ASFLAGS = $(CFLAGS)
-.PHONY: osx
-osx:
- make -f makefile.osx
- rm -f sys/*/*.o src/*.o
+TARGETS = sdl2gnuboy
+
+SYS_DEFS = -DIS_LITTLE_ENDIAN -DIS_LINUX -DSOUND
+SYS_OBJS = sys/nix/nix.o
+SYS_INCS = -I./sys/nix
+
+SDL_OBJS = sys/sdl2/sdl-video.o sys/sdl2/sdl-audio.o sys/sdl2/sdl-input.o
+SDL_LIBS = -lSDL2 -lpthread
+SDL_CFLAGS = -D_GNU_SOURCE=1 -D_REENTRANT `sdl2-config --cflags --libs`
+
+
+all: $(TARGETS)
+
+XZ_OBJS = lib/xz/xz_crc32.o lib/xz/xz_crc64.o lib/xz/xz_dec_lzma2.o lib/xz/xz_dec_stream.o lib/xz/xz_dec_bcj.o
+
+OBJS = ./src/lcd.o ./src/refresh.o ./src/lcdc.o ./src/palette.o ./src/cpu.o ./src/mem.o ./src/rtc.o ./src/hw.o ./src/sound.o \
+ ./src/events.o ./src/keytable.o \
+ ./src/loader.o ./src/save.o ./src/debug.o ./src/emu.o ./src/main.o \
+ ./src/rccmds.o ./src/rckeys.o ./src/rcvars.o ./src/rcfile.o ./src/exports.o \
+ ./src/split.o ./src/path.o ./lib/gz/inflate.o $(XZ_OBJS)
+
+INCS = -I.
+
+MYCC = $(CC) $(CFLAGS) $(INCS) $(SYS_INCS) $(SYS_DEFS)
+MYAS = $(AS) $(ASFLAGS) $(INCS) $(SYS_INCS) $(SYS_DEFS)
+
+main.o: Version
+
+.c.o:
+ $(MYCC) -c $< -o $@
+
+.s.o:
+ $(MYAS) -c $< -o $@
+
+sdl2gnuboy: $(OBJS) $(SYS_OBJS) $(SDL_OBJS)
+ $(LD) $(LDFLAGS) $(OBJS) $(SYS_OBJS) $(SDL_OBJS) -o $@ $(SDL_LIBS)
+
+install: all
+ $(INSTALL) -d $(bindir)
+ $(INSTALL) -m 755 $(TARGETS) $(bindir)
clean:
- rm -f *gnuboy sdl2gnuboy.exe mac-sdl2gnuboy gmon.out *.o sys/*.o sys/*/*.o src/*.o
\ No newline at end of file
+ rm -f *gnuboy sdl2gnuboy.exe gmon.out *.o sys/*.o sys/*/*.o $(OBJS)
+
+
+
|