commit:     1cc1dfc1a49a193dbfa2ff511ef606c58e4771c6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 19 00:59:44 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Sep 19 01:00:38 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1cc1dfc1

net-libs/libnsl: use preserve-libs.eclass

PAM can depend on libnsl and we should be conservative
with anything involving critical system tooling.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../{libnsl-2.0.0.ebuild => libnsl-2.0.0-r1.ebuild} | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

diff --git a/net-libs/libnsl/libnsl-2.0.0.ebuild 
b/net-libs/libnsl/libnsl-2.0.0-r1.ebuild
similarity index 62%
rename from net-libs/libnsl/libnsl-2.0.0.ebuild
rename to net-libs/libnsl/libnsl-2.0.0-r1.ebuild
index eb30d991895..99b3fb7a8a1 100644
--- a/net-libs/libnsl/libnsl-2.0.0.ebuild
+++ b/net-libs/libnsl/libnsl-2.0.0-r1.ebuild
@@ -3,22 +3,22 @@
 
 EAPI=7
 
-inherit multilib-minimal
+inherit multilib-minimal preserve-libs
 
 DESCRIPTION="Public client interface for NIS(YP) in a IPv6 ready version"
 HOMEPAGE="https://github.com/thkukuk/libnsl";
 SRC_URI="https://github.com/thkukuk/${PN}/releases/download/v${PV}/${P}.tar.xz";
 
+# This is a core package which is depended on by e.g. PAM in some cases.
+# Please use preserve-libs.eclass in pkg_{pre,post}inst to cover users
+# with FEATURES="-preserved-libs" or another package manager if SONAME
+# changes.
 SLOT="0/3"
 LICENSE="LGPL-2.1+"
-
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-
 IUSE="static-libs"
 
-DEPEND="
-       >=net-libs/libtirpc-1.2.0:=[${MULTILIB_USEDEP}]
-"
+DEPEND=">=net-libs/libtirpc-1.2.0:=[${MULTILIB_USEDEP}]"
 RDEPEND="${DEPEND}
        !<sys-libs/glibc-2.26
 "
@@ -28,6 +28,7 @@ multilib_src_configure() {
                --enable-shared
                $(use_enable static-libs static)
        )
+
        ECONF_SOURCE=${S} econf "${myconf[@]}"
 }
 
@@ -35,3 +36,11 @@ multilib_src_install_all() {
        einstalldocs
        find "${ED}" -type f -name '*.la' -delete || die
 }
+
+pkg_preinst() {
+       preserve_old_lib /usr/$(get_libdir)/libnsl.so.2
+}
+
+pkg_postinst() {
+       preserve_old_lib_notify /usr/$(get_libdir)/libnsl.so.2
+}

Reply via email to