Replace $DBUS_USE_TEST_BINARY with $DBUS_TEST_DBUS_LAUNCH
authorSimon McVittie <simon.mcvittie@collabora.co.uk>
Mon, 8 Feb 2016 20:09:58 +0000 (20:09 +0000)
committerRalf Habacker <ralf.habacker@freenet.de>
Thu, 11 Feb 2016 01:37:11 +0000 (02:37 +0100)
Instead of using $DBUS_USE_TEST_BINARY to control whether to use the
hard-coded test binary TEST_BUS_LAUNCH_BINARY, we can just use
$DBUS_TEST_DBUS_LAUNCH to control what we launch directly, as we
were already doing for $DBUS_TEST_DAEMON.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=92899
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
cmake/CMakeLists.txt
cmake/config.h.cmake
cmake/modules/Macros.cmake
configure.ac
dbus/dbus-sysdeps-unix.c
test/Makefile.am
test/name-test/Makefile.am
tools/dbus-launch.c
tools/run-with-tmp-session-bus.sh

index 4db9c67..1333250 100644 (file)
@@ -506,7 +506,6 @@ if (DBUS_BUILD_TESTS)
     set(DBUS_TEST_DATA ${CMAKE_BINARY_DIR}/test/data)
     set(TEST_SOCKET_DIR ${DBUS_SESSION_SOCKET_DIR} )
     set(TEST_LAUNCH_HELPER_BINARY ${EXECUTABLE_OUTPUT_PATH}/dbus-daemon-launch-helper-test)
-    set(TEST_BUS_LAUNCH_BINARY ${EXECUTABLE_OUTPUT_PATH}/dbus-launch${EXEEXT})
     if (UNIX)
         set (TEST_LISTEN "unix:tmpdir=${TEST_SOCKET_DIR}")
     endif (UNIX)
index d2af3c9..c498362 100644 (file)
@@ -33,7 +33,6 @@
 // test binaries
 #define DBUS_TEST_EXEC "@DBUS_TEST_EXEC@"
 #define DBUS_EXEEXT "@EXEEXT@"
-#cmakedefine TEST_BUS_LAUNCH_BINARY "@TEST_BUS_LAUNCH_BINARY@"
 
 /* Some dbus features */
 #cmakedefine DBUS_ENABLE_ANSI 1
index fd3f62c..8e0278a 100644 (file)
@@ -52,6 +52,7 @@ macro(add_test_executable _target _source)
     list(APPEND _env "DBUS_SESSION_BUS_ADDRESS=")
     list(APPEND _env "DBUS_FATAL_WARNINGS=1")
     list(APPEND _env "DBUS_TEST_DATA=${PREFIX}${CMAKE_BINARY_DIR}/test/data")
+    list(APPEND _env "DBUS_TEST_DBUS_LAUNCH=${PREFIX}${CMAKE_BINARY_DIR}/bin/dbus-launch${EXEEXT}")
     list(APPEND _env "DBUS_TEST_HOMEDIR=${PREFIX}${CMAKE_BINARY_DIR}/dbus")
     set_tests_properties(${_target} PROPERTIES ENVIRONMENT "${_env}")
 endmacro(add_test_executable)
