31 lines
463 B
Makefile
31 lines
463 B
Makefile
|
|
CC := gcc
|
|
CFLAGS := -g -O3 -std=c2x -Wall -Wextra -Wpedantic -Werror
|
|
|
|
OBJS := obj/arena.o obj/alloc_backend.o
|
|
|
|
all : test/test_arena
|
|
|
|
test/test_arena : src/test_arena.c obj/libarena.o | test
|
|
$(CC) -o $@ $(CFLAGS) $^
|
|
|
|
obj/libarena.o : obj/arena.o obj/alloc_backend.o | obj
|
|
ld -r -o $@ $^
|
|
|
|
obj/%.o : src/%.c | obj
|
|
$(CC) -o $@ -c $(CFLAGS) $<
|
|
|
|
obj:
|
|
mkdir -p $@
|
|
|
|
bin:
|
|
mkdir -p $@
|
|
|
|
test:
|
|
mkdir -p $@
|
|
|
|
clean:
|
|
rm -rf obj bin test
|
|
|
|
.PHONY: clean obj test bin all
|