CC ?= gcc CFLAGS ?= -O3 -march=native -std=c11 -Wall -Wextra -pedantic -Iinclude LDFLAGS ?= -lm -pthread -lz SRC := src/main.c src/worldgen.c src/noise.c OBJ := $(SRC:.c=.o) BIN_DIR := bin TARGET := $(BIN_DIR)/worldgen SCAN_TARGET := $(BIN_DIR)/worldgen-scan all: $(TARGET) $(TARGET): $(OBJ) | $(BIN_DIR) $(CC) $(CFLAGS) $(OBJ) -o $@ $(LDFLAGS) $(SCAN_TARGET): tools/worldgen_scan.o src/worldgen.o src/noise.o | $(BIN_DIR) $(CC) $(CFLAGS) tools/worldgen_scan.o src/worldgen.o src/noise.o -o $@ $(LDFLAGS) $(BIN_DIR): mkdir -p $(BIN_DIR) clean: rm -f $(OBJ) tools/worldgen_scan.o $(TARGET) $(SCAN_TARGET) scan: $(SCAN_TARGET) .PHONY: all clean scan