fix /tmp/rps directory creation, fix linkage, DCE
[oweals/gnunet.git] / src / rps / Makefile.am
1 # This Makefile.am is in the public domain
2 AM_CPPFLAGS = -I$(top_srcdir)/src/include
3
4 if MINGW
5  WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
6 endif
7
8 if USE_COVERAGE
9   AM_CFLAGS = --coverage -O0
10   XLIB = -lgcov
11 endif
12
13 pkgcfgdir= $(pkgdatadir)/config.d/
14
15 libexecdir= $(pkglibdir)/libexec/
16
17 pkgcfg_DATA = \
18   rps.conf
19
20 bin_PROGRAMS = gnunet-rps
21
22 gnunet_rps_SOURCES = \
23   gnunet-rps.c
24
25 gnunet_rps_LDADD = \
26   libgnunetrps.la \
27   $(top_builddir)/src/util/libgnunetutil.la \
28   $(XLIB) $(GN_LIBINTL)
29
30 lib_LTLIBRARIES = libgnunetrps.la
31
32 libgnunetrps_la_SOURCES = \
33  gnunet-service-rps_sampler_elem.h gnunet-service-rps_sampler_elem.c \
34   rps-test_util.h rps-test_util.c \
35   rps-sampler_common.h rps-sampler_common.c \
36   rps-sampler_client.h rps-sampler_client.c \
37   rps_api.c rps.h
38 libgnunetrps_la_LIBADD = \
39   $(top_builddir)/src/util/libgnunetutil.la \
40   $(GN_LIBINTL) $(XLIB)
41 libgnunetrps_la_LDFLAGS = \
42   $(GN_LIB_LDFLAGS)  $(WINFLAGS) \
43   -version-info 0:0:0
44 # Fix 'created both with libtool and without' error:
45 libgnunetrps_la_CFLAGS = $(AM_CFLAGS)
46
47
48 libexec_PROGRAMS = \
49  gnunet-service-rps
50
51 if HAVE_TESTING
52 noinst_PROGRAMS = \
53  gnunet-rps-profiler
54 endif
55
56
57 gnunet_service_rps_SOURCES = \
58  gnunet-service-rps_sampler_elem.h gnunet-service-rps_sampler_elem.c \
59  rps-sampler_common.h rps-sampler_common.c \
60  gnunet-service-rps_sampler.h gnunet-service-rps_sampler.c \
61  gnunet-service-rps_custommap.h gnunet-service-rps_custommap.c \
62  gnunet-service-rps_view.h gnunet-service-rps_view.c \
63  gnunet-service-rps.c
64
65
66 gnunet_service_rps_LDADD = \
67   libgnunetrps.la \
68   $(top_builddir)/src/util/libgnunetutil.la \
69   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
70   $(top_builddir)/src/cadet/libgnunetcadet.la \
71   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
72   $(top_builddir)/src/nse/libgnunetnse.la \
73   $(top_builddir)/src/statistics/libgnunetstatistics.la \
74   $(top_builddir)/src/core/libgnunetcore.la \
75   $(LIBGCRYPT_LIBS) \
76   -lm -lgcrypt \
77   $(GN_LIBINTL)
78
79
80 if HAVE_TESTING
81 check_PROGRAMS = \
82  test_service_rps_view \
83  test_service_rps_custommap \
84  test_service_rps_sampler_elem \
85  test_rps_single_req \
86  test_rps_req_cancel \
87  test_rps_sub \
88  test_rps_seed_request \
89  test_rps_seed_big \
90  test_rps_churn \
91  test_rps_malicious_1 \
92  test_rps_malicious_2 \
93  test_rps_malicious_3
94 endif
95
96 rps_test_src = \
97         test_rps.c \
98         rps-test_util.h rps-test_util.c \
99  gnunet-service-rps_sampler_elem.h gnunet-service-rps_sampler_elem.c \
100  rps-sampler_common.h rps-sampler_common.c \
101  gnunet-service-rps_sampler.h gnunet-service-rps_sampler.c
102
103 ld_rps_test_lib = \
104         libgnunetrps.la \
105   $(top_builddir)/src/util/libgnunetutil.la \
106   $(top_builddir)/src/statistics/libgnunetstatistics.la \
107   $(top_builddir)/src/testbed/libgnunettestbed.la \
108   -lm
109
110 if ENABLE_TEST_RUN
111 AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PATH=$${GNUNET_PREFIX:-@prefix@}/bin:$$PATH;unset XDG_DATA_HOME;unset XDG_CONFIG_HOME;
112 TESTS = $(check_PROGRAMS)
113 endif
114
115 test_service_rps_view_SOURCES = \
116   gnunet-service-rps_view.h gnunet-service-rps_view.c \
117   test_service_rps_view.c
118 test_service_rps_view_LDADD = $(top_builddir)/src/util/libgnunetutil.la
119
120 test_service_rps_custommap_SOURCES = \
121   gnunet-service-rps_custommap.h gnunet-service-rps_custommap.c \
122   test_service_rps_custommap.c
123 test_service_rps_custommap_LDADD = \
124   $(top_builddir)/src/util/libgnunetutil.la
125
126 test_service_rps_sampler_elem_SOURCES = \
127   gnunet-service-rps_sampler_elem.h gnunet-service-rps_sampler_elem.c \
128   rps-test_util.h rps-test_util.c \
129   test_service_rps_sampler_elem.c
130 test_service_rps_sampler_elem_LDADD = $(top_builddir)/src/util/libgnunetutil.la
131
132 test_rps_single_req_SOURCES = $(rps_test_src)
133 test_rps_single_req_LDADD = $(ld_rps_test_lib)
134
135 test_rps_seed_request_SOURCES = $(rps_test_src)
136 test_rps_seed_request_LDADD = $(ld_rps_test_lib)
137
138 test_rps_req_cancel_SOURCES = $(rps_test_src)
139 test_rps_req_cancel_LDADD = $(ld_rps_test_lib)
140
141 test_rps_sub_SOURCES = $(rps_test_src)
142 test_rps_sub_LDADD = $(ld_rps_test_lib)
143
144 test_rps_seed_big_SOURCES = $(rps_test_src)
145 test_rps_seed_big_LDADD = $(ld_rps_test_lib)
146
147 test_rps_churn_SOURCES = $(rps_test_src)
148 test_rps_churn_LDADD = $(ld_rps_test_lib)
149
150 test_rps_malicious_1_SOURCES = $(rps_test_src)
151 test_rps_malicious_1_LDADD = $(ld_rps_test_lib)
152
153 test_rps_malicious_2_SOURCES = $(rps_test_src)
154 test_rps_malicious_2_LDADD = $(ld_rps_test_lib)
155
156 test_rps_malicious_3_SOURCES = $(rps_test_src)
157 test_rps_malicious_3_LDADD = $(ld_rps_test_lib)
158
159 gnunet_rps_profiler_SOURCES = \
160  gnunet-service-rps_sampler_elem.h gnunet-service-rps_sampler_elem.c \
161  rps-sampler_common.h rps-sampler_common.c \
162  gnunet-service-rps_sampler.h gnunet-service-rps_sampler.c \
163  rps-test_util.h rps-test_util.c \
164  gnunet-rps-profiler.c
165
166
167 gnunet_rps_profiler_LDADD = \
168   $(top_builddir)/src/statistics/libgnunetstatistics.la \
169   libgnunetrps.la \
170   $(top_builddir)/src/util/libgnunetutil.la \
171   $(top_builddir)/src/testbed/libgnunettestbed.la \
172   -lm
173
174
175 EXTRA_DIST = \
176   test_rps.conf