Add install-ptest rules.
Change TEST_ENVIRONMENT to allow running outside build dir.

 Makefile.am                |    7 +++++++
 bus/Makefile.am            |    6 ++++++
 dbus/Makefile.am           |    6 ++++++
 doc/Makefile.am            |    4 ++++
 test/Makefile.am           |   25 ++++++++++++++++++++-----
 test/name-test/Makefile.am |    9 +++++++++
 tools/Makefile.am          |   12 ++++++++++++
 7 files changed, 64 insertions(+), 5 deletions(-)

Signed-off-by: Björn Stenberg <bjst@enea.com>
Upstream-Status: Pending

diff -ur a/Makefile.am b/Makefile.am
--- a/Makefile.am	2012-12-06 14:34:01.157414449 +0100
+++ b/Makefile.am	2012-12-06 15:21:14.447113035 +0100
@@ -30,4 +30,11 @@
 
 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 
+if DBUS_BUILD_TESTS
+install-ptest:
+	@for subdir in $(SUBDIRS); do \
+		$(MAKE) -C $$subdir DESTDIR=$(DESTDIR)/$$subdir $@; \
+	done
+endif
+
 include tools/lcov.am
diff -ur a/bus/Makefile.am b/bus/Makefile.am
--- a/bus/Makefile.am	2012-12-06 14:34:01.169413931 +0100
+++ b/bus/Makefile.am	2012-12-06 15:21:14.463112346 +0100
@@ -290,3 +290,9 @@
 #### Extra dist
 
 EXTRA_DIST=$(CONFIG_IN_FILES) $(SCRIPT_IN_FILES)
+
+if DBUS_BUILD_TESTS
+install-ptest:
+	@$(MKDIR_P) $(DESTDIR)
+	@install $(dbus_daemon_exec_PROGRAMS) $(noinst_PROGRAMS) $(DESTDIR)
+endif
diff -ur a/dbus/Makefile.am b/dbus/Makefile.am
--- a/dbus/Makefile.am	2012-12-06 14:34:01.161414276 +0100
+++ b/dbus/Makefile.am	2012-12-06 15:21:14.451112862 +0100
@@ -310,3 +310,9 @@
 update-systemd:
 	curl http://cgit.freedesktop.org/systemd/plain/src/sd-daemon.c > sd-daemon.c
 	curl http://cgit.freedesktop.org/systemd/plain/src/sd-daemon.h > sd-daemon.h
+
+if DBUS_BUILD_TESTS
+install-ptest:
+	@$(MKDIR_P) $(DESTDIR)
+	@install $(noinst_PROGRAMS) $(DESTDIR)
+endif
diff -ur a/test/Makefile.am b/test/Makefile.am
--- a/test/Makefile.am	2012-12-06 14:34:01.165414103 +0100
+++ b/test/Makefile.am	2012-12-06 15:21:14.455112690 +0100
@@ -119,12 +119,13 @@
 	DBUS_TEST_HOMEDIR=@abs_top_builddir@/dbus \
 	DBUS_TEST_SYSCONFDIR=$(DESTDIR)$(sysconfdir)
 
+ptest_run_dir = ..
+
 TESTS_ENVIRONMENT = \
-	DBUS_BLOCK_ON_ABORT=1 \
-	DBUS_FATAL_WARNINGS=1 \
-	DBUS_TEST_DAEMON=@abs_top_builddir@/bus/dbus-daemon$(EXEEXT) \
-	DBUS_TEST_DATA=@abs_top_builddir@/test/data \
-	DBUS_TEST_HOMEDIR=@abs_top_builddir@/dbus \
+	DBUS_FATAL_WARNINGS=0 \
+	DBUS_TEST_DAEMON=$(ptest_run_dir)/bus/dbus-daemon$(EXEEXT) \
+	DBUS_TEST_DATA=$(ptest_run_dir)/test/data \
+	DBUS_TEST_HOMEDIR=$(ptest_run_dir)/dbus \
 	$(NULL)
 
 test_corrupt_SOURCES = corrupt.c
@@ -325,3 +325,25 @@
 data/valid-config-files/system.conf: $(top_builddir)/bus/system.conf
 	$(AM_V_at)$(MKDIR_P) data/valid-config-files
 	$(AM_V_GEN)cp $< $@
+
+if DBUS_BUILD_TESTS
+install-ptest: install-ptest-nonrecursive
+	@for subdir in $(SUBDIRS); do \
+		if [ $$subdir != "." ]; then \
+			$(MAKE) -C $$subdir DESTDIR=$(DESTDIR)/$$subdir $@; \
+		fi; \
+	done
+
+install-ptest-nonrecursive:
+	@$(MKDIR_P) $(DESTDIR)/data/valid-config-files/session.d
+	@for file in Makefile $(installable_tests) $(noinst_PROGRAMS) $(noinst_DATA) ; do \
+		if [ -f .libs/$$file ]; then \
+			install .libs/$$file $(DESTDIR); \
+		else \
+			install -D $${file%.in} $(DESTDIR)/$${file%.in}; \
+		fi; \
+	done;
+	@for file in $(EXTRA_DIST); do \
+		install -D ${srcdir}/$${file%.in} $(DESTDIR)/$${file%.in}; \
+	done;
+endif
diff -ur a/test/name-test/Makefile.am b/test/name-test/Makefile.am
--- a/test/name-test/Makefile.am	2012-12-06 14:34:01.169413931 +0100
+++ b/test/name-test/Makefile.am	2012-12-06 15:21:14.459112518 +0100
@@ -36,4 +36,16 @@
 test_privserver_client_LDADD=../libdbus-testutils.la
 test_autolaunch_LDADD=../libdbus-testutils.la
 
+install-ptest:
+	@$(MKDIR_P) $(DESTDIR)
+	@for file in Makefile $(noinst_PROGRAMS); do \
+		if [ -f .libs/$$file ]; then \
+			install .libs/$$file $(DESTDIR); \
+		else \
+			install $$file $(DESTDIR); \
+		fi \
+	done;
+	@for file in $(EXTRA_DIST); do \
+		cp $(srcdir)/$$file $(DESTDIR); \
+	done;
 endif
diff -ur a/tools/Makefile.am b/tools/Makefile.am
--- a/tools/Makefile.am	2012-12-06 14:34:01.161414276 +0100
+++ b/tools/Makefile.am	2012-12-06 15:21:14.455112690 +0100
@@ -78,3 +78,15 @@
 
 installcheck-local:
 	test -d $(DESTDIR)$(localstatedir)/lib/dbus
+
+if DBUS_BUILD_TESTS
+install-ptest:
+	@$(MKDIR_P) $(DESTDIR)
+	@for file in $(bin_PROGRAMS); do \
+		if [ -f .libs/$$file ]; then \
+			install .libs/$$file $(DESTDIR); \
+		else \
+			install $$file $(DESTDIR); \
+		fi; \
+	done;
+endif
diff -ur a/doc/Makefile.am b/doc/Makefile.am
--- a/doc/Makefile.am	2012-06-06 12:45:55.000000000 +0200
+++ b/doc/Makefile.am	2012-12-06 16:04:58.990070587 +0100
@@ -174,3 +174,7 @@
 
 maintainer-clean-local:
 	rm -f $(XMLTO_OUTPUT)
+
+if DBUS_BUILD_TESTS
+install-ptest:
+endif
