commit:     83de2d26e38c143499ca47ec3bea4ba93f2b0073
Author:     Chris Henhawke <chris <AT> hamiltonshells <DOT> ca>
AuthorDate: Fri Jul 14 18:55:07 2017 +0000
Commit:     Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
CommitDate: Fri Jul 14 18:55:07 2017 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=83de2d26

ZFS: Ensure libgcc_s included.

Fixes: https://bugs.gentoo.org/show_bug.cgi?id=617666
Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org>

 gen_initramfs.sh | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/gen_initramfs.sh b/gen_initramfs.sh
index 4075f85..0e66c66 100755
--- a/gen_initramfs.sh
+++ b/gen_initramfs.sh
@@ -495,14 +495,18 @@ append_zfs(){
 
        # Copy binaries
        # Include libgcc_s.so.1 to workaround zfsonlinux/zfs#4749
+       local libgccpath
        if type gcc-config 2>&1 1>/dev/null; then
-               copy_binaries "${TEMP}/initramfs-zfs-temp" 
/sbin/{mount.zfs,zdb,zfs,zpool} \
-                       "/usr/lib/gcc/$(s=$(gcc-config -c); echo 
${s%-*}/${s##*-})/libgcc_s.so.1"
-       else
-               copy_binaries "${TEMP}/initramfs-zfs-temp" 
/sbin/{mount.zfs,zdb,zfs,zpool} \
-                       /usr/lib/gcc/*/*/libgcc_s.so.1
+               libgccpath="/usr/lib/gcc/$(s=$(gcc-config -c); echo 
${s%-*}/${s##*-})/libgcc_s.so.1"
+       fi
+       if [[ ! -f ${libgccpath} ]]; then
+               libgccpath="/usr/lib/gcc/*/*/libgcc_s.so.1"
        fi
 
+       copy_binaries "${TEMP}/initramfs-zfs-temp" 
/sbin/{mount.zfs,zdb,zfs,zpool} ${libgccpath}
+       cd "${TEMP}/initramfs-zfs-temp/lib64"
+       ln -s "..${libgccpath}"
+
        cd "${TEMP}/initramfs-zfs-temp/"
        log_future_cpio_content
        find . -print | cpio ${CPIO_ARGS} --append -F "${CPIO}" \

Reply via email to