1 |
UNAME := $(shell uname -s) |
2 |
ifeq ("Linux","$(UNAME)") |
3 |
GCC := i686-w64-mingw32-gcc |
4 |
WINDRES := i686-w64-mingw32-windres |
5 |
else |
6 |
GCC := gcc |
7 |
WINDRES := windres |
8 |
endif |
9 |
|
10 |
GCCFLAGS = -std=c99 -O0 -Wall -fomit-frame-pointer -fpack-struct -pedantic -Wextra -Wno-unused-variable |
11 |
LINKFLAGS = -O0 -Wall -fomit-frame-pointer -fpack-struct -s -mdll |
12 |
LOCALE = LC_MESSAGES=C |
13 |
|
14 |
#LIBS = -lwinmm -lopengl32 -lgdi32 |
15 |
LIBS = -lgdi32 |
16 |
OBJS = src/binkw32.def |
17 |
OUT = build/binkw32.dll |
18 |
|
19 |
SRC = src/Daodan.c src/Daodan_BSL.c src/Daodan_Character.c src/Daodan_Cheater.c src/Daodan_Console.c src/daodan_gl.c src/Daodan_Patch.c src/Daodan_Persistence.c src/Daodan_Utility.c src/Daodan_Win32.c src/Daodan_WindowHack.c src/inifile_reader.c src/_DLLInfo.rc |
20 |
DEST = $(patsubst src/%.rc,build/%.o,$(patsubst src/%.c,build/%.o,$(SRC))) |
21 |
|
22 |
ALL: $(DEST) $(OBJS) |
23 |
echo "Linking $<" |
24 |
$(LOCALE) $(GCC) $(LINKFLAGS) -o $(OUT) $(DEST) $(OBJS) $(LIBS) |
25 |
|
26 |
clean: |
27 |
rm $(DEST) |
28 |
rm $(OUT) |
29 |
|
30 |
build/%.o: src/%.c |
31 |
echo "Compiling $<" |
32 |
$(LOCALE) $(GCC) $(GCCFLAGS) -c -o $@ $< |
33 |
echo |
34 |
|
35 |
build/%.o: src/%.rc |
36 |
echo "Assembling resource $<" |
37 |
$(WINDRES) -i $< -o $@ |
38 |
echo |
39 |
|