1 |
# config |
2 |
|
3 |
OBJECTS = Host.o XMLFormatter.o SmallNet.o Config.o\ |
4 |
SysMon.o SubNet.o SubPipe.o |
5 |
|
6 |
SOCKLIBDIR = socket++-1.10 |
7 |
SOCKLIB = libsocket++.a |
8 |
|
9 |
HOST = Host |
10 |
|
11 |
# default |
12 |
all: $(HOST) |
13 |
|
14 |
# target to compile the main binary |
15 |
$(HOST): $(OBJECTS) $(SOCKLIB) |
16 |
g++ -o $@ -L. -lsocket++ -lsocket -lnsl $(OBJECTS) $(SOCKLIB) |
17 |
|
18 |
# target to compile any object file |
19 |
%.o : %.cpp |
20 |
g++ -c -I$(SOCKLIBDIR) -o $@ $< |
21 |
|
22 |
# target to compile the socket library |
23 |
$(SOCKLIB): |
24 |
cd $(SOCKLIBDIR) && sh configure && make |
25 |
cp $(SOCKLIBDIR)/$(SOCKLIB) . |
26 |
cd $(SOCKLIBDIR) && make real-clean |
27 |
|
28 |
# cleanup target |
29 |
clean: |
30 |
rm -f $(OBJECTS) $(SOCKLIB) $(HOST) |
31 |
rm -f core |
32 |
|
33 |
# run target |
34 |
run: $(HOST) |
35 |
./$(HOST) |
36 |
|