Adding Makefile
This commit is contained in:
parent
7ebd91404a
commit
70fbc27572
1 changed files with 37 additions and 0 deletions
37
Makefile
Normal file
37
Makefile
Normal file
|
@ -0,0 +1,37 @@
|
|||
# Nom de l'exécutable
|
||||
PROG_NAME = huffman
|
||||
|
||||
|
||||
# Fichiers que le Makefile va utilisé pour construire l'exécutable
|
||||
SOURCES = main.c
|
||||
# Noms des fichiers objets créés lors de la compilation
|
||||
OBJ = $(SOURCES:.c=.o)
|
||||
|
||||
|
||||
# Compilateur utilisé
|
||||
CC = gcc
|
||||
# Options utilisés par le compilateur
|
||||
CC_FLAGS = -Wall -Wextra -fanalyzer -g -O3
|
||||
|
||||
|
||||
# Permet de supprimer les fichiers objets
|
||||
CLEAN = rm
|
||||
# Options utilisés par le programme qui supprime les fichiers
|
||||
CLEAN_FLAGS = -f
|
||||
|
||||
|
||||
# Créer l'exécutable par défaut
|
||||
all: $(PROG_NAME)
|
||||
|
||||
# Créer les fichiers objets du programme
|
||||
$(PROG_NAME): $(OBJ)
|
||||
$(CC) $^ -o $(PROG_NAME)
|
||||
$(CLEAN) $(CLEAN_FLAGS) *.o
|
||||
|
||||
# Lie les fichiers objets entre eux pour créer le programme
|
||||
%.o: %.c
|
||||
$(CC) $(CC_FLAGS) -c $<
|
||||
|
||||
# Supprime le programme
|
||||
clean:
|
||||
$(CLEAN) $(CLEAN_FLAGS) $(PROG_NAME)
|
Reference in a new issue