diff --git a/agents/alerts/Makefile.am b/agents/alerts/Makefile.am
index fdb294fa80..a3fe8911e7 100644
--- a/agents/alerts/Makefile.am
+++ b/agents/alerts/Makefile.am
@@ -1,15 +1,13 @@
 #
 # Copyright 2016-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 include $(top_srcdir)/mk/common.mk
 
 samplesdir		= $(datadir)/$(PACKAGE)/alerts/
-dist_samples_DATA	= alert_file.sh.sample	\
-			  alert_smtp.sh.sample	\
-			  alert_snmp.sh.sample
+dist_samples_DATA	= $(wildcard *.sample)
diff --git a/cts/Makefile.am b/cts/Makefile.am
index 139c5f5223..9d37463597 100644
--- a/cts/Makefile.am
+++ b/cts/Makefile.am
@@ -1,95 +1,74 @@
 #
 # Copyright 2001-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 MAINTAINERCLEANFILES    = Makefile.in
 
 # Test commands and globally applicable test files should be in $(testdir),
 # and command-specific test data should be in a command-specific subdirectory.
 testdir			= $(datadir)/$(PACKAGE)/tests
 test_SCRIPTS		= cts-attrd \
 			  cts-cli		\
 			  cts-exec		\
 			  cts-fencing		\
 			  cts-lab 		\
 			  cts-regression	\
 			  cts-scheduler
 dist_test_DATA		= README.md			\
 			  valgrind-pcmk.suppressions
 
 clidir		= $(testdir)/cli
