diff options
author | Mike Gilbert <floppym@gentoo.org> | 2020-12-20 12:26:50 -0500 |
---|---|---|
committer | Mike Gilbert <floppym@gentoo.org> | 2020-12-20 12:27:12 -0500 |
commit | ba41bafca7f0dfb4420984b96775ebefe0e7406a (patch) | |
tree | f8f2113786b15b63a3bc66b6ff256da238693fab | |
parent | dev-python/websockets: Keyword 8.1 ppc, #760818 (diff) | |
download | gentoo-ba41bafca7f0dfb4420984b96775ebefe0e7406a.tar.gz gentoo-ba41bafca7f0dfb4420984b96775ebefe0e7406a.tar.bz2 gentoo-ba41bafca7f0dfb4420984b96775ebefe0e7406a.zip |
sys-kernel/dracut: apply patch to resolve error loading libgcc.so.1
Closes: https://bugs.gentoo.org/760249
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
-rw-r--r-- | sys-kernel/dracut/dracut-051-r1.ebuild (renamed from sys-kernel/dracut/dracut-051.ebuild) | 1 | ||||
-rw-r--r-- | sys-kernel/dracut/files/051-dracut.sh-move-ldconfig.patch | 60 |
2 files changed, 61 insertions, 0 deletions
diff --git a/sys-kernel/dracut/dracut-051.ebuild b/sys-kernel/dracut/dracut-051-r1.ebuild index 69b97ddb7c4d..60a9ba038926 100644 --- a/sys-kernel/dracut/dracut-051.ebuild +++ b/sys-kernel/dracut/dracut-051-r1.ebuild @@ -64,6 +64,7 @@ DOCS=( AUTHORS HACKING NEWS README.md README.generic README.kernel README.module QA_MULTILIB_PATHS="usr/lib/dracut/.*" PATCHES=( + "${FILESDIR}"/051-dracut.sh-move-ldconfig.patch "${FILESDIR}"/gentoo-ldconfig-paths.patch ) diff --git a/sys-kernel/dracut/files/051-dracut.sh-move-ldconfig.patch b/sys-kernel/dracut/files/051-dracut.sh-move-ldconfig.patch new file mode 100644 index 000000000000..d6d97f7bb948 --- /dev/null +++ b/sys-kernel/dracut/files/051-dracut.sh-move-ldconfig.patch @@ -0,0 +1,60 @@ +From 48258fae9fa58046d7d1a246ea3d821530180643 Mon Sep 17 00:00:00 2001 +From: Alexander Tsoy <alexander@tsoy.me> +Date: Fri, 18 Dec 2020 00:01:32 +0300 +Subject: [PATCH] dracut.sh: Move ldconfig after library workaround + +This fixes boot failures when libgcc_s.so.1 is in a non-standard +directory. + +Bug: https://bugs.gentoo.org/760249 +Fixes: de3cb0e3214c (dracut.sh: Move the library workaround after squash) +--- + dracut.sh | 28 ++++++++++++++-------------- + 1 file changed, 14 insertions(+), 14 deletions(-) + +diff --git a/dracut.sh b/dracut.sh +index 0f4648397..c6c361acc 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -1724,20 +1724,6 @@ for ((i=0; i < ${#include_src[@]}; i++)); do + fi + done + +-if [[ $kernel_only != yes ]]; then +- # make sure that library links are correct and up to date +- for f in $dracutsysrootdir/etc/ld.so.conf $dracutsysrootdir/etc/ld.so.conf.d/*; do +- [[ -f $f ]] && inst_simple "${f#$dracutsysrootdir}" +- done +- if ! $DRACUT_LDCONFIG -r "$initdir" -f /etc/ld.so.conf; then +- if [[ $EUID = 0 ]]; then +- derror "ldconfig exited ungracefully" +- else +- derror "ldconfig might need uid=0 (root) for chroot()" +- fi +- fi +-fi +- + if [[ $do_hardlink = yes ]] && command -v hardlink >/dev/null; then + dinfo "*** Hardlinking files ***" + hardlink "$initdir" 2>&1 +@@ -1920,6 +1906,20 @@ if [[ $kernel_only != yes ]]; then + fi + fi + ++if [[ $kernel_only != yes ]]; then ++ # make sure that library links are correct and up to date ++ for f in $dracutsysrootdir/etc/ld.so.conf $dracutsysrootdir/etc/ld.so.conf.d/*; do ++ [[ -f $f ]] && inst_simple "${f#$dracutsysrootdir}" ++ done ++ if ! $DRACUT_LDCONFIG -r "$initdir" -f /etc/ld.so.conf; then ++ if [[ $EUID = 0 ]]; then ++ derror "ldconfig exited ungracefully" ++ else ++ derror "ldconfig might need uid=0 (root) for chroot()" ++ fi ++ fi ++fi ++ + if [[ $do_strip = yes ]] && ! [[ $DRACUT_FIPS_MODE ]]; then + dinfo "*** Stripping files ***" + find "$initdir" -type f \ |