dracut: 90zfs: module-setup: try /lib*/libgcc_s.so*, relax /u/l/gcc path
SUSE stores the library at /lib64/libgcc_s.so.1 (/lib/libgcc_s.so.1 for i686 glibc), which is in the search path Also relax the /usr/lib path to catch systems similar to SUSE (/usr/lib64/gcc/x86_64-suse-linux/10/libgcc_s.so) but without the top-level lib64 Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Closes #11750 Closes #12108
This commit is contained in:
parent
50353dbd05
commit
cfc8dd1983
|
@ -49,13 +49,16 @@ install() {
|
||||||
# On systems with gcc-config (Gentoo, Funtoo, etc.):
|
# On systems with gcc-config (Gentoo, Funtoo, etc.):
|
||||||
# Use the current profile to resolve the appropriate path
|
# Use the current profile to resolve the appropriate path
|
||||||
s="$(gcc-config -c)"
|
s="$(gcc-config -c)"
|
||||||
dracut_install "/usr/lib/gcc/${s%-*}/${s##*-}/libgcc_s.so.1"
|
dracut_install "/usr/lib/gcc/${s%-*}/${s##*-}/libgcc_s.so"*
|
||||||
elif ls /usr/lib/libgcc_s.so* >/dev/null 2>&1; then
|
elif [ "$(echo /usr/lib/libgcc_s.so*)" != "/usr/lib/libgcc_s.so*" ]; then
|
||||||
# Try a simple path first
|
# Try a simple path first
|
||||||
dracut_install /usr/lib/libgcc_s.so*
|
dracut_install /usr/lib/libgcc_s.so*
|
||||||
|
elif [ "$(echo /lib*/libgcc_s.so*)" != "/lib*/libgcc_s.so*" ]; then
|
||||||
|
# SUSE
|
||||||
|
dracut_install /lib*/libgcc_s.so*
|
||||||
else
|
else
|
||||||
# Fallback: Guess the path and include all matches
|
# Fallback: Guess the path and include all matches
|
||||||
dracut_install /usr/lib/gcc/*/*/libgcc_s.so*
|
dracut_install /usr/lib*/gcc/**/libgcc_s.so*
|
||||||
fi
|
fi
|
||||||
# shellcheck disable=SC2050
|
# shellcheck disable=SC2050
|
||||||
if [ @LIBFETCH_DYNAMIC@ != 0 ]; then
|
if [ @LIBFETCH_DYNAMIC@ != 0 ]; then
|
||||||
|
|
Loading…
Reference in New Issue