index 5e88343..a734a3b 100644 (file)
@@ -1731,9 +1731,6 @@ AC_DEFINE_UNQUOTED([DBUS_TEST_EXEC], ["$DBUS_TEST_EXEC"],
 AC_DEFINE_UNQUOTED([DBUS_EXEEXT], ["$EXEEXT"],
                    [Extension for executables, typically empty or .exe])
 
-AC_DEFINE_UNQUOTED(TEST_BUS_LAUNCH_BINARY, ["$DBUS_PWD/tools/dbus-launch$EXEEXT"],
-                   [Full path to the dbus-launch in the builddir])
-
 ## Export the non-setuid external helper
 TEST_LAUNCH_HELPER_BINARY="$DBUS_PWD/bus/dbus-daemon-launch-helper-test$EXEEXT"
 AC_SUBST(TEST_LAUNCH_HELPER_BINARY)
index 50ca60a..f0fca85 100644 (file)
@@ -3671,7 +3671,7 @@ _dbus_get_autolaunch_address (const char *scope,
    * but that's done elsewhere, and if it worked, this function wouldn't
    * be called.) */
   const char *display;
-  char *progpath;
+  const char *progpath;
   char *argv[6];
   int i;
   DBusString uuid;
@@ -3716,9 +3716,9 @@ _dbus_get_autolaunch_address (const char *scope,
     }
 
 #ifdef DBUS_ENABLE_EMBEDDED_TESTS
-  if (_dbus_getenv ("DBUS_USE_TEST_BINARY") != NULL)
-    progpath = TEST_BUS_LAUNCH_BINARY;
-  else
+  progpath = _dbus_getenv ("DBUS_TEST_DBUS_LAUNCH");
+
+  if (progpath == NULL)
 #endif
     progpath = DBUS_BINDIR "/dbus-launch";
   /*
index b7f40bb..1438995 100644 (file)
@@ -174,6 +174,7 @@ installcheck_tests =
 installcheck_environment = \
        export XDG_RUNTIME_DIR=@abs_top_builddir@/test/XDG_RUNTIME_DIR; \
        export DBUS_TEST_DAEMON=$(DESTDIR)$(DBUS_DAEMONDIR)/dbus-daemon$(EXEEXT); \
+       export DBUS_TEST_DBUS_LAUNCH=$(DESTDIR)$(bindir)/dbus-launch$(EXEEXT); \
        export DBUS_TEST_HOMEDIR=@abs_top_builddir@/dbus; \
        export DBUS_TEST_DATADIR=$(DESTDIR)$(datadir); \
        ${NULL}
@@ -182,6 +183,7 @@ AM_TESTS_ENVIRONMENT = \
        export XDG_RUNTIME_DIR=@abs_top_builddir@/test/XDG_RUNTIME_DIR; \
        export DBUS_FATAL_WARNINGS=1; \
        export DBUS_TEST_DAEMON=@abs_top_builddir@/bus/dbus-daemon$(EXEEXT); \
+       export DBUS_TEST_DBUS_LAUNCH=@abs_top_builddir@/tools/dbus-launch$(EXEEXT); \
        export DBUS_TEST_DATA=@abs_top_builddir@/test/data; \
        export DBUS_TEST_HOMEDIR=@abs_top_builddir@/dbus; \
        $(NULL)
index 3b7fcc6..fae2892 100644 (file)
@@ -25,6 +25,7 @@ AM_TESTS_ENVIRONMENT = \
         export PYTHON=@PYTHON@; \
         export DBUS_TEST_DATA=@abs_top_builddir@/test/data; \
         export DBUS_TEST_DAEMON=@abs_top_builddir@/bus/dbus-daemon$(EXEEXT); \
+        export DBUS_TEST_DBUS_LAUNCH=@abs_top_builddir@/tools/dbus-launch$(EXEEXT); \
         export XDG_RUNTIME_DIR=@abs_top_builddir@/test/XDG_RUNTIME_DIR; \
         $(NULL)
 
index 0f1e6ed..1b65502 100644 (file)
@@ -1169,10 +1169,10 @@ main (int argc, char **argv)
  
 #ifdef DBUS_ENABLE_EMBEDDED_TESTS
       {
-        const char *test_daemon;
         /* exec from testdir */
-        if (getenv ("DBUS_USE_TEST_BINARY") != NULL &&
-            (test_daemon = getenv ("DBUS_TEST_DAEMON")) != NULL)
+        const char *test_daemon = getenv ("DBUS_TEST_DAEMON");
+
+        if (test_daemon != NULL)
           {
             if (config_file == NULL && getenv ("DBUS_TEST_DATA") != NULL)
               {
index 94ae8fc..688f9e4 100755 (executable)
@@ -45,11 +45,6 @@ export LD_LIBRARY_PATH
 unset DBUS_SESSION_BUS_ADDRESS
 unset DBUS_SESSION_BUS_PID
 
-# this does not actually affect dbus-run-session any more, but could be
-# significant for dbus-launch as used by the autolaunch test
-DBUS_USE_TEST_BINARY=1
-export DBUS_USE_TEST_BINARY
-
 $DBUS_TOP_BUILDDIR/tools/dbus-run-session \
     --config-file="$CONFIG_FILE" \
     --dbus-daemon="$DBUS_TOP_BUILDDIR/bus/dbus-daemon" \