summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Henriksson2017-07-30 19:52:17 +0200
committerKarel Zak2017-07-31 13:48:04 +0200
commitc9ab7387066940d7599a2e5d79d56405195d5f4e (patch)
tree8bc14075b0ad8df5cc953d6a0b842713c688e20c
parenttunelp: use linux header (diff)
downloadkernel-qcow2-util-linux-c9ab7387066940d7599a2e5d79d56405195d5f4e.tar.gz
kernel-qcow2-util-linux-c9ab7387066940d7599a2e5d79d56405195d5f4e.tar.xz
kernel-qcow2-util-linux-c9ab7387066940d7599a2e5d79d56405195d5f4e.zip
whereis: include native multiarch path in lib search paths
This includes atleast the native multiarch path in the paths to search. (Maybe also other multiarch paths should also be searched? But atleast this is a first step.) Before this change (on Debian): $ whereis libc libc: /usr/share/man/man7/libc.7.gz After this change: $ whereis libc libc: /usr/lib/x86_64-linux-gnu/libc.so /usr/lib/x86_64-linux-gnu/libc.a /usr/share/man/man7/libc.7.gz Addresses: https://bugs.debian.org/856968 Signed-off-by: Andreas Henriksson <andreas@fatal.se>
-rw-r--r--configure.ac5
-rw-r--r--misc-utils/whereis.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 38b968878..dc71faa00 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1490,6 +1490,11 @@ AM_CONDITIONAL([BUILD_MCOOKIE], [test "x$build_mcookie" = xyes])
UL_BUILD_INIT([namei], [yes])
AM_CONDITIONAL([BUILD_NAMEI], [test "x$build_namei" = xyes])
+matriplet="$($CC -print-multiarch 2>/dev/null || true)"
+if test "x$matriplet" != "x"; then
+ AC_DEFINE_UNQUOTED([MULTIARCHTRIPLET], ["$matriplet"],
+ ["Multi-arch triplet for whereis library search path"])
+fi
UL_BUILD_INIT([whereis], [yes])
AM_CONDITIONAL([BUILD_WHEREIS], [test "x$build_whereis" = xyes])
diff --git a/misc-utils/whereis.c b/misc-utils/whereis.c
index bac158d46..caa155ca3 100644
--- a/misc-utils/whereis.c
+++ b/misc-utils/whereis.c
@@ -96,6 +96,11 @@ struct wh_dirlist {
static const char *bindirs[] = {
"/usr/bin",
"/usr/sbin",
+#if defined(MULTIARCHTRIPLET)
+ "/lib/" MULTIARCHTRIPLET,
+ "/usr/lib/" MULTIARCHTRIPLET,
+ "/usr/local/lib/" MULTIARCHTRIPLET,
+#endif
"/usr/lib",
"/usr/lib64",
"/bin",