1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
# nom de l'executable :
EXECUTABLE = cargol
# dossier contenant les fichiers sources
SRC_DIR = ./src/
# dossier contenant les fichiers objets
OBJ_DIR = ./obj/
# choix du compilateur :
COMPILATEUR = gcc
# options compilations :
OPTIONS = -c -O3 -Wall -Wextra
# listes des fichiers sources
SRC = $(wildcard $(SRC_DIR)*.c)
# liste des fichiers objets
OBJ = $(patsubst %.c, %.o, $(SRC))
# dossier contenant les include
# H_DIR = ./include/
# INCLUDE= -I$(H_DIR)
# les objets sont dans OBJ_DIR
vpath .o $(OBJ_DIR)
# commande par defaut
all: install
# édition de lien de tous les objets (-lm pour la lib math.h)
install: $(OBJ)
$(COMPILATEUR) $(OBJ) -o $(EXECUTABLE) -lm
mv $(EXECUTABLE) ../
mv *.o ../obj/
# on compile toutes les sources
# les fichier objet sont dans DIROBJ
$(OBJ): $(SRC)
$(CC) $(OPTIONS) $@ -o $(OBJ_DIR)$*.o
# liste de toutes les dependences :
init_calcul.o: main.h
init_calcul.o: variables_globales.h
init_calcul.o: gaussienne.o
init_calcul.o: force_ene.o
init_calcul.o: print.o
main.o: main.h
main.o: extern.h
main.o: brownien.o
main.o: dynamique.o
main.o: init_calcul.o |
Partager