Index: Daodan/makefile
===================================================================
--- Daodan/makefile	(revision 877)
+++ Daodan/makefile	(revision 983)
@@ -1,7 +1,9 @@
-FOLDERS = patches flatline
-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
+SRC = src
+TARGET = build
+SUBFOLDERS = patches flatline beaengine
 
-DEF = 
-GCCFLAGS = -std=c99 -O0 -Wall -fomit-frame-pointer -fpack-struct -Wextra -Wno-unused-variable -Wno-unused-parameter $(addprefix -D,$(DEF))
+DEF = BEA_ENGINE_STATIC
+INCLUDEPATHS = .
+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))
 LINKFLAGS = -O0 -Wall -fomit-frame-pointer -fpack-struct -s -mdll
 LOCALE = LC_MESSAGES=C
@@ -9,7 +11,8 @@
 #LIBS = -lwinmm -lopengl32
 LIBS = -lgdi32 -lwsock32
-OBJS = src/binkw32.def 
-OUT = build/binkw32.dll
+OBJS = $(SRC)/binkw32.def 
+OUT = $(TARGET)/binkw32.dll
 
+FILES := src/_DLLInfo.rc $(foreach dir,. $(SUBFOLDERS),$(wildcard $(SRC)/$(dir)/*.c))
 
 ###################################################
@@ -28,7 +31,6 @@
 endif
 
-DESTFOLDERS = $(addprefix build/,$(FOLDERS))
-SRC = $(addprefix src/,$(FILES))
-DEST = $(patsubst src/%.rc,build/%.o,$(patsubst src/%.c,build/%.o,$(SRC)))
+DESTFOLDERS = $(addprefix $(TARGET)/,$(SUBFOLDERS))
+DEST = $(patsubst $(SRC)/%.rc,$(TARGET)/%.o,$(patsubst $(SRC)/%.c,$(TARGET)/%.o,$(FILES)))
 
 ALL: $(DESTFOLDERS) $(DEST) $(OBJS)
@@ -37,17 +39,17 @@
 
 clean:
-	rm $(DEST)
-	rm -R $(DESTFOLDERS)
-	rm $(OUT)
+	rm -f $(DEST)
+	rm -Rf $(DESTFOLDERS)
+	rm -f $(OUT)
 
 $(DESTFOLDERS):
 	mkdir -p $@
 
-build/%.o: src/%.c
+$(TARGET)/%.o: $(SRC)/%.c
 	@echo "Compiling $<"
 	$(LOCALE) $(GCC) $(GCCFLAGS) -c -o $@ $<
 	@echo
 
-build/%.o: src/%.rc
+$(TARGET)/%.o: $(SRC)/%.rc
 	@echo "Assembling resource $<"
 	$(WINDRES) -i $< -o $@
