Parcourir la source

merged trac3631

Francis Dupont il y a 10 ans
Parent
commit
d7954b4234

+ 14 - 2
ChangeLog

@@ -1,3 +1,15 @@
+855.	[build]		fdupont
+	Use convenience archives for objects used in a makefile and
+	its parent makefile: before sources were compiled twice using
+	the broken subdir-objects option of automake, now objects
+	are put into a convenience static library (so an archive).
+	(Trac #3631, git xxx)
+
+854.	[bug]		marcin
+	Corrected a regression on "make distcheck" which appeared after
+	implementation of #3162 (partial fix).
+	(Trac #3629, git 9bb6b76a24e4356b30e59631e76e32c3096fb515)
+
 853.	[func]		tomek
 853.	[func]		tomek
 	Lease6 now is able to store MAC/hardware address information. Memfile
 	Lease6 now is able to store MAC/hardware address information. Memfile
 	memfile backend has been updated to store/retrieve that additional
 	memfile backend has been updated to store/retrieve that additional
@@ -11,8 +23,8 @@
 	(Trac #3549, git d92e76860e6931477b3e60e5be8978302973f88f)
 	(Trac #3549, git d92e76860e6931477b3e60e5be8978302973f88f)
 
 
 851.	[bug]		tmark
 851.	[bug]		tmark
-	Corrected a segmentation fault that was occurring under OS-X during D2 module
-	shutdown.
+	Corrected a segmentation fault that was occurring under OS-X
+	during D2 module shutdown.
 	(Trac #3470, git f7822568abd04c12faa3cde34fadaac238a373d3)
 	(Trac #3470, git f7822568abd04c12faa3cde34fadaac238a373d3)
 
 
 850.	[build]		fdupont
 850.	[build]		fdupont

+ 33 - 26
src/bin/d2/Makefile.am

@@ -45,41 +45,48 @@ s-messages: d2_messages.mes
 
 
 BUILT_SOURCES = spec_config.h d2_messages.h d2_messages.cc
 BUILT_SOURCES = spec_config.h d2_messages.h d2_messages.cc
 
 
-sbin_PROGRAMS = kea-dhcp-ddns
-
-kea_dhcp_ddns_SOURCES  = main.cc
-kea_dhcp_ddns_SOURCES += d_process.h
-kea_dhcp_ddns_SOURCES += d_controller.cc d_controller.h
-kea_dhcp_ddns_SOURCES += d_cfg_mgr.cc d_cfg_mgr.h
-kea_dhcp_ddns_SOURCES += d2_asio.h
-kea_dhcp_ddns_SOURCES += d2_log.cc d2_log.h
-kea_dhcp_ddns_SOURCES += d2_process.cc d2_process.h
-kea_dhcp_ddns_SOURCES += d2_config.cc d2_config.h
-kea_dhcp_ddns_SOURCES += d2_cfg_mgr.cc d2_cfg_mgr.h
-kea_dhcp_ddns_SOURCES += d2_queue_mgr.cc d2_queue_mgr.h
-kea_dhcp_ddns_SOURCES += d2_update_message.cc d2_update_message.h
-kea_dhcp_ddns_SOURCES += d2_update_mgr.cc d2_update_mgr.h
-kea_dhcp_ddns_SOURCES += d2_zone.cc d2_zone.h
-kea_dhcp_ddns_SOURCES += dns_client.cc dns_client.h
-kea_dhcp_ddns_SOURCES += io_service_signal.cc io_service_signal.h
-kea_dhcp_ddns_SOURCES += labeled_value.cc labeled_value.h
-kea_dhcp_ddns_SOURCES += nc_add.cc nc_add.h
-kea_dhcp_ddns_SOURCES += nc_remove.cc nc_remove.h
-kea_dhcp_ddns_SOURCES += nc_trans.cc nc_trans.h
-kea_dhcp_ddns_SOURCES += state_model.cc state_model.h
+# convenience archive
+
+noinst_LTLIBRARIES = libd2.la
+
+libd2_la_SOURCES  =
+libd2_la_SOURCES += d_process.h
+libd2_la_SOURCES += d_controller.cc d_controller.h
+libd2_la_SOURCES += d_cfg_mgr.cc d_cfg_mgr.h
+libd2_la_SOURCES += d2_asio.h
+libd2_la_SOURCES += d2_log.cc d2_log.h
+libd2_la_SOURCES += d2_process.cc d2_process.h
+libd2_la_SOURCES += d2_config.cc d2_config.h
+libd2_la_SOURCES += d2_cfg_mgr.cc d2_cfg_mgr.h
+libd2_la_SOURCES += d2_queue_mgr.cc d2_queue_mgr.h
+libd2_la_SOURCES += d2_update_message.cc d2_update_message.h
+libd2_la_SOURCES += d2_update_mgr.cc d2_update_mgr.h
+libd2_la_SOURCES += d2_zone.cc d2_zone.h
+libd2_la_SOURCES += dns_client.cc dns_client.h
+libd2_la_SOURCES += io_service_signal.cc io_service_signal.h
+libd2_la_SOURCES += labeled_value.cc labeled_value.h
+libd2_la_SOURCES += nc_add.cc nc_add.h
+libd2_la_SOURCES += nc_remove.cc nc_remove.h
+libd2_la_SOURCES += nc_trans.cc nc_trans.h
+libd2_la_SOURCES += state_model.cc state_model.h
 
 
 if CONFIG_BACKEND_BUNDY
 if CONFIG_BACKEND_BUNDY
-kea_dhcp_ddns_SOURCES += bundy_d2_controller.cc bundy_d2_controller.h
+libd2_la_SOURCES += bundy_d2_controller.cc bundy_d2_controller.h
 else
 else
 if CONFIG_BACKEND_JSON
 if CONFIG_BACKEND_JSON
-kea_dhcp_ddns_SOURCES += d2_controller.cc d2_controller.h
+libd2_la_SOURCES += d2_controller.cc d2_controller.h
 endif
 endif
 endif
 endif
 
 
-nodist_kea_dhcp_ddns_SOURCES = d2_messages.h d2_messages.cc
+nodist_libd2_la_SOURCES = d2_messages.h d2_messages.cc
 EXTRA_DIST += d2_messages.mes
 EXTRA_DIST += d2_messages.mes
 
 
-kea_dhcp_ddns_LDADD = $(top_builddir)/src/lib/log/libkea-log.la
+sbin_PROGRAMS = kea-dhcp-ddns
+
+kea_dhcp_ddns_SOURCES  = main.cc
+
+kea_dhcp_ddns_LDADD  = libd2.la
+kea_dhcp_ddns_LDADD += $(top_builddir)/src/lib/log/libkea-log.la
 kea_dhcp_ddns_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 kea_dhcp_ddns_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 kea_dhcp_ddns_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 kea_dhcp_ddns_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 kea_dhcp_ddns_LDADD += $(top_builddir)/src/lib/asiodns/libkea-asiodns.la
 kea_dhcp_ddns_LDADD += $(top_builddir)/src/lib/asiodns/libkea-asiodns.la

+ 2 - 25
src/bin/d2/tests/Makefile.am

@@ -1,5 +1,3 @@
-AUTOMAKE_OPTIONS = subdir-objects
-
 SHTESTS =
 SHTESTS =
 # The test of dynamic reconfiguration based on signals will work only
 # The test of dynamic reconfiguration based on signals will work only
 # if we are using file based configuration approach.
 # if we are using file based configuration approach.
@@ -52,26 +50,7 @@ if HAVE_GTEST
 
 
 TESTS += d2_unittests
 TESTS += d2_unittests
 
 
-d2_unittests_SOURCES = ../d2_asio.h
-d2_unittests_SOURCES += ../d2_log.h ../d2_log.cc
-d2_unittests_SOURCES += ../d_process.h
-d2_unittests_SOURCES += ../d_controller.cc ../d_controller.h
-d2_unittests_SOURCES += ../d_cfg_mgr.cc ../d_cfg_mgr.h
-d2_unittests_SOURCES += ../d2_process.cc ../d2_process.h
-d2_unittests_SOURCES += ../d2_config.cc ../d2_config.h
-d2_unittests_SOURCES += ../d2_cfg_mgr.cc ../d2_cfg_mgr.h
-d2_unittests_SOURCES += ../d2_queue_mgr.cc ../d2_queue_mgr.h
-d2_unittests_SOURCES += ../d2_update_message.cc ../d2_update_message.h
-d2_unittests_SOURCES += ../d2_update_mgr.cc ../d2_update_mgr.h
-d2_unittests_SOURCES += ../d2_zone.cc ../d2_zone.h
-d2_unittests_SOURCES += ../dns_client.cc ../dns_client.h
-d2_unittests_SOURCES += ../io_service_signal.cc ../io_service_signal.h
-d2_unittests_SOURCES += ../labeled_value.cc ../labeled_value.h
-d2_unittests_SOURCES += ../nc_add.cc ../nc_add.h
-d2_unittests_SOURCES += ../nc_remove.cc ../nc_remove.h
-d2_unittests_SOURCES += ../nc_trans.cc ../nc_trans.h
-d2_unittests_SOURCES += ../state_model.cc ../state_model.h
-d2_unittests_SOURCES += d_test_stubs.cc d_test_stubs.h
+d2_unittests_SOURCES = d_test_stubs.cc d_test_stubs.h
 d2_unittests_SOURCES += d2_unittests.cc
 d2_unittests_SOURCES += d2_unittests.cc
 d2_unittests_SOURCES += d2_process_unittests.cc
 d2_unittests_SOURCES += d2_process_unittests.cc
 d2_unittests_SOURCES += d_cfg_mgr_unittests.cc
 d2_unittests_SOURCES += d_cfg_mgr_unittests.cc
@@ -88,14 +67,11 @@ d2_unittests_SOURCES += nc_remove_unittests.cc
 d2_unittests_SOURCES += nc_test_utils.cc nc_test_utils.h
 d2_unittests_SOURCES += nc_test_utils.cc nc_test_utils.h
 d2_unittests_SOURCES += nc_trans_unittests.cc
 d2_unittests_SOURCES += nc_trans_unittests.cc
 d2_unittests_SOURCES += state_model_unittests.cc
 d2_unittests_SOURCES += state_model_unittests.cc
-nodist_d2_unittests_SOURCES = ../d2_messages.h ../d2_messages.cc
 
 
 if CONFIG_BACKEND_BUNDY
 if CONFIG_BACKEND_BUNDY
-d2_unittests_SOURCES += ../bundy_d2_controller.cc ../bundy_d2_controller.h
 d2_unittests_SOURCES += bundy_d2_controller_unittests.cc
 d2_unittests_SOURCES += bundy_d2_controller_unittests.cc
 else
 else
 if CONFIG_BACKEND_JSON
 if CONFIG_BACKEND_JSON
-d2_unittests_SOURCES += ../d2_controller.cc ../d2_controller.h
 d2_unittests_SOURCES += d2_controller_unittests.cc
 d2_unittests_SOURCES += d2_controller_unittests.cc
 d2_unittests_SOURCES += d_controller_unittests.cc
 d2_unittests_SOURCES += d_controller_unittests.cc
 endif
 endif
@@ -104,6 +80,7 @@ endif
 d2_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 d2_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 d2_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 d2_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 d2_unittests_LDADD = $(GTEST_LDADD)
 d2_unittests_LDADD = $(GTEST_LDADD)
+d2_unittests_LDADD += $(top_builddir)/src/bin/d2/libd2.la
 d2_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 d2_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 d2_unittests_LDADD += $(top_builddir)/src/lib/log/libkea-log.la
 d2_unittests_LDADD += $(top_builddir)/src/lib/log/libkea-log.la
 d2_unittests_LDADD += $(top_builddir)/src/lib/asiodns/libkea-asiodns.la
 d2_unittests_LDADD += $(top_builddir)/src/lib/asiodns/libkea-asiodns.la

+ 17 - 10
src/bin/dhcp4/Makefile.am

@@ -45,26 +45,33 @@ s-messages: dhcp4_messages.mes
 
 
 BUILT_SOURCES = spec_config.h dhcp4_messages.h dhcp4_messages.cc
 BUILT_SOURCES = spec_config.h dhcp4_messages.h dhcp4_messages.cc
 
 
-sbin_PROGRAMS = kea-dhcp4
+# convenience archive
 
 
-kea_dhcp4_SOURCES  = main.cc
-kea_dhcp4_SOURCES += ctrl_dhcp4_srv.cc ctrl_dhcp4_srv.h
-kea_dhcp4_SOURCES += json_config_parser.cc json_config_parser.h
-kea_dhcp4_SOURCES += dhcp4_log.cc dhcp4_log.h
-kea_dhcp4_SOURCES += dhcp4_srv.cc dhcp4_srv.h
+noinst_LTLIBRARIES = libdhcp4.la
+
+libdhcp4_la_SOURCES  =
+libdhcp4_la_SOURCES += ctrl_dhcp4_srv.cc ctrl_dhcp4_srv.h
+libdhcp4_la_SOURCES += json_config_parser.cc json_config_parser.h
+libdhcp4_la_SOURCES += dhcp4_log.cc dhcp4_log.h
+libdhcp4_la_SOURCES += dhcp4_srv.cc dhcp4_srv.h
 
 
 if CONFIG_BACKEND_BUNDY
 if CONFIG_BACKEND_BUNDY
-kea_dhcp4_SOURCES += bundy_controller.cc
+libdhcp4_la_SOURCES += bundy_controller.cc
 endif
 endif
 
 
 if CONFIG_BACKEND_JSON
 if CONFIG_BACKEND_JSON
-kea_dhcp4_SOURCES += kea_controller.cc
+libdhcp4_la_SOURCES += kea_controller.cc
 endif
 endif
 
 
-nodist_kea_dhcp4_SOURCES = dhcp4_messages.h dhcp4_messages.cc
+nodist_libdhcp4_la_SOURCES = dhcp4_messages.h dhcp4_messages.cc
 EXTRA_DIST += dhcp4_messages.mes
 EXTRA_DIST += dhcp4_messages.mes
 
 
-kea_dhcp4_LDADD  = $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
+sbin_PROGRAMS = kea-dhcp4
+
+kea_dhcp4_SOURCES  = main.cc
+
+kea_dhcp4_LDADD  = libdhcp4.la
+kea_dhcp4_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
 kea_dhcp4_LDADD += $(top_builddir)/src/lib/dhcp_ddns/libkea-dhcp_ddns.la
 kea_dhcp4_LDADD += $(top_builddir)/src/lib/dhcp_ddns/libkea-dhcp_ddns.la
 kea_dhcp4_LDADD += $(top_builddir)/src/lib/util/libkea-util.la
 kea_dhcp4_LDADD += $(top_builddir)/src/lib/util/libkea-util.la
 kea_dhcp4_LDADD += $(top_builddir)/src/lib/dhcpsrv/libkea-dhcpsrv.la
 kea_dhcp4_LDADD += $(top_builddir)/src/lib/dhcpsrv/libkea-dhcpsrv.la

+ 3 - 10
src/bin/dhcp4/tests/Makefile.am

@@ -1,5 +1,3 @@
-AUTOMAKE_OPTIONS = subdir-objects
-
 SHTESTS =
 SHTESTS =
 # The test of dynamic reconfiguration based on signals will work only
 # The test of dynamic reconfiguration based on signals will work only
 # if we are using file based configuration approach.
 # if we are using file based configuration approach.
@@ -76,10 +74,7 @@ libco2_la_LDFLAGS = -avoid-version -export-dynamic -module -rpath /nowhere
 
 
 TESTS += dhcp4_unittests
 TESTS += dhcp4_unittests
 
 
-dhcp4_unittests_SOURCES = ../dhcp4_srv.h ../dhcp4_srv.cc ../ctrl_dhcp4_srv.cc
-dhcp4_unittests_SOURCES += ../dhcp4_log.h ../dhcp4_log.cc
-dhcp4_unittests_SOURCES += ../json_config_parser.cc ../json_config_parser.h
-dhcp4_unittests_SOURCES += d2_unittest.h d2_unittest.cc
+dhcp4_unittests_SOURCES  = d2_unittest.h d2_unittest.cc
 dhcp4_unittests_SOURCES += dhcp4_test_utils.h
 dhcp4_unittests_SOURCES += dhcp4_test_utils.h
 dhcp4_unittests_SOURCES += dhcp4_unittests.cc
 dhcp4_unittests_SOURCES += dhcp4_unittests.cc
 dhcp4_unittests_SOURCES += dhcp4_srv_unittest.cc
 dhcp4_unittests_SOURCES += dhcp4_srv_unittest.cc
@@ -97,21 +92,19 @@ dhcp4_unittests_SOURCES += dora_unittest.cc
 if CONFIG_BACKEND_BUNDY
 if CONFIG_BACKEND_BUNDY
 # For Bundy backend, we only need to run the usual tests. There are no
 # For Bundy backend, we only need to run the usual tests. There are no
 # Bundy-specific tests yet.
 # Bundy-specific tests yet.
-dhcp4_unittests_SOURCES += ../bundy_controller.cc
 dhcp4_unittests_SOURCES += bundy_controller_unittest.cc
 dhcp4_unittests_SOURCES += bundy_controller_unittest.cc
 endif
 endif
 
 
 if CONFIG_BACKEND_JSON
 if CONFIG_BACKEND_JSON
-dhcp4_unittests_SOURCES += ../kea_controller.cc
 dhcp4_unittests_SOURCES += kea_controller_unittest.cc
 dhcp4_unittests_SOURCES += kea_controller_unittest.cc
 endif
 endif
 
 
-nodist_dhcp4_unittests_SOURCES = ../dhcp4_messages.h ../dhcp4_messages.cc
-nodist_dhcp4_unittests_SOURCES += marker_file.h test_libraries.h
+nodist_dhcp4_unittests_SOURCES = marker_file.h test_libraries.h
 
 
 dhcp4_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 dhcp4_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 dhcp4_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 dhcp4_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 dhcp4_unittests_LDADD = $(GTEST_LDADD)
 dhcp4_unittests_LDADD = $(GTEST_LDADD)
+dhcp4_unittests_LDADD += $(top_builddir)/src/bin/dhcp4/libdhcp4.la
 dhcp4_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 dhcp4_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 dhcp4_unittests_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 dhcp4_unittests_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 dhcp4_unittests_LDADD += $(top_builddir)/src/lib/config/libkea-cfgclient.la
 dhcp4_unittests_LDADD += $(top_builddir)/src/lib/config/libkea-cfgclient.la

+ 17 - 10
src/bin/dhcp6/Makefile.am

@@ -47,26 +47,33 @@ s-messages: dhcp6_messages.mes
 
 
 BUILT_SOURCES = spec_config.h dhcp6_messages.h dhcp6_messages.cc
 BUILT_SOURCES = spec_config.h dhcp6_messages.h dhcp6_messages.cc
 
 
-sbin_PROGRAMS = kea-dhcp6
+# convenience archive
 
 
-kea_dhcp6_SOURCES  = main.cc
-kea_dhcp6_SOURCES += dhcp6_log.cc dhcp6_log.h
-kea_dhcp6_SOURCES += dhcp6_srv.cc dhcp6_srv.h
-kea_dhcp6_SOURCES += ctrl_dhcp6_srv.cc ctrl_dhcp6_srv.h
-kea_dhcp6_SOURCES += json_config_parser.cc json_config_parser.h
+noinst_LTLIBRARIES = libdhcp6.la
+
+libdhcp6_la_SOURCES  =
+libdhcp6_la_SOURCES += dhcp6_log.cc dhcp6_log.h
+libdhcp6_la_SOURCES += dhcp6_srv.cc dhcp6_srv.h
+libdhcp6_la_SOURCES += ctrl_dhcp6_srv.cc ctrl_dhcp6_srv.h
+libdhcp6_la_SOURCES += json_config_parser.cc json_config_parser.h
 
 
 if CONFIG_BACKEND_BUNDY
 if CONFIG_BACKEND_BUNDY
-kea_dhcp6_SOURCES += bundy_controller.cc
+libdhcp6_la_SOURCES += bundy_controller.cc
 endif
 endif
 
 
 if CONFIG_BACKEND_JSON
 if CONFIG_BACKEND_JSON
-kea_dhcp6_SOURCES += kea_controller.cc
+libdhcp6_la_SOURCES += kea_controller.cc
 endif
 endif
 
 
-nodist_kea_dhcp6_SOURCES = dhcp6_messages.h dhcp6_messages.cc
+nodist_libdhcp6_la_SOURCES = dhcp6_messages.h dhcp6_messages.cc
 EXTRA_DIST += dhcp6_messages.mes
 EXTRA_DIST += dhcp6_messages.mes
 
 
-kea_dhcp6_LDADD  = $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
+sbin_PROGRAMS = kea-dhcp6
+
+kea_dhcp6_SOURCES  = main.cc
+
+kea_dhcp6_LDADD  = libdhcp6.la
+kea_dhcp6_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 kea_dhcp6_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 kea_dhcp6_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 kea_dhcp6_LDADD += $(top_builddir)/src/lib/config/libkea-cfgclient.la
 kea_dhcp6_LDADD += $(top_builddir)/src/lib/config/libkea-cfgclient.la
 kea_dhcp6_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
 kea_dhcp6_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la

+ 2 - 10
src/bin/dhcp6/tests/Makefile.am

@@ -1,5 +1,3 @@
-AUTOMAKE_OPTIONS = subdir-objects
-
 SHTESTS =
 SHTESTS =
 # The test of dynamic reconfiguration based on signals will work only
 # The test of dynamic reconfiguration based on signals will work only
 # if we are using file based configuration approach.
 # if we are using file based configuration approach.
@@ -80,15 +78,11 @@ dhcp6_unittests_SOURCES += hooks_unittest.cc
 dhcp6_unittests_SOURCES += dhcp6_test_utils.cc dhcp6_test_utils.h
 dhcp6_unittests_SOURCES += dhcp6_test_utils.cc dhcp6_test_utils.h
 dhcp6_unittests_SOURCES += d2_unittest.cc d2_unittest.h
 dhcp6_unittests_SOURCES += d2_unittest.cc d2_unittest.h
 dhcp6_unittests_SOURCES += marker_file.cc
 dhcp6_unittests_SOURCES += marker_file.cc
-dhcp6_unittests_SOURCES += ../dhcp6_srv.h ../dhcp6_srv.cc
-dhcp6_unittests_SOURCES += ../dhcp6_log.h ../dhcp6_log.cc
-dhcp6_unittests_SOURCES += ../ctrl_dhcp6_srv.h ../ctrl_dhcp6_srv.cc
 dhcp6_unittests_SOURCES += ctrl_dhcp6_srv_unittest.cc
 dhcp6_unittests_SOURCES += ctrl_dhcp6_srv_unittest.cc
 dhcp6_unittests_SOURCES += wireshark.cc
 dhcp6_unittests_SOURCES += wireshark.cc
 dhcp6_unittests_SOURCES += dhcp6_client.cc dhcp6_client.h
 dhcp6_unittests_SOURCES += dhcp6_client.cc dhcp6_client.h
 dhcp6_unittests_SOURCES += rebind_unittest.cc
 dhcp6_unittests_SOURCES += rebind_unittest.cc
 dhcp6_unittests_SOURCES += sarr_unittest.cc
 dhcp6_unittests_SOURCES += sarr_unittest.cc
-dhcp6_unittests_SOURCES += ../json_config_parser.cc ../json_config_parser.h
 dhcp6_unittests_SOURCES += config_parser_unittest.cc
 dhcp6_unittests_SOURCES += config_parser_unittest.cc
 dhcp6_unittests_SOURCES += confirm_unittest.cc
 dhcp6_unittests_SOURCES += confirm_unittest.cc
 dhcp6_unittests_SOURCES += dhcp6_message_test.cc dhcp6_message_test.h
 dhcp6_unittests_SOURCES += dhcp6_message_test.cc dhcp6_message_test.h
@@ -96,21 +90,19 @@ dhcp6_unittests_SOURCES += dhcp6_message_test.cc dhcp6_message_test.h
 if CONFIG_BACKEND_BUNDY
 if CONFIG_BACKEND_BUNDY
 # For Bundy backend, we only need to run the usual tests. There are no
 # For Bundy backend, we only need to run the usual tests. There are no
 # Bundy-specific tests yet.
 # Bundy-specific tests yet.
-dhcp6_unittests_SOURCES += ../bundy_controller.cc
 dhcp6_unittests_SOURCES += bundy_controller_unittest.cc
 dhcp6_unittests_SOURCES += bundy_controller_unittest.cc
 endif
 endif
 
 
 if CONFIG_BACKEND_JSON
 if CONFIG_BACKEND_JSON
-dhcp6_unittests_SOURCES += ../kea_controller.cc
 dhcp6_unittests_SOURCES += kea_controller_unittest.cc
 dhcp6_unittests_SOURCES += kea_controller_unittest.cc
 endif
 endif
 
 
-nodist_dhcp6_unittests_SOURCES  = ../dhcp6_messages.h ../dhcp6_messages.cc
-nodist_dhcp6_unittests_SOURCES += marker_file.h test_libraries.h
+nodist_dhcp6_unittests_SOURCES  = marker_file.h test_libraries.h
 
 
 dhcp6_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 dhcp6_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 dhcp6_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 dhcp6_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 dhcp6_unittests_LDADD = $(GTEST_LDADD)
 dhcp6_unittests_LDADD = $(GTEST_LDADD)
+dhcp6_unittests_LDADD += $(top_builddir)/src/bin/dhcp6/libdhcp6.la
 dhcp6_unittests_LDADD += $(top_builddir)/src/lib/dhcp/tests/libdhcptest.la
 dhcp6_unittests_LDADD += $(top_builddir)/src/lib/dhcp/tests/libdhcptest.la
 dhcp6_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 dhcp6_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 dhcp6_unittests_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 dhcp6_unittests_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la

+ 22 - 15
src/bin/perfdhcp/Makefile.am

@@ -17,27 +17,34 @@ if USE_STATIC_LINK
 AM_LDFLAGS += -static
 AM_LDFLAGS += -static
 endif
 endif
 
 
-sbin_PROGRAMS = perfdhcp
-perfdhcp_SOURCES = main.cc
-perfdhcp_SOURCES += command_options.cc command_options.h
-perfdhcp_SOURCES += localized_option.h
-perfdhcp_SOURCES += perf_pkt6.cc perf_pkt6.h
-perfdhcp_SOURCES += perf_pkt4.cc perf_pkt4.h
-perfdhcp_SOURCES += packet_storage.h
-perfdhcp_SOURCES += pkt_transform.cc pkt_transform.h
-perfdhcp_SOURCES += rate_control.cc rate_control.h
-perfdhcp_SOURCES += stats_mgr.h
-perfdhcp_SOURCES += test_control.cc test_control.h
-libkea_perfdhcp___la_CXXFLAGS = $(AM_CXXFLAGS)
+# convenience archive
+
+noinst_LTLIBRARIES = libperfdhcp.la
+
+libperfdhcp_la_SOURCES  =
+libperfdhcp_la_SOURCES += command_options.cc command_options.h
+libperfdhcp_la_SOURCES += localized_option.h
+libperfdhcp_la_SOURCES += perf_pkt6.cc perf_pkt6.h
+libperfdhcp_la_SOURCES += perf_pkt4.cc perf_pkt4.h
+libperfdhcp_la_SOURCES += packet_storage.h
+libperfdhcp_la_SOURCES += pkt_transform.cc pkt_transform.h
+libperfdhcp_la_SOURCES += rate_control.cc rate_control.h
+libperfdhcp_la_SOURCES += stats_mgr.h
+libperfdhcp_la_SOURCES += test_control.cc test_control.h
 
 
-perfdhcp_CXXFLAGS = $(AM_CXXFLAGS)
+libperfdhcp_la_CXXFLAGS = $(AM_CXXFLAGS)
 if USE_CLANGPP
 if USE_CLANGPP
 # Disable unused parameter warning caused by some of the
 # Disable unused parameter warning caused by some of the
 # Boost headers when compiling with clang.
 # Boost headers when compiling with clang.
-perfdhcp_CXXFLAGS += -Wno-unused-parameter
+libperfdhcp_la_CXXFLAGS += -Wno-unused-parameter
 endif
 endif
 
 
-perfdhcp_LDADD = $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
+sbin_PROGRAMS = perfdhcp
+perfdhcp_SOURCES = main.cc
+libkea_perfdhcp___la_CXXFLAGS = $(AM_CXXFLAGS)
+
+perfdhcp_LDADD = libperfdhcp.la
+perfdhcp_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 perfdhcp_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
 perfdhcp_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
 perfdhcp_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 perfdhcp_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 
 

+ 2 - 9
src/bin/perfdhcp/tests/Makefile.am

@@ -1,5 +1,3 @@
-AUTOMAKE_OPTIONS = subdir-objects
-
 SUBDIRS = . testdata
 SUBDIRS = . testdata
 
 
 AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
 AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
@@ -33,12 +31,6 @@ run_unittests_SOURCES += rate_control_unittest.cc
 run_unittests_SOURCES += stats_mgr_unittest.cc
 run_unittests_SOURCES += stats_mgr_unittest.cc
 run_unittests_SOURCES += test_control_unittest.cc
 run_unittests_SOURCES += test_control_unittest.cc
 run_unittests_SOURCES += command_options_helper.h
 run_unittests_SOURCES += command_options_helper.h
-run_unittests_SOURCES += ../command_options.cc
-run_unittests_SOURCES += ../pkt_transform.cc
-run_unittests_SOURCES += ../perf_pkt6.cc
-run_unittests_SOURCES += ../perf_pkt4.cc
-run_unittests_SOURCES += ../rate_control.cc
-run_unittests_SOURCES += ../test_control.cc
 
 
 run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 run_unittests_LDFLAGS  = $(AM_LDFLAGS)  $(GTEST_LDFLAGS)
 run_unittests_LDFLAGS  = $(AM_LDFLAGS)  $(GTEST_LDFLAGS)
@@ -49,7 +41,8 @@ if USE_CLANGPP
 run_unittests_CXXFLAGS = -Wno-unused-parameter
 run_unittests_CXXFLAGS = -Wno-unused-parameter
 endif
 endif
 
 
-run_unittests_LDADD  = $(top_builddir)/src/lib/util/libkea-util.la
+run_unittests_LDADD  = $(top_builddir)/src/bin/perfdhcp/libperfdhcp.la
+run_unittests_LDADD += $(top_builddir)/src/lib/util/libkea-util.la
 run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 run_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 run_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 run_unittests_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
 run_unittests_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la

+ 9 - 2
src/bin/sockcreator/Makefile.am

@@ -29,8 +29,15 @@ $(man_MANS):
 
 
 endif
 endif
 
 
+# convenience archive
+
+noinst_LTLIBRARIES = libsockcreator.la
+
+libsockcreator_la_SOURCES = sockcreator.cc sockcreator.h
+
 pkglibexec_PROGRAMS = kea-sockcreator
 pkglibexec_PROGRAMS = kea-sockcreator
 
 
-kea_sockcreator_SOURCES = sockcreator.cc sockcreator.h main.cc
-kea_sockcreator_LDADD  = $(top_builddir)/src/lib/util/io/libkea-util-io.la
+kea_sockcreator_SOURCES = main.cc
+kea_sockcreator_LDADD  = libsockcreator.la
+kea_sockcreator_LDADD += $(top_builddir)/src/lib/util/io/libkea-util-io.la
 kea_sockcreator_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 kea_sockcreator_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la

+ 2 - 2
src/bin/sockcreator/tests/Makefile.am

@@ -14,13 +14,13 @@ TESTS_ENVIRONMENT = \
 TESTS =
 TESTS =
 if HAVE_GTEST
 if HAVE_GTEST
 TESTS += run_unittests
 TESTS += run_unittests
-run_unittests_SOURCES = ../sockcreator.cc ../sockcreator.h
-run_unittests_SOURCES += sockcreator_tests.cc
+run_unittests_SOURCES = sockcreator_tests.cc
 run_unittests_SOURCES += run_unittests.cc
 run_unittests_SOURCES += run_unittests.cc
 
 
 run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
 run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 run_unittests_LDFLAGS = $(AM_LDFLAGS) $(GTEST_LDFLAGS)
 run_unittests_LDADD  = $(GTEST_LDADD)
 run_unittests_LDADD  = $(GTEST_LDADD)
+run_unittests_LDADD += $(top_builddir)/src/bin/sockcreator/libsockcreator.la
 run_unittests_LDADD += $(top_builddir)/src/lib/util/unittests/libutil_unittests.la
 run_unittests_LDADD += $(top_builddir)/src/lib/util/unittests/libutil_unittests.la
 run_unittests_LDADD += $(top_builddir)/src/lib/util/io/libkea-util-io.la
 run_unittests_LDADD += $(top_builddir)/src/lib/util/io/libkea-util-io.la
 endif
 endif

+ 29 - 24
src/hooks/dhcp/user_chk/Makefile.am

@@ -31,41 +31,46 @@ EXTRA_DIST = libdhcp_user_chk.dox
 #CLEANFILES = *.gcno *.gcda user_chk_messages.h user_chk_messages.cc s-messages
 #CLEANFILES = *.gcno *.gcda user_chk_messages.h user_chk_messages.cc s-messages
 CLEANFILES = *.gcno *.gcda
 CLEANFILES = *.gcno *.gcda
 
 
-noinst_LTLIBRARIES = libdhcp_user_chk.la
-libdhcp_user_chk_la_SOURCES  =
-libdhcp_user_chk_la_SOURCES += load_unload.cc
-libdhcp_user_chk_la_SOURCES += pkt_receive_co.cc
-libdhcp_user_chk_la_SOURCES += pkt_send_co.cc
-libdhcp_user_chk_la_SOURCES += subnet_select_co.cc
-libdhcp_user_chk_la_SOURCES += user.cc user.h
-libdhcp_user_chk_la_SOURCES += user_chk.h
+# convenience archive
+
+noinst_LTLIBRARIES = libduc.la
+
+libduc_la_SOURCES  =
+libduc_la_SOURCES += load_unload.cc
+libduc_la_SOURCES += pkt_receive_co.cc
+libduc_la_SOURCES += pkt_send_co.cc
+libduc_la_SOURCES += subnet_select_co.cc
+libduc_la_SOURCES += user.cc user.h
+libduc_la_SOURCES += user_chk.h
 # Until logging in dynamically loaded libraries is fixed, exclude these.
 # Until logging in dynamically loaded libraries is fixed, exclude these.
-#libdhcp_user_chk_la_SOURCES += user_chk_log.cc user_chk_log.h
-libdhcp_user_chk_la_SOURCES += user_data_source.h
-libdhcp_user_chk_la_SOURCES += user_file.cc user_file.h
-libdhcp_user_chk_la_SOURCES += user_registry.cc user_registry.h
-libdhcp_user_chk_la_SOURCES += version.cc
+#libduc_la_SOURCES += user_chk_log.cc user_chk_log.h
+libduc_la_SOURCES += user_data_source.h
+libduc_la_SOURCES += user_file.cc user_file.h
+libduc_la_SOURCES += user_registry.cc user_registry.h
+libduc_la_SOURCES += version.cc
 
 
 # Until logging in dynamically loaded libraries is fixed, exclude these.
 # Until logging in dynamically loaded libraries is fixed, exclude these.
-#nodist_libdhcp_user_chk_la_SOURCES = user_chk_messages.cc user_chk_messages.h
+#nodist_libduc_la_SOURCES = user_chk_messages.cc user_chk_messages.h
+
+libduc_la_CXXFLAGS = $(AM_CXXFLAGS)
+libduc_la_CPPFLAGS = $(AM_CPPFLAGS) $(LOG4CPLUS_INCLUDES)
+if USE_CLANGPP
+# Disable unused parameter warning caused by some of the
+# Boost headers when compiling with clang.
+libduc_la_CXXFLAGS += -Wno-unused-parameter
+endif
 
 
-libdhcp_user_chk_la_CXXFLAGS = $(AM_CXXFLAGS)
-libdhcp_user_chk_la_CPPFLAGS = $(AM_CPPFLAGS) $(LOG4CPLUS_INCLUDES)
+noinst_LTLIBRARIES += libdhcp_user_chk.la
+
+libdhcp_user_chk_la_SOURCES  =
 libdhcp_user_chk_la_LDFLAGS  = $(AM_LDFLAGS)
 libdhcp_user_chk_la_LDFLAGS  = $(AM_LDFLAGS)
 libdhcp_user_chk_la_LDFLAGS  += -avoid-version -export-dynamic -module
 libdhcp_user_chk_la_LDFLAGS  += -avoid-version -export-dynamic -module
 # -rpath /nowhere is a hack to trigger libtool to not create a
 # -rpath /nowhere is a hack to trigger libtool to not create a
 # convenience archive, resulting in shared modules
 # convenience archive, resulting in shared modules
 libdhcp_user_chk_la_LDFLAGS  += -rpath /nowhere
 libdhcp_user_chk_la_LDFLAGS  += -rpath /nowhere
-libdhcp_user_chk_la_LIBADD  =
+libdhcp_user_chk_la_LIBADD  = libduc.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/hooks/libkea-hooks.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/hooks/libkea-hooks.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/log/libkea-log.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/log/libkea-log.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/util/libkea-util.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/util/libkea-util.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/util/threads/libkea-threads.la
 libdhcp_user_chk_la_LIBADD  += $(top_builddir)/src/lib/util/threads/libkea-threads.la
-
-
-if USE_CLANGPP
-# Disable unused parameter warning caused by some of the
-# Boost headers when compiling with clang.
-libdhcp_user_chk_la_CXXFLAGS += -Wno-unused-parameter
-endif

+ 2 - 4
src/hooks/dhcp/user_chk/tests/Makefile.am

@@ -1,5 +1,3 @@
-AUTOMAKE_OPTIONS = subdir-objects
-
 SUBDIRS = .
 SUBDIRS = .
 
 
 AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
 AM_CPPFLAGS = -I$(top_builddir)/src/lib -I$(top_srcdir)/src/lib
@@ -53,14 +51,14 @@ if USE_CLANGPP
 libdhcp_user_chk_unittests_CXXFLAGS += -Wno-unused-parameter
 libdhcp_user_chk_unittests_CXXFLAGS += -Wno-unused-parameter
 endif
 endif
 
 
-libdhcp_user_chk_unittests_LDADD = $(top_builddir)/src/lib/log/libkea-log.la
+libdhcp_user_chk_unittests_LDADD = $(top_builddir)/src/hooks/dhcp/user_chk/libduc.la
+libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/log/libkea-log.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/util/libkea-util.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/util/libkea-util.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/hooks/libkea-hooks.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/hooks/libkea-hooks.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/dhcp/libkea-dhcp++.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/cc/libkea-cc.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
 libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
-libdhcp_user_chk_unittests_LDADD += $(top_builddir)/src/hooks/dhcp/user_chk/libdhcp_user_chk.la
 libdhcp_user_chk_unittests_LDADD += ${CRYPTO_LIBS} ${CRYPTO_RPATH}
 libdhcp_user_chk_unittests_LDADD += ${CRYPTO_LIBS} ${CRYPTO_RPATH}
 libdhcp_user_chk_unittests_LDADD += $(GTEST_LDADD)
 libdhcp_user_chk_unittests_LDADD += $(GTEST_LDADD)
 endif
 endif

+ 0 - 2
src/lib/asiodns/tests/Makefile.am

@@ -1,5 +1,3 @@
-AUTOMAKE_OPTIONS = subdir-objects
-
 AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
 AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
 AM_CPPFLAGS += $(BOOST_INCLUDES)
 AM_CPPFLAGS += $(BOOST_INCLUDES)
 AM_CPPFLAGS += -I$(top_builddir)/src/lib/dns -I$(top_srcdir)/src/bin
 AM_CPPFLAGS += -I$(top_builddir)/src/lib/dns -I$(top_srcdir)/src/bin