- Refactor jsonapi into separate module
[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_REST
75 REST_PLUGIN=libgnunet_plugin_rest_namestore.la
76 endif
77
78 if ENABLE_TEST_RUN
79 AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PATH=$${GNUNET_PREFIX:-@prefix@}/bin:$$PATH;
80 TESTS = \
81   $(check_PROGRAMS) \
82   $(check_SCRIPTS)
83 endif
84
85 lib_LTLIBRARIES = \
86   libgnunetnamestore.la
87
88
89 libgnunetnamestore_la_SOURCES = \
90   namestore_api.c \
91   namestore_api_monitor.c \
92   namestore.h
93 libgnunetnamestore_la_LIBADD = \
94   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
95   $(top_builddir)/src/statistics/libgnunetstatistics.la \
96   $(top_builddir)/src/dns/libgnunetdnsparser.la \
97   $(top_builddir)/src/util/libgnunetutil.la \
98   $(GN_LIBINTL)
99 libgnunetnamestore_la_LDFLAGS = \
100   $(GN_LIB_LDFLAGS) $(WINFLAGS) \
101   -version-info 0:1:0
102
103 libexec_PROGRAMS = \
104  gnunet-service-namestore
105
106 bin_PROGRAMS = \
107  gnunet-namestore
108
109 if HAVE_MHD
110 libexec_PROGRAMS += \
111  gnunet-namestore-fcfsd
112 endif
113
114
115 gnunet_namestore_SOURCES = \
116  gnunet-namestore.c
117 gnunet_namestore_LDADD = \
118   $(top_builddir)/src/identity/libgnunetidentity.la \
119   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
120   $(top_builddir)/src/util/libgnunetutil.la \
121   libgnunetnamestore.la \
122   $(GN_LIBINTL)
123
124
125 gnunet_namestore_fcfsd_SOURCES = \
126  gnunet-namestore-fcfsd.c
127 gnunet_namestore_fcfsd_LDADD = -lmicrohttpd \
128   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
129   $(top_builddir)/src/identity/libgnunetidentity.la \
130   libgnunetnamestore.la \
131   $(top_builddir)/src/util/libgnunetutil.la \
132   $(GN_LIBINTL)
133
134
135
136 gnunet_service_namestore_SOURCES = \
137  gnunet-service-namestore.c
138
139 gnunet_service_namestore_LDADD = \
140   $(top_builddir)/src/namecache/libgnunetnamecache.la \
141   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
142   $(top_builddir)/src/statistics/libgnunetstatistics.la \
143   $(top_builddir)/src/util/libgnunetutil.la \
144   libgnunetnamestore.la \
145   $(GN_LIBINTL)
146
147
148 plugin_LTLIBRARIES = \
149   $(SQLITE_PLUGIN) \
150   $(POSTGRES_PLUGIN) \
151         $(FLAT_PLUGIN) \
152         $(REST_PLUGIN)
153
154
155
156 libgnunet_plugin_namestore_flat_la_SOURCES = \
157   plugin_namestore_flat.c
158 libgnunet_plugin_namestore_flat_la_LIBADD = \
159   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
160   $(top_builddir)/src/statistics/libgnunetstatistics.la \
161   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) \
162   $(LTLIBINTL)
163 libgnunet_plugin_namestore_flat_la_LDFLAGS = \
164  $(GN_PLUGIN_LDFLAGS)
165
166
167 libgnunet_plugin_namestore_sqlite_la_SOURCES = \
168   plugin_namestore_sqlite.c
169 libgnunet_plugin_namestore_sqlite_la_LIBADD = \
170   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
171   $(top_builddir)/src/statistics/libgnunetstatistics.la \
172   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) -lsqlite3 \
173   $(LTLIBINTL)
174 libgnunet_plugin_namestore_sqlite_la_LDFLAGS = \
175  $(GN_PLUGIN_LDFLAGS)
176
177 libgnunet_plugin_namestore_postgres_la_SOURCES = \
178   plugin_namestore_postgres.c
179 libgnunet_plugin_namestore_postgres_la_LIBADD = \
180   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la  \
181   $(top_builddir)/src/postgres/libgnunetpostgres.la  \
182   $(top_builddir)/src/pq/libgnunetpq.la  \
183   $(top_builddir)/src/statistics/libgnunetstatistics.la \
184   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) -lpq \
185   $(LTLIBINTL)
186 libgnunet_plugin_namestore_postgres_la_LDFLAGS = \
187  $(GN_PLUGIN_LDFLAGS) $(POSTGRESQL_LDFLAGS)
188
189 libgnunet_plugin_rest_namestore_la_SOURCES = \
190   plugin_rest_namestore.c
191 libgnunet_plugin_rest_namestore_la_LIBADD = \
192   libgnunetnamestore.la \
193   $(top_builddir)/src/rest/libgnunetrest.la \
194   $(top_builddir)/src/identity/libgnunetidentity.la \
195         $(top_builddir)/src/jsonapi/libgnunetjsonapi.la \
196   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) \
197   $(LTLIBINTL) -ljansson -lmicrohttpd
198 libgnunet_plugin_rest_namestore_la_LDFLAGS = \
199  $(GN_PLUGIN_LDFLAGS)
200
201
202 test_namestore_api_store_SOURCES = \
203  test_namestore_api_store.c
204 test_namestore_api_store_LDADD = \
205   $(top_builddir)/src/testing/libgnunettesting.la \
206   $(top_builddir)/src/util/libgnunetutil.la \
207   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
208   libgnunetnamestore.la
209
210 test_namestore_api_store_update_SOURCES = \
211  test_namestore_api_store_update.c
212 test_namestore_api_store_update_LDADD = \
213   $(top_builddir)/src/testing/libgnunettesting.la \
214   $(top_builddir)/src/util/libgnunetutil.la \
215   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
216   $(top_builddir)/src/namecache/libgnunetnamecache.la \
217   libgnunetnamestore.la
218
219 test_namestore_api_lookup_public_SOURCES = \
220  test_namestore_api_lookup_public.c
221 test_namestore_api_lookup_public_LDADD = \
222   $(top_builddir)/src/testing/libgnunettesting.la \
223   $(top_builddir)/src/util/libgnunetutil.la \
224   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
225   $(top_builddir)/src/namecache/libgnunetnamecache.la \
226   libgnunetnamestore.la
227
228 test_namestore_api_lookup_nick_SOURCES = \
229  test_namestore_api_lookup_nick.c
230 test_namestore_api_lookup_nick_LDADD = \
231   $(top_builddir)/src/testing/libgnunettesting.la \
232   $(top_builddir)/src/util/libgnunetutil.la \
233   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
234   $(top_builddir)/src/namecache/libgnunetnamecache.la \
235   libgnunetnamestore.la
236
237 test_namestore_api_lookup_private_SOURCES = \
238  test_namestore_api_lookup_private.c
239 test_namestore_api_lookup_private_LDADD = \
240   $(top_builddir)/src/testing/libgnunettesting.la \
241   $(top_builddir)/src/util/libgnunetutil.la \
242   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
243   $(top_builddir)/src/namecache/libgnunetnamecache.la \
244   libgnunetnamestore.la
245
246 test_namestore_api_lookup_shadow_SOURCES = \
247  test_namestore_api_lookup_shadow.c
248 test_namestore_api_lookup_shadow_LDADD = \
249   $(top_builddir)/src/testing/libgnunettesting.la \
250   $(top_builddir)/src/util/libgnunetutil.la \
251   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
252   $(top_builddir)/src/namecache/libgnunetnamecache.la \
253   libgnunetnamestore.la
254
255 test_namestore_api_lookup_shadow_filter_SOURCES = \
256  test_namestore_api_lookup_shadow_filter.c
257 test_namestore_api_lookup_shadow_filter_LDADD = \
258   $(top_builddir)/src/testing/libgnunettesting.la \
259   $(top_builddir)/src/util/libgnunetutil.la \
260   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
261   $(top_builddir)/src/namecache/libgnunetnamecache.la \
262   libgnunetnamestore.la
263
264 test_namestore_api_remove_SOURCES = \
265  test_namestore_api_remove.c
266 test_namestore_api_remove_LDADD = \
267   $(top_builddir)/src/testing/libgnunettesting.la \
268   $(top_builddir)/src/util/libgnunetutil.la \
269   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
270   libgnunetnamestore.la
271
272 test_namestore_api_remove_not_existing_record_SOURCES = \
273  test_namestore_api_remove_not_existing_record.c
274 test_namestore_api_remove_not_existing_record_LDADD = \
275   $(top_builddir)/src/testing/libgnunettesting.la \
276   $(top_builddir)/src/util/libgnunetutil.la \
277   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
278   libgnunetnamestore.la
279
280 #test_namestore_api_zone_to_name_SOURCES = \
281 # test_namestore_api_zone_to_name.c
282 #test_namestore_api_zone_to_name_LDADD = \
283 #  $(top_builddir)/src/testing/libgnunettesting.la \
284 #  $(top_builddir)/src/util/libgnunetutil.la \
285 #  libgnunetnamestore.la
286
287 test_namestore_api_monitoring_SOURCES = \
288  test_namestore_api_monitoring.c
289 test_namestore_api_monitoring_LDADD = \
290   $(top_builddir)/src/testing/libgnunettesting.la \
291   libgnunetnamestore.la \
292   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
293   $(top_builddir)/src/util/libgnunetutil.la
294
295 test_namestore_api_monitoring_existing_SOURCES = \
296  test_namestore_api_monitoring_existing.c
297 test_namestore_api_monitoring_existing_LDADD = \
298   $(top_builddir)/src/testing/libgnunettesting.la \
299   libgnunetnamestore.la \
300   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
301   $(top_builddir)/src/util/libgnunetutil.la
302
303 test_namestore_api_zone_iteration_SOURCES = \
304  test_namestore_api_zone_iteration.c
305 test_namestore_api_zone_iteration_LDADD = \
306   $(top_builddir)/src/testing/libgnunettesting.la \
307   $(top_builddir)/src/util/libgnunetutil.la \
308   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
309   libgnunetnamestore.la
310
311 test_namestore_api_zone_iteration_nick_SOURCES = \
312  test_namestore_api_zone_iteration_nick.c
313 test_namestore_api_zone_iteration_nick_LDADD = \
314   $(top_builddir)/src/testing/libgnunettesting.la \
315   $(top_builddir)/src/util/libgnunetutil.la \
316   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
317   libgnunetnamestore.la
318
319
320 test_namestore_api_zone_iteration_specific_zone_SOURCES = \
321  test_namestore_api_zone_iteration_specific_zone.c
322 test_namestore_api_zone_iteration_specific_zone_LDADD = \
323   $(top_builddir)/src/testing/libgnunettesting.la \
324   $(top_builddir)/src/util/libgnunetutil.la \
325   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
326   libgnunetnamestore.la
327
328 test_namestore_api_zone_iteration_stop_SOURCES = \
329  test_namestore_api_zone_iteration_stop.c
330 test_namestore_api_zone_iteration_stop_LDADD = \
331   $(top_builddir)/src/testing/libgnunettesting.la \
332   $(top_builddir)/src/util/libgnunetutil.la \
333   $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
334   libgnunetnamestore.la
335
336 test_plugin_namestore_flat_SOURCES = \
337  test_plugin_namestore.c
338 test_plugin_namestore_flat_LDADD = \
339  $(top_builddir)/src/testing/libgnunettesting.la \
340  $(top_builddir)/src/util/libgnunetutil.la
341
342 test_plugin_namestore_sqlite_SOURCES = \
343  test_plugin_namestore.c
344 test_plugin_namestore_sqlite_LDADD = \
345  $(top_builddir)/src/testing/libgnunettesting.la \
346  $(top_builddir)/src/util/libgnunetutil.la
347
348 test_plugin_namestore_postgres_SOURCES = \
349  test_plugin_namestore.c
350 test_plugin_namestore_postgres_LDADD = \
351  $(top_builddir)/src/testing/libgnunettesting.la \
352  $(top_builddir)/src/util/libgnunetutil.la
353
354 check_SCRIPTS = \
355         test_namestore_put.sh \
356         test_namestore_lookup.sh \
357         test_namestore_delete.sh
358
359 EXTRA_DIST = \
360   test_namestore_api.conf \
361   test_plugin_namestore_sqlite.conf \
362   test_plugin_namestore_postgres.conf \
363         test_plugin_namestore_flat.conf \
364   test_hostkey \
365   zonefiles/S5I9DSGQVAB5FVV16T3B3CC5H1B2JGL3Q412JBKURME8EKU0600G.zkey \
366   zonefiles/AQ835GVL939H4O8QJQ7GBLPTQC0QAAO91BN7QK01BA63MDSK6I4G.zkey \
367   zonefiles/HGU0A0VCU334DN7F2I9UIUMVQMM7JMSD142LIMNUGTTV9R0CF4EG.zkey \
368   zonefiles/N0UJMP015AFUNR2BTNM3FKPBLG38913BL8IDMCO2H0A1LIB81960.zkey \
369   $(check_SCRIPTS)
370