Files
wschod/game/Makefile
T
2025-07-24 20:06:18 +02:00

41 lines
820 B
Makefile

# To launch with debug messages: G_MESSAGES_DEBUG=all ./wschod
SRC := $(shell find src -name '*.c')
OBJ := $(patsubst src/%.c, build/%.o, $(SRC))
DEP := $(OBJ:.o=.d)
CC := gcc
LD := gcc
STD := gnu23
RM := rm -f
DEBUG ?= 1
CFLAGS := -std=$(STD) -Werror -Wextra -Wall -MMD -MP `pkg-config --cflags sdl3 sdl3-image cglm gl glib-2.0 guile-3.0`
LDFLAGS := -std=$(STD) -lm `pkg-config --libs sdl3 sdl3-image cglm gl glib-2.0 guile-3.0`
TARGET := wschod
ifeq ($(DEBUG),1)
CFLAGS += -g -DDEBUG
LDFLAGS += -g
else
CFLAGS += -O2 -DNDEBUG
endif
.PHONY: all clean
all: $(TARGET)
$(TARGET): $(OBJ)
$(LD) $^ -o $@ $(LDFLAGS)
build/%.o: src/%.c
@mkdir -p $(dir $@)
$(CC) -c $< -o $@ $(CFLAGS)
clean:
$(RM) -r build/ $(TARGET) $(OBJ) $(DEP) perf.data* massif.out*
-include $(DEP)