Remove libslapi from the main package
Add "with servers" conditional which includes libslapi Resolves: RHEL-35581
This commit is contained in:
parent
dae8c83930
commit
a099da9d1c
@ -6,6 +6,9 @@
|
|||||||
%global so_ver 2
|
%global so_ver 2
|
||||||
%global so_ver_compat 2
|
%global so_ver_compat 2
|
||||||
|
|
||||||
|
# Build openldap-servers package and its libslapi in openldap-devel and openldap-compat
|
||||||
|
%bcond servers 0
|
||||||
|
|
||||||
# When you change "Version: " to the new major version, remember to change this value too
|
# When you change "Version: " to the new major version, remember to change this value too
|
||||||
%global major_version 2.6
|
%global major_version 2.6
|
||||||
|
|
||||||
@ -14,7 +17,7 @@
|
|||||||
|
|
||||||
Name: openldap
|
Name: openldap
|
||||||
Version: 2.6.7
|
Version: 2.6.7
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: LDAP support libraries
|
Summary: LDAP support libraries
|
||||||
License: OLDAP-2.8
|
License: OLDAP-2.8
|
||||||
URL: http://www.openldap.org/
|
URL: http://www.openldap.org/
|
||||||
@ -47,8 +50,7 @@ Patch6: openldap-switch-to-lt_dlopenadvise-to-get-RTLD_GLOBAL-set.patch
|
|||||||
# System-wide default for CA certs
|
# System-wide default for CA certs
|
||||||
Patch7: openldap-openssl-manpage-defaultCA.patch
|
Patch7: openldap-openssl-manpage-defaultCA.patch
|
||||||
Patch8: openldap-add-export-symbols-LDAP_CONNECTIONLESS.patch
|
Patch8: openldap-add-export-symbols-LDAP_CONNECTIONLESS.patch
|
||||||
Patch9: openldap-slapi-fix-plugin-plugin_pblock_new-usage.patch
|
Patch9: openldap-explicitly-cast-private-values.patch
|
||||||
Patch10: openldap-explicitly-cast-private-values.patch
|
|
||||||
|
|
||||||
# check-password module specific patches
|
# check-password module specific patches
|
||||||
Patch90: check-password-makefile.patch
|
Patch90: check-password-makefile.patch
|
||||||
@ -68,6 +70,10 @@ BuildRequires: perl-devel
|
|||||||
BuildRequires: perl-generators
|
BuildRequires: perl-generators
|
||||||
BuildRequires: perl-interpreter
|
BuildRequires: perl-interpreter
|
||||||
BuildRequires: unixODBC-devel
|
BuildRequires: unixODBC-devel
|
||||||
|
BuildRequires: cracklib-devel
|
||||||
|
BuildRequires: systemd
|
||||||
|
BuildRequires: systemd-rpm-macros
|
||||||
|
%{?sysusers_requires_compat}
|
||||||
|
|
||||||
%description
|
%description
|
||||||
OpenLDAP is an open source suite of LDAP (Lightweight Directory Access
|
OpenLDAP is an open source suite of LDAP (Lightweight Directory Access
|
||||||
@ -99,32 +105,37 @@ Requires: openldap%{?_isa} = %{version}-%{release}
|
|||||||
Provides: libldap-2.4.so.%{so_ver_compat}
|
Provides: libldap-2.4.so.%{so_ver_compat}
|
||||||
Provides: libldap_r-2.4.so.%{so_ver_compat}
|
Provides: libldap_r-2.4.so.%{so_ver_compat}
|
||||||
Provides: liblber-2.4.so.%{so_ver_compat}
|
Provides: liblber-2.4.so.%{so_ver_compat}
|
||||||
|
%if %{with servers}
|
||||||
Provides: libslapi-2.4.so.%{so_ver_compat}
|
Provides: libslapi-2.4.so.%{so_ver_compat}
|
||||||
|
%endif
|
||||||
%else
|
%else
|
||||||
Provides: libldap-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
Provides: libldap-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
||||||
Provides: libldap_r-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
Provides: libldap_r-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
||||||
Provides: liblber-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
Provides: liblber-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
||||||
|
%if %{with servers}
|
||||||
Provides: libslapi-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
Provides: libslapi-2.4.so.%{so_ver_compat}()(%{__isa_bits}bit)
|
||||||
%endif
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
%description compat
|
%description compat
|
||||||
The openldap-compat package contains shared libraries named as libldap-2.4.so,
|
The openldap-compat package contains shared libraries named as libldap-2.4.so,
|
||||||
|
%if %{with servers}
|
||||||
libldap_r-2.4.so, liblber-2.4.so and libslapi-2.4.so.
|
libldap_r-2.4.so, liblber-2.4.so and libslapi-2.4.so.
|
||||||
|
%else
|
||||||
|
libldap_r-2.4.so and liblber-2.4.so
|
||||||
|
%endif
|
||||||
The libraries are just links to the current version shared libraries,
|
The libraries are just links to the current version shared libraries,
|
||||||
and are available for compatibility reasons.
|
and are available for compatibility reasons.
|
||||||
|
|
||||||
|
%if %{with servers}
|
||||||
%package servers
|
%package servers
|
||||||
Summary: LDAP server
|
Summary: LDAP server
|
||||||
License: OpenLDAP
|
License: OpenLDAP
|
||||||
Requires: openldap%{?_isa} = %{version}-%{release}
|
Requires: openldap%{?_isa} = %{version}-%{release}
|
||||||
|
%{?systemd_requires}
|
||||||
Requires(pre): shadow-utils
|
Requires(pre): shadow-utils
|
||||||
BuildRequires: systemd
|
|
||||||
BuildRequires: systemd-rpm-macros
|
|
||||||
%{?sysusers_requires_compat}
|
|
||||||
BuildRequires: cracklib-devel
|
|
||||||
# migrationtools (slapadd functionality):
|
# migrationtools (slapadd functionality):
|
||||||
Provides: ldif2ldbm
|
Provides: ldif2ldbm
|
||||||
%{?systemd_requires}
|
|
||||||
|
|
||||||
%description servers
|
%description servers
|
||||||
OpenLDAP is an open-source suite of LDAP (Lightweight Directory Access
|
OpenLDAP is an open-source suite of LDAP (Lightweight Directory Access
|
||||||
@ -133,6 +144,8 @@ protocols for accessing directory services (usually phone book style
|
|||||||
information, but other information is possible) over the Internet,
|
information, but other information is possible) over the Internet,
|
||||||
similar to the way DNS (Domain Name System) information is propagated
|
similar to the way DNS (Domain Name System) information is propagated
|
||||||
over the Internet. This package contains the slapd server and related files.
|
over the Internet. This package contains the slapd server and related files.
|
||||||
|
# endif servers
|
||||||
|
%endif
|
||||||
|
|
||||||
%package clients
|
%package clients
|
||||||
Summary: LDAP client utilities
|
Summary: LDAP client utilities
|
||||||
@ -160,7 +173,6 @@ pushd openldap-%{version}
|
|||||||
%patch -P7 -p1
|
%patch -P7 -p1
|
||||||
%patch -P8 -p1
|
%patch -P8 -p1
|
||||||
%patch -P9 -p1
|
%patch -P9 -p1
|
||||||
%patch -P10 -p1
|
|
||||||
|
|
||||||
# build smbk5pwd with other overlays
|
# build smbk5pwd with other overlays
|
||||||
ln -s ../../../contrib/slapd-modules/smbk5pwd/smbk5pwd.c servers/slapd/overlays
|
ln -s ../../../contrib/slapd-modules/smbk5pwd/smbk5pwd.c servers/slapd/overlays
|
||||||
@ -206,7 +218,9 @@ pushd openldap-%{version}
|
|||||||
--enable-perl \
|
--enable-perl \
|
||||||
--enable-rewrite \
|
--enable-rewrite \
|
||||||
--enable-rlookups \
|
--enable-rlookups \
|
||||||
|
%if %{with servers}
|
||||||
--enable-slapi \
|
--enable-slapi \
|
||||||
|
%endif
|
||||||
--disable-slp \
|
--disable-slp \
|
||||||
\
|
\
|
||||||
--enable-backends=mod \
|
--enable-backends=mod \
|
||||||
@ -244,7 +258,9 @@ popd
|
|||||||
%install
|
%install
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{_libdir}/
|
mkdir -p %{buildroot}%{_libdir}/
|
||||||
|
%if %{with servers}
|
||||||
install -p -D -m 0644 %{SOURCE6} %{buildroot}%{_sysusersdir}/openldap.conf
|
install -p -D -m 0644 %{SOURCE6} %{buildroot}%{_sysusersdir}/openldap.conf
|
||||||
|
%endif
|
||||||
|
|
||||||
pushd openldap-%{version}
|
pushd openldap-%{version}
|
||||||
%make_install STRIP_OPTS=""
|
%make_install STRIP_OPTS=""
|
||||||
@ -317,10 +333,14 @@ done
|
|||||||
pushd %{buildroot}%{_libdir}
|
pushd %{buildroot}%{_libdir}
|
||||||
v=%{version}
|
v=%{version}
|
||||||
version=$(echo ${v%.[0-9]*})
|
version=$(echo ${v%.[0-9]*})
|
||||||
for lib in liblber libldap libslapi; do
|
for lib in liblber libldap; do
|
||||||
rm -f ${lib}.so
|
rm -f ${lib}.so
|
||||||
ln -s ${lib}.so.%{so_ver} ${lib}.so
|
ln -s ${lib}.so.%{so_ver} ${lib}.so
|
||||||
done
|
done
|
||||||
|
%if %{with servers}
|
||||||
|
rm -f libslapi.so
|
||||||
|
ln -s libslapi.so.%{so_ver} libslapi.so
|
||||||
|
%endif
|
||||||
|
|
||||||
for lib in $(ls | grep libldap); do
|
for lib in $(ls | grep libldap); do
|
||||||
IFS='.'
|
IFS='.'
|
||||||
@ -343,12 +363,14 @@ gcc -shared -o "%{buildroot}%{_libdir}/libldap_r-2.4.so.${so_ver_short_2_4}" -Wl
|
|||||||
-Wl,-soname -Wl,libldap_r-2.4.so.${so_ver_short_2_4} -L "%{buildroot}%{_libdir}" -lldap
|
-Wl,-soname -Wl,libldap_r-2.4.so.${so_ver_short_2_4} -L "%{buildroot}%{_libdir}" -lldap
|
||||||
gcc -shared -o "%{buildroot}%{_libdir}/liblber-2.4.so.${so_ver_short_2_4}" -Wl,--no-as-needed \
|
gcc -shared -o "%{buildroot}%{_libdir}/liblber-2.4.so.${so_ver_short_2_4}" -Wl,--no-as-needed \
|
||||||
-Wl,-soname -Wl,liblber-2.4.so.${so_ver_short_2_4} -L "%{buildroot}%{_libdir}" -llber
|
-Wl,-soname -Wl,liblber-2.4.so.${so_ver_short_2_4} -L "%{buildroot}%{_libdir}" -llber
|
||||||
|
%if %{with servers}
|
||||||
gcc -shared -o "%{buildroot}%{_libdir}/libslapi-2.4.so.${so_ver_short_2_4}" -Wl,--no-as-needed \
|
gcc -shared -o "%{buildroot}%{_libdir}/libslapi-2.4.so.${so_ver_short_2_4}" -Wl,--no-as-needed \
|
||||||
-Wl,-soname -Wl,libslapi-2.4.so.${so_ver_short_2_4} -L "%{buildroot}%{_libdir}" -lslapi
|
-Wl,-soname -Wl,libslapi-2.4.so.${so_ver_short_2_4} -L "%{buildroot}%{_libdir}" -lslapi
|
||||||
|
ln -s libslapi-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
||||||
|
%endif
|
||||||
ln -s libldap-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
ln -s libldap-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
||||||
ln -s libldap_r-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
ln -s libldap_r-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
||||||
ln -s liblber-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
ln -s liblber-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
||||||
ln -s libslapi-2.4.so.{${so_ver_short_2_4},${so_ver_full_2_4}}
|
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
@ -374,16 +396,12 @@ rm %{buildroot}%{_libdir}/*.la # because we do not want files in %{_libdir}/ope
|
|||||||
|
|
||||||
%ldconfig_scriptlets
|
%ldconfig_scriptlets
|
||||||
|
|
||||||
|
%if %{with servers}
|
||||||
%pre servers
|
%pre servers
|
||||||
# create ldap user and group
|
# create ldap user and group
|
||||||
# sysusers.d format https://fedoraproject.org/wiki/Changes/Adopting_sysusers.d_format
|
# sysusers.d format https://fedoraproject.org/wiki/Changes/Adopting_sysusers.d_format
|
||||||
%sysusers_create_compat %{SOURCE6}
|
%sysusers_create_compat %{SOURCE6}
|
||||||
|
|
||||||
getent group ldap &>/dev/null || groupadd -r -g 55 ldap
|
|
||||||
getent passwd ldap &>/dev/null || \
|
|
||||||
useradd -r -g ldap -u 55 -d %{_sharedstatedir}/ldap -s /sbin/nologin -c "OpenLDAP server" ldap
|
|
||||||
exit 0
|
|
||||||
|
|
||||||
%post servers
|
%post servers
|
||||||
%systemd_post slapd.service
|
%systemd_post slapd.service
|
||||||
|
|
||||||
@ -414,6 +432,8 @@ exit 0
|
|||||||
|
|
||||||
%postun servers
|
%postun servers
|
||||||
%systemd_postun_with_restart slapd.service
|
%systemd_postun_with_restart slapd.service
|
||||||
|
%endif
|
||||||
|
# endif servers
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc openldap-%{version}/ANNOUNCEMENT
|
%doc openldap-%{version}/ANNOUNCEMENT
|
||||||
@ -427,10 +447,13 @@ exit 0
|
|||||||
%dir %{_libexecdir}/openldap/
|
%dir %{_libexecdir}/openldap/
|
||||||
%{_libdir}/liblber.so.*
|
%{_libdir}/liblber.so.*
|
||||||
%{_libdir}/libldap.so.*
|
%{_libdir}/libldap.so.*
|
||||||
|
%if %{with servers}
|
||||||
%{_libdir}/libslapi.so.*
|
%{_libdir}/libslapi.so.*
|
||||||
|
%endif
|
||||||
%{_mandir}/man5/ldif.5*
|
%{_mandir}/man5/ldif.5*
|
||||||
%{_mandir}/man5/ldap.conf.5*
|
%{_mandir}/man5/ldap.conf.5*
|
||||||
|
|
||||||
|
%if %{with servers}
|
||||||
%files servers
|
%files servers
|
||||||
%doc openldap-%{version}/contrib/slapd-modules/smbk5pwd/README.smbk5pwd
|
%doc openldap-%{version}/contrib/slapd-modules/smbk5pwd/README.smbk5pwd
|
||||||
%doc openldap-%{version}/doc/guide/admin/*.html
|
%doc openldap-%{version}/doc/guide/admin/*.html
|
||||||
@ -494,6 +517,24 @@ exit 0
|
|||||||
%{_sysusersdir}/openldap.conf
|
%{_sysusersdir}/openldap.conf
|
||||||
# obsolete configuration
|
# obsolete configuration
|
||||||
%ghost %config(noreplace,missingok) %attr(0640,ldap,ldap) %{_sysconfdir}/openldap/slapd.conf
|
%ghost %config(noreplace,missingok) %attr(0640,ldap,ldap) %{_sysconfdir}/openldap/slapd.conf
|
||||||
|
%else
|
||||||
|
%exclude %{_datadir}/openldap-servers/
|
||||||
|
%exclude %{_libdir}/openldap/
|
||||||
|
%exclude %{_libexecdir}/openldap/check-config.sh
|
||||||
|
%exclude %{_libexecdir}/openldap/functions
|
||||||
|
%exclude %{_mandir}/man5/slapd*.5*
|
||||||
|
%exclude %{_mandir}/man5/slapo-*.5*
|
||||||
|
%exclude %{_mandir}/man5/lloadd.conf.5*
|
||||||
|
%exclude %{_mandir}/man5/slappw-argon2.5*
|
||||||
|
%exclude %{_mandir}/man8/*
|
||||||
|
%exclude %{_sbindir}/sl*
|
||||||
|
%exclude %{_sysconfdir}/openldap/check_password.conf
|
||||||
|
%exclude %{_sysconfdir}/openldap/schema
|
||||||
|
%exclude %{_tmpfilesdir}/slapd.conf
|
||||||
|
%exclude %{_unitdir}/slapd.service
|
||||||
|
%endif
|
||||||
|
# endif servers
|
||||||
|
|
||||||
|
|
||||||
%files clients
|
%files clients
|
||||||
%{_bindir}/*
|
%{_bindir}/*
|
||||||
@ -503,7 +544,9 @@ exit 0
|
|||||||
%doc openldap-%{version}/doc/drafts openldap-%{version}/doc/rfc
|
%doc openldap-%{version}/doc/drafts openldap-%{version}/doc/rfc
|
||||||
%{_libdir}/liblber.so
|
%{_libdir}/liblber.so
|
||||||
%{_libdir}/libldap.so
|
%{_libdir}/libldap.so
|
||||||
|
%if %{with servers}
|
||||||
%{_libdir}/libslapi.so
|
%{_libdir}/libslapi.so
|
||||||
|
%endif
|
||||||
%{_includedir}/*
|
%{_includedir}/*
|
||||||
%{_libdir}/pkgconfig/lber.pc
|
%{_libdir}/pkgconfig/lber.pc
|
||||||
%{_libdir}/pkgconfig/ldap.pc
|
%{_libdir}/pkgconfig/ldap.pc
|
||||||
@ -513,9 +556,15 @@ exit 0
|
|||||||
%{_libdir}/libldap-2.4*.so.*
|
%{_libdir}/libldap-2.4*.so.*
|
||||||
%{_libdir}/libldap_r-2.4*.so.*
|
%{_libdir}/libldap_r-2.4*.so.*
|
||||||
%{_libdir}/liblber-2.4*.so.*
|
%{_libdir}/liblber-2.4*.so.*
|
||||||
|
%if %{with servers}
|
||||||
%{_libdir}/libslapi-2.4*.so.*
|
%{_libdir}/libslapi-2.4*.so.*
|
||||||
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jun 24 2024 Simon Pichugin <spichugi@redhat.com> - 2.6.7-2
|
||||||
|
- Remove libslapi from the main package (RHEL-35581)
|
||||||
|
- Add "servers" conditional which includes libslapi
|
||||||
|
|
||||||
* Fri Feb 9 2024 Simon Pichugin <spichugi@redhat.com> - 2.6.7-1
|
* Fri Feb 9 2024 Simon Pichugin <spichugi@redhat.com> - 2.6.7-1
|
||||||
- Rebase to version 2.6.7 (rhbz#2261163)
|
- Rebase to version 2.6.7 (rhbz#2261163)
|
||||||
- Use systemd-sysusers for ldap user and group (rhbz#2173965)
|
- Use systemd-sysusers for ldap user and group (rhbz#2173965)
|
||||||
|
Loading…
Reference in New Issue
Block a user