EXE = Bin/yatus CORE_OBJ := $(patsubst Src/Src/YCore/%.cpp,obj/%.o,$(wildcard Src/Src/YCore/*.cpp)) MAIN_OBJ := $(patsubst Src/Src/%.cpp,obj/%.o,$(wildcard Src/Src/*.cpp)) GFX_OBJ := $(patsubst Src/Src/YGfx/%.cpp,obj/%.o,$(wildcard Src/Src/YGfx/*.cpp)) GUI_OBJ := $(patsubst Src/Src/GUI/%.cpp,obj/%.o,$(wildcard Src/Src/GUI/*.cpp)) RLIB_OBJ := $(patsubst Src/RLib/%.cpp,obj/%.o,$(wildcard Src/RLib/*.cpp)) AUDIO_OBJ := $(patsubst Src/Src/YAudio/%.cpp,obj/%.o,$(wildcard Src/Src/YAudio/*.cpp)) LIBS = -lsfml-graphics -lboost_filesystem -lsfml-audio -lboost_thread OPT_INCLUDE = -ISrc/Include -ISrc OPT = -O3 -Wall -Wextra -g $(OPT_INCLUDE) FULL_OBJ = $(CORE_OBJ) $(MAIN_OBJ) $(GFX_OBJ) $(GUI_OBJ) $(RLIB_OBJ) $(AUDIO_OBJ) all: $(EXE) $(EXE): $(FULL_OBJ) g++ -o $(EXE) $(FULL_OBJ) $(OPT) $(LIBS) $(CORE_OBJ):obj/%.o: Src/Src/YCore/%.cpp g++ -c $< -o $@ $(OPT) $(MAIN_OBJ):obj/%.o: Src/Src/%.cpp g++ -c $< -o $@ $(OPT) $(GFX_OBJ):obj/%.o: Src/Src/YGfx/%.cpp g++ -c $< -o $@ $(OPT) $(GUI_OBJ):obj/%.o: Src/Src/GUI/%.cpp g++ -c $< -o $@ $(OPT) $(RLIB_OBJ):obj/%.o: Src/RLib/%.cpp g++ -c $< -o $@ $(OPT) $(AUDIO_OBJ):obj/%.o: Src/Src/YAudio/%.cpp g++ -c $< -o $@ $(OPT) clean: rm $(OBJ) $(EXE) obj/*o tmp Log.txt `find . -name "*~"` 2> /dev/null || echo "Done cleaning" count: wc `find . -name "*\.cpp"|grep -v utils` `find . -name "*\.h"|grep -v utils` countfiles: @echo "CPP: " `find . -name "*cpp" |wc -l`; \ echo "Headers:" `find . -name "*h" | wc -l`;\ echo "Txt:" `find data -name "*txt" |wc -l`