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