* Update Linux makefile to output header dependencies

This commit is contained in:
iProgramInCpp
2023-08-12 12:05:33 +03:00
parent 7fd36a1da0
commit af442d14c5

View File

@@ -6,7 +6,7 @@ RAKNET_DIR=thirdparty/raknet
PLATFORM_DIR=platforms
TARGET=minecraftcpp
CXXFLAGS=-Isource -I. -Ithirdparty/raknet -DUSE_SDL -DUSE_OPENAL -DUSE_MATH_DEFINES -DHANDLE_CHARS_SEPARATELY -O3
CXXFLAGS=-Isource -I. -Ithirdparty/raknet -DUSE_SDL -DUSE_OPENAL -DUSE_MATH_DEFINES -DHANDLE_CHARS_SEPARATELY -O3 -MMD
LINKFLAGS=-L/opt/vc/lib/ -lpng -lpthread -lSDL2 -lGL -lopenal -lGLU
#include everything in source/, plus certain files from platforms
@@ -14,6 +14,7 @@ SRC_FILES = $(shell find $(SRC_DIR) -type f -name '*.cpp')
PLT_FILES = $(shell find platforms/sdl platforms/openal -type f -name '*.cpp')
RKN_FILES = $(shell find $(RAKNET_DIR) -type f -name '*.cpp')
OBJ_FILES = $(patsubst $(SRC_DIR)/%,$(BLD_DIR)/s/%,$(SRC_FILES:.cpp=.o)) $(patsubst $(PLATFORM_DIR)/%,$(BLD_DIR)/p/%,$(PLT_FILES:.cpp=.o)) $(patsubst $(PLATFORM_DIR)/%,$(BLD_DIR)/r/%,$(RKN_FILES:.cpp=.o))
DEP_FILES = $(patsubst $(SRC_DIR)/%,$(BLD_DIR)/s/%,$(SRC_FILES:.cpp=.d)) $(patsubst $(PLATFORM_DIR)/%,$(BLD_DIR)/p/%,$(PLT_FILES:.cpp=.d)) $(patsubst $(PLATFORM_DIR)/%,$(BLD_DIR)/r/%,$(RKN_FILES:.cpp=.d))
#default target.
.PHONY = all
@@ -23,6 +24,9 @@ all: program
$(TARGET): $(OBJ_FILES)
$(CXX) -o $@ $^ $(LINKFLAGS)
#include header dependencies
-include $(DEP_FILES)
$(BLD_DIR)/s/%.o: $(SRC_DIR)/%.cpp
@mkdir -p $(dir $@)
$(CXX) $(CXXFLAGS) -c -o $@ $<