- begin work on enhanced multipart receiving
[oweals/gnunet.git] / src / mesh / Makefile.am
index f74c224abece3f99ae10bd7ffd089a26159a3a33..a81ac4589fabcdff61d5926e13399b3696c0429a 100644 (file)
@@ -1,4 +1,4 @@
-INCLUDES = -I$(top_srcdir)/src/include
+AM_CPPFLAGS = -I$(top_srcdir)/src/include
 
 if MINGW
   WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
@@ -11,6 +11,8 @@ endif
 
 pkgcfgdir= $(pkgdatadir)/config.d/
 
+libexecdir= $(pkglibdir)/libexec/
+
 pkgcfg_DATA = \
   mesh.conf
 
@@ -18,12 +20,14 @@ plugindir = $(libdir)/gnunet
 
 AM_CLFAGS = -g
 
+libexec_PROGRAMS = \
+ gnunet-service-mesh $(EXP_LIBEXEC)
+
 bin_PROGRAMS = \
- gnunet-service-mesh
+ gnunet-mesh
 
 lib_LTLIBRARIES = \
-  libgnunetmesh.la \
-  libgnunetmeshblock.la
+  libgnunetmesh.la $(EXP_LIB)
 
 plugin_LTLIBRARIES = \
  libgnunet_plugin_block_mesh.la
@@ -31,166 +35,159 @@ plugin_LTLIBRARIES = \
 libgnunet_plugin_block_mesh_la_SOURCES = \
  plugin_block_mesh.c
 libgnunet_plugin_block_mesh_la_LIBADD = \
- $(top_builddir)/src/mesh/libgnunetmeshblock.la \
  $(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/mesh/libgnunetmeshblock.la \
  $(top_builddir)/src/block/libgnunetblock.la \
  $(top_builddir)/src/util/libgnunetutil.la
 
-gnunet_service_mesh_SOURCES = \
- gnunet-service-mesh.c \
- mesh_tunnel_tree.c mesh_tunnel_tree.h
-gnunet_service_mesh_LDADD = \
-  $(top_builddir)/src/util/libgnunetutil.la \
-  $(top_builddir)/src/core/libgnunetcore.la \
-  $(top_builddir)/src/dht/libgnunetdht.la \
-  $(top_builddir)/src/block/libgnunetblock.la \
-  libgnunetmeshblock.la \
-  $(top_builddir)/src/regex/libgnunetregex.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/block/libgnunetblock.la \
-  libgnunetmeshblock.la \
-  $(top_builddir)/src/regex/libgnunetregex.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) \
   $(LTLIBINTL)
 libgnunetmesh_la_LDFLAGS = \
   $(GN_LIB_LDFLAGS) $(WINFLAGS) \
-  -version-info 1:0:0
+  -version-info 4:0:0
 
-libgnunetmeshblock_la_SOURCES = \
-  mesh_block_lib.c
-libgnunetmeshblock_la_LIBADD = \
-  $(top_builddir)/src/util/libgnunetutil.la \
-  $(XLIB) \
-  $(LTLIBINTL)
-libgnunetmeshblock_la_LDFLAGS = \
-  $(GN_LIB_LDFLAGS) $(WINFLAGS) \
-  -version-info 1:0:0
+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
 
+gnunet_service_mesh_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.c
+gnunet_service_mesh_CFLAGS = $(AM_CFLAGS)
+gnunet_service_mesh_LDADD = \
+  $(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
+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
 
-check_PROGRAMS = \
- test_mesh_api \
- test_mesh_tree_api \
- test_mesh_local_1 \
- test_mesh_local_2 \
- test_mesh_2dtorus \
- test_mesh_regex \
- 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/testing/libgnunettesting.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
+if HAVE_TESTING
+ noinst_LIBRARIES = libgnunetmeshtest.a $(noinst_LIB_EXP)
+endif
 
-test_mesh_local_1_SOURCES = \
- test_mesh_local_1.c
-test_mesh_local_1_LDADD = \
+libgnunetmeshtest_a_SOURCES = \
+  mesh_test_lib.c mesh_test_lib.h
+libgnunetmeshtest_a_LIBADD = \
  $(top_builddir)/src/util/libgnunetutil.la \
- $(top_builddir)/src/testing/libgnunettesting.la \
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
  $(top_builddir)/src/mesh/libgnunetmesh.la
-test_mesh_local_1_DEPENDENCIES = \
+libgnunetmeshtest_a_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/testing/libgnunettesting.la \
- $(top_builddir)/src/mesh/libgnunetmesh.la
-test_mesh_local_2_DEPENDENCIES = \
-  libgnunetmesh.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_backwards  \
+  test_mesh_small_speed_reliable \
+  test_mesh_small_speed_reliable_backwards
+endif
 
-test_mesh_2dtorus_SOURCES = \
- test_mesh_2dtorus.c
-test_mesh_2dtorus_LDADD = \
+ld_mesh_test_lib = \
   $(top_builddir)/src/util/libgnunetutil.la \
-  $(top_builddir)/src/testing_old/libgnunettesting_old.la
-
-test_mesh_regex_SOURCES = \
- test_mesh_regex.c
-test_mesh_regex_LDADD = \
+  $(top_builddir)/src/testing/libgnunettesting.la \
+  $(top_builddir)/src/mesh/libgnunetmeshtest.a \
   $(top_builddir)/src/mesh/libgnunetmesh.la \
-  $(top_builddir)/src/util/libgnunetutil.la \
-  $(top_builddir)/src/testing_old/libgnunettesting_old.la
-test_mesh_regex_DEPENDENCIES = \
-  libgnunetmesh.la
+  $(top_builddir)/src/testbed/libgnunettestbed.la
 
+dep_mesh_test_lib = \
+  libgnunetmesh.la \
+  libgnunetmeshtest.a
 
-test_mesh_small_unicast_SOURCES = \
- test_mesh_small.c
-test_mesh_small_unicast_LDADD = \
-  $(top_builddir)/src/mesh/libgnunetmesh.la \
-  $(top_builddir)/src/util/libgnunetutil.la \
-  $(top_builddir)/src/testing_old/libgnunettesting_old.la
-test_mesh_small_unicast_DEPENDENCIES = \
-  libgnunetmesh.la
+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_small_multicast_SOURCES = \
- test_mesh_small.c
-test_mesh_small_multicast_LDADD = \
-  $(top_builddir)/src/mesh/libgnunetmesh.la \
-  $(top_builddir)/src/util/libgnunetutil.la \
-  $(top_builddir)/src/testing_old/libgnunettesting_old.la
-test_mesh_small_multicast_DEPENDENCIES = \
-  libgnunetmesh.la
+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_old/libgnunettesting_old.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_old/libgnunettesting_old.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_regex \
- 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