added extra catch for std::runtime_error
[anytun.git] / src / Makefile
blobeca9774e73355e79679a801f4fd959243414cd7a
1 TARGET=$(shell uname -s)
2 C = gcc
3 CFLAGS = -g
4 CFLAGS += -DSOCKETS_NAMESPACE=sockets
5 CFLAGS += -DSOCKETS_NAMESPACE_STR='"sockets"'
6 C++ = g++
7 CCFLAGS = -g -Wall
8 CCFLAGS += -DSOCKETS_NAMESPACE=sockets
9 CCFLAGS += -DSOCKETS_NAMESPACE_STR='"sockets"'
10 LD = g++
11 LDFLAGS = -g -Wall -O2 -lpthread -lgcrypt -lgpg-error -lboost_serialization
13 ifeq ($(TARGET),Linux)
14 # CFLAGS += -D_XOPEN_SOURCE=600
15 # CCFLAGS += -D_XOPEN_SOURCE=600
16 LDFLAGS += -ldl
17 endif
18 ifeq ($(TARGET),OpenBSD)
19 CCFLAGS += -I/usr/local/include
20 LDFLAGS += -L/usr/local/lib
21 endif
23 ifndef NOOVPN
24 OPENVPNDEPS = openvpn/tun.o \
25 openvpn/error.o \
26 openvpn/socket.o \
27 openvpn/buffer.o \
28 openvpn/misc.o \
29 openvpn/manage.o \
30 openvpn/fdmisc.o \
31 openvpn/otime.o \
32 openvpn/options.o \
33 openvpn/mtu.o \
34 openvpn/plugin.o \
35 openvpn/sig.o \
36 openvpn/proxy.o \
37 openvpn/socks.o \
38 openvpn/status.o \
39 openvpn/event.o \
40 openvpn/route.o \
41 openvpn/helper.o \
42 openvpn/init.o \
43 openvpn/interval.o \
44 openvpn/base64.o \
45 openvpn/shaper.o \
46 openvpn/fragment.o
47 endif
49 SOCKETDEPS = Sockets/libSockets.a
51 #Sockets/TcpSocket.o \
52 # Sockets/Socket.o \
53 # Sockets/Thread.o \
54 # Sockets/SocketHandler.o \
55 # Sockets/Ipv4Address.o \
56 # Sockets/Mutex.o \
57 # Sockets/SSLInitializer.o
60 OBJS = tunDevice.o \
61 packetSource.o \
62 buffer.o \
63 syncBuffer.o \
64 plainPacket.o \
65 encryptedPacket.o \
66 cipher.o \
67 authAlgo.o \
68 keyDerivation.o \
69 mpi.o \
70 cipherFactory.o \
71 authAlgoFactory.o \
72 keyDerivationFactory.o \
73 connectionList.o \
74 connectionParam.o \
75 networkAddress.o \
76 networkPrefix.o \
77 PracticalSocket.o \
78 router.o \
79 routingTable.o \
80 signalController.o \
81 syncQueue.o \
82 log.o \
83 options.o \
84 seqWindow.o \
85 syncCommand.o \
86 syncRouteCommand.o \
87 syncRtpCommand.o \
88 syncConnectionCommand.o \
89 rtpSessionTable.o \
90 rtpSession.o \
91 anyrtpproxy/callIdQueue.o \
92 $(OPENVPNDEPS)
94 SYNCOBJS= syncSocket.o \
95 syncSocketHandler.o \
96 syncClientSocket.o \
97 $(SOCKETDEPS)
99 ANYCTROBJS = anyCtrSocket.o \
100 anyCtrOptions.o \
101 signalController.o \
102 log.o \
103 $(SOCKETDEPS)
105 ANYCONFOBJS = log.o \
106 buffer.o \
107 keyDerivation.o \
108 mpi.o \
109 keyDerivationFactory.o \
110 networkAddress.o \
111 networkPrefix.o \
112 signalController.o \
113 connectionList.o \
114 connectionParam.o \
115 rtpSessionTable.o \
116 rtpSession.o \
117 anyrtpproxy/callIdQueue.o \
118 syncRtpCommand.o \
119 PracticalSocket.o \
120 anyConfOptions.o \
121 router.o \
122 routingTable.o \
123 seqWindow.o \
124 syncSocket.o \
125 syncSocketHandler.o \
126 syncClientSocket.o \
127 syncQueue.o \
128 syncBuffer.o \
129 syncCommand.o \
130 syncRouteCommand.o \
131 syncConnectionCommand.o \
132 $(SOCKETDEPS)
134 EXECUTABLE = anytun anytun-config anytun-controld anytun-showtables manpage
136 all: $(EXECUTABLE) libAnysync.a anyrtpproxy
138 anytun: $(OBJS) $(SYNCOBJS) anytun.o
139 $(LD) $(OBJS) $(SYNCOBJS) anytun.o -o $@ $(LDFLAGS)
141 anytun-nosync: $(OBJS) anytun-nosync.o
142 $(LD) $(OBJS) anytun-nosync.o -o $@ $(LDFLAGS)
144 anytun-showtables: $(OBJS) anytun-showtables.o
145 $(LD) $(OBJS) anytun-showtables.o -o $@ $(LDFLAGS)
147 anytun-config: $(ANYCONFOBJS) anytun-config.o
148 $(LD) $(ANYCONFOBJS) anytun-config.o -o $@ $(LDFLAGS)
150 anytun-controld: $(ANYCTROBJS) anytun-controld.o
151 $(LD) $(ANYCTROBJS) anytun-controld.o -o $@ $(LDFLAGS)
153 tunDevice.o: tunDevice.cpp tunDevice.h
154 $(C++) $(CCFLAGS) $< -c
156 Sockets/libSockets.a:
157 $(MAKE) --directory=./Sockets
159 packetSource.o: packetSource.cpp packetSource.h
160 $(C++) $(CCFLAGS) $< -c
162 buffer.o: buffer.cpp buffer.h
163 $(C++) $(CCFLAGS) $< -c
165 syncBuffer.o: syncBuffer.cpp syncBuffer.h
166 $(C++) $(CCFLAGS) $< -c
168 rtpSessionTable.o: rtpSessionTable.cpp rtpSessionTable.h
169 $(C++) $(CCFLAGS) $< -c
171 rtpSession.o: rtpSession.cpp rtpSession.h
172 $(C++) $(CCFLAGS) $< -c
174 plainPacket.o: plainPacket.cpp plainPacket.h buffer.h
175 $(C++) $(CCFLAGS) $< -c
177 encryptedPacket.o: encryptedPacket.cpp encryptedPacket.h buffer.h
178 $(C++) $(CCFLAGS) $< -c
180 cipher.o: cipher.cpp cipher.h buffer.h
181 $(C++) $(CCFLAGS) $< -c
183 anyCtrSocket.o: anyCtrSocket.cpp anyCtrSocket.h
184 $(C++) $(CCFLAGS) $< -c
186 anyCtrOptions.o: anyCtrOptions.cpp anyCtrOptions.h
187 $(C++) $(CCFLAGS) $< -c
189 anyConfOptions.o: anyConfOptions.cpp anyConfOptions.h
190 $(C++) $(CCFLAGS) $< -c
192 authAlgo.o: authAlgo.cpp authAlgo.h buffer.h
193 $(C++) $(CCFLAGS) $< -c
195 keyDerivation.o: keyDerivation.cpp keyDerivation.h
196 $(C++) $(CCFLAGS) $< -c
198 mpi.o: mpi.cpp mpi.h
199 $(C++) $(CCFLAGS) $< -c
201 cipherFactory.o: cipherFactory.cpp cipherFactory.h cipher.h
202 $(C++) $(CCFLAGS) $< -c
204 authAlgoFactory.o: authAlgoFactory.cpp authAlgoFactory.h authAlgo.h
205 $(C++) $(CCFLAGS) $< -c
207 keyDerivationFactory.o: keyDerivationFactory.cpp keyDerivationFactory.h keyDerivation.h
208 $(C++) $(CCFLAGS) $< -c
210 routingTable.o: routingTable.cpp routingTable.h
211 $(C++) $(CCFLAGS) $< -c
213 syncSocket.o: syncSocket.cpp syncSocket.h
214 $(C++) $(CCFLAGS) $< -c
216 syncSocketHandler.o: syncSocketHandler.cpp syncSocketHandler.h
217 $(C++) $(CCFLAGS) $< -c
219 syncCommand.o: syncCommand.cpp syncCommand.h
220 $(C++) $(CCFLAGS) $< -c
222 syncRouteCommand.o: syncRouteCommand.cpp syncRouteCommand.h
223 $(C++) $(CCFLAGS) $< -c
225 syncRtpCommand.o: syncRtpCommand.cpp syncRtpCommand.h
226 $(C++) $(CCFLAGS) $< -c
228 syncConnectionCommand.o: syncConnectionCommand.cpp syncConnectionCommand.h
229 $(C++) $(CCFLAGS) $< -c
231 syncClientSocket.o: syncClientSocket.cpp syncClientSocket.h
232 $(C++) $(CCFLAGS) $< -c
234 syncQueue.o: syncQueue.cpp syncQueue.h
235 $(C++) $(CCFLAGS) $< -c
237 signalController.o: signalController.cpp signalController.h
238 $(C++) $(CCFLAGS) $< -c
240 PracticalSocket.o: PracticalSocket.cpp PracticalSocket.h
241 $(C++) $(CCFLAGS) $< -c
243 log.o: log.cpp log.h
244 $(C++) $(CCFLAGS) $< -c
246 options.o: options.cpp options.h
247 $(C++) $(CCFLAGS) $< -c
249 seqWindow.o: seqWindow.cpp seqWindow.h
250 $(C++) $(CCFLAGS) $< -c
252 connectionList.o: connectionList.cpp connectionList.h
253 $(C++) $(CCFLAGS) $< -c
255 connectionParam.o: connectionParam.cpp connectionParam.h
256 $(C++) $(CCFLAGS) $< -c
258 networkPrefix.o: networkPrefix.cpp networkPrefix.h
259 $(C++) $(CCFLAGS) $< -c
261 networkAddress.o: networkAddress.cpp networkAddress.h
262 $(C++) $(CCFLAGS) $< -c
264 router.o: router.cpp router.h
265 $(C++) $(CCFLAGS) $< -c
267 anytun.o: anytun.cpp
268 $(C++) $(CCFLAGS) $< -c
270 anytun-nosync.o: anytun.cpp
271 $(C++) $(CCFLAGS) -DANYTUN_NOSYNC $< -c -o anytun-nosync.o
273 anytun-showtables.o: anytun-showtables.cpp
274 $(C++) $(CCFLAGS) $< -c
276 anytun-config.o: anytun-config.cpp
277 $(C++) $(CCFLAGS) $< -c
279 anytun-controld.o: anytun-controld.cpp
280 $(C++) $(CCFLAGS) $< -c
282 cConnectionParam.o: cConnectionParam.cpp
283 $(C++) $(CCFLAGS) $< -c
285 libAnysync.a: $(OBJS)
286 ar cru $@ $(OBJS)
287 ranlib $@
289 anyrtpproxy: anytun
290 @cd anyrtpproxy ; $(MAKE)
292 distclean: cleanall
293 ifndef NOOVPN
294 $(MAKE) --directory=$(CURDIR)/openvpn distclean
295 endif
296 find . -name *.o -exec rm -f {} \;
297 rm -f config.sub config.guess
298 rm -f tunDevice.cpp tunDevice.h
300 cleanall: clean
301 $(MAKE) --directory=$(CURDIR)/man clean
302 $(MAKE) --directory=$(CURDIR)/Sockets clean
303 ifndef NOOVPN
304 $(MAKE) --directory=$(CURDIR)/openvpn clean
305 endif
306 rm -f Sockets/libSockets.a Sockets/Sockets-config
308 clean:
309 rm -f *.o
310 rm -f $(EXECUTABLE)
311 rm -f anytun-nosync
312 rm -f -r doc/html/*
313 rm -f -r doc/latex/*
314 rm -f libAnysync.a
315 $(MAKE) --directory=$(CURDIR)/anyrtpproxy clean
317 manpage:
318 @cd man ; $(MAKE)
320 doxygen:
321 doxygen Doxyfile
323 ctags:
324 ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .