Luca Beltrame 2020-11-05 10:42:18 +00:00 committed by Git OBS Bridge
parent 8e2589fe41
commit 88c4981d39
6 changed files with 114 additions and 217 deletions

View File

@ -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 == "":

View File

@ -1,30 +0,0 @@
commit c59ca3fa7a63c7c13fb6be2d9642feeeaef603e2
Author: Christophe Giboudeaux <christophe@krop.fr>
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.

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Thu Nov 5 09:40:25 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
- dropped patches: disable-rpaths.diff disable-strip.diff not
applicable to SIP5 codebase
------------------------------------------------------------------- -------------------------------------------------------------------
Sun Oct 25 21:22:24 UTC 2020 - Benjamin Greiner <code@bnavigator.de> Sun Oct 25 21:22:24 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
@ -5,6 +11,66 @@ Sun Oct 25 21:22:24 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
- clean up alternatives: use %python_clone -a - clean up alternatives: use %python_clone -a
- only make install in siplib for PyQt4.sip and PyQt5.sip libraries - only make install in siplib for PyQt4.sip and PyQt5.sip libraries
-------------------------------------------------------------------
Mon Aug 31 00:26:30 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
- 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 <code@bnavigator.de>
- 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 <code@bnavigator.de> Thu Aug 27 19:26:56 UTC 2020 - Benjamin Greiner <code@bnavigator.de>

View File

@ -16,26 +16,26 @@
# #
%define python_sip_api 12.7
%{?!python_module:%define python_module() python-%{**} python3-%{**}} %{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
Name: python-sip Name: python-sip
Version: 4.19.24 Version: 5.4.0
Release: 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 License: GPL-2.0-only OR GPL-3.0-only OR SUSE-SIP
Group: Development/Libraries/Python Group: Development/Libraries/Python
URL: https://www.riverbankcomputing.com/software/sip URL: https://www.riverbankcomputing.com/software/sip
Source0: https://www.riverbankcomputing.com/static/Downloads/sip/%{version}/sip-%{version}.tar.gz Source0: https://files.pythonhosted.org/packages/source/s/sip/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
BuildRequires: %{python_module devel} 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: c++_compiler
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: python-rpm-macros BuildRequires: python-rpm-macros
Requires: %{name}-common = %{version}
Provides: python-sip(api) = %{python_sip_api}
%python_subpackages %python_subpackages
%description %description
@ -45,16 +45,19 @@ Python bindings for the Qt toolkit, but can be used to create bindings
for any C or C++ library. for any C or C++ library.
%package devel %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 Group: Development/Libraries/Python
Requires: %{name} = %{version}
Requires: %{name}-common = %{version}
Requires: c++_compiler Requires: c++_compiler
Requires: python >= 3.5.1
Requires: python-devel 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(post): update-alternatives
Requires(postun): update-alternatives Requires(postun): update-alternatives
Provides: %{name}-bin = %{version}
Obsoletes: %{name}-bin < %{version}
%description devel %description devel
SIP is a tool that makes it very easy to create Python bindings for C 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 This package contains all the developer tools you need to create your
own sip bindings. own sip bindings.
%package -n %{name}-doc %package -n python-sip-doc
Summary: SIP tool to create python bindings -- common documentation Summary: A Python bindings generator for C/C++ libraries -- common documentation
Group: Development/Libraries/Python 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 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 and C++ libraries. It was originally developed to create PyQt, the
Python bindings for the Qt toolkit, but can be used to create bindings Python bindings for the Qt toolkit, but can be used to create bindings
for any C or C++ library. for any C or C++ library.
This package contains common documentation files shared between python2 This package contains the documentation and example files.
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.
%prep %prep
%setup -q -n sip-%{version} %setup -q -n sip-%{version}
%autopatch -p1 %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 %build
export CFLAGS="%{optflags}" %python_build
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
}
%install %install
%{python_expand pushd build_%{$python_bin_suffix} %python_install
%make_install %python_clone -a %{buildroot}%{_bindir}/sip-build
popd %python_clone -a %{buildroot}%{_bindir}/sip-distinfo
%python_clone -a %{buildroot}%{_bindir}/sip-install
pushd build_PyQt4_%{$python_bin_suffix}/siplib %python_clone -a %{buildroot}%{_bindir}/sip-module
%make_install %python_clone -a %{buildroot}%{_bindir}/sip-sdist
popd %python_clone -a %{buildroot}%{_bindir}/sip-wheel
%python_clone -a %{buildroot}%{_bindir}/sip5
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_expand %fdupes %{buildroot}%{$python_sitearch} %python_expand %fdupes %{buildroot}%{$python_sitearch}
mkdir -p %{buildroot}%{_datadir}/sip %fdupes -s doc
%post devel %post devel
%python_install_alternative sip %python_install_alternative sip-build sip-distinfo sip-install sip-module sip-sdist sip-wheel sip5
%postun devel %postun devel
%python_uninstall_alternative sip %python_uninstall_alternative sip-build
%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/
%files %{python_files devel} %files %{python_files devel}
%license LICENSE* %license LICENSE*
%{_rpmconfigdir}/macros.d/macros.%{python_prefix}-sip %python_alternative %{_bindir}/sip-build
%python_alternative %{_bindir}/sip %python_alternative %{_bindir}/sip-distinfo
%dir %{python_sitearch}/PyQt4 %python_alternative %{_bindir}/sip-install
%{python_sitearch}/PyQt4/sip.pyi %python_alternative %{_bindir}/sip-module
%dir %{python_sitearch}/PyQt5 %python_alternative %{_bindir}/sip-sdist
%{python_sitearch}/PyQt5/sip.pyi %python_alternative %{_bindir}/sip-wheel
%{_includedir}/python%{python_bin_suffix}*/sip.h %python_alternative %{_bindir}/sip5
%{python_sitearch}/sipconfig.py* %{python_sitearch}/sipbuild
%{python_sitearch}/sipdistutils.py* %{python_sitearch}/sip-%{version}-py*.egg-info
%{python_sitearch}/sip.pyi
%pycache_only %{python_sitearch}/__pycache__/sipconfig.*.py*
%pycache_only %{python_sitearch}/__pycache__/sipdistutils.*.py*
%files -n python-sip-doc %files doc
%license LICENSE* %license LICENSE*
%doc doc/ %doc doc/
%files -n python-sip-common
%license LICENSE*
%{_rpmconfigdir}/macros.d/macros.python_all-sip
%{_datadir}/sip/
%changelog %changelog

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:edcd3790bb01938191eef0f6117de0bf56d1136626c0ddb678f3a558d62e41e5
size 1055461

3
sip-5.4.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4282ab45948674f5ef74278a8e70d1302f65c95b519a0af19409002f5715d641
size 1106676