C-Webserver/makefile

28 lines
519 B
Makefile

# Makefile for hello.c
CC = gcc # C compiler
CFLAGS = -O2 # Compiler flags (optimization level)
SRC_DIR = src
BUILD_DIR = build
BIN_DIR = bin
EXECUTABLE = WebServer
# Create directories
$(shell mkdir -p $(BUILD_DIR) $(BIN_DIR))
SOURCES = $(wildcard $(SRC_DIR)/*.c)
OBJECT_FILES = $(SOURCES:$(SRC_DIR)/%.c=$(BUILD_DIR)/%.o)
$(EXECUTABLE): $(OBJECT_FILES)
$(CC) $(CFLAGS) -o $@ $^
$(BUILD_DIR)/%.o: $(SRC_DIR)/%.c
$(CC) $(CFLAGS) -c $< -o $@
run:
./$(EXECUTABLE)
clean:
rm -f $(BUILD_DIR)/*.o $(BIN_DIR)/*