-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
44 lines (31 loc) · 789 Bytes
/
Makefile
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
# Makefile
# Nom du compilateur
CXX = g++
# Options de compilation
CXXFLAGS = -Wall -O2 -std=c++11
# Options d'édition de liens
LDFLAGS = -lpthread
# Fichiers source
SOURCES = main.cpp ws2812b.cpp
# Fichiers objets
OBJECTS = $(SOURCES:.cpp=.o)
# Nom de l'exécutable
TARGET = exemple
# Règle par défaut
all: $(TARGET)
# Règle pour créer l'exécutable
$(TARGET): $(OBJECTS)
$(CXX) $(OBJECTS) -o $(TARGET) $(LDFLAGS)
# Règle pour créer les fichiers objets
%.o: %.cpp
$(CXX) $(CXXFLAGS) -c $< -o $@
# Règle pour nettoyer les fichiers générés
clean:
rm -f $(OBJECTS) $(TARGET)
# Règle pour tout nettoyer (y compris les fichiers temporaires)
distclean: clean
rm -f *~
# Règle pour exécuter le programme
run: $(TARGET)
./$(TARGET)
.PHONY: all clean distclean run