CC := gcc -Wall -Wextra -Wpedantic -Werror -Wshadow=local -Iinclude -Isrc -g -std=c11 # pkg-config # LIBS := # LDFLAGS := $(LDFLAGS) $(shell pkg-config --libs $(LIBS)) # CFLAGS := $(CFLAGS) $(shell pkg-config --cflags $(LIBS)) CFLAGS := $(CFLAGS) -D_POSIX_C_SOURCE=200809L OUT := $(notdir $(shell pwd)) SRC := $(wildcard src/*.c) TEST := $(wildcard test/*.c) OBJS := $(patsubst src/%.c,build/%.o,$(SRC)) TEST_OBJS := $(patsubst test/%.c,build/test-%.o,$(TEST)) DEPS := $(wildcard build/*.d) all: ext-in ext-out test-iftun tunnel64d # $(OUT): $(OBJS) $(OUT): $(CC) $(LDFLAGS) -o $@ $^ test-ext-in: build/test-ext-in.o build/extremite.o build/iftun.o test-ext-out: build/test-ext-out.o build/extremite.o build/iftun.o test-iftun: build/test-iftun.o build/iftun.o tunnel64d: build/tunnel64d.o build/extremite.o build/iftun.o -include $(DEPS) build/test-%.o: test/%.c $(CC) $(CFLAGS) -MP -MD $< -c -o $@ build/%.o: src/%.c $(CC) $(CFLAGS) -MP -MD $< -c -o $@ clean: -rm -f build/*.o -rm -f build/*.d