transport service hello reduction, klocwork fixes
[oweals/gnunet.git] / src / transport / Makefile.am
1 INCLUDES = -I$(top_srcdir)/src/include
2
3 plugindir = $(libdir)/gnunet
4
5 if MINGW
6   WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
7   NATBIN = gnunet-nat-server gnunet-nat-client
8   NATSERVER = gnunet-nat-server-windows.c
9   NATCLIENT = gnunet-nat-client-windows.c
10 else
11   NATSERVER = gnunet-nat-server.c
12   NATCLIENT = gnunet-nat-client.c
13 endif
14
15 if HAVE_MHD
16  GN_LIBMHD = -lmicrohttpd
17  HTTP_PLUGIN_LA = libgnunet_plugin_transport_http.la
18  HTTP_PLUGIN_TEST = test_plugin_transport_http
19  HTTP_API_TEST = test_transport_api_http
20  HTTP_REL_TEST = test_transport_api_reliability_http
21
22  HTTPS_PLUGIN_LA = libgnunet_plugin_transport_https.la
23  HTTPS_PLUGIN_TEST = test_plugin_transport_https
24  HTTPS_API_TEST = test_transport_api_https
25  HTTPS_REL_TEST = test_transport_api_reliability_https                     
26 endif
27
28 if USE_COVERAGE
29   AM_CFLAGS = --coverage -O0
30 endif
31
32 if HAVE_PCAP
33 if LINUX
34 WANBIN = gnunet-transport-wlan-helper
35 endif
36 endif
37
38 if LINUX
39 NATBIN = gnunet-nat-server gnunet-nat-client
40 install-exec-hook:
41         chown root $(bindir)/gnunet-nat-server $(bindir)/gnunet-nat-client $(bindir)/gnunet-wlan || true
42         chmod u+s $(bindir)/gnunet-nat-server $(bindir)/gnunet-nat-client $(bindir)/gnunet-wlan || true
43 else
44 install-exec-hook:
45 endif
46
47 #noinst_PROGRAMS = ${check_PROGRAMS}
48
49 lib_LTLIBRARIES = \
50   libgnunettransport.la
51
52 libgnunettransport_la_SOURCES = \
53   transport_api.c transport.h \
54   transport_api_blacklist.c \
55   transport_api_address_lookup.c 
56 libgnunettransport_la_LIBADD = \
57   $(top_builddir)/src/hello/libgnunethello.la \
58   $(top_builddir)/src/util/libgnunetutil.la \
59   $(GN_LIBINTL) 
60 libgnunettransport_la_LDFLAGS = \
61   $(GN_LIB_LDFLAGS) $(WINFLAGS) \
62   -version-info 0:0:0
63
64
65 bin_PROGRAMS = \
66  gnunet-transport \
67  $(WANBIN) \
68  gnunet-service-transport $(NATBIN)
69
70 bin_SCRIPTS = \
71  gnunet-transport-certificate-creation
72
73 gnunet_nat_server_SOURCES = \
74  $(NATSERVER)
75  
76 gnunet_transport_wlan_helper_SOURCES = \
77  gnunet-transport-wlan-helper.c         
78 gnunet_transport_wlan_helper_LDADD = \
79  -lpcap
80
81 gnunet_nat_client_SOURCES = \
82  $(NATCLIENT)         
83
84 gnunet_transport_SOURCES = \
85  gnunet-transport.c         
86 gnunet_transport_LDADD = \
87   $(top_builddir)/src/transport/libgnunettransport.la \
88   $(top_builddir)/src/util/libgnunetutil.la \
89   $(GN_LIBINTL)
90
91 gnunet_service_transport_SOURCES = \
92  gnunet-service-transport.c plugin_transport.h 
93 gnunet_service_transport_LDADD = \
94   $(top_builddir)/src/hello/libgnunethello.la \
95   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
96   $(top_builddir)/src/statistics/libgnunetstatistics.la \
97   $(top_builddir)/src/util/libgnunetutil.la \
98   $(GN_LIBINTL)
99
100
101 plugin_LTLIBRARIES = \
102   libgnunet_plugin_transport_tcp.la \
103   libgnunet_plugin_transport_udp.la \
104   $(HTTP_PLUGIN_LA) \
105   $(HTTPS_PLUGIN_LA) \
106   libgnunet_plugin_transport_template.la
107 # TODO: add nat, etc.
108
109 libgnunet_plugin_transport_tcp_la_SOURCES = \
110   plugin_transport_tcp.c
111 libgnunet_plugin_transport_tcp_la_LIBADD = \
112   $(top_builddir)/src/hello/libgnunethello.la \
113   $(top_builddir)/src/statistics/libgnunetstatistics.la \
114   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
115   $(top_builddir)/src/util/libgnunetutil.la 
116 libgnunet_plugin_transport_tcp_la_LDFLAGS = \
117  $(GN_PLUGIN_LDFLAGS)
118
119 libgnunet_plugin_transport_template_la_SOURCES = \
120   plugin_transport_template.c
121 libgnunet_plugin_transport_template_la_LIBADD = \
122   $(top_builddir)/src/util/libgnunetutil.la 
123 libgnunet_plugin_transport_template_la_LDFLAGS = \
124  $(GN_PLUGIN_LDFLAGS)
125
126 libgnunet_plugin_transport_udp_la_SOURCES = \
127   plugin_transport_udp.c
128 libgnunet_plugin_transport_udp_la_LIBADD = \
129   $(top_builddir)/src/hello/libgnunethello.la \
130   $(top_builddir)/src/statistics/libgnunetstatistics.la \
131   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
132   $(top_builddir)/src/util/libgnunetutil.la 
133 libgnunet_plugin_transport_udp_la_LDFLAGS = \
134  $(GN_PLUGIN_LDFLAGS)
135
136 #libgnunet_plugin_transport_udp_nat_la_SOURCES = \
137 #  plugin_transport_udp_nat.c
138 #libgnunet_plugin_transport_udp_nat_la_LIBADD = \
139 #  $(top_builddir)/src/hello/libgnunethello.la \
140 #  $(top_builddir)/src/statistics/libgnunetstatistics.la \
141 #  $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
142 #  $(top_builddir)/src/util/libgnunetutil.la 
143 #libgnunet_plugin_transport_udp_nat_la_LDFLAGS = \
144 # $(GN_PLUGIN_LDFLAGS)
145
146 if HAVE_MHD 
147 libgnunet_plugin_transport_http_la_SOURCES = \
148   plugin_transport_http.c
149 libgnunet_plugin_transport_http_la_LIBADD = \
150   $(top_builddir)/src/hello/libgnunethello.la \
151   $(top_builddir)/src/statistics/libgnunetstatistics.la \
152   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
153   @LIBCURL@ \
154   $(top_builddir)/src/util/libgnunetutil.la 
155 libgnunet_plugin_transport_http_la_LDFLAGS = \
156  $(GN_LIBMHD) \
157  $(GN_PLUGIN_LDFLAGS)
158  
159 libgnunet_plugin_transport_https_la_SOURCES = \
160   plugin_transport_https.c
161 libgnunet_plugin_transport_https_la_LIBADD = \
162   $(top_builddir)/src/hello/libgnunethello.la \
163   $(top_builddir)/src/statistics/libgnunetstatistics.la \
164   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
165   @LIBCURL@ \
166   $(top_builddir)/src/util/libgnunetutil.la 
167 libgnunet_plugin_transport_https_la_LDFLAGS = \
168  $(GN_LIBMHD) \
169  $(GN_PLUGIN_LDFLAGS) 
170 endif
171
172 check_PROGRAMS = \
173  test_transport_api_tcp \
174  test_transport_api_tcp_nat \
175  test_transport_api_udp \
176  test_transport_api_udp_nat \
177  $(HTTP_PLUGIN_TEST) \
178  $(HTTP_API_TEST) \
179  $(HTTPS_PLUGIN_TEST) \
180  $(HTTPS_API_TEST) \
181  test_transport_api_reliability_tcp \
182  test_transport_api_reliability_tcp_nat \
183  test_transport_api_reliability_udp \
184  $(HTTP_REL_TEST) \
185  $(HTTPS_REL_TEST)
186 # TODO: add tests for nat, etc.
187
188 if !DISABLE_TEST_RUN
189 TESTS = \
190  test_transport_api_tcp \
191  test_transport_api_tcp_nat \
192  test_transport_api_udp \
193  test_transport_api_udp_nat \
194  $(HTTP_PLUGIN_TEST) \
195  $(HTTP_API_TEST) \
196  $(HTTPS_PLUGIN_TEST) \
197  $(HTTPS_API_TEST) \
198  test_transport_api_reliability_tcp \
199  test_transport_api_reliability_tcp_nat \
200  $(HTTP_REL_TEST) \
201  $(HTTPS_REL_TEST)
202 endif
203
204 test_transport_api_tcp_SOURCES = \
205  test_transport_api.c
206 test_transport_api_tcp_LDADD = \
207  $(top_builddir)/src/transport/libgnunettransport.la \
208  $(top_builddir)/src/util/libgnunetutil.la  
209
210 test_transport_api_tcp_nat_SOURCES = \
211  test_transport_api.c
212 test_transport_api_tcp_nat_LDADD = \
213  $(top_builddir)/src/transport/libgnunettransport.la \
214  $(top_builddir)/src/util/libgnunetutil.la  
215
216 test_transport_api_reliability_tcp_SOURCES = \
217  test_transport_api_reliability.c
218 test_transport_api_reliability_tcp_LDADD = \
219  $(top_builddir)/src/transport/libgnunettransport.la \
220  $(top_builddir)/src/util/libgnunetutil.la  
221
222 test_transport_api_reliability_tcp_nat_SOURCES = \
223  test_transport_api_reliability.c
224 test_transport_api_reliability_tcp_nat_LDADD = \
225  $(top_builddir)/src/transport/libgnunettransport.la \
226  $(top_builddir)/src/util/libgnunetutil.la 
227
228 test_transport_api_reliability_udp_SOURCES = \
229  test_transport_api_reliability.c
230 test_transport_api_reliability_udp_LDADD = \
231  $(top_builddir)/src/transport/libgnunettransport.la \
232  $(top_builddir)/src/util/libgnunetutil.la   
233
234 test_transport_api_udp_SOURCES = \
235  test_transport_api.c
236 test_transport_api_udp_LDADD = \
237  $(top_builddir)/src/transport/libgnunettransport.la \
238  $(top_builddir)/src/util/libgnunetutil.la  
239
240 test_transport_api_udp_nat_SOURCES = \
241  test_transport_api.c
242 test_transport_api_udp_nat_LDADD = \
243  $(top_builddir)/src/transport/libgnunettransport.la \
244  $(top_builddir)/src/util/libgnunetutil.la  
245
246 if HAVE_MHD
247
248 test_plugin_transport_http_SOURCES = \
249  test_plugin_transport_http.c
250 test_plugin_transport_http_LDADD = \
251  $(top_builddir)/src/transport/libgnunettransport.la \
252  $(top_builddir)/src/statistics/libgnunetstatistics.la \
253  @LIBCURL@ \
254  $(top_builddir)/src/util/libgnunetutil.la  
255
256 test_transport_api_http_SOURCES = \
257  test_transport_api.c
258 test_transport_api_http_LDADD = \
259  $(top_builddir)/src/transport/libgnunettransport.la \
260  $(top_builddir)/src/util/libgnunetutil.la  
261
262 test_transport_api_reliability_http_SOURCES = \
263  test_transport_api_reliability.c
264 test_transport_api_reliability_http_LDADD = \
265  $(top_builddir)/src/transport/libgnunettransport.la \
266  $(top_builddir)/src/util/libgnunetutil.la
267  
268 test_plugin_transport_https_SOURCES = \
269  test_plugin_transport_https.c
270 test_plugin_transport_https_LDADD = \
271  $(top_builddir)/src/transport/libgnunettransport.la \
272  $(top_builddir)/src/statistics/libgnunetstatistics.la \
273  @LIBCURL@ \
274  $(top_builddir)/src/util/libgnunetutil.la  
275
276 test_transport_api_https_SOURCES = \
277  test_transport_api.c
278 test_transport_api_https_LDADD = \
279  $(top_builddir)/src/transport/libgnunettransport.la \
280  $(top_builddir)/src/util/libgnunetutil.la  
281  
282 test_transport_api_reliability_https_SOURCES = \
283  test_transport_api_reliability.c
284 test_transport_api_reliability_https_LDADD = \
285  $(top_builddir)/src/transport/libgnunettransport.la \
286  $(top_builddir)/src/util/libgnunetutil.la
287      
288 endif
289
290 EXTRA_DIST = \
291   test_transport_api_data.conf \
292   test_transport_api_tcp_peer1.conf \
293   test_transport_api_tcp_peer2.conf \
294   test_transport_api_udp_peer1.conf \
295   test_transport_api_udp_peer2.conf \
296   test_transport_api_udp_nat_peer1.conf \
297   test_transport_api_udp_nat_peer2.conf \
298   test_transport_api_tcp_nat_peer1.conf \
299   test_transport_api_tcp_nat_peer2.conf \
300   test_plugin_transport_data.conf \
301   test_transport_api_http_peer1.conf \
302   test_transport_api_http_peer2.conf \
303   test_transport_api_https_peer1.conf \
304   test_transport_api_https_peer2.conf \
305   test_transport_api_rel_http_peer1.conf \
306   test_transport_api_rel_http_peer2.conf \
307   test_transport_api_rel_https_peer1.conf \
308   test_transport_api_rel_https_peer2.conf \
309   test_plugin_transport_data_http.conf