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 <faaland1@llnl.gov>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #11931
This commit is contained in:
Brian Behlendorf 2021-04-27 17:45:40 -07:00
parent 96f04062e4
commit 6f2012c1dc
1 changed files with 16 additions and 0 deletions

View File

@ -172,8 +172,12 @@ Obsoletes: libzpool4
This package contains the zpool library, which provides support This package contains the zpool library, which provides support
for managing zpools for managing zpools
%if %{defined ldconfig_scriptlets}
%ldconfig_scriptlets -n libzpool5
%else
%post -n libzpool5 -p /sbin/ldconfig %post -n libzpool5 -p /sbin/ldconfig
%postun -n libzpool5 -p /sbin/ldconfig %postun -n libzpool5 -p /sbin/ldconfig
%endif
%package -n libnvpair3 %package -n libnvpair3
Summary: Solaris name-value library for Linux 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 process boundaries, between kernel and user space, and can be used
to write self describing data structures on disk. to write self describing data structures on disk.
%if %{defined ldconfig_scriptlets}
%ldconfig_scriptlets -n libnvpair3
%else
%post -n libnvpair3 -p /sbin/ldconfig %post -n libnvpair3 -p /sbin/ldconfig
%postun -n libnvpair3 -p /sbin/ldconfig %postun -n libnvpair3 -p /sbin/ldconfig
%endif
%package -n libuutil3 %package -n libuutil3
Summary: Solaris userland utility library for Linux Summary: Solaris userland utility library for Linux
@ -205,8 +213,12 @@ This library provides a variety of compatibility functions for OpenZFS:
partitioning. partitioning.
* libshare: NFS, SMB, and iSCSI service integration for ZFS. * libshare: NFS, SMB, and iSCSI service integration for ZFS.
%if %{defined ldconfig_scriptlets}
%ldconfig_scriptlets -n libuutil3
%else
%post -n libuutil3 -p /sbin/ldconfig %post -n libuutil3 -p /sbin/ldconfig
%postun -n libuutil3 -p /sbin/ldconfig %postun -n libuutil3 -p /sbin/ldconfig
%endif
# The library version is encoded in the package name. When updating the # The library version is encoded in the package name. When updating the
# version information it is important to add an obsoletes line below for # version information it is important to add an obsoletes line below for
@ -220,8 +232,12 @@ Obsoletes: libzfs4
%description -n libzfs5 %description -n libzfs5
This package provides support for managing ZFS filesystems This package provides support for managing ZFS filesystems
%if %{defined ldconfig_scriptlets}
%ldconfig_scriptlets -n libzfs5
%else
%post -n libzfs5 -p /sbin/ldconfig %post -n libzfs5 -p /sbin/ldconfig
%postun -n libzfs5 -p /sbin/ldconfig %postun -n libzfs5 -p /sbin/ldconfig
%endif
%package -n libzfs5-devel %package -n libzfs5-devel
Summary: Development headers Summary: Development headers