-INCLUDES = -I$(top_srcdir)/src/include
+AM_CPPFLAGS = -I$(top_srcdir)/src/include
if MINGW
WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols -lole32 -lshell32 -liconv -lstdc++ -lcomdlg32 -lgdi32
endif
plugindir = $(libdir)/gnunet
-HAVE_MYSQL = 0
-if HAVE_MYSQL
- MYSQL_PLUGIN = libgnunet_plugin_dhtlog_mysql.la
-endif
-if HAVE_ZLIB
- ZLIB_LNK = -lz
-endif
+pkgcfgdir= $(pkgdatadir)/config.d/
+
+libexecdir= $(pkglibdir)/libexec/
+
+pkgcfg_DATA = \
+ dht.conf
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
endif
-lib_LTLIBRARIES = libgnunetdht.la \
- libgnunetdhtlog.la
-
-plugin_LTLIBRARIES = \
- libgnunet_plugin_dhtlog_dummy.la $(MYSQL_PLUGIN)
-
-libgnunet_plugin_dhtlog_dummy_la_SOURCES = \
- plugin_dhtlog_dummy.c
-libgnunet_plugin_dhtlog_dummy_la_LIBADD = \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(XLIB)
-libgnunet_plugin_dhtlog_dummy_la_LDFLAGS = \
- $(GN_PLUGIN_LDFLAGS)
-
-libgnunetdhtlog_la_SOURCES = \
- dhtlog.c dhtlog.h
-libgnunetdhtlog_la_LIBADD = \
- $(top_builddir)/src/util/libgnunetutil.la
-libgnunetdhtlog_la_LDFLAGS = \
- $(GN_LIB_LDFLAGS) $(WINFLAGS) \
- -version-info 0:0:0
-
-if HAVE_MYSQL
-libgnunet_plugin_dhtlog_mysql_la_SOURCES = \
- plugin_dhtlog_mysql.c
-libgnunet_plugin_dhtlog_mysql_la_LIBADD = \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(XLIB)
-libgnunet_plugin_dhtlog_mysql_la_LDFLAGS = \
- $(GN_PLUGIN_LDFLAGS) $(MYSQL_LDFLAGS) -lmysqlclient $(ZLIB_LNK)
-libgnunet_plugin_dhtlog_mysql_la_CPPFLAGS = \
- $(MYSQL_CPPFLAGS)
-endif
+lib_LTLIBRARIES = \
+ libgnunetdht.la
libgnunetdht_la_SOURCES = \
dht_api.c dht.h
libgnunetdht_la_LIBADD = \
$(top_builddir)/src/util/libgnunetutil.la \
- $(XLIB)
+ $(XLIB) \
+ $(LTLIBINTL)
libgnunetdht_la_LDFLAGS = \
$(GN_LIB_LDFLAGS) $(WINFLAGS) \
- -version-info 0:0:0
+ -version-info 2:0:2
+
+
+plugin_LTLIBRARIES = \
+ libgnunet_plugin_block_dht.la
+
+libgnunet_plugin_block_dht_la_SOURCES = \
+ plugin_block_dht.c
+libgnunet_plugin_block_dht_la_LIBADD = \
+ $(top_builddir)/src/hello/libgnunethello.la \
+ $(top_builddir)/src/block/libgnunetblock.la \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(LTLIBINTL)
+libgnunet_plugin_block_dht_la_LDFLAGS = \
+ $(GN_PLUGIN_LDFLAGS)
+libgnunet_plugin_block_dht_la_DEPENDENCIES = \
+ $(top_builddir)/src/block/libgnunetblock.la
-if HAVE_MYSQL
-STUD_PROGS = gnunet-service-dht-can \
- gnunet-service-dht-freenet \
- gnunet-service-dht-kademlia \
- gnunet-service-dht-koorde
-endif
-bin_PROGRAMS = $(STUD_PROGS) \
+
+libexec_PROGRAMS = \
gnunet-service-dht \
- gnunet-dht-get \
- gnunet-dht-get-peer \
- gnunet-dht-put
+ gnunet-service-dht-xvine
noinst_PROGRAMS = \
- gnunet-dht-driver
+ gnunet-dht-monitor \
+ gnunet-dht-get \
+ gnunet-dht-put
gnunet_service_dht_SOURCES = \
- gnunet-service-dht.c
+ gnunet-service-dht.c gnunet-service-dht.h \
+ gnunet-service-dht_clients.c gnunet-service-dht_clients.h \
+ gnunet-service-dht_datacache.c gnunet-service-dht_datacache.h \
+ gnunet-service-dht_hello.c gnunet-service-dht_hello.h \
+ gnunet-service-dht_nse.c gnunet-service-dht_nse.h \
+ gnunet-service-dht_neighbours.c gnunet-service-dht_neighbours.h \
+ gnunet-service-dht_routing.c gnunet-service-dht_routing.h
gnunet_service_dht_LDADD = \
$(top_builddir)/src/statistics/libgnunetstatistics.la \
$(top_builddir)/src/core/libgnunetcore.la \
+ $(top_builddir)/src/nse/libgnunetnse.la \
+ $(top_builddir)/src/ats/libgnunetats.la \
$(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
$(top_builddir)/src/hello/libgnunethello.la \
+ $(top_builddir)/src/block/libgnunetblock.la \
$(top_builddir)/src/datacache/libgnunetdatacache.la \
$(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/dht/libgnunetdhtlog.la
-
-gnunet_service_dht_can_SOURCES = \
- dht_can.c dht_can_helper.c dht_can_helper.h
-gnunet_service_dht_can_LDADD = \
- $(top_builddir)/src/statistics/libgnunetstatistics.la \
- $(top_builddir)/src/core/libgnunetcore.la \
- $(top_builddir)/src/transport/libgnunettransport.la \
- $(top_builddir)/src/hello/libgnunethello.la \
- $(top_builddir)/src/datacache/libgnunetdatacache.la \
- $(top_builddir)/src/util/libgnunetutil.la
-
-gnunet_service_dht_freenet_SOURCES = \
- dht_freenet.c
-gnunet_service_dht_freenet_LDADD = \
+ -lm
+
+gnunet_service_dht_xvine_SOURCES = \
+ gnunet-service-xdht.c gnunet-service-xdht.h \
+ gnunet-service-xdht_clients.c gnunet-service-xdht_clients.h \
+ gnunet-service-xdht_datacache.c gnunet-service-xdht_datacache.h \
+ gnunet-service-xdht_hello.c gnunet-service-xdht_hello.h \
+ gnunet-service-xdht_nse.c gnunet-service-xdht_nse.h \
+ gnunet-service-xdht_neighbours.c gnunet-service-xdht_neighbours.h \
+ gnunet-service-xdht_routing.c gnunet-service-xdht_routing.h
+gnunet_service_dht_xvine_LDADD = \
$(top_builddir)/src/statistics/libgnunetstatistics.la \
$(top_builddir)/src/core/libgnunetcore.la \
+ $(top_builddir)/src/nse/libgnunetnse.la \
+ $(top_builddir)/src/ats/libgnunetats.la \
$(top_builddir)/src/transport/libgnunettransport.la \
$(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
$(top_builddir)/src/hello/libgnunethello.la \
+ $(top_builddir)/src/block/libgnunetblock.la \
$(top_builddir)/src/datacache/libgnunetdatacache.la \
- $(top_builddir)/src/util/libgnunetutil.la
+ $(top_builddir)/src/util/libgnunetutil.la \
+ -lm
-gnunet_service_dht_kademlia_SOURCES = \
- dht_kademlia.c dht_kademlia.h
-gnunet_service_dht_kademlia_LDADD = \
- $(top_builddir)/src/statistics/libgnunetstatistics.la \
- $(top_builddir)/src/core/libgnunetcore.la \
- $(top_builddir)/src/transport/libgnunettransport.la \
- $(top_builddir)/src/hello/libgnunethello.la \
- $(top_builddir)/src/datacache/libgnunetdatacache.la \
- $(top_builddir)/src/util/libgnunetutil.la
-gnunet_service_dht_koorde_SOURCES = \
- dht_koorde.c dht_koorde.h
-gnunet_service_dht_koorde_LDADD = \
- $(top_builddir)/src/statistics/libgnunetstatistics.la \
- $(top_builddir)/src/core/libgnunetcore.la \
- $(top_builddir)/src/transport/libgnunettransport.la \
- $(top_builddir)/src/hello/libgnunethello.la \
- $(top_builddir)/src/datacache/libgnunetdatacache.la \
- $(top_builddir)/src/util/libgnunetutil.la
-
-#gnunet_service_dht_new_SOURCES = \
-# gnunet-service-dht-new.c
-#gnunet_service_dht_new_LDADD = \
-# $(top_builddir)/src/statistics/libgnunetstatistics.la \
-# $(top_builddir)/src/core/libgnunetcore.la \
-# $(top_builddir)/src/transport/libgnunettransport.la \
-# $(top_builddir)/src/hello/libgnunethello.la \
-# $(top_builddir)/src/datacache/libgnunetdatacache.la \
-# $(top_builddir)/src/util/libgnunetutil.la \
-# $(top_builddir)/src/dht/libgnunetdhtlog.la
gnunet_dht_get_SOURCES = \
- gnunet-dht-get.c
+ gnunet-dht-get.c
gnunet_dht_get_LDADD = \
$(top_builddir)/src/dht/libgnunetdht.la \
$(top_builddir)/src/core/libgnunetcore.la \
- $(top_builddir)/src/util/libgnunetutil.la
-
-gnunet_dht_get_peer_SOURCES = \
- gnunet-dht-get-peer.c
-gnunet_dht_get_peer_LDADD = \
- $(top_builddir)/src/dht/libgnunetdht.la \
- $(top_builddir)/src/hello/libgnunethello.la \
- $(top_builddir)/src/core/libgnunetcore.la \
- $(top_builddir)/src/util/libgnunetutil.la
+ $(top_builddir)/src/util/libgnunetutil.la
+gnunet_dht_get_DEPENDENCIES = \
+ libgnunetdht.la
gnunet_dht_put_SOURCES = \
- gnunet-dht-put.c
+ gnunet-dht-put.c
gnunet_dht_put_LDADD = \
$(top_builddir)/src/dht/libgnunetdht.la \
$(top_builddir)/src/core/libgnunetcore.la \
- $(top_builddir)/src/util/libgnunetutil.la
+ $(top_builddir)/src/util/libgnunetutil.la
+gnunet_dht_put_DEPENDENCIES = \
+ libgnunetdht.la
-gnunet_dht_driver_SOURCES = \
- gnunet-dht-driver.c
-gnunet_dht_driver_LDADD = \
+gnunet_dht_monitor_SOURCES = \
+ gnunet-dht-monitor.c
+gnunet_dht_monitor_LDADD = \
$(top_builddir)/src/dht/libgnunetdht.la \
- $(top_builddir)/src/dht/libgnunetdhtlog.la \
$(top_builddir)/src/core/libgnunetcore.la \
- $(top_builddir)/src/testing/libgnunettesting.la \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/dht/libgnunetdhtlog.la
+ $(top_builddir)/src/util/libgnunetutil.la
+gnunet_dht_monitor_DEPENDENCIES = \
+ libgnunetdht.la
+
+if HAVE_TESTING
+noinst_LIBRARIES = libgnunetdhttest.a
+endif
+libgnunetdhttest_a_SOURCES = \
+ dht_test_lib.c dht_test_lib.h
+libgnunetdhttest_a_LIBADD = \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/dht/libgnunetdht.la
+libgnunetdhttest_a_DEPENDENCIES = \
+ libgnunetdht.la
+
+if HAVE_TESTING
check_PROGRAMS = \
test_dht_api \
test_dht_twopeer \
- test_dht_twopeer_put_get \
test_dht_multipeer \
- test_dhtlog
+ test_dht_line \
+ test_dht_2dtorus \
+ test_dht_monitor
+endif
+
+if HAVE_EXPERIMENTAL
+# These tests still do not work as testbed does
+# not support the respective topology op
+ NEW_TESTS = test_dht_2dtorus test_dht_multipeer
+endif
+if ENABLE_TEST_RUN
+AM_TESTS_ENVIRONMENT=export GNUNET_PREFIX=$${GNUNET_PREFIX:-@libdir@};export PATH=$${GNUNET_PREFIX:-@prefix@}/bin:$$PATH;
TESTS = test_dht_api $(check_SCRIPTS) \
test_dht_twopeer \
- test_dht_twopeer_put_get
+ test_dht_line \
+ test_dht_monitor \
+ $(NEW_TESTS)
+endif
test_dht_api_SOURCES = \
test_dht_api.c
test_dht_api_LDADD = \
$(top_builddir)/src/util/libgnunetutil.la \
+ $(top_builddir)/src/testing/libgnunettesting.la \
$(top_builddir)/src/hello/libgnunethello.la \
$(top_builddir)/src/dht/libgnunetdht.la
-
-test_dht_multipeer_SOURCES = \
- test_dht_multipeer.c
-test_dht_multipeer_LDADD = \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la \
- $(top_builddir)/src/dht/libgnunetdht.la
+test_dht_api_DEPENDENCIES = \
+ libgnunetdht.la
test_dht_twopeer_SOURCES = \
- test_dht_twopeer.c
+ test_dht_topo.c
test_dht_twopeer_LDADD = \
+ $(top_builddir)/src/dht/libgnunetdhttest.a \
$(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la \
- $(top_builddir)/src/dht/libgnunetdht.la
+ $(top_builddir)/src/dht/libgnunetdhttest.a \
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/dht/libgnunetdht.la
+test_dht_twopeer_DEPENDENCIES = \
+ libgnunetdht.la
-test_dht_twopeer_put_get_SOURCES = \
- test_dht_twopeer_put_get.c
-test_dht_twopeer_put_get_LDADD = \
+test_dht_2dtorus_SOURCES = \
+ test_dht_topo.c
+test_dht_2dtorus_LDADD = \
+ $(top_builddir)/src/dht/libgnunetdhttest.a \
$(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la \
- $(top_builddir)/src/dht/libgnunetdht.la
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/dht/libgnunetdht.la
+test_dht_2dtorus_DEPENDENCIES = \
+ libgnunetdht.la
-test_dhtlog_SOURCES = \
- test_dhtlog.c
-test_dhtlog_LDADD = \
+test_dht_line_SOURCES = \
+ test_dht_topo.c
+test_dht_line_LDADD = \
+ $(top_builddir)/src/dht/libgnunetdhttest.a \
$(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la \
- $(top_builddir)/src/dht/libgnunetdht.la \
- $(top_builddir)/src/dht/libgnunetdhtlog.la
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/dht/libgnunetdht.la
+test_dht_line_DEPENDENCIES = \
+ libgnunetdht.la
+
+test_dht_multipeer_SOURCES = \
+ test_dht_topo.c
+test_dht_multipeer_LDADD = \
+ $(top_builddir)/src/dht/libgnunetdhttest.a \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(top_builddir)/src/statistics/libgnunetstatistics.la \
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/dht/libgnunetdht.la
+test_dht_multipeer_DEPENDENCIES = \
+ libgnunetdht.la
+
+test_dht_monitor_SOURCES = \
+ test_dht_monitor.c
+test_dht_monitor_LDADD = \
+ $(top_builddir)/src/dht/libgnunetdhttest.a \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/dht/libgnunetdht.la
+test_dht_monitor_DEPENDENCIES = \
+ libgnunetdht.la
EXTRA_DIST = \
$(check_SCRIPTS) \
test_dht_api_data.conf \
test_dht_api_peer1.conf \
- test_dht_twopeer_data.conf \
- test_dht_multipeer_data.conf
-
+ test_dht_monitor.conf \
+ test_dht_multipeer.conf \
+ test_dht_2dtorus.conf \
+ test_dht_line.conf \
+ test_dht_tools.py.in \
+ test_dht_multipeer_topology.dat
+
+if HAVE_PYTHON
check_SCRIPTS = \
- test_dht_tools.sh
+ test_dht_tools.py
+endif
+
+do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g'
+
+%.py: %.py.in Makefile
+ $(do_subst) < $(srcdir)/$< > $@
+ chmod +x $@
+
+test_dht_tools.py: test_dht_tools.py.in Makefile
+ $(do_subst) < $(srcdir)/test_dht_tools.py.in > test_dht_tools.py
+ chmod +x test_dht_tools.py