blob: ef4d83741356573d8f962ae22b1309c8d428fa59 (
plain)
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
|
# INCLUDE is where you find the headerfiles for the libs you're using. They are used during compilation.
INCLUDE=-I /usr/include/boost/
# LIBDIR is where you can find the linkable objects or whatever. They are used for the linking stage.
LIBDIR=-L /usr/lib/x86_64-linux-gnu/
# LIBS are the libs you are using written with a -l and then ignoring the lib-part at the beginning of the file's name.
# So "libboost_date_time.a" will be just "-lboost_date_time"
LIBS=-lboost_date_time
# Sources are the source code files. Only the .cpp files, becuase the .h files are included into them during pre-processing.
SOURCES=$(wildcard src/*.cpp)
OBJDIR=obj/
OBJECTS=$(patsubst src/%.cpp, $(OBJDIR)%.o, $(SOURCES))
# This last line creates an identical list of objects based on the list of .cpp files.
a.out: $(OBJECTS)
g++ $(LIBDIR) $(LIBS) $(OBJECTS)
$(OBJECTS): obj/%.o : src/%.cpp
g++ $(INCLUDE) -c $< -o $@
clean:
rm obj/*.o
cleanall:
rm obj/*.o a.out
|