]> Shamusworld >> Repos - virtualjaguar/blob - Makefile.win32
Adding 1.0.1/2 uncompressed tarballs to tags for historical purposes.
[virtualjaguar] / Makefile.win32
1 CC = gcc\r
2 LD = gcc \r
3 NASM = nasm\r
4 \r
5 CFLAGS  = -Wall -O3 -D__PORT__ -D__GCCWIN32__ -Dstricmp="strcasecmp" \\r
6                         -fomit-frame-pointer `sdl-config --cflags`\r
7 #                       -fomit-frame-pointer `sdl-config --cflags` -DCPU_DEBUG\r
8 #                       -fomit-frame-pointer `sdl-config --cflags` -DTOM_DEBUG\r
9 \r
10 LDFLAGS = $(CFLAGS)\r
11 \r
12 TARGET = jag_em\r
13 \r
14 OBJS = \\r
15         obj/version.o \\r
16         obj/pcm.o \\r
17         obj/objectp.o \\r
18         obj/memory.o \\r
19         obj/m68kdasmAG.o \\r
20         obj/log.o \\r
21         obj/jerry.o \\r
22         obj/jaguar.o \\r
23         obj/jagdasm.o \\r
24         obj/eeprom.o \\r
25         obj/dsound_dummy.o \\r
26         obj/crc32.o \\r
27         obj/clock.o \\r
28         obj/cdrom.o \\r
29         obj/cdi.o \\r
30         obj/cdbios.o \\r
31         obj/blitter.o \\r
32         obj/anajoy.o \\r
33         obj/tom.o \\r
34         obj/joystick.o \\r
35         obj/Jagem.o \\r
36         obj/gpu.o \\r
37         obj/dsp.o \\r
38         obj/m68kcpu.o obj/m68kops.o obj/m68kopac.o obj/m68kopdm.o obj/m68kopnz.o\r
39 \r
40 LIBS = `sdl-config --libs` -lstdc++\r
41 \r
42 INCS = -I. -Isrc -Isrc/include `sdl-config --cflags`\r
43 \r
44 THECC = $(CC) $(CFLAGS) $(INCS)\r
45 \r
46 all: obj $(TARGET)\r
47 \r
48 clean:\r
49         rm -rf obj\r
50         rm -f jag_em.exe\r
51 \r
52 obj:\r
53         mkdir obj\r
54 \r
55 obj/%.o: src/%.asm\r
56         $(NASM) -f win32 -o $@ $<\r
57 \r
58 obj/%.o: src/%.c\r
59         $(THECC) -c $< -o $@\r
60 \r
61 obj/%.o: src/%.cpp\r
62         $(THECC) -c $< -o $@\r
63 \r
64 jag_em: $(OBJS) \r
65         $(LD) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)\r
66         upx -9 jag_em.exe\r
67 \r
68 #\r
69 # Musashi specific stuffola\r
70 #\r
71 \r
72 obj/m68kcpu.o: obj/m68kops.h src/m68k.h src/m68kconf.h\r
73         $(CC) $(CFLAGS) -Iobj -c src/m68kcpu.c -o obj/m68kcpu.o\r
74 \r
75 obj/m68kops.o: obj/m68kmake.exe obj/m68kops.h obj/m68kops.c src/m68k.h src/m68kconf.h\r
76         $(CC) $(CFLAGS) -Isrc -c obj/m68kops.c -o obj/m68kops.o\r
77 \r
78 obj/m68kopac.o: obj/m68kmake.exe obj/m68kops.h obj/m68kopac.c src/m68k.h src/m68kconf.h\r
79         $(CC) $(CFLAGS) -Isrc -c obj/m68kopac.c -o obj/m68kopac.o\r
80 \r
81 obj/m68kopdm.o: obj/m68kmake.exe obj/m68kops.h obj/m68kopdm.c src/m68k.h src/m68kconf.h\r
82         $(CC) $(CFLAGS) -Isrc -c obj/m68kopdm.c -o obj/m68kopdm.o\r
83 \r
84 obj/m68kopnz.o: obj/m68kmake.exe obj/m68kops.h obj/m68kopnz.c src/m68k.h src/m68kconf.h\r
85         $(CC) $(CFLAGS) -Isrc -c obj/m68kopnz.c -o obj/m68kopnz.o\r
86 \r
87 obj/m68kops.h: obj/m68kmake.exe\r
88         obj/m68kmake obj src/m68k_in.c\r
89 \r
90 obj/m68kmake.exe: src/m68kmake.c src/m68k_in.c\r
91         $(CC) $(WARNINGS) src/m68kmake.c -o obj/m68kmake.exe\r