commit:     ed0a52f68dbe4cb6c3a8c85e782a6abe9c30683f
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 27 20:33:15 2021 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Jul 27 20:33:15 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ed0a52f6

sys-libs/glibc: Add crypt.h fixes also here

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 sys-libs/glibc/glibc-9999.ebuild | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/sys-libs/glibc/glibc-9999.ebuild b/sys-libs/glibc/glibc-9999.ebuild
index 107ec16a0ba..99426d97e8c 100644
--- a/sys-libs/glibc/glibc-9999.ebuild
+++ b/sys-libs/glibc/glibc-9999.ebuild
@@ -1510,9 +1510,10 @@ pkg_preinst() {
        # Keep around libcrypt so that Perl doesn't break when merging libxcrypt
        # (libxcrypt is the new provider for now of libcrypt.so.{1,2}).
        # bug #802207
-       if has_version "${CATEGORY}/${PN}[crypt]"; then
+       if ! use crypt && has_version "${CATEGORY}/${PN}[crypt]"; then
                PRESERVED_OLD_LIBCRYPT=1
                preserve_old_lib /$(get_libdir)/libcrypt$(get_libname 1)
+               cp "${EROOT}"/usr/include/crypt.h "${T}"/crypt.h || die
        else
                PRESERVED_OLD_LIBCRYPT=0
        fi
@@ -1548,5 +1549,10 @@ pkg_postinst() {
 
        if [[ ${PRESERVED_OLD_LIBCRYPT} -eq 1 ]] ; then
                preserve_old_lib_notify /$(get_libdir)/libcrypt$(get_libname 1)
+               cp "${T}"/crypt.h "${EROOT}"/usr/include/crypt.h || eerror 
"Error restoring crypt.h, please file a bug"
+               elog "Please ignore a possible later error message about a file 
collision involving"
+               elog "/usr/include/crypt.h. We need to preserve this file for 
the moment to keep"
+               elog "the upgrade working, but it also needs to be overwritten 
when"
+               elog "sys-libs/libxcrypt is installed. See bug 802210 for more 
details."
        fi
 }

Reply via email to