1 |
< |
FOLDERS = patches flatline |
2 |
< |
FILES = Daodan.c Daodan_BSL.c Daodan_Character.c Daodan_Cheater.c Daodan_Config.c Daodan_Console.c Daodan_GL.c Daodan_Patch.c Daodan_Persistence.c Daodan_Utility.c Daodan_Win32.c Inifile_Reader.c _DLLInfo.rc patches/Patches.c flatline/Flatline.c flatline/Flatline_BSL.c flatline/Flatline_Client.c flatline/Flatline_Hooks.c flatline/Flatline_Net.c flatline/Flatline_Packet.c flatline/Flatline_PacketReader.c flatline/Flatline_PacketBuilder.c flatline/Flatline_Server.c flatline/Flatline_Win32.c flatline/Mariusnet.c flatline/Flatline_Events.c |
3 |
< |
|
4 |
< |
DEF = |
5 |
< |
GCCFLAGS = -std=c99 -O0 -Wall -fomit-frame-pointer -fpack-struct -Wextra -Wno-unused-variable -Wno-unused-parameter $(addprefix -D,$(DEF)) |
1 |
> |
SRC = src |
2 |
> |
TARGET = build |
3 |
> |
SUBFOLDERS = patches flatline beaengine |
4 |
> |
|
5 |
> |
DEF = BEA_ENGINE_STATIC |
6 |
> |
INCLUDEPATHS = . |
7 |
> |
GCCFLAGS = -std=c99 -O0 -Wall -fomit-frame-pointer -fpack-struct -Wextra -Wno-pragmas -Wno-unused-variable $(addprefix -I$(SRC)/,$(INCLUDEPATHS)) -Wno-unused-parameter $(addprefix -D,$(DEF)) |
8 |
|
LINKFLAGS = -O0 -Wall -fomit-frame-pointer -fpack-struct -s -mdll |
9 |
|
LOCALE = LC_MESSAGES=C |
10 |
|
|
11 |
|
#LIBS = -lwinmm -lopengl32 |
12 |
|
LIBS = -lgdi32 -lwsock32 |
13 |
< |
OBJS = src/binkw32.def |
14 |
< |
OUT = build/binkw32.dll |
13 |
> |
OBJS = $(SRC)/binkw32.def |
14 |
> |
OUT = $(TARGET)/binkw32.dll |
15 |
|
|
16 |
+ |
FILES := src/_DLLInfo.rc $(foreach dir,. $(SUBFOLDERS),$(wildcard $(SRC)/$(dir)/*.c)) |
17 |
|
|
18 |
|
################################################### |
19 |
|
# # |
30 |
|
WINDRES := windres |
31 |
|
endif |
32 |
|
|
33 |
< |
DESTFOLDERS = $(addprefix build/,$(FOLDERS)) |
34 |
< |
SRC = $(addprefix src/,$(FILES)) |
32 |
< |
DEST = $(patsubst src/%.rc,build/%.o,$(patsubst src/%.c,build/%.o,$(SRC))) |
33 |
> |
DESTFOLDERS = $(addprefix $(TARGET)/,$(SUBFOLDERS)) |
34 |
> |
DEST = $(patsubst $(SRC)/%.rc,$(TARGET)/%.o,$(patsubst $(SRC)/%.c,$(TARGET)/%.o,$(FILES))) |
35 |
|
|
36 |
|
ALL: $(DESTFOLDERS) $(DEST) $(OBJS) |
37 |
|
@echo "Linking" |
38 |
|
$(LOCALE) $(GCC) $(LINKFLAGS) -o $(OUT) $(DEST) $(OBJS) $(LIBS) |
39 |
|
|
40 |
|
clean: |
41 |
< |
rm $(DEST) |
42 |
< |
rm -R $(DESTFOLDERS) |
43 |
< |
rm $(OUT) |
41 |
> |
rm -f $(DEST) |
42 |
> |
rm -Rf $(DESTFOLDERS) |
43 |
> |
rm -f $(OUT) |
44 |
|
|
45 |
|
$(DESTFOLDERS): |
46 |
|
mkdir -p $@ |
47 |
|
|
48 |
< |
build/%.o: src/%.c |
48 |
> |
$(TARGET)/%.o: $(SRC)/%.c |
49 |
|
@echo "Compiling $<" |
50 |
|
$(LOCALE) $(GCC) $(GCCFLAGS) -c -o $@ $< |
51 |
|
@echo |
52 |
|
|
53 |
< |
build/%.o: src/%.rc |
53 |
> |
$(TARGET)/%.o: $(SRC)/%.rc |
54 |
|
@echo "Assembling resource $<" |
55 |
|
$(WINDRES) -i $< -o $@ |
56 |
|
@echo |