-INCLUDES = -I$(top_srcdir)/src/include
+AM_CPPFLAGS = -I$(top_srcdir)/src/include
if MINGW
WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
pkgcfgdir= $(pkgdatadir)/config.d/
+libexecdir= $(pkglibdir)/libexec/
+
pkgcfg_DATA = \
mesh.conf
+plugindir = $(libdir)/gnunet
+
AM_CLFAGS = -g
+EXP_LIB = \
+ libgnunetmeshenc.la
+
+EXP_LIBEXEC = \
+ gnunet-service-mesh-enc
+
+libexec_PROGRAMS = \
+ gnunet-service-mesh $(EXP_LIBEXEC)
+
bin_PROGRAMS = \
- gnunet-service-mesh gnunet-service-mesh_new
+ gnunet-mesh
lib_LTLIBRARIES = \
- libgnunetmesh.la
+ libgnunetmesh.la $(EXP_LIB)
-gnunet_service_mesh_SOURCES = \
- gnunet-service-mesh.c \
- mesh_tunnel_tree.c mesh_tunnel_tree.h
-gnunet_service_mesh_LDADD = \
- $(top_builddir)/src/core/libgnunetcore.la\
- $(top_builddir)/src/dht/libgnunetdht.la \
- $(top_builddir)/src/util/libgnunetutil.la
- gnunet_service_mesh_DEPENDENCIES = \
- $(top_builddir)/src/core/libgnunetcore.la\
- $(top_builddir)/src/dht/libgnunetdht.la \
- $(top_builddir)/src/util/libgnunetutil.la
+plugin_LTLIBRARIES = \
+ libgnunet_plugin_block_mesh.la
+
+libgnunet_plugin_block_mesh_la_SOURCES = \
+ plugin_block_mesh.c
+libgnunet_plugin_block_mesh_la_LIBADD = \
+ $(top_builddir)/src/block/libgnunetblock.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+libgnunet_plugin_block_mesh_la_LDFLAGS = \
+ $(GN_PLUGIN_LDFLAGS)
+libgnunet_plugin_block_mesh_la_DEPENDENCIES = \
+ $(top_builddir)/src/block/libgnunetblock.la \
+ $(top_builddir)/src/util/libgnunetutil.la
-gnunet_service_mesh_new_SOURCES = \
- gnunet-service-mesh_new.c \
- mesh_tunnel_tree.c mesh_tunnel_tree.h
-gnunet_service_mesh_new_LDADD = \
- $(top_builddir)/src/core/libgnunetcore.la\
- $(top_builddir)/src/dht/libgnunetdht.la \
- $(top_builddir)/src/util/libgnunetutil.la
- gnunet_service_mesh_new_DEPENDENCIES = \
- $(top_builddir)/src/core/libgnunetcore.la\
- $(top_builddir)/src/dht/libgnunetdht.la \
- $(top_builddir)/src/util/libgnunetutil.la
libgnunetmesh_la_SOURCES = \
- mesh_api.c mesh.h mesh_protocol.h
+ mesh_api.c mesh_common.c
libgnunetmesh_la_LIBADD = \
$(top_builddir)/src/util/libgnunetutil.la \
- $(XLIB)
+ $(XLIB) \
+ $(LTLIBINTL)
libgnunetmesh_la_LDFLAGS = \
+ $(GN_LIB_LDFLAGS) $(WINFLAGS) \
+ -version-info 3:0:0
+
+
+libgnunetmeshenc_la_SOURCES = \
+ mesh_api_enc.c mesh_common.c
+libgnunetmeshenc_la_LIBADD = \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(XLIB) \
+ $(LTLIBINTL)
+libgnunetmeshenc_la_LDFLAGS = \
$(GN_LIB_LDFLAGS) $(WINFLAGS) \
-version-info 1:0:0
-check_PROGRAMS = \
- test_mesh_api \
- test_mesh_tree_api \
- test_mesh_local_1 \
- test_mesh_local_2 \
- test_mesh_2dtorus \
- test_mesh_small_unicast \
- test_mesh_small_multicast \
- test_mesh_small_speed \
- test_mesh_small_speed_ack
-
-test_mesh_api_SOURCES = \
- test_mesh_api.c
-test_mesh_api_LDADD = \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/mesh/libgnunetmesh.la
-test_mesh_api_DEPENDENCIES = \
- libgnunetmesh.la \
- $(top_builddir)/src/util/libgnunetutil.la
-
-test_mesh_tree_api_SOURCES = \
- test_mesh_tree_api.c
-test_mesh_tree_api_LDADD = \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/dht/libgnunetdht.la
-test_mesh_tree_api_DEPENDENCIES = \
- libgnunetmesh.la \
- $(top_builddir)/src/dht/libgnunetdht.la
-
-test_mesh_local_1_SOURCES = \
- test_mesh_local_1.c
-test_mesh_local_1_LDADD = \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/mesh/libgnunetmesh.la
-test_mesh_local_1_DEPENDENCIES = \
- libgnunetmesh.la
-test_mesh_local_2_SOURCES = \
- test_mesh_local_2.c
-test_mesh_local_2_LDADD = \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/mesh/libgnunetmesh.la
-test_mesh_local_2_DEPENDENCIES = \
+gnunet_mesh_SOURCES = \
+ gnunet-mesh.c
+gnunet_mesh_LDADD = \
+ $(top_builddir)/src/mesh/libgnunetmesh.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+gnunet_mesh_DEPENDENCIES = \
libgnunetmesh.la
-test_mesh_2dtorus_SOURCES = \
- test_mesh_2dtorus.c
-test_mesh_2dtorus_LDADD = \
+gnunet_service_mesh_SOURCES = \
+ gnunet-service-mesh.c \
+ mesh_path.c \
+ mesh_common.c
+gnunet_service_mesh_CFLAGS = $(AM_CFLAGS)
+gnunet_service_mesh_LDADD = \
$(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la
+ $(top_builddir)/src/core/libgnunetcore.la \
+ $(top_builddir)/src/dht/libgnunetdht.la \
+ $(top_builddir)/src/statistics/libgnunetstatistics.la \
+ $(top_builddir)/src/block/libgnunetblock.la
+gnunet_service_mesh_DEPENDENCIES = \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(top_builddir)/src/core/libgnunetcore.la \
+ $(top_builddir)/src/dht/libgnunetdht.la \
+ $(top_builddir)/src/statistics/libgnunetstatistics.la \
+ $(top_builddir)/src/block/libgnunetblock.la
+if LINUX
+ gnunet_service_mesh_LDFLAGS = -lrt
+endif
-test_mesh_small_unicast_SOURCES = \
- test_mesh_small.c
-test_mesh_small_unicast_LDADD = \
- $(top_builddir)/src/mesh/libgnunetmesh.la \
+gnunet_service_mesh_enc_SOURCES = \
+ gnunet-service-mesh_tunnel.c \
+ gnunet-service-mesh_connection.c \
+ gnunet-service-mesh_channel.c \
+ gnunet-service-mesh_local.c \
+ gnunet-service-mesh_peer.c \
+ gnunet-service-mesh_dht.c \
+ mesh_path.c \
+ mesh_common.c \
+ gnunet-service-mesh-enc.c
+gnunet_service_mesh_enc_CFLAGS = $(AM_CFLAGS)
+gnunet_service_mesh_enc_LDADD = \
$(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la
-test_mesh_small_unicast_DEPENDENCIES = \
- libgnunetmesh.la
+ $(top_builddir)/src/core/libgnunetcore.la \
+ $(top_builddir)/src/dht/libgnunetdht.la \
+ $(top_builddir)/src/statistics/libgnunetstatistics.la \
+ $(top_builddir)/src/block/libgnunetblock.la
+gnunet_service_mesh_enc_DEPENDENCIES = \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(top_builddir)/src/core/libgnunetcore.la \
+ $(top_builddir)/src/dht/libgnunetdht.la \
+ $(top_builddir)/src/statistics/libgnunetstatistics.la \
+ $(top_builddir)/src/block/libgnunetblock.la
+if LINUX
+ gnunet_service_mesh_enc_LDFLAGS = -lrt
+endif
-test_mesh_small_multicast_SOURCES = \
- test_mesh_small.c
-test_mesh_small_multicast_LDADD = \
- $(top_builddir)/src/mesh/libgnunetmesh.la \
+
+if HAVE_TESTING
+ noinst_LIBRARIES = libgnunetmeshtest.a $(noinst_LIB_EXP)
+endif
+
+libgnunetmeshtest_a_SOURCES = \
+ mesh_test_lib.c mesh_test_lib.h
+libgnunetmeshtest_a_LIBADD = \
+ $(top_builddir)/src/util/libgnunetutil.la \
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/mesh/libgnunetmeshenc.la
+libgnunetmeshtest_a_DEPENDENCIES = \
+ libgnunetmeshenc.la
+
+if HAVE_TESTING
+check_PROGRAMS = \
+ test_mesh_single \
+ test_mesh_local \
+ test_mesh_small_forward \
+ test_mesh_small_signal \
+ test_mesh_small_speed \
+ test_mesh_small_speed_ack \
+ test_mesh_small_speed_nobuf \
+ test_mesh_small_speed_backwards \
+ test_mesh_small_speed_nobuf_backwards \
+ test_mesh_small_speed_reliable \
+ test_mesh_small_speed_reliable_backwards
+endif
+
+ld_mesh_test_lib = \
$(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la
-test_mesh_small_multicast_DEPENDENCIES = \
- libgnunetmesh.la
+ $(top_builddir)/src/testing/libgnunettesting.la \
+ $(top_builddir)/src/mesh/libgnunetmeshtest.a \
+ $(top_builddir)/src/mesh/libgnunetmeshenc.la \
+ $(top_builddir)/src/testbed/libgnunettestbed.la
+
+dep_mesh_test_lib = \
+ libgnunetmeshenc.la \
+ libgnunetmeshtest.a
+
+test_mesh_single_SOURCES = \
+ test_mesh_single.c
+test_mesh_single_LDADD = $(ld_mesh_test_lib)
+test_mesh_single_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_local_SOURCES = \
+ test_mesh_local.c
+test_mesh_local_LDADD = $(ld_mesh_test_lib)
+test_mesh_local_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_small_forward_SOURCES = \
+ test_mesh_small.c
+test_mesh_small_forward_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_forward_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_small_signal_SOURCES = \
+ test_mesh_small.c
+test_mesh_small_signal_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_signal_DEPENDENCIES = $(dep_mesh_test_lib)
test_mesh_small_speed_SOURCES = \
- test_mesh_small.c
-test_mesh_small_speed_LDADD = \
- $(top_builddir)/src/mesh/libgnunetmesh.la \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la
-test_mesh_small_speed_DEPENDENCIES = \
- libgnunetmesh.la
+ test_mesh_small.c
+test_mesh_small_speed_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_speed_DEPENDENCIES = $(dep_mesh_test_lib)
test_mesh_small_speed_ack_SOURCES = \
- test_mesh_small.c
-test_mesh_small_speed_ack_LDADD = \
- $(top_builddir)/src/mesh/libgnunetmesh.la \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la
-test_mesh_small_speed_ack_DEPENDENCIES = \
- libgnunetmesh.la
+ test_mesh_small.c
+test_mesh_small_speed_ack_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_speed_ack_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_small_speed_nobuf_SOURCES = \
+ test_mesh_small.c
+test_mesh_small_speed_nobuf_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_speed_nobuf_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_small_speed_backwards_SOURCES = \
+ test_mesh_small.c
+test_mesh_small_speed_backwards_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_speed_backwards_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_small_speed_nobuf_backwards_SOURCES = \
+ test_mesh_small.c
+test_mesh_small_speed_nobuf_backwards_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_speed_nobuf_backwards_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_small_speed_reliable_SOURCES = \
+ test_mesh_small.c
+test_mesh_small_speed_reliable_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_speed_reliable_DEPENDENCIES = $(dep_mesh_test_lib)
+
+test_mesh_small_speed_reliable_backwards_SOURCES = \
+ test_mesh_small.c
+test_mesh_small_speed_reliable_backwards_LDADD = $(ld_mesh_test_lib)
+test_mesh_small_speed_reliable_backwards_DEPENDENCIES = $(dep_mesh_test_lib)
+
if ENABLE_TEST_RUN
-TESTS = test_mesh_api test_mesh_tree_api test_mesh_local_1 test_mesh_local_2 \
- test_mesh_2dtorus test_mesh_small_unicast test_mesh_small_multicast
+TESTS = \
+ $(check_PROGRAMS)
endif
EXTRA_DIST = \
- test_mesh.conf \
- test_mesh_2dtorus.conf \
- test_mesh_small.conf \
- test_mesh_path.conf
+ mesh.h mesh_protocol.h \
+ test_mesh.conf