Spec URL: https://copr-be.cloud.fedoraproject.org/results/rharwood/python3-gssapi/epel-7-x86_64/00694752-python3-gssapi/python-gssapi.spec SRPM URL: https://copr-be.cloud.fedoraproject.org/results/rharwood/python3-gssapi/epel-7-x86_64/00694752-python3-gssapi/python3-gssapi-1.2.0-3.el7.centos.src.rpm COPR: https://copr.fedorainfracloud.org/coprs/rharwood/python3-gssapi/ Fedora Account System Username: rharwood Description: A set of Python 3 bindings to the GSSAPI C library providing both a high-level pythonic interfaces and a low-level interfaces which more closely matches RFC 2743. Includes support for RFC 2743, as well as multiple extensions. *This is an EPEL7 only package.* Original request bug (against Fedora's python-gssapi): https://bugzilla.redhat.com/show_bug.cgi?id=1529318 Thanks!
https://fedoraproject.org/wiki/Packaging:Guidelines#Spec_File_Naming The spec file must be renamed to python3-gssapi.spec. > # This spec is shared between Fedora, EPEL, and el7. > %global with_python2 0 > %global with_python3 1 Not really, since the Name is different, as well as the file name once you rename it. This spec file will only ever be used for python3. As such, all the python2 parts should be removed, and the with_python3 conditionals aren't necessary. > Version: 1.2.0 > Release: 3%{?dist} You aren't required to match the RHEL version in this package. Feel free to bump this up to the latest 1.3.0 if you like. The release should start at 1 regardless. > BuildRequires: krb5-server >= 1.10 Comparing this to the Rawhide spec file, I think that should be wrapped with a run_tests conditional. > Requires: krb5-libs >= 1.10 Requirements for libkrb5.so.3, libk5crypto.so.3, and libgssapi_krb5.so.2 are automatically added by rpmbuild. RHEL7 has always had krb5 1.11 or higher. You can probably drop this line. > %{?python_provide:%python_provide %{python3}-gssapi} This macro's purpose is to have the subpackage provide the unversioned name (i.e. having python3-gssapi provide python-gssapi in Fedora) once the distribution decides to make that switch. It should not be used in an EPEL package because python34-gssapi will never provide python-gssapi. > %description -n %{python3}-gssapi You repeat the description after this, but you have a _description macro you can use instead. Change it to `%description -n %{python3}-gssapi %_description` and remove the duplicate description text that follows. > %{py3dir} Everything related to this macro can be removed, it isn't necessary. > CFLAGS="%{optflags}" %{__python3} setup.py build Change this to `%py3_build`. > %{__python3} setup.py install --skip-build --root %{buildroot} Change this to `%py3_install`. > # fix permissions on shared objects (mock seems to set them > # to 0775, whereas a normal build gives 0755) I did a mock build without this section, and the permissions were all correctly set to 0755. I think it can be removed. > %{python3_sitearch}/* This is a bit greedy, it would be better to be explicit with `%{python3_sitearch}/gssapi` and `%{python3_sitearch}/gssapi-%{version}-py%{python3_version}.egg-info`.
COPR: https://copr.fedorainfracloud.org/coprs/rharwood/python3-gssapi/build/695614/ spec: https://copr-be.cloud.fedoraproject.org/results/rharwood/python3-gssapi/epel-7-x86_64/00695614-python3-gssapi/python3-gssapi.spec SRPM: https://copr-be.cloud.fedoraproject.org/results/rharwood/python3-gssapi/epel-7-x86_64/00695614-python3-gssapi/python3-gssapi-1.3.0-1.el7.centos.src.rpm This is now targeting 1.3.0 rather than 1.2.0. As a result, I've dropped all patches (including the cython-specific one, since python34-Cython is newer than Cython). Thanks!
This latest spec file builds a python3-gssapi RPM, not a python34-gssapi RPM like it should. The sections `%package -n %{python3}-gssapi`, `%description -n %{python3}-gssapi`, and `%files -n %{python3}-gssapi` must be added back. It's fine to remove the _description macro, that just means you'll have duplicate `%description` and `%description -n %{python3}-gssapi` sections. > CFLAGS="%{optflags}" %py3_build That macro already contains the same CFLAGS variable, it's not necessary to specify it again.
Okay, hopefully I got it this time. COPR: https://copr.fedorainfracloud.org/coprs/rharwood/python3-gssapi/build/698021/ spec: https://copr-be.cloud.fedoraproject.org/results/rharwood/python3-gssapi/epel-7-x86_64/00698021-python3-gssapi/python3-gssapi.spec SRPM: https://copr-be.cloud.fedoraproject.org/results/rharwood/python3-gssapi/epel-7-x86_64/00698021-python3-gssapi/python3-gssapi-1.3.0-1.el7.centos.src.rpm Thanks!
Looks great, thanks for making those fixes. Package APPROVED! I'm changing the product to "Fedora EPEL" so fedrepo-req doesn't error out on you.
(fedrepo-req-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/python3-gssapi. You may commit to the branch "epel7" in about 10 minutes.
python3-gssapi-1.3.0-1.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-9809cff157
python3-gssapi-1.3.0-1.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-9809cff157
python3-gssapi-1.3.0-1.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.