C_STANDARD=c17 DEBUG_DIR=build/Debug BIN_DEBUG_DIR=bin/Debug RELEASE_DIR=build/Release BIN_RELEASE_DIR=bin/Release #INCLUDE_PATH="-I/path/to/arbitrary/src" #LIB_PATH="-L/path/to/library/include" #LINKER_FLAGS=-lGL ## debug: ## g++ -std=c++14 -Wall -fPIC -pg -g $(INCLUDE_PATH) $(LIB_PATH) -c src/Main.cpp -o $(DEBUG_DIR)/Main.o ## g++ -o $(BIN_DEBUG_DIR)/ratatoskr-messenger-server $(DEBUG_DIR)/Main.o $(LINKER_FLAGS) ## release: ## g++ -std=c++14 -Wall -fPIC -O2 $(INCLUDE_PATH) $(LIB_PATH) -c src/Main.cpp -o $(RELEASE_DIR)/Main.o ## g++ -o $(BIN_RELEASE_DIR)/ratatoskr-messenger-server $(RELEASE_DIR)/Main.o -s $(LINKER_FLAGS) debug: gcc -ansi -std=$(C_STANDARD) -Wall -fPIC -pg -c src/Main.c -o $(DEBUG_DIR)/Main.o gcc -o $(BIN_DEBUG_DIR)/ratatoskr-messenger-server $(DEBUG_DIR)/Main.o release: gcc -ansi -std=$(C_STANDARD) -Wall -fPIC -O2 -c src/Main.c -o $(RELEASE_DIR)/Main.o gcc -o $(BIN_RELEASE_DIR)/ratatoskr-messenger-server $(RELEASE_DIR)/Main.o .PHONY: clean clean: rm -rf $(DEBUG_DIR)/* rm -rf $(BIN_DEBUG_DIR)/* rm -rf $(RELEASE_DIR)/* rm -rf $(BIN_RELEASE_DIR)/*