Makefileverbeteringen #1
59
Makefile
59
Makefile
@@ -1,38 +1,33 @@
|
||||
CC = gcc
|
||||
CFLAGS = -std=gnu11 -Wextra -pedantic -Wall -O0 -g3 -fsanitize=address
|
||||
LDFLAGS = -lncursesw -fsanitize=address
|
||||
OBJ_DIR = ./build
|
||||
OBJECTS = $(wildcard $(OBJ_DIR)/*.o)
|
||||
BUILD_COMMAND = $(CC) -c $^ -o $(OBJ_DIR)/$@ $(CFLAGS) $(LDFLAGS)
|
||||
LDFLAGS = -lncurses -fsanitize=address
|
||||
BUILD_DIR = build
|
||||
MAIN_OBJECTS = $(BUILD_DIR)/main.o \
|
||||
$(BUILD_DIR)/snake.o \
|
||||
$(BUILD_DIR)/maze_runner.o \
|
||||
$(BUILD_DIR)/minesweeper.o \
|
||||
$(BUILD_DIR)/manual.o \
|
||||
$(BUILD_DIR)/grid.o \
|
||||
$(BUILD_DIR)/grid_game_engine.o
|
||||
|
||||
.PHONY: clean
|
||||
|
||||
build:
|
||||
$(CC) $(OBJECTS) -o minigame-menu $(CFLAGS) $(LDFLAGS)
|
||||
main: $(MAIN_OBJECTS)
|
||||
cc $(LDFLAGS) -o main $^
|
||||
|
||||
$(BUILD_DIR)/main.o: main.c
|
||||
cc $(CFLAGS) -o $@ -c $^
|
||||
$(BUILD_DIR)/snake.o: games/snake/snake.c
|
||||
cc $(CFLAGS) -o $@ -c $^
|
||||
$(BUILD_DIR)/grid_game_engine.o: engine/grid_game_engine.c
|
||||
cc $(CFLAGS) -o $@ -c $^
|
||||
$(BUILD_DIR)/maze_runner.o: games/maze-runner/maze_runner.c
|
||||
cc $(CFLAGS) -o $@ -c $^
|
||||
$(BUILD_DIR)/minesweeper.o: games/minesweeper/minesweeper.c
|
||||
cc $(CFLAGS) -o $@ -c $^
|
||||
$(BUILD_DIR)/manual.o: games/manual/manual.c
|
||||
cc $(CFLAGS) -o $@ -c $^
|
||||
$(BUILD_DIR)/grid.o: engine/grid/grid.c
|
||||
cc $(CFLAGS) -o $@ -c $^
|
||||
|
||||
clean:
|
||||
rm -f *~ $(OBJECTS) main
|
||||
|
||||
main.o: main.c
|
||||
$(BUILD_COMMAND)
|
||||
|
||||
minigame-menu.o: games/minigame-menu/minigame_menu.c
|
||||
$(BUILD_COMMAND)
|
||||
|
||||
manual.o: games/manual/manual.c
|
||||
$(BUILD_COMMAND)
|
||||
|
||||
maze-runner.o: games/maze-runner/maze_runner.c
|
||||
$(BUILD_COMMAND)
|
||||
|
||||
snake.o: games/snake/snake.c
|
||||
$(BUILD_COMMAND)
|
||||
|
||||
minesweeper.o: games/minesweeper/minesweeper.c
|
||||
$(BUILD_COMMAND)
|
||||
|
||||
engine.o: engine/grid_game_engine.c
|
||||
$(BUILD_COMMAND)
|
||||
|
||||
grid.o: engine/grid/grid.c
|
||||
$(BUILD_COMMAND)
|
||||
rm -f build/*.o main
|
||||
|
||||
Reference in New Issue
Block a user