1 |
< |
all: |
2 |
< |
make exe |
3 |
< |
|
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 XMLFormatter.o XMLTest.o XMLTest Host.o SmallNet.o Config.o SysMon.o SmallNet |
31 |
< |
rm -f XMLFormatter.cpp.bak XMLformatter.h.bak Host.cpp.bak Config.cpp.bak Config.h.bak |
32 |
< |
rm -f SmallNet.h.bak SmallNet.cpp.bak Makefile.bak SysMon.h.bak SysMon.cpp.bak |
33 |
< |
rm -f SubNet.h.bak SubNet.cpp.bak SubNet.o SubPipe.o |
34 |
< |
rm -f Host core |
35 |
< |
|
11 |
< |
exe: |
12 |
< |
g++ -c -Isocket++-1.10 -Lsocket++-1.10 -o Host.o Host.cpp |
13 |
< |
g++ -c -Isocket++-1.10 -Lsocket++-1.10 -o XMLFormatter.o XMLFormatter.cpp |
14 |
< |
g++ -c -Isocket++-1.10 -Lsocket++-1.10 -o SmallNet.o SmallNet.cpp |
15 |
< |
g++ -c -Isocket++-1.10 -Lsocket++-1.10 -o Config.o Config.cpp |
16 |
< |
g++ -c -Isocket++-1.10 -Lsocket++-1.10 -o SysMon.o SysMon.cpp |
17 |
< |
g++ -c -Isocket++-1.10 -Lsocket++-1.10 -o SubNet.o SubNet.cpp |
18 |
< |
g++ -c -Isocket++-1.10 -Lsocket++-1.10 -o SubPipe.o SubPipe.cpp |
19 |
< |
g++ -o Host -Isocket++-1.10 -Lsocket++-1.10 -lsocket++ -lsocket -lnsl Host.o Config.o XMLFormatter.o SmallNet.o SysMon.o SubNet.o SubPipe.o socket++-1.10/libsocket++.a |
20 |
< |
|
21 |
< |
run: |
22 |
< |
make clean exe |
23 |
< |
Host |
30 |
> |
rm -f $(OBJECTS) $(SOCKLIB) $(HOST) |
31 |
> |
rm -f core |
32 |
> |
|
33 |
> |
# run target |
34 |
> |
run: $(HOST) |
35 |
> |
./$(HOST) |
36 |
|
|