#CC : le compilateur a utiliser CC=gcc #CFLAGS : les options de compilation (en C++ moderne, voir les warning,...) CFLAGS= -Wall -Werror -Wextra SAN= -fsanitize=leak,address # les fichiers sources : tous les fichiers présents dans src/ SRC=$(wildcard src/*.c src/*.h) # les fichiers objets (.o) OBJ=$(patsubst src/%.c,obj/%.o,$(SRC)) #edition des liens : génération de l'exécutaba partir des .o bin/exe: $(OBJ) $(CC) $(OBJ) -o $@ # génération des .a partir des .cpp et .hpporrespondants : obj/%.o: src/%.c $(CC) $(CFLAGS) -c $< -o $@ #nettoyage : destruction des .o et de l'exécutable clean: rm obj/*.o bin/exe