This repository has been archived on 2023-11-03. You can view files and clone it, but cannot push or open issues or pull requests.
GINPA/Makefile

45 lines
1.1 KiB
Makefile

CC=gcc
CFLAGS=-std=c99 -Werror -Wall -Wextra -Wpedantic -Wshadow -Wno-missing-field-initializers -Wstrict-overflow
LDFLAGS=-std=c99 -Werror -Wall -Wextra -Wpedantic -Wshadow -Wno-missing-field-initializers -Wstrict-overflow -lm -lcurl
GFLAGS=-lcsfml-graphics -lcsfml-window -lcsfml-system
OUTPUT=bin/Release/GINPA
OBJ=obj/Release
DEP=
ifdef DEBUG
CFLAGS+=-g
LDFLAGS+=-g
OUTPUT=bin/Debug/GINPA
OBJ=obj/Debug
ARG=DEBUG=1 #Pour compiler en mode debug récursivement
endif
.SILENT:
#La dépendance de OUTPUT à recursive permet de s'assurer qu'une modification d'un
# fichier dans un sous-dossier sera prise en compte lors d'un nouveau make
$(OUTPUT): recursive $(OBJ)/main.o
$(CC) -o $@ $(OBJ)/*.o $(LDFLAGS) $(GFLAGS)
recursive:
make $(ARG) -C Vue
make $(ARG) -C Controleur
make $(ARG) -C Modele
$(OBJ)/main.o: main.c
$(CC) -c -o $@ $< $(CFLAGS) $(GFLAGS)
debug:
make DEBUG=1
.PHONY: clean mrproper
#Supprime tous les fichiers objets
clean:
find obj -name '*.o' -delete
#Supprime tous les fichiers binaires et objets
mrproper: clean
rm -rf bin/Debug/GINPA
rm -rf bin/Release/GINPA