nixpkgs/pkgs/os-specific/linux/ell/0001-unit-test-dbus-pick-up-dbus-daemon-from-PATH.patch
Florian Klink 52261c4c27 ell: fix cross compilation
The current `fix-dbus-tests.patch` uses automake and pkgconfig to figure
out the path of `dbus-daemon`. This fails when cross-compiling, as
tests aren't run (and `checkInputs`) not available.

Instead of doing this, we can simply teach the tests to pick up
dbus-daemon from $PATH. This was also sent upstream in
https://lists.01.org/hyperkitty/list/ell@lists.01.org/thread/SQEZAIS2LZXSXGTXOW3GTAM5ZPXRLTN4/.
2020-12-27 13:20:50 +01:00

85 lines
2.4 KiB
Diff

From 55d499f4cd5667c04c21f7201d7f10484e187907 Mon Sep 17 00:00:00 2001
From: Florian Klink <flokli@flokli.de>
Date: Sun, 27 Dec 2020 13:03:12 +0100
Subject: [PATCH] unit/test-dbus: pick up dbus-daemon from $PATH
This allows running the unit tests in environments where `dbus-daemon`
isn't in /usr/bin, but in $PATH.
Signed-off-by: Florian Klink <flokli@flokli.de>
---
unit/test-dbus-message-fds.c | 4 ++--
unit/test-dbus-properties.c | 4 ++--
unit/test-dbus.c | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/unit/test-dbus-message-fds.c b/unit/test-dbus-message-fds.c
index 6f68bae..4b5662e 100644
--- a/unit/test-dbus-message-fds.c
+++ b/unit/test-dbus-message-fds.c
@@ -51,7 +51,7 @@ static bool start_dbus_daemon(void)
char *prg_envp[1];
pid_t pid;
- prg_argv[0] = "/usr/bin/dbus-daemon";
+ prg_argv[0] = "dbus-daemon";
prg_argv[1] = "--nopidfile";
prg_argv[2] = "--nofork";
prg_argv[3] = "--config-file=" UNITDIR "dbus.conf";
@@ -68,7 +68,7 @@ static bool start_dbus_daemon(void)
}
if (pid == 0) {
- execve(prg_argv[0], prg_argv, prg_envp);
+ execvpe(prg_argv[0], prg_argv, prg_envp);
exit(EXIT_SUCCESS);
}
diff --git a/unit/test-dbus-properties.c b/unit/test-dbus-properties.c
index b435062..049f0f4 100644
--- a/unit/test-dbus-properties.c
+++ b/unit/test-dbus-properties.c
@@ -49,7 +49,7 @@ static bool start_dbus_daemon(void)
char *prg_envp[1];
pid_t pid;
- prg_argv[0] = "/usr/bin/dbus-daemon";
+ prg_argv[0] = "dbus-daemon";
prg_argv[1] = "--nopidfile";
prg_argv[2] = "--nofork";
prg_argv[3] = "--config-file=" UNITDIR "dbus.conf";
@@ -66,7 +66,7 @@ static bool start_dbus_daemon(void)
}
if (pid == 0) {
- execve(prg_argv[0], prg_argv, prg_envp);
+ execvpe(prg_argv[0], prg_argv, prg_envp);
exit(EXIT_SUCCESS);
}
diff --git a/unit/test-dbus.c b/unit/test-dbus.c
index 67f0a7b..582847e 100644
--- a/unit/test-dbus.c
+++ b/unit/test-dbus.c
@@ -45,7 +45,7 @@ static void start_dbus_daemon(void)
char *prg_envp[1];
pid_t pid;
- prg_argv[0] = "/usr/bin/dbus-daemon";
+ prg_argv[0] = "dbus-daemon";
prg_argv[1] = "--nopidfile";
prg_argv[2] = "--nofork";
prg_argv[3] = "--config-file=" UNITDIR "dbus.conf";
@@ -62,7 +62,7 @@ static void start_dbus_daemon(void)
}
if (pid == 0) {
- execve(prg_argv[0], prg_argv, prg_envp);
+ execvpe(prg_argv[0], prg_argv, prg_envp);
exit(EXIT_SUCCESS);
}
--
2.29.2