diff --git a/disable-rpaths.diff b/disable-rpaths.diff deleted file mode 100644 index c80976a..0000000 --- a/disable-rpaths.diff +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/siputils.py b/siputils.py -index a29300d..df58650 100644 ---- a/siputils.py -+++ b/siputils.py -@@ -927,6 +927,7 @@ class Makefile: - rpaths is the cannonical list of rpaths. - """ - flags = [] -+ return flags - prefix = self.optional_string("RPATH") - - if prefix == "": diff --git a/disable-strip.diff b/disable-strip.diff deleted file mode 100644 index 4809243..0000000 --- a/disable-strip.diff +++ /dev/null @@ -1,30 +0,0 @@ -commit c59ca3fa7a63c7c13fb6be2d9642feeeaef603e2 -Author: Christophe Giboudeaux -Date: Sun Oct 21 11:29:04 2018 +0200 - - Don't strip files. - - This prevents the debug package from being created. - -Index: sip-4.19.24/siputils.py -=================================================================== ---- sip-4.19.24.orig/siputils.py -+++ sip-4.19.24/siputils.py -@@ -1474,7 +1474,7 @@ class ModuleMakefile(Makefile): - """ - def __init__(self, configuration, build_file, install_dir=None, static=0, - console=0, qt=0, opengl=0, threaded=0, warnings=1, debug=0, -- dir=None, makefile="Makefile", installs=None, strip=1, -+ dir=None, makefile="Makefile", installs=None, strip=0, - export_all=0, universal=None, arch=None, - deployment_target=None): - """Initialise an instance of a module Makefile. -@@ -1785,7 +1785,7 @@ class SIPModuleMakefile(ModuleMakefile): - """ - def __init__(self, configuration, build_file, install_dir=None, static=0, - console=0, qt=0, opengl=0, threaded=0, warnings=1, debug=0, -- dir=None, makefile="Makefile", installs=None, strip=1, -+ dir=None, makefile="Makefile", installs=None, strip=0, - export_all=0, universal=None, arch=None, prot_is_public=0, - deployment_target=None): - """Initialise an instance of a SIP generated module Makefile. diff --git a/python-sip.changes b/python-sip.changes index dcf8126..7f437a9 100644 --- a/python-sip.changes +++ b/python-sip.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Nov 5 09:40:25 UTC 2020 - Benjamin Greiner + +- dropped patches: disable-rpaths.diff disable-strip.diff not + applicable to SIP5 codebase + ------------------------------------------------------------------- Sun Oct 25 21:22:24 UTC 2020 - Benjamin Greiner @@ -5,6 +11,66 @@ Sun Oct 25 21:22:24 UTC 2020 - Benjamin Greiner - clean up alternatives: use %python_clone -a - only make install in siplib for PyQt4.sip and PyQt5.sip libraries +------------------------------------------------------------------- +Mon Aug 31 00:26:30 UTC 2020 - Benjamin Greiner + +- Update to 5.4.0 + * The latest version of the module ABI is v12.8.1. + * Python v3.9 is supported. + * Added support for building the sip module for PyPy. + * Added the 'distinfo' project option to allow the creation of a .dist-info + directory to be disabled. sip-install has a corresponding '--no-distinfo' + command line option. + * Added 'SIP_VERSION' and 'SIP_VERSION_STR' to the 'sipbuild' module API. + * Bug fixes. +- Legacy sip4 is now in python-sip4 package + +------------------------------------------------------------------- +Fri Aug 28 19:55:11 UTC 2020 - Benjamin Greiner + +- Update to 5.3.0 + * The latest version of the module ABI is v12.8.0. + * Added the 'get_metadata_overrides()' and 'get_sip_distinfo_command_line()' + methods to the 'Project' class, and the '--metadata' command line option to + sip-distinfo. Together they allow a project.py script to override any + PEP 566 metadata values specified in the pyproject.toml file. + * Added the 'gui-scripts' project option to specify a list of GUI entry + points to create. sip-distinfo has a corresponding '--gui-script' command + line option. + * Added the 'minimum-macos-version' project option to specify the minimum + version of macOS supported by the project. +- Changelogs of intermediate releases: + v5.2.0 released 10th April 2020 + * Added the 'manylinux' project option to disable the support for 'manylinux' + part of the platform tag to be used in the name of a wheel. sip-wheel has + a corresponding '--no-manylinux' command line option. + * Added the 'wheels-include' project option to specify additional files and + directories to be included in a wheel. + v5.1.2 released 3rd April 2020 + * The latest version of the module ABI is v12.7.2. + * The examples are now included in the sdist. + * Bug fixes. + v5.1.1 released 31st January 2020 + * Bug fixes. + v5.1.0 released 6th January 2020 + * Added the 'minimum-glibc-version' project option to specify the minimum + GLIBC version required by the project. This is used to determine the + correct platform tag to use for Linux wheels. + * Added the 'build-tag' project option to specify the build tag to be used in + the name of a wheel. sip-wheel has a corresponding '--build-tag' command + line option. + * The values of list options in pyproject.toml files can now contain + environment markers as defined in PEP 508. + * Added Project.project_path() to the API. + released v5.0.1 19th December 2019 + * Bug fixes. + releasesd v5.0.0 4th October 2019 + * The release of SIP v5. +- The new major release uses Python setuptools + * Allows to simplify the specfile tremendously + * The abi macros and python-sip(api) are now provided by python-qt5-sip + * Remove -common and -devel package. + ------------------------------------------------------------------- Thu Aug 27 19:26:56 UTC 2020 - Benjamin Greiner diff --git a/python-sip.spec b/python-sip.spec index 21835aa..1914570 100644 --- a/python-sip.spec +++ b/python-sip.spec @@ -16,26 +16,26 @@ # -%define python_sip_api 12.7 %{?!python_module:%define python_module() python-%{**} python3-%{**}} +%define skip_python2 1 Name: python-sip -Version: 4.19.24 +Version: 5.4.0 Release: 0 -Summary: SIP tool to use python sip bindings +Summary: A Python bindings generator for C/C++ libraries License: GPL-2.0-only OR GPL-3.0-only OR SUSE-SIP Group: Development/Libraries/Python URL: https://www.riverbankcomputing.com/software/sip -Source0: https://www.riverbankcomputing.com/static/Downloads/sip/%{version}/sip-%{version}.tar.gz -# PATCH-FIX-OPENSUSE disable-rpaths.diff -- Disable rpaths -Patch0: disable-rpaths.diff -# PATCH-FIX-OPENSUSE disable-strip.diff -- Disable stripping -Patch1: disable-strip.diff +Source0: https://files.pythonhosted.org/packages/source/s/sip/sip-%{version}.tar.gz BuildRequires: %{python_module devel} +BuildRequires: %{python_module packaging} +BuildRequires: %{python_module qt5-sip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module toml} +BuildRequires: %{pythons >= 3.5.1} BuildRequires: c++_compiler BuildRequires: fdupes BuildRequires: python-rpm-macros -Requires: %{name}-common = %{version} -Provides: python-sip(api) = %{python_sip_api} + %python_subpackages %description @@ -45,16 +45,19 @@ Python bindings for the Qt toolkit, but can be used to create bindings for any C or C++ library. %package devel -Summary: SIP tool to create python bindings +Summary: A Python bindings generator for C/C++ libraries -- dummy devel package Group: Development/Libraries/Python -Requires: %{name} = %{version} -Requires: %{name}-common = %{version} Requires: c++_compiler +Requires: python >= 3.5.1 Requires: python-devel +# python-qt5-sip provides the QtPy5.sip module and macros +Requires: python-qt5-sip +Requires: python-setuptools +Requires: python-toml +Provides: %{name} = %{version}-%{release} +Obsoletes: %{name} < %{version}-%{release} Requires(post): update-alternatives Requires(postun): update-alternatives -Provides: %{name}-bin = %{version} -Obsoletes: %{name}-bin < %{version} %description devel SIP is a tool that makes it very easy to create Python bindings for C @@ -65,188 +68,58 @@ for any C or C++ library. This package contains all the developer tools you need to create your own sip bindings. -%package -n %{name}-doc -Summary: SIP tool to create python bindings -- common documentation +%package -n python-sip-doc +Summary: A Python bindings generator for C/C++ libraries -- common documentation Group: Development/Libraries/Python -Provides: %{python_module sip-doc = %{version}} +Provides: %{python_module sip-doc = %{version}-%{release}} -%description -n %{name}-doc +%description -n python-sip-doc SIP is a tool that makes it very easy to create Python bindings for C and C++ libraries. It was originally developed to create PyQt, the Python bindings for the Qt toolkit, but can be used to create bindings for any C or C++ library. -This package contains common documentation files shared between python2 -and python3 versions of sip. - -%package -n %{name}-common -Summary: SIP tool to create python bindings -- common files -Group: Development/Libraries/Python -Provides: %{python_module sip-common = %{version}} - -%description -n %{name}-common -SIP is a tool that makes it very easy to create Python bindings for C -and C++ libraries. It was originally developed to create PyQt, the -Python bindings for the Qt toolkit, but can be used to create bindings -for any C or C++ library. - -This package contains common files shared between python2 and python3 -versions of sip. +This package contains the documentation and example files. %prep %setup -q -n sip-%{version} %autopatch -p1 -sip_major=$(grep "define SIP_API_MAJOR_NR" siplib/sip.h | awk '{print $3}') -sip_minor=$(grep "define SIP_API_MINOR_NR" siplib/sip.h | awk '{print $3}') - -if test "%{python_sip_api}" != "$sip_major.$sip_minor"; then - echo "API version was changed to $sip_major.$sip_minor" - exit 1 -fi - %build -export CFLAGS="%{optflags}" -export CXXFLAGS="%{optflags}" - -%{python_expand mkdir build_%{$python_bin_suffix} -pushd build_%{$python_bin_suffix} - -# Link against libpython (fixes bnc#756282 and bnc#721280) -ldlibrary=`$python -c "import sysconfig as s;print(s.get_config_var('LDLIBRARY')[3:-3])"` -$python ../configure.py --debug \ - CFLAGS+="%{optflags}" \ - CXXFLAGS+="%{optflags}" \ - LIBS+="-l$ldlibrary" - -make %{?_smp_mflags} - -# Point to the correct location for the documentation files -cp ../README ./ -sed -i 's/"doc" directory/"doc" directory of package %{$python_prefix}-sip-devel/' README - -popd -} - -# Now build the PyQt4 sip module -%{python_expand mkdir build_PyQt4_%{$python_bin_suffix} -pushd build_PyQt4_%{$python_bin_suffix} - -# Link against libpython -ldlibrary=`$python -c "import sysconfig as s;print(s.get_config_var('LDLIBRARY')[3:-3])"` -$python ../configure.py --debug \ - --sip-module=PyQt4.sip \ - CFLAGS+="%{optflags}" \ - CXXFLAGS+="%{optflags}" \ - LIBS+="-l$ldlibrary" \ - --no-dist-info - -make %{?_smp_mflags} - -popd -} - -# Now build the PyQt5 sip module -%{python_expand mkdir build_PyQt5_%{$python_bin_suffix} -pushd build_PyQt5_%{$python_bin_suffix} - -# Link against libpython (fixes bnc#756282 and bnc#721280) -ldlibrary=`$python -c "import sysconfig as s;print(s.get_config_var('LDLIBRARY')[3:-3])"` -$python ../configure.py --debug \ - --sip-module=PyQt5.sip \ - CFLAGS+="%{optflags}" \ - CXXFLAGS+="%{optflags}" \ - LIBS+="-l$ldlibrary" \ - --no-dist-info - -make %{?_smp_mflags} - -popd -} +%python_build %install -%{python_expand pushd build_%{$python_bin_suffix} -%make_install -popd - -pushd build_PyQt4_%{$python_bin_suffix}/siplib -%make_install -popd - -pushd build_PyQt5_%{$python_bin_suffix}/siplib -%make_install -popd - -# Make sure the correct sip executable is picked -sed -i 's,%{_bindir}/sip,%{_bindir}/sip-%{$python_bin_suffix},' %{buildroot}%{$python_sitearch}/sipconfig.py -} - -mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d - -echo "%%python_sip_api_ver %{python_sip_api}" > %{buildroot}%{_rpmconfigdir}/macros.d/macros.python_all-sip - -%{python_expand # flavor specific macros -echo "%%requires_$python_sip_api Requires: %{$python_prefix}-sip(api) = %%python_sip_api_ver" \ - > %{buildroot}%{_rpmconfigdir}/macros.d/macros.%{$python_prefix}-sip -} -# macro for old python2 name -%if 0%{?have_python2} && ! 0%{?skip_python2} -echo "%%requires_python_sip_api Requires: %{python2_prefix}-sip(api) = %%python_sip_api_ver" \ - >> %{buildroot}%{_rpmconfigdir}/macros.d/macros.%{python2_prefix}-sip -%endif -# additional: default python3 in case of multiple python3 flavors -%if 0%{?have_python3} && ! 0%{?skip_python3} -grep '%%requires_%{python3_prefix}_sip_api' %{buildroot}%{_rpmconfigdir}/macros.d/macros.*-sip || \ - echo "%%requires_%{python3_prefix}_sip_api Requires: %{python_prefix}-sip(api) = %%python_sip_api_ver" >> %{buildroot}%{_rpmconfigdir}/macros.d/macros.python_all-sip -%endif - -%{python_expand # TODO replace with python_compileall as soon as it is available -$python -m compileall %{buildroot}%{$python_sitearch} -$python -O -m compileall %{buildroot}%{$python_sitearch} -} -%python_clone -a %{buildroot}/%{_bindir}/sip +%python_install +%python_clone -a %{buildroot}%{_bindir}/sip-build +%python_clone -a %{buildroot}%{_bindir}/sip-distinfo +%python_clone -a %{buildroot}%{_bindir}/sip-install +%python_clone -a %{buildroot}%{_bindir}/sip-module +%python_clone -a %{buildroot}%{_bindir}/sip-sdist +%python_clone -a %{buildroot}%{_bindir}/sip-wheel +%python_clone -a %{buildroot}%{_bindir}/sip5 %python_expand %fdupes %{buildroot}%{$python_sitearch} -mkdir -p %{buildroot}%{_datadir}/sip +%fdupes -s doc %post devel -%python_install_alternative sip +%python_install_alternative sip-build sip-distinfo sip-install sip-module sip-sdist sip-wheel sip5 %postun devel -%python_uninstall_alternative sip - -%files %{python_files} -%license LICENSE* -%doc ChangeLog NEWS -%doc build_%{python_bin_suffix}/README -%{python_sitearch}/sip.so -%dir %{python_sitearch}/PyQt4 -%{python_sitearch}/PyQt4/sip.so -%dir %{python_sitearch}/PyQt5 -%{python_sitearch}/PyQt5/sip.so -%{python_sitearch}/sip-%{version}.dist-info/ +%python_uninstall_alternative sip-build %files %{python_files devel} %license LICENSE* -%{_rpmconfigdir}/macros.d/macros.%{python_prefix}-sip -%python_alternative %{_bindir}/sip -%dir %{python_sitearch}/PyQt4 -%{python_sitearch}/PyQt4/sip.pyi -%dir %{python_sitearch}/PyQt5 -%{python_sitearch}/PyQt5/sip.pyi -%{_includedir}/python%{python_bin_suffix}*/sip.h -%{python_sitearch}/sipconfig.py* -%{python_sitearch}/sipdistutils.py* -%{python_sitearch}/sip.pyi -%pycache_only %{python_sitearch}/__pycache__/sipconfig.*.py* -%pycache_only %{python_sitearch}/__pycache__/sipdistutils.*.py* +%python_alternative %{_bindir}/sip-build +%python_alternative %{_bindir}/sip-distinfo +%python_alternative %{_bindir}/sip-install +%python_alternative %{_bindir}/sip-module +%python_alternative %{_bindir}/sip-sdist +%python_alternative %{_bindir}/sip-wheel +%python_alternative %{_bindir}/sip5 +%{python_sitearch}/sipbuild +%{python_sitearch}/sip-%{version}-py*.egg-info -%files -n python-sip-doc +%files doc %license LICENSE* %doc doc/ -%files -n python-sip-common -%license LICENSE* -%{_rpmconfigdir}/macros.d/macros.python_all-sip -%{_datadir}/sip/ - %changelog diff --git a/sip-4.19.24.tar.gz b/sip-4.19.24.tar.gz deleted file mode 100644 index 81944b8..0000000 --- a/sip-4.19.24.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:edcd3790bb01938191eef0f6117de0bf56d1136626c0ddb678f3a558d62e41e5 -size 1055461 diff --git a/sip-5.4.0.tar.gz b/sip-5.4.0.tar.gz new file mode 100644 index 0000000..ed49de4 --- /dev/null +++ b/sip-5.4.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4282ab45948674f5ef74278a8e70d1302f65c95b519a0af19409002f5715d641 +size 1106676