root / custompackages / graph-parser / src / Makefile @ 911d0520
History | View | Annotate | Download (1.46 KB)
1 | af008982 | Quynh PX Nguyen | ############################################## |
---|---|---|---|
2 | # Makefile for hello-boost-graph program |
||
3 | ############################################## |
||
4 | |||
5 | ee0dd796 | Quynh PX Nguyen | INCLUDES = -I/usr/local/boost/ |
6 | af008982 | Quynh PX Nguyen | |
7 | ee0dd796 | Quynh PX Nguyen | # define the C source files |
8 | 911d0520 | Quynh PX Nguyen | SRCS = bi_connected_components.cpp graph_manager.cpp parser.cpp sub_component.cpp utility.cpp |
9 | af008982 | Quynh PX Nguyen | |
10 | ee0dd796 | Quynh PX Nguyen | |
11 | # define the C object files |
||
12 | # |
||
13 | # This uses Suffix Replacement within a macro: |
||
14 | # $(name:string1=string2) |
||
15 | # For each word in 'name' replace 'string1' with 'string2' |
||
16 | # Below we are replacing the suffix .c of all words in the macro SRCS |
||
17 | # with the .o suffix |
||
18 | # |
||
19 | OBJS = $(SRCS:.cpp=.o) |
||
20 | |||
21 | MAIN = main |
||
22 | 911d0520 | Quynh PX Nguyen | MAIN_BIN = graph-parser |
23 | SIMULATION = simulation |
||
24 | ee0dd796 | Quynh PX Nguyen | |
25 | # all: ../bin/$(MAIN) |
||
26 | # @echo Simple compiler named main has been compiled |
||
27 | |||
28 | 911d0520 | Quynh PX Nguyen | $(MAIN): $(MAIN).o $(SIMULATION).o $(OBJS) |
29 | $(CXX) $(CFLAGS) $(INCLUDES) -o $(MAIN_BIN) $(MAIN).o $(OBJS) $(LFLAGS) $(LIBS ) |
||
30 | $(CXX) $(CFLAGS) $(INCLUDES) -o $(SIMULATION) $(SIMULATION).o $(OBJS) $(LFLAGS) $(LIBS ) |
||
31 | |||
32 | |||
33 | $(SIMULATION): $(SIMULATION).o $(OBJS) |
||
34 | $(CXX) $(CFLAGS) $(INCLUDES) -o $(SIMULATION) $(SIMULATION).o $(OBJS) $(LFLAGS) $(LIBS ) |
||
35 | ee0dd796 | Quynh PX Nguyen | |
36 | # this is a suffix replacement rule for building .o's from .c's |
||
37 | # it uses automatic variables $<: the name of the prerequisite of |
||
38 | # the rule(a .c file) and $@: the name of the target of the rule (a .o file) |
||
39 | # (see the gnu make manual section about automatic variables) |
||
40 | .cpp.o: |
||
41 | $(CXX) $(CFLAGS) $(INCLUDES) -std=c++11 -c $< -o $@ |
||
42 | af008982 | Quynh PX Nguyen | |
43 | # remove object files and executable when user executes "make clean" |
||
44 | clean: |
||
45 | 1e73dd2a | Quynh PX Nguyen | $(RM) *.o $(BIN_FILE) |