|
3 | 3 | BIN_NAME := yue |
4 | 4 | # Compiler used |
5 | 5 | CXX ?= g++ |
| 6 | +CC ?= gcc |
6 | 7 | # Extension of source files used in the project |
7 | 8 | SRC_EXT = cpp |
8 | 9 | # Path to the source directory, relative to the makefile |
@@ -125,10 +126,13 @@ endif |
125 | 126 |
|
126 | 127 | # Combine compiler and linker flags |
127 | 128 | release: export CXXFLAGS := $(CXXFLAGS) $(COMPILE_FLAGS) $(RCOMPILE_FLAGS) |
| 129 | +release: export CFLAGS := $(CFLAGS) $(filter-out -std=c++17,$(COMPILE_FLAGS)) $(RCOMPILE_FLAGS) |
128 | 130 | release: export LDFLAGS := $(LDFLAGS) $(LINK_FLAGS) $(RLINK_FLAGS) |
129 | 131 | debug: export CXXFLAGS := $(CXXFLAGS) $(COMPILE_FLAGS) $(DCOMPILE_FLAGS) |
| 132 | +debug: export CFLAGS := $(CFLAGS) $(filter-out -std=c++17,$(COMPILE_FLAGS)) $(DCOMPILE_FLAGS) |
130 | 133 | debug: export LDFLAGS := $(LDFLAGS) $(LINK_FLAGS) $(DLINK_FLAGS) |
131 | 134 | shared: export CXXFLAGS := $(CXXFLAGS) $(COMPILE_FLAGS) $(RCOMPILE_FLAGS) $(TARGET_FLAGS) |
| 135 | +shared: export CFLAGS := $(CFLAGS) $(filter-out -std=c++17,$(COMPILE_FLAGS)) $(RCOMPILE_FLAGS) $(TARGET_FLAGS) |
132 | 136 |
|
133 | 137 | # Build and output paths |
134 | 138 | release: export BUILD_PATH := build/release |
@@ -163,9 +167,15 @@ ifeq ($(NO_LUA),true) |
163 | 167 | SOURCES := $(filter-out $(SRC_PATH)/yuescript/yuescript.cpp, $(SOURCES)) |
164 | 168 | endif |
165 | 169 |
|
| 170 | +# Add colib ljson.c source file |
| 171 | +SOURCES += $(SRC_PATH)/3rdParty/colib/ljson.c |
| 172 | + |
166 | 173 | # Set the object file names, with the source directory stripped |
167 | 174 | # from the path, and the build path prepended in its place |
168 | | -OBJECTS = $(SOURCES:$(SRC_PATH)/%.$(SRC_EXT)=$(BUILD_PATH)/%.o) |
| 175 | +CPP_SOURCES = $(filter %.cpp,$(SOURCES)) |
| 176 | +C_SOURCES = $(filter %.c,$(SOURCES)) |
| 177 | +OBJECTS = $(CPP_SOURCES:$(SRC_PATH)/%.cpp=$(BUILD_PATH)/%.o) |
| 178 | +OBJECTS += $(C_SOURCES:$(SRC_PATH)/%.c=$(BUILD_PATH)/%.o) |
169 | 179 | # Set the dependency files that will be used to add header dependencies |
170 | 180 | DEPS = $(OBJECTS:.o=.d) |
171 | 181 |
|
@@ -469,3 +479,11 @@ $(BUILD_PATH)/%.o: $(SRC_PATH)/%.$(SRC_EXT) |
469 | 479 | $(CMD_PREFIX)$(CXX) $(CXXFLAGS) $(INCLUDES) -MP -MMD -c $< -o $@ |
470 | 480 | @echo -en "\t Compile time: " |
471 | 481 | @$(END_TIME) |
| 482 | + |
| 483 | +# C source file rules |
| 484 | +$(BUILD_PATH)/%.o: $(SRC_PATH)/%.c |
| 485 | + @echo "Compiling: $< -> $@" |
| 486 | + @$(START_TIME) |
| 487 | + $(CMD_PREFIX)$(CC) $(CFLAGS) $(INCLUDES) -MP -MMD -c $< -o $@ |
| 488 | + @echo -en "\t Compile time: " |
| 489 | + @$(END_TIME) |
0 commit comments