curl: fix linking against libgnurl/libcurl
[oweals/gnunet.git] / src / namestore / Makefile.am
1 # This Makefile.am is in the public domain
2 AM_CPPFLAGS = -I$(top_srcdir)/src/include $(POSTGRESQL_CPPFLAGS)
3
4 plugindir = $(libdir)/gnunet
5
6 pkgcfgdir= $(pkgdatadir)/config.d/
7
8 libexecdir= $(pkglibdir)/libexec/
9
10 pkgcfg_DATA = \
11    namestore.conf
12
13
14 if MINGW
15   WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
16 endif
17
18 if USE_COVERAGE
19   AM_CFLAGS = --coverage -O0
20   XLIBS = -lgcov
21 endif
22
23 if HAVE_EXPERIMENTAL
24 FLAT_PLUGIN = libgnunet_plugin_namestore_flat.la
25 if HAVE_TESTING
26 FLAT_TESTS = test_plugin_namestore_flat
27 endif
28 endif
29
30 if HAVE_SQLITE
31 SQLITE_PLUGIN = libgnunet_plugin_namestore_sqlite.la
32 if HAVE_TESTING
33 SQLITE_TESTS = test_plugin_namestore_sqlite
34 endif
35 endif
36
37 if HAVE_POSTGRESQL
38 # postgres doesn't even build yet; thus: experimental!
39 POSTGRES_PLUGIN = libgnunet_plugin_namestore_postgres.la
40 if HAVE_TESTING
41 POSTGRES_TESTS = test_plugin_namestore_postgres
42 endif
43 endif
44
45 # testcases do not even build yet; thus: experimental!
46 if HAVE_TESTING
47 TESTING_TESTS = \
48  test_namestore_api_store \
49  test_namestore_api_store_update \
50  test_namestore_api_lookup_public \
51  test_namestore_api_lookup_private \
52  test_namestore_api_lookup_nick \
53  test_namestore_api_lookup_shadow \
54  test_namestore_api_lookup_shadow_filter \
55  test_namestore_api_remove \
56  test_namestore_api_remove_not_existing_record \
57  test_namestore_api_zone_iteration \
58  test_namestore_api_zone_iteration_nick \
59  test_namestore_api_zone_iteration_specific_zone \
60  test_namestore_api_zone_iteration_stop \
61  test_namestore_api_monitoring \
62  test_namestore_api_monitoring_existing
63 # test_namestore_api_zone_to_name
64 endif
65
66 if HAVE_SQLITE
67 check_PROGRAMS = \
68  $(SQLITE_TESTS) \
69  $(POSTGRES_TESTS) \
70  $(FLAT_TESTS) \
71  $(TESTING_TESTS)
72 endif
73
74 if HAVE_MHD
75 if HAVE_JSON
76 REST_PLUGIN=libgnunet_plugin_rest_namestore.la
77 endif
78 endif
79
80 if ENABLE_TEST_RUN
81 AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PATH=$${GNUNET_PREFIX:-@prefix@}/bin:$$PATH;
82 TESTS = \
83   $(check_PROGRAMS) \
84   $(check_SCRIPTS)
85 endif
86
87 lib_LTLIBRARIES = \
88   libgnunetnamestore.la
89
90
91 libgnunetnamestore_la_SOURCES = \
92   namestore_api.c \
93   namestore_api_monitor.c \
94   namestore.h
95 libgnunetnamestore_la_LIBADD = \
96   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
97   $(top_builddir)/src/statistics/libgnunetstatistics.la \
98   $(top_builddir)/src/dns/libgnunetdnsparser.la \
99   $(top_builddir)/src/util/libgnunetutil.la \
100   $(GN_LIBINTL)
101 libgnunetnamestore_la_LDFLAGS = \
102   $(GN_LIB_LDFLAGS) $(WINFLAGS) \
103   -version-info 0:1:0
104
105 libexec_PROGRAMS = \
106  gnunet-service-namestore
107
108 bin_PROGRAMS = \
109  gnunet-namestore
110
111 if HAVE_MHD
112 libexec_PROGRAMS += \
113  gnunet-namestore-fcfsd
114 endif
115
116
117 gnunet_namestore_SOURCES = \
118  gnunet-namestore.c
119 gnunet_namestore_LDADD = \
120   $(top_builddir)/src/identity/libgnunetidentity.la \
121   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
122   $(top_builddir)/src/util/libgnunetutil.la \
123   libgnunetnamestore.la \
124   $(GN_LIBINTL)
125
126
127 gnunet_namestore_fcfsd_SOURCES = \
128  gnunet-namestore-fcfsd.c
129 gnunet_namestore_fcfsd_LDADD = -lmicrohttpd \
130   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
131   $(top_builddir)/src/identity/libgnunetidentity.la \
132   libgnunetnamestore.la \
133   $(top_builddir)/src/util/libgnunetutil.la \
134   $(GN_LIBINTL)
135
136
137
138 gnunet_service_namestore_SOURCES = \
139  gnunet-service-namestore.c
140
141 gnunet_service_namestore_LDADD = \
142   $(top_builddir)/src/namecache/libgnunetnamecache.la \
143   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
144   $(top_builddir)/src/statistics/libgnunetstatistics.la \
145   $(top_builddir)/src/util/libgnunetutil.la \
146   libgnunetnamestore.la \
147   $(GN_LIBINTL)
148
149
150 plugin_LTLIBRARIES = \
151   $(SQLITE_PLUGIN) \
152   $(POSTGRES_PLUGIN) \
153         $(FLAT_PLUGIN) \
154         $(REST_PLUGIN)
155
156
157
158 libgnunet_plugin_namestore_flat_la_SOURCES = \
159   plugin_namestore_flat.c
160 libgnunet_plugin_namestore_flat_la_LIBADD = \
161   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
162   $(top_builddir)/src/statistics/libgnunetstatistics.la \
163   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) \
164   $(LTLIBINTL)
165 libgnunet_plugin_namestore_flat_la_LDFLAGS = \
166  $(GN_PLUGIN_LDFLAGS)
167
168
169 libgnunet_plugin_namestore_sqlite_la_SOURCES = \
170   plugin_namestore_sqlite.c
171 libgnunet_plugin_namestore_sqlite_la_LIBADD = \
172   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
173   $(top_builddir)/src/statistics/libgnunetstatistics.la \
174   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) -lsqlite3 \
175   $(LTLIBINTL)
176 libgnunet_plugin_namestore_sqlite_la_LDFLAGS = \
177  $(GN_PLUGIN_LDFLAGS)
178
179 libgnunet_plugin_namestore_postgres_la_SOURCES = \
180   plugin_namestore_postgres.c
181 libgnunet_plugin_namestore_postgres_la_LIBADD = \
182   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
183   $(top_builddir)/src/postgres/libgnunetpostgres.la  \
184   $(top_builddir)/src/pq/libgnunetpq.la  \
185   $(top_builddir)/src/statistics/libgnunetstatistics.la \
186   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) -lpq \
187   $(LTLIBINTL)
188 libgnunet_plugin_namestore_postgres_la_LDFLAGS = \
189  $(GN_PLUGIN_LDFLAGS) $(POSTGRESQL_LDFLAGS)
190
191 libgnunet_plugin_rest_namestore_la_SOURCES = \
192   plugin_rest_namestore.c
193 libgnunet_plugin_rest_namestore_la_LIBADD = \
194   libgnunetnamestore.la \
195   $(top_builddir)/src/rest/libgnunetrest.la \
196   $(top_builddir)/src/identity/libgnunetidentity.la \
197         $(top_builddir)/src/jsonapi/libgnunetjsonapi.la \
198   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) \
199   $(LTLIBINTL) -ljansson -lmicrohttpd
200 libgnunet_plugin_rest_namestore_la_LDFLAGS = \
201  $(GN_PLUGIN_LDFLAGS)
202
203
204 test_namestore_api_store_SOURCES = \
205  test_namestore_api_store.c
206 test_namestore_api_store_LDADD = \
207   $(top_builddir)/src/testing/libgnunettesting.la \
208   $(top_builddir)/src/util/libgnunetutil.la \
209   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
210   libgnunetnamestore.la
211
212 test_namestore_api_store_update_SOURCES = \
213  test_namestore_api_store_update.c
214 test_namestore_api_store_update_LDADD = \
215   $(top_builddir)/src/testing/libgnunettesting.la \
216   $(top_builddir)/src/util/libgnunetutil.la \
217   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
218   $(top_builddir)/src/namecache/libgnunetnamecache.la \
219   libgnunetnamestore.la
220
221 test_namestore_api_lookup_public_SOURCES = \
222  test_namestore_api_lookup_public.c
223 test_namestore_api_lookup_public_LDADD = \
224   $(top_builddir)/src/testing/libgnunettesting.la \
225   $(top_builddir)/src/util/libgnunetutil.la \
226   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
227   $(top_builddir)/src/namecache/libgnunetnamecache.la \
228   libgnunetnamestore.la
229
230 test_namestore_api_lookup_nick_SOURCES = \
231  test_namestore_api_lookup_nick.c
232 test_namestore_api_lookup_nick_LDADD = \
233   $(top_builddir)/src/testing/libgnunettesting.la \
234   $(top_builddir)/src/util/libgnunetutil.la \
235   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
236   $(top_builddir)/src/namecache/libgnunetnamecache.la \
237   libgnunetnamestore.la
238
239 test_namestore_api_lookup_private_SOURCES = \
240  test_namestore_api_lookup_private.c
241 test_namestore_api_lookup_private_LDADD = \
242   $(top_builddir)/src/testing/libgnunettesting.la \
243   $(top_builddir)/src/util/libgnunetutil.la \
244   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
245   $(top_builddir)/src/namecache/libgnunetnamecache.la \
246   libgnunetnamestore.la
247
248 test_namestore_api_lookup_shadow_SOURCES = \
249  test_namestore_api_lookup_shadow.c
250 test_namestore_api_lookup_shadow_LDADD = \
251   $(top_builddir)/src/testing/libgnunettesting.la \
252   $(top_builddir)/src/util/libgnunetutil.la \
253   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
254   $(top_builddir)/src/namecache/libgnunetnamecache.la \
255   libgnunetnamestore.la
256
257 test_namestore_api_lookup_shadow_filter_SOURCES = \
258  test_namestore_api_lookup_shadow_filter.c
259 test_namestore_api_lookup_shadow_filter_LDADD = \
260   $(top_builddir)/src/testing/libgnunettesting.la \
261   $(top_builddir)/src/util/libgnunetutil.la \
262   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
263   $(top_builddir)/src/namecache/libgnunetnamecache.la \
264   libgnunetnamestore.la
265
266 test_namestore_api_remove_SOURCES = \
267  test_namestore_api_remove.c
268 test_namestore_api_remove_LDADD = \
269   $(top_builddir)/src/testing/libgnunettesting.la \
270   $(top_builddir)/src/util/libgnunetutil.la \
271   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
272   libgnunetnamestore.la
273
274 test_namestore_api_remove_not_existing_record_SOURCES = \
275  test_namestore_api_remove_not_existing_record.c
276 test_namestore_api_remove_not_existing_record_LDADD = \
277   $(top_builddir)/src/testing/libgnunettesting.la \
278   $(top_builddir)/src/util/libgnunetutil.la \
279   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
280   libgnunetnamestore.la
281
282 #test_namestore_api_zone_to_name_SOURCES = \
283 # test_namestore_api_zone_to_name.c
284 #test_namestore_api_zone_to_name_LDADD = \
285 #  $(top_builddir)/src/testing/libgnunettesting.la \
286 #  $(top_builddir)/src/util/libgnunetutil.la \
287 #  libgnunetnamestore.la
288
289 test_namestore_api_monitoring_SOURCES = \
290  test_namestore_api_monitoring.c
291 test_namestore_api_monitoring_LDADD = \
292   $(top_builddir)/src/testing/libgnunettesting.la \
293   libgnunetnamestore.la \
294   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
295   $(top_builddir)/src/util/libgnunetutil.la
296
297 test_namestore_api_monitoring_existing_SOURCES = \
298  test_namestore_api_monitoring_existing.c
299 test_namestore_api_monitoring_existing_LDADD = \
300   $(top_builddir)/src/testing/libgnunettesting.la \
301   libgnunetnamestore.la \
302   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
303   $(top_builddir)/src/util/libgnunetutil.la
304
305 test_namestore_api_zone_iteration_SOURCES = \
306  test_namestore_api_zone_iteration.c
307 test_namestore_api_zone_iteration_LDADD = \
308   $(top_builddir)/src/testing/libgnunettesting.la \
309   $(top_builddir)/src/util/libgnunetutil.la \
310   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
311   libgnunetnamestore.la
312
313 test_namestore_api_zone_iteration_nick_SOURCES = \
314  test_namestore_api_zone_iteration_nick.c
315 test_namestore_api_zone_iteration_nick_LDADD = \
316   $(top_builddir)/src/testing/libgnunettesting.la \
317   $(top_builddir)/src/util/libgnunetutil.la \
318   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
319   libgnunetnamestore.la
320
321
322 test_namestore_api_zone_iteration_specific_zone_SOURCES = \
323  test_namestore_api_zone_iteration_specific_zone.c
324 test_namestore_api_zone_iteration_specific_zone_LDADD = \
325   $(top_builddir)/src/testing/libgnunettesting.la \
326   $(top_builddir)/src/util/libgnunetutil.la \
327   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
328   libgnunetnamestore.la
329
330 test_namestore_api_zone_iteration_stop_SOURCES = \
331  test_namestore_api_zone_iteration_stop.c
332 test_namestore_api_zone_iteration_stop_LDADD = \
333   $(top_builddir)/src/testing/libgnunettesting.la \
334   $(top_builddir)/src/util/libgnunetutil.la \
335   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
336   libgnunetnamestore.la
337
338 test_plugin_namestore_flat_SOURCES = \
339  test_plugin_namestore.c
340 test_plugin_namestore_flat_LDADD = \
341  $(top_builddir)/src/testing/libgnunettesting.la \
342  $(top_builddir)/src/util/libgnunetutil.la
343
344 test_plugin_namestore_sqlite_SOURCES = \
345  test_plugin_namestore.c
346 test_plugin_namestore_sqlite_LDADD = \
347  $(top_builddir)/src/testing/libgnunettesting.la \
348  $(top_builddir)/src/util/libgnunetutil.la
349
350 test_plugin_namestore_postgres_SOURCES = \
351  test_plugin_namestore.c
352 test_plugin_namestore_postgres_LDADD = \
353  $(top_builddir)/src/testing/libgnunettesting.la \
354  $(top_builddir)/src/util/libgnunetutil.la
355
356 check_SCRIPTS = \
357         test_namestore_put.sh \
358         test_namestore_lookup.sh \
359         test_namestore_delete.sh
360
361 EXTRA_DIST = \
362   test_namestore_api.conf \
363   test_plugin_namestore_sqlite.conf \
364   test_plugin_namestore_postgres.conf \
365         test_plugin_namestore_flat.conf \
366   test_hostkey \
367   zonefiles/S5I9DSGQVAB5FVV16T3B3CC5H1B2JGL3Q412JBKURME8EKU0600G.zkey \
368   zonefiles/AQ835GVL939H4O8QJQ7GBLPTQC0QAAO91BN7QK01BA63MDSK6I4G.zkey \
369   zonefiles/HGU0A0VCU334DN7F2I9UIUMVQMM7JMSD142LIMNUGTTV9R0CF4EG.zkey \
370   zonefiles/N0UJMP015AFUNR2BTNM3FKPBLG38913BL8IDMCO2H0A1LIB81960.zkey \
371   $(check_SCRIPTS)
372