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