Add support for python3 bindings

- Add requirement to python3 or python3 bindings
- Resolves: rhbz#1014594 - sssd: Support Python 3
This commit is contained in:
Lukas Slebodnik 2015-02-25 13:49:51 +01:00
parent 16372c2465
commit ed82d05320

122
sssd.spec
View File

@ -1,7 +1,7 @@
%global rhel7_minor %(%{__grep} -o "7.[0-9]*" /etc/redhat-release |%{__sed} -s 's/7.//')
# we don't want to provide private python extension libs
%define __provides_exclude_from %{python2_sitearch}/.*\.so$|%{_libdir}/%{name}/modules/libwbclient.so.*$
%define __provides_exclude_from %{python2_sitearch}/.*\.so$|%{python3_sitearch}/.*\.so$|%{_libdir}/%{name}/modules/libwbclient.so.*$
%define _hardened_build 1
@ -27,7 +27,7 @@
Name: sssd
Version: 1.12.4
Release: 1%{?dist}
Release: 2%{?dist}
Group: Applications/System
Summary: System Security Services Daemon
License: GPLv3+
@ -60,7 +60,7 @@ Requires: sssd-ipa = %{version}-%{release}
Requires: sssd-common-pac = %{version}-%{release}
Requires: sssd-ad = %{version}-%{release}
Requires: sssd-proxy = %{version}-%{release}
Requires: python-sssdconfig = %{version}-%{release}
Requires: python3-sssdconfig = %{version}-%{release}
%global servicename sssd
%global sssdstatedir %{_localstatedir}/lib/sss
@ -103,6 +103,7 @@ BuildRequires: krb5-devel
%endif
BuildRequires: c-ares-devel
BuildRequires: python-devel
BuildRequires: python3-devel
BuildRequires: check-devel
BuildRequires: doxygen
BuildRequires: libselinux-devel
@ -197,8 +198,8 @@ Group: Applications/System
License: GPLv3+
Requires: sssd-common = %{version}-%{release}
# required by sss_obfuscate
Requires: python-sss = %{version}-%{release}
Requires: python-sssdconfig = %{version}-%{release}
Requires: python3-sss = %{version}-%{release}
Requires: python3-sssdconfig = %{version}-%{release}
%description tools
Provides userspace tools for manipulating users, groups, and nested groups in
@ -216,29 +217,60 @@ License: GPLv3+
BuildArch: noarch
%description -n python-sssdconfig
Provides python files for manipulation SSSD and IPA configuration files.
Provides python2 files for manipulation SSSD and IPA configuration files.
%package -n python3-sssdconfig
Summary: SSSD and IPA configuration file manipulation classes and functions
Group: Applications/System
License: GPLv3+
BuildArch: noarch
%description -n python3-sssdconfig
Provides python3 files for manipulation SSSD and IPA configuration files.
%package -n python-sss
Summary: Python bindings for sssd
Summary: Python2 bindings for sssd
Group: Development/Libraries
License: LGPLv3+
Requires: sssd-common = %{version}-%{release}
%description -n python-sss
Provides python module for manipulating users, groups, and nested groups in
Provides python2 module for manipulating users, groups, and nested groups in
SSSD when using id_provider = local in /etc/sssd/sssd.conf.
Also provides several other useful python bindings:
Also provides several other useful python2 bindings:
* function for retrieving list of groups user belongs to.
* class for obfuscation of passwords
%package -n python3-sss
Summary: Python3 bindings for sssd
Group: Development/Libraries
License: LGPLv3+
Requires: sssd-common = %{version}-%{release}
%description -n python3-sss
Provides python3 module for manipulating users, groups, and nested groups in
SSSD when using id_provider = local in /etc/sssd/sssd.conf.
Also provides several other useful python3 bindings:
* function for retrieving list of groups user belongs to.
* class for obfuscation of passwords
%package -n python-sss-murmur
Summary: Python bindings for murmur hash function
Summary: Python2 bindings for murmur hash function
Group: Development/Libraries
License: LGPLv3+
%description -n python-sss-murmur
Provides python module for calculating the murmur hash version 3
Provides python2 module for calculating the murmur hash version 3
%package -n python3-sss-murmur
Summary: Python3 bindings for murmur hash function
Group: Development/Libraries
License: LGPLv3+
%description -n python3-sss-murmur
Provides python3 module for calculating the murmur hash version 3
%package ldap
Summary: The LDAP back end of the SSSD
@ -365,7 +397,7 @@ Requires: libipa_hbac = %{version}-%{release}
Utility library to validate FreeIPA HBAC rules for authorization requests
%package -n libipa_hbac-python
Summary: Python bindings for the FreeIPA HBAC Evaluator library
Summary: Python2 bindings for the FreeIPA HBAC Evaluator library
Group: Development/Libraries
License: LGPLv3+
Requires: libipa_hbac = %{version}-%{release}
@ -374,6 +406,16 @@ Requires: libipa_hbac = %{version}-%{release}
The libipa_hbac-python contains the bindings so that libipa_hbac can be
used by Python applications.
%package -n python3-libipa_hbac
Summary: Python3 bindings for the FreeIPA HBAC Evaluator library
Group: Development/Libraries
License: LGPLv3+
Requires: libipa_hbac = %{version}-%{release}
%description -n python3-libipa_hbac
The python3-libipa_hbac contains the bindings so that libipa_hbac can be
used by Python applications.
%package -n libsss_nss_idmap
Summary: Library for SID based lookups
Group: Development/Libraries
@ -394,7 +436,7 @@ Requires: libsss_nss_idmap = %{version}-%{release}
Utility library for SID based lookups
%package -n libsss_nss_idmap-python
Summary: Python bindings for libsss_nss_idmap
Summary: Python2 bindings for libsss_nss_idmap
Group: Development/Libraries
License: LGPLv3+
Requires: libsss_nss_idmap = %{version}-%{release}
@ -403,6 +445,16 @@ Requires: libsss_nss_idmap = %{version}-%{release}
The libsss_nss_idmap-python contains the bindings so that libsss_nss_idmap can
be used by Python applications.
%package -n python3-libsss_nss_idmap
Summary: Python3 bindings for libsss_nss_idmap
Group: Development/Libraries
License: LGPLv3+
Requires: libsss_nss_idmap = %{version}-%{release}
%description -n python3-libsss_nss_idmap
The python3-libsss_nss_idmap contains the bindings so that libsss_nss_idmap can
be used by Python applications.
%package dbus
Summary: The D-Bus responder of the SSSD
Group: Applications/System
@ -503,6 +555,12 @@ autoreconf -ivf
make %{?_smp_mflags} all docs
%check
# the utility patch did not apply changes in file permissions
chmod 755 src/config/SSSDConfigTest.py*.sh \
src/tests/pyhbac-test.py*.sh \
src/tests/pysss_murmur-test.py*.sh
export CK_TIMEOUT_MULTIPLIER=10
make %{?_smp_mflags} check VERBOSE=yes
unset CK_TIMEOUT_MULTIPLIER
@ -510,6 +568,8 @@ unset CK_TIMEOUT_MULTIPLIER
%install
rm -rf $RPM_BUILD_ROOT
sed -i -e 's:/usr/bin/python:/usr/bin/python3:' src/tools/sss_obfuscate
make install DESTDIR=$RPM_BUILD_ROOT
# Prepare language files
@ -545,6 +605,11 @@ do
echo %{python2_sitelib}/`basename $file` >> python2_sssdconfig.lang
done
for file in `ls $RPM_BUILD_ROOT/%{python3_sitelib}/*.egg-info 2> /dev/null`
do
echo %{python3_sitelib}/`basename $file` >> python3_sssdconfig.lang
done
touch sssd_tools.lang
touch sssd_client.lang
for provider in ldap krb5 ipa ad proxy
@ -793,16 +858,32 @@ rm -rf $RPM_BUILD_ROOT
%dir %{python2_sitelib}/SSSDConfig
%{python2_sitelib}/SSSDConfig/*.py*
%files -n python3-sssdconfig -f python3_sssdconfig.lang
%defattr(-,root,root,-)
%dir %{python3_sitelib}/SSSDConfig
%{python3_sitelib}/SSSDConfig/*.py*
%{python3_sitelib}/SSSDConfig/__pycache__/*.py*
%files -n python-sss
%defattr(-,root,root,-)
%{python2_sitearch}/pysss.so
%{python2_sitearch}/_py2sss.so
%files -n python3-sss
%defattr(-,root,root,-)
%{python3_sitearch}/pysss.so
%{python3_sitearch}/_py3sss.so
%files -n python-sss-murmur
%defattr(-,root,root,-)
%{python2_sitearch}/pysss_murmur.so
%{python2_sitearch}/_py2sss_murmur.so
%files -n python3-sss-murmur
%defattr(-,root,root,-)
%{python3_sitearch}/pysss_murmur.so
%{python3_sitearch}/_py3sss_murmur.so
%files -n libsss_idmap
%defattr(-,root,root,-)
%doc src/sss_client/COPYING src/sss_client/COPYING.LESSER
@ -844,11 +925,21 @@ rm -rf $RPM_BUILD_ROOT
%{python2_sitearch}/pysss_nss_idmap.so
%{python2_sitearch}/_py2sss_nss_idmap.so
%files -n python3-libsss_nss_idmap
%defattr(-,root,root,-)
%{python3_sitearch}/pysss_nss_idmap.so
%{python3_sitearch}/_py3sss_nss_idmap.so
%files -n libipa_hbac-python
%defattr(-,root,root,-)
%{python2_sitearch}/pyhbac.so
%{python2_sitearch}/_py2hbac.so
%files -n python3-libipa_hbac
%defattr(-,root,root,-)
%{python3_sitearch}/pyhbac.so
%{python3_sitearch}/_py3hbac.so
%files libwbclient
%defattr(-,root,root,-)
%{_libdir}/%{name}/modules/libwbclient.so.*
@ -933,6 +1024,11 @@ if [ $1 -eq 0 ]; then
fi
%changelog
* Wed Feb 25 2015 Lukas Slebodnik <lslebodn@redhat.com> - 1.12.4-2
- Add support for python3 bindings
- Add requirement to python3 or python3 bindings
- Resolves: rhbz#1014594 - sssd: Support Python 3
* Wed Feb 18 2015 Lukas Slebodnik <lslebodn@redhat.com> - 1.12.4-1
- New upstream release 1.12.4
- https://fedorahosted.org/sssd/wiki/Releases/Notes-1.12.4