Fix inclusion of libgcc_s.so on Void

On Void Linux (x86_64 musl) libgcc_s.so is located in "/usr/lib"
so it is not found by dracut and it produces an error.

Add a simple additional path check for "/usr/lib/libgcc_s.so*"
and install it in the initramfs.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: privb0x23 <privb0x23@users.noreply.github.com>
Closes #6715
This commit is contained in:
privb0x23 2017-10-09 21:34:26 +00:00 committed by Brian Behlendorf
parent 57f4ef2e81
commit 4f23c5d0c4
1 changed files with 3 additions and 0 deletions

View File

@ -46,6 +46,9 @@ 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
dracut_install "/usr/lib/gcc/$(s=$(gcc-config -c); echo ${s%-*}/${s##*-})/libgcc_s.so.1" dracut_install "/usr/lib/gcc/$(s=$(gcc-config -c); echo ${s%-*}/${s##*-})/libgcc_s.so.1"
elif [[ -n "$(ls /usr/lib/libgcc_s.so* 2>/dev/null)" ]]; then
# Try a simple path first
dracut_install /usr/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*