From 919714554b99229b8c1804256443f2cd89e7e5c0 Mon Sep 17 00:00:00 2001 From: Brian Behlendorf Date: Tue, 27 Apr 2021 17:45:40 -0700 Subject: [PATCH] zfs.spec.in: remove post ldconfig scriptlets In Fedora 28 the packaging guidelines were changed such that ldconfig should no longer be called in either the %post or %postun scriptlets. Instead the new compatibility macros %ldconfig_post, %ldconfig_postun, and %ldocnfig_scriptlets should be used. Since we only currently support Fedora 31 and newer, we could drop %post or %postun scriptlets entirely according to the guidelines. However, since we also use the same spec file for CentOS / RHEL it's convenient to call the macros which are available starting with CentOS / RHEL 8. For CentOS / RHEL 7 we must still call ldconfig in the traditional way. https://fedoraproject.org/wiki/Changes/Removing_ldconfig_scriptlets Reviewed-by: Olaf Faaland Reviewed-by: Tony Hutter Signed-off-by: Brian Behlendorf Closes #11931 --- rpm/generic/zfs.spec.in | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/rpm/generic/zfs.spec.in b/rpm/generic/zfs.spec.in index 997f62332c..6dcce63291 100644 --- a/rpm/generic/zfs.spec.in +++ b/rpm/generic/zfs.spec.in @@ -172,8 +172,12 @@ Obsoletes: libzpool4 This package contains the zpool library, which provides support for managing zpools +%if %{defined ldconfig_scriptlets} +%ldconfig_scriptlets -n libzpool5 +%else %post -n libzpool5 -p /sbin/ldconfig %postun -n libzpool5 -p /sbin/ldconfig +%endif %package -n libnvpair3 Summary: Solaris name-value library for Linux @@ -186,8 +190,12 @@ pairs. This functionality is used to portably transport data across process boundaries, between kernel and user space, and can be used to write self describing data structures on disk. +%if %{defined ldconfig_scriptlets} +%ldconfig_scriptlets -n libnvpair3 +%else %post -n libnvpair3 -p /sbin/ldconfig %postun -n libnvpair3 -p /sbin/ldconfig +%endif %package -n libuutil3 Summary: Solaris userland utility library for Linux @@ -205,8 +213,12 @@ This library provides a variety of compatibility functions for OpenZFS: partitioning. * libshare: NFS, SMB, and iSCSI service integration for ZFS. +%if %{defined ldconfig_scriptlets} +%ldconfig_scriptlets -n libuutil3 +%else %post -n libuutil3 -p /sbin/ldconfig %postun -n libuutil3 -p /sbin/ldconfig +%endif # The library version is encoded in the package name. When updating the # version information it is important to add an obsoletes line below for @@ -220,8 +232,12 @@ Obsoletes: libzfs4 %description -n libzfs5 This package provides support for managing ZFS filesystems +%if %{defined ldconfig_scriptlets} +%ldconfig_scriptlets -n libzfs5 +%else %post -n libzfs5 -p /sbin/ldconfig %postun -n libzfs5 -p /sbin/ldconfig +%endif %package -n libzfs5-devel Summary: Development headers