-dist_cli_DATA	= cli/constraints.xml 				\
-		  cli/crmadmin-cluster-remote-guest-nodes.xml	\
-		  cli/crm_diff_new.xml				\
-		  cli/crm_diff_old.xml				\
-		  cli/crm_mon.xml				\
-		  cli/crm_mon-feature_set.xml			\
-		  cli/crm_mon-partial.xml			\
-		  cli/crm_mon-rsc-maint.xml			\
-		  cli/crm_mon-T180.xml				\
-		  cli/crm_mon-unmanaged.xml			\
-		  cli/crm_resource_digests.xml			\
-		  cli/regression.acls.exp			\
-		  cli/regression.crm_mon.exp			\
-		  cli/regression.daemons.exp			\
-		  cli/regression.dates.exp			\
-		  cli/regression.error_codes.exp		\
-		  cli/regression.feature_set.exp		\
-		  cli/regression.rules.exp			\
-		  cli/regression.tools.exp			\
-		  cli/regression.upgrade.exp			\
-		  cli/regression.validity.exp			\
-		  cli/regression.access_render.exp
+dist_cli_DATA	= $(wildcard cli/*.xml cli/*.exp)
 
 ctsdir			= $(datadir)/$(PACKAGE)/tests/cts
 cts_SCRIPTS		= cts
 
 # Commands intended to be run only via other commands
 halibdir		= $(CRM_DAEMON_DIR)
 dist_halib_SCRIPTS	= cts-log-watcher
 
 noinst_SCRIPTS		= cluster_test
 
 .PHONY: scheduler-list
 scheduler-list:
 	@for T in "$(srcdir)"/scheduler/xml/*.xml; do       \
 		echo $$(basename $$T .xml);             \
 	done
 
 CLEANFILES	= $(builddir)/.regression.failed.diff
 
 .PHONY: clean-local
 clean-local:
 	rm -f scheduler/*/*.pe
 
 SUBDIRS	= benchmark scheduler support
 
 .PHONY: cts-support-install
 cts-support-install:
 	$(MAKE) $(AM_MAKEFLAGS) -C support cts-support
 	$(builddir)/support/cts-support install
 
 .PHONY: cts-support-uninstall
 cts-support-uninstall:
 	$(MAKE) $(AM_MAKEFLAGS) -C support cts-support
 	$(builddir)/support/cts-support uninstall
 
 # Everything listed here is a python script, typically generated from a .in file
 # (though that is not a requirement).  We want to run pylint on all of these
 # things after they've been built.
 python_files = cts-attrd \
 			   cts-exec \
 			   cts-fencing \
 			   cts-lab \
 			   cts-log-watcher \
 			   cts-regression \
 			   cts-scheduler
 
 .PHONY: pylint
 pylint: $(python_files)
 	PYTHONPATH=$(top_builddir)/python pylint --rcfile $(top_srcdir)/python/pylintrc $(python_files)
diff --git a/daemons/controld/Makefile.am b/daemons/controld/Makefile.am
index a74a9d7e0c..ca0b341d85 100644
--- a/daemons/controld/Makefile.am
+++ b/daemons/controld/Makefile.am
@@ -1,89 +1,75 @@
 #
 # Copyright 2018-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 include $(top_srcdir)/mk/common.mk
 include $(top_srcdir)/mk/man.mk
 
 halibdir	= $(CRM_DAEMON_DIR)
 
 halib_PROGRAMS	= pacemaker-controld
 
-noinst_HEADERS	= controld_alerts.h		\
-		  controld_callbacks.h		\
-		  controld_cib.h		\
-		  controld_fencing.h		\
-		  controld_fsa.h		\
-		  controld_globals.h		\
-		  controld_lrm.h		\
-		  controld_membership.h		\
-		  controld_messages.h		\
-		  controld_metadata.h		\
-		  controld_throttle.h		\
-		  controld_timers.h		\
-		  controld_transition.h		\
-		  controld_utils.h		\
-		  pacemaker-controld.h
+noinst_HEADERS	= $(wildcard *.h)
 
 pacemaker_controld_CFLAGS	= $(CFLAGS_HARDENED_EXE)
 pacemaker_controld_LDFLAGS	= $(LDFLAGS_HARDENED_EXE)
 
 pacemaker_controld_LDADD = $(top_builddir)/lib/fencing/libstonithd.la		\
 			   $(top_builddir)/lib/pacemaker/libpacemaker.la \
 			   $(top_builddir)/lib/pengine/libpe_rules.la		\
 			   $(top_builddir)/lib/cib/libcib.la			\
 			   $(top_builddir)/lib/cluster/libcrmcluster.la		\
 			   $(top_builddir)/lib/common/libcrmcommon.la		\
 			   $(top_builddir)/lib/services/libcrmservice.la	\
 			   $(top_builddir)/lib/lrmd/liblrmd.la			\
 			   $(CLUSTERLIBS)
 
 pacemaker_controld_SOURCES = pacemaker-controld.c	\
 			     controld_alerts.c		\
 			     controld_attrd.c		\
 			     controld_callbacks.c	\
 			     controld_cib.c		\
 			     controld_control.c		\
 			     controld_corosync.c	\
 			     controld_election.c	\
 			     controld_execd.c		\
 			     controld_execd_state.c	\
 			     controld_fencing.c		\
 			     controld_fsa.c		\
 			     controld_join_client.c	\
 			     controld_join_dc.c		\
 			     controld_matrix.c		\
 			     controld_membership.c	\
 			     controld_messages.c	\
 			     controld_metadata.c	\
 			     controld_remote_ra.c	\
 			     controld_schedulerd.c	\
 			     controld_te_actions.c	\
 			     controld_te_callbacks.c	\
 			     controld_te_events.c	\
 			     controld_te_utils.c	\
 			     controld_throttle.c	\
 			     controld_timers.c		\
 			     controld_transition.c	\
 			     controld_utils.c
 
 if BUILD_XML_HELP
 man7_MANS 	= pacemaker-controld.7
 endif
 
 CLEANFILES = $(man7_MANS)
 
 if BUILD_LEGACY_LINKS
 .PHONY: install-exec-hook
 install-exec-hook:
 	cd $(DESTDIR)$(CRM_DAEMON_DIR) && rm -f crmd && $(LN_S) pacemaker-controld crmd
 
 .PHONY: uninstall-hook
 uninstall-hook:
 	cd $(DESTDIR)$(CRM_DAEMON_DIR) && rm -f crmd
 endif
diff --git a/include/crm/Makefile.am b/include/crm/Makefile.am
index fcba5a7c3b..ae44c6c35f 100644
--- a/include/crm/Makefile.am
+++ b/include/crm/Makefile.am
@@ -1,29 +1,29 @@
 #
 # Copyright 2004-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 MAINTAINERCLEANFILES	= Makefile.in
 
 headerdir=$(pkgincludedir)/crm
 
 header_HEADERS		= cib.h			\
 			  cluster.h		\
 			  compatibility.h	\
 			  crm.h			\
 			  crm_compat.h		\
 			  lrmd.h		\
 			  lrmd_events.h		\
 			  msg_xml.h		\
 			  msg_xml_compat.h	\
 			  services.h		\
 			  services_compat.h	\
 			  stonith-ng.h
 
-noinst_HEADERS		= lrmd_internal.h services_internal.h
+noinst_HEADERS		= $(wildcard *_internal.h)
 
 SUBDIRS                 = common pengine cib fencing cluster
diff --git a/include/crm/cluster/Makefile.am b/include/crm/cluster/Makefile.am
index 96f2bd0eb5..fdefbb918b 100644
--- a/include/crm/cluster/Makefile.am
+++ b/include/crm/cluster/Makefile.am
@@ -1,14 +1,14 @@
 #
-# Copyright 2012-2021 the Pacemaker project contributors
+# Copyright 2012-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 MAINTAINERCLEANFILES    = Makefile.in
 
 headerdir=$(pkgincludedir)/crm/cluster
 
-noinst_HEADERS		= internal.h election_internal.h
+noinst_HEADERS		= internal.h $(wildcard *_internal.h)
 header_HEADERS		= compat.h
diff --git a/include/crm/common/Makefile.am b/include/crm/common/Makefile.am
index d5fd578830..6e0ca33940 100644
--- a/include/crm/common/Makefile.am
+++ b/include/crm/common/Makefile.am
@@ -1,63 +1,41 @@
 #
 # Copyright 2004-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 MAINTAINERCLEANFILES = Makefile.in
 
 headerdir=$(pkgincludedir)/crm/common
 
 header_HEADERS = acl.h \
 		 actions.h		\
 				 agents.h \
 				 agents_compat.h \
 				 cib.h \
 				 ipc.h \
-				 ipc_attrd_internal.h \
 				 ipc_controld.h \
 				 ipc_pacemakerd.h \
 				 ipc_schedulerd.h \
 				 iso8601.h \
 				 logging.h \
 				 logging_compat.h \
 				 mainloop.h \
 				 mainloop_compat.h \
 				 nodes.h		\
 				 nvpair.h \
 				 output.h \
 				 resources.h		\
 				 results.h \
 				 results_compat.h \
 				 roles.h		\
 				 scheduler.h		\
 				 util.h \
 				 util_compat.h \
 				 xml.h \
 				 xml_compat.h
 
-noinst_HEADERS = acl_internal.h 	\
-				 actions_internal.h	\
-				 alerts_internal.h	\
-				 attrd_internal.h	\
-				 cmdline_internal.h	\
-				 health_internal.h	\
-				 internal.h		\
-				 io_internal.h		\
-				 ipc_internal.h		\
-				 iso8601_internal.h	\
-				 lists_internal.h	\
-				 logging_internal.h	\
-				 messages_internal.h	\
-				 options_internal.h	\
-				 output_internal.h	\
-				 remote_internal.h	\
-				 results_internal.h	\
-				 roles_internal.h	\
-				 scheduler_internal.h	\
-				 strings_internal.h	\
-				 unittest_internal.h \
-				 xml_internal.h
+noinst_HEADERS = $(wildcard *internal.h)
diff --git a/include/crm/pengine/Makefile.am b/include/crm/pengine/Makefile.am
index fac60317a3..35eae04f41 100644
--- a/include/crm/pengine/Makefile.am
+++ b/include/crm/pengine/Makefile.am
@@ -1,17 +1,17 @@
 #
-# Copyright 2006-2021 the Pacemaker project contributors
+# Copyright 2006-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 MAINTAINERCLEANFILES    = Makefile.in
 
 headerdir=$(pkgincludedir)/crm/pengine
 
-noinst_HEADERS		= internal.h remote_internal.h rules_internal.h
+noinst_HEADERS		= internal.h $(wildcard *_internal.h)
 header_HEADERS		= common.h complex.h pe_types.h rules.h status.h \
 			  common_compat.h	\
 			  pe_types_compat.h	\
 			  rules_compat.h
diff --git a/include/pcmki/Makefile.am b/include/pcmki/Makefile.am
index 824ef6c838..b9475af13f 100644
--- a/include/pcmki/Makefile.am
+++ b/include/pcmki/Makefile.am
@@ -1,24 +1,14 @@
 #
 # Copyright 2019-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 MAINTAINERCLEANFILES    = Makefile.in
 
-noinst_HEADERS		= pcmki_acl.h \
-			  pcmki_cluster_queries.h \
-			  pcmki_fence.h \
-			  pcmki_output.h \
-			  pcmki_resource.h \
-			  pcmki_result_code.h \
-			  pcmki_rule.h \
-			  pcmki_scheduler.h \
-			  pcmki_simulate.h \
-			  pcmki_status.h \
-			  pcmki_transition.h
+noinst_HEADERS		= $(wildcard *.h)
 
 .PHONY: $(ARCHIVE_VERSION)
diff --git a/lib/services/Makefile.am b/lib/services/Makefile.am
index a7e10c969b..7b77260773 100644
--- a/lib/services/Makefile.am
+++ b/lib/services/Makefile.am
@@ -1,43 +1,40 @@
 #
-# Copyright 2012-2021 the Pacemaker project contributors
+# Copyright 2012-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU Lesser General Public License
 # version 2.1 or later (LGPLv2.1+) WITHOUT ANY WARRANTY.
 #
 
 MAINTAINERCLEANFILES = Makefile.in
 
 AM_CPPFLAGS			= -I$(top_srcdir)/include
 
 lib_LTLIBRARIES			= libcrmservice.la
-noinst_HEADERS			= pcmk-dbus.h upstart.h systemd.h \
-				  services_lsb.h services_nagios.h \
-				  services_ocf.h \
-				  services_private.h
+noinst_HEADERS			= $(wildcard *.h)
 
 libcrmservice_la_LDFLAGS	= -version-info 31:2:3
 libcrmservice_la_CFLAGS		=
 
 libcrmservice_la_CFLAGS		+= $(CFLAGS_HARDENED_LIB)
 libcrmservice_la_LDFLAGS	+= $(LDFLAGS_HARDENED_LIB)
 
 libcrmservice_la_LIBADD		= $(top_builddir)/lib/common/libcrmcommon.la $(DBUS_LIBS)
 
 libcrmservice_la_SOURCES	= services.c
 libcrmservice_la_SOURCES	+= services_linux.c
 libcrmservice_la_SOURCES	+= services_lsb.c
 libcrmservice_la_SOURCES	+= services_ocf.c
 if BUILD_DBUS
 libcrmservice_la_SOURCES	+= dbus.c
 endif
 if BUILD_UPSTART
 libcrmservice_la_SOURCES	+= upstart.c
 endif
 if BUILD_SYSTEMD
 libcrmservice_la_SOURCES	+= systemd.c
 endif
 if BUILD_NAGIOS
 libcrmservice_la_SOURCES	+= services_nagios.c
 endif
diff --git a/python/pacemaker/_cts/Makefile.am b/python/pacemaker/_cts/Makefile.am
index d1d12cebef..efb00193ca 100644
--- a/python/pacemaker/_cts/Makefile.am
+++ b/python/pacemaker/_cts/Makefile.am
@@ -1,35 +1,16 @@
 #
 # Copyright 2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 MAINTAINERCLEANFILES    = Makefile.in
 
 pkgpythondir = $(pythondir)/$(PACKAGE)/_cts
 
-pkgpython_PYTHON = CTS.py \
-				   __init__.py \
-				   audits.py \
-				   cib.py \
-				   cibxml.py \
-				   clustermanager.py \
-				   cmcorosync.py \
-				   corosync.py \
-				   environment.py \
-				   errors.py \
-				   input.py \
-				   logging.py \
-				   network.py \
-				   patterns.py \
-				   process.py \
-				   remote.py \
-				   scenarios.py \
-				   test.py \
-				   timer.py \
-				   watcher.py
+pkgpython_PYTHON = $(wildcard *.py)
 
 SUBDIRS = tests
diff --git a/python/pacemaker/_cts/tests/Makefile.am b/python/pacemaker/_cts/tests/Makefile.am
index e4b746e869..0dba74ba40 100644
--- a/python/pacemaker/_cts/tests/Makefile.am
+++ b/python/pacemaker/_cts/tests/Makefile.am
@@ -1,40 +1,14 @@
 #
 # Copyright 2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 
 MAINTAINERCLEANFILES    = Makefile.in
 
 pkgpythondir = $(pythondir)/$(PACKAGE)/_cts/tests
 
-pkgpython_PYTHON = __init__.py \
-				   componentfail.py \
-				   ctstest.py \
-				   fliptest.py \
-				   maintenancemode.py \
-				   nearquorumpointtest.py \
-				   partialstart.py \
-				   reattach.py \
-				   remotebasic.py \
-				   remotedriver.py \
-				   remotemigrate.py \
-				   remotestonithd.py \
-				   resourcerecover.py \
-				   remoterscfailure.py \
-				   restarttest.py \
-				   restartonebyone.py \
-				   resynccib.py \
-				   simulstart.py \
-				   simulstop.py \
-				   simulstartlite.py \
-				   simulstoplite.py \
-				   splitbraintest.py \
-				   standbytest.py \
-				   startonebyone.py \
-				   starttest.py \
-				   stonithdtest.py \
-				   stoptest.py
+pkgpython_PYTHON = $(wildcard *.py)
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 2bd97613a9..d9c124f56a 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -1,166 +1,151 @@
 #
 # Copyright 2004-2023 the Pacemaker project contributors
 #
 # The version control history for this file may have further details.
 #
 # This source code is licensed under the GNU General Public License version 2
 # or later (GPLv2+) WITHOUT ANY WARRANTY.
 #
 include $(top_srcdir)/mk/common.mk
 include $(top_srcdir)/mk/man.mk
 
 if BUILD_SYSTEMD
 systemdsystemunit_DATA	= crm_mon.service
 endif
 
 noinst_HEADERS		= crm_mon.h crm_resource.h
 
 pcmkdir			= $(datadir)/$(PACKAGE)
 pcmk_DATA		= report.common report.collector
 
 sbin_SCRIPTS		= crm_report crm_standby crm_master crm_failcount
 if BUILD_CIBSECRETS
 sbin_SCRIPTS		+= cibsecret
 endif
 noinst_SCRIPTS		= cluster-clean		\
 			  cluster-init		\
 			  cluster-helper	\
 			  pcmk_simtimes
 
-EXTRA_DIST		= attrd_updater.8.inc \
-			  cibadmin.8.inc \
-				  crm_attribute.8.inc \
-				  crm_diff.8.inc \
-				  crm_error.8.inc \
-			  crm_mon.8.inc			\
-			  crm_node.8.inc \
-			  crm_resource.8.inc \
-			  crm_rule.8.inc \
-			  crm_shadow.8.inc \
-			  crm_simulate.8.inc \
-			  crm_ticket.8.inc \
-			  crm_verify.8.inc \
-			  crmadmin.8.inc \
-			  fix-manpages \
-			  iso8601.8.inc \
-			  stonith_admin.8.inc
+EXTRA_DIST		= $(wildcard *.inc) 	\
+			  fix-manpages
 
 sbin_PROGRAMS		= attrd_updater \
 			  cibadmin \
 			  crmadmin \
 			  crm_simulate \
 			  crm_attribute \
 			  crm_diff \
 			  crm_error \
 			  crm_mon \
 			  crm_node \
 			  crm_resource \
 			  crm_rule \
 			  crm_shadow \
 			  crm_verify \
 			  crm_ticket \
 			  iso8601 \
 			  stonith_admin
 
 ## SOURCES
 
 # A few tools are just thin wrappers around crm_attribute.
 # This makes their help get updated when crm_attribute changes
 # (see mk/common.mk).
 MAN8DEPS		= crm_attribute
 
 crmadmin_SOURCES	= crmadmin.c
 crmadmin_LDADD		= $(top_builddir)/lib/pengine/libpe_status.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la	\
 			  $(top_builddir)/lib/pacemaker/libpacemaker.la
 
 crm_error_SOURCES	= crm_error.c
 crm_error_LDADD		= $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 cibadmin_SOURCES	= cibadmin.c
 cibadmin_LDADD		= $(top_builddir)/lib/pacemaker/libpacemaker.la		\
 			  	$(top_builddir)/lib/cib/libcib.la		\
 				$(top_builddir)/lib/common/libcrmcommon.la
 
 crm_shadow_SOURCES	= crm_shadow.c
 crm_shadow_LDADD	= $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_node_SOURCES	= crm_node.c
 crm_node_LDADD	= $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_simulate_SOURCES	= crm_simulate.c
 
 crm_simulate_LDADD	= $(top_builddir)/lib/pengine/libpe_status.la	\
 			  $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_diff_SOURCES	= crm_diff.c
 crm_diff_LDADD		= $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_mon_SOURCES		= crm_mon.c crm_mon_curses.c
 crm_mon_LDADD		= $(top_builddir)/lib/pengine/libpe_status.la	\
 			  $(top_builddir)/lib/fencing/libstonithd.la	\
 			  $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la	\
 			  $(CURSESLIBS)
 
 crm_verify_SOURCES	= crm_verify.c
 crm_verify_LDADD	= $(top_builddir)/lib/pengine/libpe_status.la 	\
 			  $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_attribute_SOURCES	= crm_attribute.c
 crm_attribute_LDADD	= $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_resource_SOURCES	= crm_resource.c		\
 			  crm_resource_ban.c		\
 			  crm_resource_print.c		\
 			  crm_resource_runtime.c
 crm_resource_LDADD	= $(top_builddir)/lib/pengine/libpe_rules.la  	\
 			  $(top_builddir)/lib/fencing/libstonithd.la	\
 			  $(top_builddir)/lib/lrmd/liblrmd.la 		\
 			  $(top_builddir)/lib/services/libcrmservice.la \
 			  $(top_builddir)/lib/pengine/libpe_status.la 	\
 			  $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_rule_SOURCES 	= crm_rule.c
 crm_rule_LDADD		= $(top_builddir)/lib/pacemaker/libpacemaker.la \
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/pengine/libpe_rules.la   \
 			  $(top_builddir)/lib/pengine/libpe_status.la   \
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 iso8601_SOURCES		= iso8601.c
 iso8601_LDADD		= $(top_builddir)/lib/common/libcrmcommon.la
 
 attrd_updater_SOURCES	= attrd_updater.c
 attrd_updater_LDADD	= $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 crm_ticket_SOURCES	= crm_ticket.c
 crm_ticket_LDADD	= $(top_builddir)/lib/pengine/libpe_rules.la	\
 			  $(top_builddir)/lib/pengine/libpe_status.la	\
 			  $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 stonith_admin_SOURCES	= stonith_admin.c
 stonith_admin_LDADD	= $(top_builddir)/lib/pacemaker/libpacemaker.la	\
 			  $(top_builddir)/lib/cib/libcib.la		\
 			  $(top_builddir)/lib/pengine/libpe_status.la	\
 			  $(top_builddir)/lib/fencing/libstonithd.la \
 			  $(top_builddir)/lib/common/libcrmcommon.la
 
 CLEANFILES = $(man8_MANS)