diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2019-05-13 13:13:46 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2019-05-14 11:04:41 -0300 |
commit | da2b83ef6ba6f4c974664f69e715cc85b9173938 (patch) | |
tree | 55d5fc64f44ad76bd62d7b98ba879c7e7b2896fb | |
parent | c7ac9caaae6f8d02d4e0c7618d4991324a084c66 (diff) | |
download | glibc-da2b83ef6ba6f4c974664f69e715cc85b9173938.tar glibc-da2b83ef6ba6f4c974664f69e715cc85b9173938.tar.gz glibc-da2b83ef6ba6f4c974664f69e715cc85b9173938.tar.bz2 glibc-da2b83ef6ba6f4c974664f69e715cc85b9173938.zip |
elf: Fix tst-pldd for non-default --prefix and/or --bindir (BZ#24544)
Use a new libsupport support_bindir_prefix instead of a hardcoded
/usr/bin to create the pldd path on container directory.
Checked on x86_64-linux-gnu with default and non-default --prefix and
--bindir paths, as well with --enable-hardcoded-path-in-tests.
[BZ #24544]
* elf/tst-pldd.c (do_test): Use support_bindir_prefix instead of
pre-defined value.
Reviewed-by: DJ Delorie <dj@redhat.com>
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | elf/tst-pldd.c | 6 |
2 files changed, 9 insertions, 1 deletions
@@ -1,5 +1,9 @@ 2019-05-14 Adhemerval Zanella <adhemerval.zanella@linaro.org> + [BZ #24544] + * elf/tst-pldd.c (do_test): Use support_bindir_prefix instead of + pre-defined value. + * support/Makefile (CFLAGS-support_paths.c): Add -DBINDIR_PATH. * support/support.h (support_bindir_prefix): New variable. * support/support_paths.c [BINDIR_PATH] (support_bindir_prefix): diff --git a/elf/tst-pldd.c b/elf/tst-pldd.c index 2a9f58936f..6b7c94a1c0 100644 --- a/elf/tst-pldd.c +++ b/elf/tst-pldd.c @@ -18,6 +18,7 @@ #include <stdio.h> #include <string.h> +#include <stdlib.h> #include <unistd.h> #include <stdint.h> #include <stdbool.h> @@ -28,6 +29,7 @@ #include <support/subprocess.h> #include <support/capture_subprocess.h> #include <support/check.h> +#include <support/support.h> static void target_process (void *arg) @@ -60,12 +62,14 @@ do_test (void) char pid[3 * sizeof (uint32_t) + 1]; snprintf (pid, array_length (pid), "%d", target.pid); - const char prog[] = "/usr/bin/pldd"; + char *prog = xasprintf ("%s/pldd", support_bindir_prefix); pldd = support_capture_subprogram (prog, (char *const []) { (char *) prog, pid, NULL }); support_capture_subprocess_check (&pldd, "pldd", 0, sc_allow_stdout); + + free (prog); } /* Check 'pldd' output. The test is expected to be linked against only |