diff --git a/SPECS/python-pymongo.spec b/SPECS/python-pymongo.spec index 71cb6c8..9681512 100644 --- a/SPECS/python-pymongo.spec +++ b/SPECS/python-pymongo.spec @@ -1,3 +1,6 @@ +%bcond_without python3 +%bcond_with python36_module + # Only build on architectures supported by mongodb in RHEL8 %global mongodb_arches x86_64 ppc64le aarch64 s390x %{arm} @@ -19,7 +22,7 @@ Name: python-pymongo Version: 3.6.1 -Release: 5%{?dist} +Release: 9%{?dist} # All code is ASL 2.0 except bson/time64*.{c,h} which is MIT License: ASL 2.0 and MIT @@ -51,15 +54,22 @@ BuildRequires: python2-devel BuildRequires: python2-setuptools %endif # with python2 +%if %{with python3} +%if %{with python36_module} +BuildRequires: python36-devel +BuildRequires: python36-rpm-macros +%else BuildRequires: python3-devel +%endif BuildRequires: python3-setuptools BuildRequires: python3-sphinx - +%endif %description The Python driver for MongoDB. +%if %{with python3} %package doc BuildArch: noarch Summary: Documentation for python-pymongo @@ -67,6 +77,7 @@ Summary: Documentation for python-pymongo %description doc Documentation for python-pymongo. +%endif %if %{with python2} %package -n python2-bson @@ -81,6 +92,7 @@ embedding of objects and arrays within other objects and arrays. %endif # with python2 +%if %{with python3} %package -n python3-bson Summary: Python bson library %{?python_provide:%python_provide python3-bson} @@ -91,6 +103,7 @@ BSON is a binary-encoded serialization of JSON-like documents. BSON is designed to be lightweight, traversable, and efficient. BSON, like JSON, supports the embedding of objects and arrays within other objects and arrays. This package contains the python3 version of this module. +%endif %if %{with python2} @@ -98,7 +111,6 @@ contains the python3 version of this module. Summary: Python driver for MongoDB Requires: python2-bson%{?_isa} = %{version}-%{release} -Provides: pymongo = %{version}-%{release} Obsoletes: pymongo <= 2.1.1-4 %{?python_provide:%python_provide python2-pymongo} @@ -109,6 +121,7 @@ this module. %endif # with python2 +%if %{with python3} %package -n python3-pymongo Summary: Python driver for MongoDB Requires: python3-bson%{?_isa} = %{version}-%{release} @@ -118,12 +131,12 @@ Requires: python3-bson%{?_isa} = %{version}-%{release} %description -n python3-pymongo The Python driver for MongoDB. This package contains the python3 version of this module. +%endif %if %{with python2} %package -n python2-pymongo-gridfs Summary: Python GridFS driver for MongoDB Requires: python2-pymongo%{?_isa} = %{version}-%{release} -Provides: pymongo-gridfs = %{version}-%{release} Obsoletes: pymongo-gridfs <= 2.1.1-4 %{?python_provide:%python_provide python2-pymongo-gridfs} @@ -133,6 +146,7 @@ GridFS is a storage specification for large objects in MongoDB. %endif # with python2 +%if %{with python3} %package -n python3-pymongo-gridfs Summary: Python GridFS driver for MongoDB Requires: python3-pymongo%{?_isa} = %{version}-%{release} @@ -142,6 +156,7 @@ Requires: python3-pymongo%{?_isa} = %{version}-%{release} %description -n python3-pymongo-gridfs GridFS is a storage specification for large objects in MongoDB. This package contains the python3 version of this module. +%endif %prep @@ -158,11 +173,13 @@ rm pymongo/ssl_match_hostname.py %py2_build %endif # with python2 +%if %{with python3} %py3_build pushd doc SPHINXBUILD=sphinx-build-3 make %{?_smp_mflags} html popd +%endif %install @@ -173,10 +190,12 @@ chmod 755 %{buildroot}%{python2_sitearch}/bson/*.so chmod 755 %{buildroot}%{python2_sitearch}/pymongo/*.so %endif # with python2 +%if %{with python3} %py3_install # Fix permissions chmod 755 %{buildroot}%{python3_sitearch}/bson/*.so chmod 755 %{buildroot}%{python3_sitearch}/pymongo/*.so +%endif %if %{with tests} @@ -202,16 +221,20 @@ done %{__python2} setup.py test || (pkill mongod && exit 1) %endif # with python2 +%if %{with python3} %{__python3} setup.py test || (pkill mongod && exit 1) +%endif pkill mongod %endif %endif # with tests +%if %{with python3} %files doc %license LICENSE %doc doc/_build/html/* +%endif %if %{with python2} %files -n python2-bson @@ -221,10 +244,12 @@ pkill mongod %endif # with python2 +%if %{with python3} %files -n python3-bson %license LICENSE %doc README.rst %{python3_sitearch}/bson +%endif %if %{with python2} %files -n python2-pymongo @@ -235,11 +260,13 @@ pkill mongod %endif # with python2 +%if %{with python3} %files -n python3-pymongo %license LICENSE %doc README.rst %{python3_sitearch}/pymongo %{python3_sitearch}/pymongo-%{version}-*.egg-info +%endif %if %{with python2} %files -n python2-pymongo-gridfs @@ -249,16 +276,33 @@ pkill mongod %endif # with python2 +%if %{with python3} %files -n python3-pymongo-gridfs %license LICENSE %doc README.rst %{python3_sitearch}/gridfs +%endif %changelog -* Tue Jun 18 2019 Johnny Hughes - 3.6.1-5 +* Tue Jun 18 2019 Johnny Hughes - 3.6.1-9 - build on armhfp +* Wed Apr 03 2019 Tomas Orsava - 3.6.1-9 +- Bumping due to problems with modular RPM upgrade path (#1695587) +- Related: rhbz#1693974 + +* Tue Oct 09 2018 Lumír Balhar - 3.6.1-8 +- Remove unversioned provides +- Resolves: rhbz#1628242 + +* Tue Jul 31 2018 Lumír Balhar - 3.6.1-7 +- Make possible to disable python3 subpackage + +* Wed Jul 18 2018 Tomas Orsava - 3.6.1-6 +- BuildRequire the python36-devel package when building for the python36 module +- BuildRequire also python36-rpm-macros as part of the python36 module build + * Tue Jun 26 2018 Tomas Orsava - 3.6.1-5 - Fix checking of running mongod - test only open ports (not I-Node number)