# Compiler flags... CPP_COMPILER = g++ C_COMPILER = gcc # Include paths... Debug_Include_Path=-I"../../libspk/src" Release_Include_Path=-I"../../libspk/src" # Library paths... Debug_Library_Path= Release_Library_Path= # Additional libraries... Debug_Libraries=-Wl,--start-group -l$(NOINHERIT) -Wl,--end-group Release_Libraries=-Wl,--start-group -l$(NOINHERIT) -Wl,--end-group # Preprocessor definitions... Debug_Preprocessor_Definitions=-D GCC_BUILD -D _DEBUG -D _CONSOLE -D _CRT_SECURE_NO_WARNINGS Release_Preprocessor_Definitions=-D GCC_BUILD -D NDEBUG -D _CONSOLE -D _CRT_SECURE_NO_WARNINGS # Implictly linked object files... Debug_Implicitly_Linked_Objects= Release_Implicitly_Linked_Objects= # Compiler flags... Debug_Compiler_Flags=-O0 -g Release_Compiler_Flags=-O2 # Builds all configurations for this project... .PHONY: build_all_configurations build_all_configurations: Debug Release # Builds the Debug configuration... .PHONY: Debug Debug: create_folders ../../Windows/Debug/gccModDiff/../src/moddiff.o g++ ../../Windows/Debug/gccModDiff/../src/moddiff.o $(Debug_Library_Path) $(Debug_Libraries) -Wl,-rpath,./ -o ../../Windows/gccDebug/ModDiff.exe # Compiles file ../src/moddiff.cpp for the Debug configuration... -include ../../Windows/Debug/gccModDiff/../src/moddiff.d ../../Windows/Debug/gccModDiff/../src/moddiff.o: ../src/moddiff.cpp $(CPP_COMPILER) $(Debug_Preprocessor_Definitions) $(Debug_Compiler_Flags) -c ../src/moddiff.cpp $(Debug_Include_Path) -o ../../Windows/Debug/gccModDiff/../src/moddiff.o $(CPP_COMPILER) $(Debug_Preprocessor_Definitions) $(Debug_Compiler_Flags) -MM ../src/moddiff.cpp $(Debug_Include_Path) > ../../Windows/Debug/gccModDiff/../src/moddiff.d # Builds the Release configuration... .PHONY: Release Release: create_folders ../../Windows/Release/gccModDiff/../src/moddiff.o g++ ../../Windows/Release/gccModDiff/../src/moddiff.o $(Release_Library_Path) $(Release_Libraries) -Wl,-rpath,./ -o ../../Windows/gccRelease/ModDiff.exe # Compiles file ../src/moddiff.cpp for the Release configuration... -include ../../Windows/Release/gccModDiff/../src/moddiff.d ../../Windows/Release/gccModDiff/../src/moddiff.o: ../src/moddiff.cpp $(CPP_COMPILER) $(Release_Preprocessor_Definitions) $(Release_Compiler_Flags) -c ../src/moddiff.cpp $(Release_Include_Path) -o ../../Windows/Release/gccModDiff/../src/moddiff.o $(CPP_COMPILER) $(Release_Preprocessor_Definitions) $(Release_Compiler_Flags) -MM ../src/moddiff.cpp $(Release_Include_Path) > ../../Windows/Release/gccModDiff/../src/moddiff.d # Creates the intermediate and output folders for each configuration... .PHONY: create_folders create_folders: mkdir -p ../../Windows/Debug/gccModDiff/source mkdir -p ../../Windows/gccDebug mkdir -p ../../Windows/Release/gccModDiff/source mkdir -p ../../Windows/gccRelease # Cleans intermediate and output files (objects, libraries, executables)... .PHONY: clean clean: rm -f ../../Windows/Debug/gccModDiff/*.o rm -f ../../Windows/Debug/gccModDiff/*.d rm -f ../../Windows/gccDebug/*.a rm -f ../../Windows/gccDebug/*.so rm -f ../../Windows/gccDebug/*.dll rm -f ../../Windows/gccDebug/*.exe rm -f ../../Windows/Release/gccModDiff/*.o rm -f ../../Windows/Release/gccModDiff/*.d rm -f ../../Windows/gccRelease/*.a rm -f ../../Windows/gccRelease/*.so rm -f ../../Windows/gccRelease/*.dll rm -f ../../Windows/gccRelease/*.exe