summaryrefslogtreecommitdiff
path: root/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'makefile')
-rw-r--r--makefile45
1 files changed, 36 insertions, 9 deletions
diff --git a/makefile b/makefile
index 86bcbe2..5b05003 100644
--- a/makefile
+++ b/makefile
@@ -1,27 +1,54 @@
#
# Auteur: C.-A. Brunet
# Date: 08 janvier 2018
-# Description: compilation de graphicus-01. Ce fichier fait partie de
+# Description: compilation de graphicus-02. Ce fichier fait partie de
# la distribution de Graphicus.
#
-graphicus-01: graphicus-01.o tests.o canevas.o couche.o forme.o
- g++ -o graphicus-01 graphicus-01.o tests.o canevas.o couche.o forme.o
+ALL := graphicus-02.o tests.o canevas.o couche.o forme.o vecteur.o cercle.o rectangle.o carre.o
+
+CFLAGS := -flto -Ofast -march=native
+
+# graphicus-02: $(ALL)
+# g++ $(CFLAGS) -o $@ $^ && strip $@ $^
+
+graphicus-02: $(ALL)
+ g++ $(CFLAGS) -o $@ $^
-graphicus-01.o: graphicus-01.cpp canevas.h couche.h forme.h
- g++ -c graphicus-01.cpp
tests.o: tests.cpp tests.h canevas.h couche.h forme.h
- g++ -c tests.cpp
+ g++ $(CFLAGS) -c tests.cpp
canevas.o: canevas.cpp canevas.h couche.h forme.h
- g++ -c canevas.cpp
+ g++ $(CFLAGS) -c canevas.cpp
couche.o: couche.cpp couche.h forme.h
- g++ -c couche.cpp
+ g++ $(CFLAGS) -c couche.cpp
forme.o: forme.cpp forme.h
- g++ -c forme.cpp
+ g++ $(CFLAGS) -c forme.cpp
+
+vecteur.o: vecteur.cpp vecteur.h coordonnee.h
+ g++ $(CFLAGS) -c vecteur.cpp
+
+rectangle.o: rectangle.cpp rectangle.h forme.h
+ g++ $(CFLAGS) -c rectangle.cpp
+
+carre.o: carre.cpp carre.h rectangle.h forme.h
+ g++ $(CFLAGS) -c carre.cpp
+
+cercle.o: cercle.cpp cercle.h forme.h
+ g++ $(CFLAGS) -c cercle.cpp
+
+graphicus-02.o: graphicus-02.cpp canevas.h couche.h forme.h
+ g++ $(CFLAGS) -c graphicus-02.cpp
clean:
rm -f *.o
+
+options:
+ @echo "Option de compilation de GRAPHICUS:"
+ @echo " graphicus-02: Construction de l'executable dans sa totalité"
+ @echo " clean: Nettoyage des fichiers temporaires '.o'"
+ @echo " *.o: Construction des fichiers objets"
+