CC = gcc INCLUDE := include CFLAGS = -Wall -I$(INCLUDE) -Os -ffunction-sections -fdata-sections -Wl,--gc-sections BUILD_DIR := build all: server debug: CFLAGS += -g debug: server server: $(BUILD_DIR)/server.o $(BUILD_DIR)/mongoose.o $(BUILD_DIR)/array.o $(CC) $(CFLAGS) -o $(BUILD_DIR)/server $(BUILD_DIR)/server.o $(BUILD_DIR)/mongoose.o $(BUILD_DIR)/array.o $(BUILD_DIR)/%.o: %.c | $(BUILD_DIR) $(CC) $(CFLAGS) -c $< -o $@ $(BUILD_DIR): mkdir -p $(BUILD_DIR) clean: rm -rf $(BUILD_DIR)