Merge branch 'master' of gnunet.org:gnunet
[oweals/gnunet.git] / src / peerstore / Makefile.am
1 # This Makefile.am is in the public domain
2 AM_CPPFLAGS = -I$(top_srcdir)/src/include
3
4 plugindir = $(libdir)/gnunet
5
6 pkgcfgdir= $(pkgdatadir)/config.d/
7
8 libexecdir= $(pkglibdir)/libexec/
9
10 dist_pkgcfg_DATA = \
11   peerstore.conf
12
13 if MINGW
14  WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
15 endif
16
17 if USE_COVERAGE
18   AM_CFLAGS = -fprofile-arcs -ftest-coverage
19 endif
20
21 bin_PROGRAMS = \
22  gnunet-peerstore
23
24 libexec_PROGRAMS = \
25  gnunet-service-peerstore
26
27 lib_LTLIBRARIES = \
28  libgnunetpeerstore.la
29
30 gnunet_peerstore_SOURCES = \
31  gnunet-peerstore.c
32 gnunet_peerstore_LDADD = \
33   $(top_builddir)/src/util/libgnunetutil.la \
34   libgnunetpeerstore.la \
35   $(GN_LIBINTL)
36
37 gnunet_service_peerstore_SOURCES = \
38  gnunet-service-peerstore.c \
39  peerstore_common.c peerstore_common.h \
40  peerstore.h
41 gnunet_service_peerstore_CFLAGS = $(AM_CFLAGS)
42 gnunet_service_peerstore_LDADD = \
43   $(top_builddir)/src/util/libgnunetutil.la \
44   $(GN_LIBINTL)
45
46 libgnunetpeerstore_la_SOURCES = \
47   peerstore_api.c \
48   peerstore_common.c
49 libgnunetpeerstore_la_LIBADD = \
50   $(top_builddir)/src/util/libgnunetutil.la
51 libgnunetpeerstore_la_LDFLAGS = \
52   $(GN_LIB_LDFLAGS)
53
54 if HAVE_EXPERIMENTAL
55 FLAT_PLUGIN = libgnunet_plugin_peerstore_flat.la
56 FLAT_TESTS = test_plugin_peerstore_flat
57 libgnunet_plugin_peerstore_flat_la_SOURCES = \
58   plugin_peerstore_flat.c
59 libgnunet_plugin_peerstore_flat_la_LIBADD = \
60   libgnunetpeerstore.la  \
61   $(top_builddir)/src/util/libgnunetutil.la $(XLIBS) \
62   $(LTLIBINTL)
63 libgnunet_plugin_peerstore_flat_la_LDFLAGS = \
64  $(GN_PLUGIN_LDFLAGS)
65 endif
66
67 if HAVE_SQLITE
68 SQLITE_PLUGIN = libgnunet_plugin_peerstore_sqlite.la
69 if HAVE_TESTING
70 SQLITE_TESTS = test_plugin_peerstore_sqlite
71 endif
72 libgnunet_plugin_peerstore_sqlite_la_SOURCES = \
73   plugin_peerstore_sqlite.c
74 libgnunet_plugin_peerstore_sqlite_la_LIBADD = \
75   libgnunetpeerstore.la  \
76   $(top_builddir)/src/sq/libgnunetsq.la \
77   $(top_builddir)/src/util/libgnunetutil.la \
78   $(XLIBS) -lsqlite3 \
79   $(LTLIBINTL)
80 libgnunet_plugin_peerstore_sqlite_la_LDFLAGS = \
81  $(GN_PLUGIN_LDFLAGS)
82 endif
83
84 plugin_LTLIBRARIES = \
85   $(SQLITE_PLUGIN) \
86         $(FLAT_PLUGIN)
87
88 test_plugin_peerstore_sqlite_SOURCES = \
89   test_plugin_peerstore.c
90 test_plugin_peerstore_sqlite_LDADD = \
91         $(top_builddir)/src/testing/libgnunettesting.la \
92         $(top_builddir)/src/util/libgnunetutil.la
93
94 test_plugin_peerstore_flat_SOURCES = \
95   test_plugin_peerstore.c
96 test_plugin_peerstore_flat_LDADD = \
97         $(top_builddir)/src/testing/libgnunettesting.la \
98         $(top_builddir)/src/util/libgnunetutil.la
99
100 check_PROGRAMS = \
101  test_peerstore_api_store \
102  test_peerstore_api_iterate \
103  test_peerstore_api_watch \
104  test_peerstore_api_sync \
105  perf_peerstore_store \
106  $(SQLITE_TESTS) \
107  $(FLAT_TESTS)
108
109 EXTRA_DIST = \
110  test_peerstore_api_data.conf
111
112 if ENABLE_TEST_RUN
113 AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PATH=$${GNUNET_PREFIX:-@prefix@}/bin:$$PATH;unset XDG_DATA_HOME;unset XDG_CONFIG_HOME;
114 TESTS = $(check_PROGRAMS)
115 endif
116
117 test_peerstore_api_store_SOURCES = \
118  test_peerstore_api_store.c
119 test_peerstore_api_store_LDADD = \
120   libgnunetpeerstore.la  \
121   $(top_builddir)/src/testing/libgnunettesting.la \
122   $(top_builddir)/src/util/libgnunetutil.la
123
124 test_peerstore_api_iterate_SOURCES = \
125  test_peerstore_api_iterate.c
126 test_peerstore_api_iterate_LDADD = \
127   libgnunetpeerstore.la  \
128   $(top_builddir)/src/testing/libgnunettesting.la \
129   $(top_builddir)/src/util/libgnunetutil.la
130
131 test_peerstore_api_watch_SOURCES = \
132  test_peerstore_api_watch.c
133 test_peerstore_api_watch_LDADD = \
134   libgnunetpeerstore.la  \
135   $(top_builddir)/src/testing/libgnunettesting.la \
136   $(top_builddir)/src/util/libgnunetutil.la
137
138 test_peerstore_api_sync_SOURCES = \
139  test_peerstore_api_sync.c
140 test_peerstore_api_sync_LDADD = \
141   libgnunetpeerstore.la  \
142   $(top_builddir)/src/testing/libgnunettesting.la \
143   $(top_builddir)/src/util/libgnunetutil.la
144
145 perf_peerstore_store_SOURCES = \
146  perf_peerstore_store.c
147 perf_peerstore_store_LDADD = \
148   libgnunetpeerstore.la  \
149   $(top_builddir)/src/testing/libgnunettesting.la \
150   $(top_builddir)/src/util/libgnunetutil.la