Compare commits

...

3 Commits

Author SHA1 Message Date
CentOS Sources
8e94e5cb9c import python-qt5-5.15.0-3.el8 2022-11-08 06:36:22 +00:00
CentOS Sources
4d33ea7705 import python-qt5-5.15.0-2.el8 2021-12-08 12:23:54 +00:00
CentOS Sources
58c6083b6f import python-qt5-5.13.1-1.el8 2021-09-10 03:14:00 +00:00
6 changed files with 102 additions and 243 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/PyQt5_gpl-5.11.2.tar.gz SOURCES/PyQt5-5.15.0.tar.gz

View File

@ -1 +1 @@
c865073fb614520b18c4f44bc4cbea711a0ab2a4 SOURCES/PyQt5_gpl-5.11.2.tar.gz 928746291aca68a3bb9f1e56053728a942887ab8 SOURCES/PyQt5-5.15.0.tar.gz

View File

@ -1,12 +1,12 @@
diff -up PyQt5_gpl-5.11.2/sip/QtCore/QtCoremod.sip.Timeline PyQt5_gpl-5.11.2/sip/QtCore/QtCoremod.sip diff -up PyQt5-5.15.0/sip/QtCore/QtCoremod.sip.Timeline PyQt5-5.15.0/sip/QtCore/QtCoremod.sip
--- PyQt5_gpl-5.11.2/sip/QtCore/QtCoremod.sip.Timeline 2018-07-10 15:25:49.295960286 -0500 --- PyQt5-5.15.0/sip/QtCore/QtCoremod.sip.Timeline 2020-08-17 17:37:35.734819568 -0500
+++ PyQt5_gpl-5.11.2/sip/QtCore/QtCoremod.sip 2018-07-10 15:26:22.781340757 -0500 +++ PyQt5-5.15.0/sip/QtCore/QtCoremod.sip 2020-08-17 17:39:54.179090085 -0500
@@ -22,7 +22,7 @@ @@ -22,7 +22,7 @@
%Module(name=PyQt5.QtCore, call_super_init=True, default_VirtualErrorHandler=PyQt5, keyword_arguments="Optional", use_limited_api=True) %Module(name=PyQt5.QtCore, call_super_init=True, default_VirtualErrorHandler=PyQt5, keyword_arguments="Optional", use_limited_api=True)
-%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_9_4 Qt_5_9_5 Qt_5_9_6 Qt_5_9_7 Qt_5_9_8 Qt_5_9_9 Qt_5_10_0 Qt_5_10_1 Qt_5_11_0 Qt_5_11_1} -%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_9_4 Qt_5_9_5 Qt_5_9_6 Qt_5_9_7 Qt_5_9_8 Qt_5_9_9 Qt_5_10_0 Qt_5_10_1 Qt_5_11_0 Qt_5_11_1 Qt_5_11_2 Qt_5_11_3 Qt_5_12_0 Qt_5_12_1 Qt_5_12_2 Qt_5_12_3 Qt_5_12_4 Qt_5_13_0 Qt_5_14_0 Qt_5_15_0}
+%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_9_4 Qt_5_9_5 Qt_5_9_6 Qt_5_9_7 Qt_5_9_8 Qt_5_9_9 Qt_5_10_0 Qt_5_10_1 Qt_5_11_0 Qt_5_11_1 Qt_5_11_2} +%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_9_4 Qt_5_9_5 Qt_5_9_6 Qt_5_9_7 Qt_5_9_8 Qt_5_9_9 Qt_5_10_0 Qt_5_10_1 Qt_5_11_0 Qt_5_11_1 Qt_5_11_2 Qt_5_11_3 Qt_5_12_0 Qt_5_12_1 Qt_5_12_2 Qt_5_12_3 Qt_5_12_4 Qt_5_13_0 Qt_5_13_1 Qt_5_13_2 Qt_5_14_0 Qt_5_14_2 Qt_5_15_0 Qt_5_15_1 Qt_5_15_2}
%Platforms {WS_X11 WS_WIN WS_MACX} %Platforms {WS_X11 WS_WIN WS_MACX}

View File

@ -1,21 +0,0 @@
diff -up PyQt5_gpl-5.11.2/configure.py.sip_check PyQt5_gpl-5.11.2/configure.py
--- PyQt5_gpl-5.11.2/configure.py.sip_check 2018-07-11 14:10:21.751437714 -0500
+++ PyQt5_gpl-5.11.2/configure.py 2018-07-11 14:12:13.035482279 -0500
@@ -647,7 +647,7 @@ class TargetConfiguration:
try:
from PyQt5 import sip
except ImportError:
- error(
+ inform(
"Unable to import PyQt5.sip. Make sure you have "
"configured SIP to create a private copy of the sip "
"module.")
@@ -2919,7 +2919,7 @@ def check_sip(target_config):
try:
from PyQt5 import sip
except ImportError:
- error(
+ inform(
"Unable to import PyQt5.sip. Make sure you have configured "
"SIP to create a private copy of the sip module.")

View File

@ -1,6 +1,6 @@
diff -up PyQt5_gpl-5.9/configure.py.sipdir PyQt5_gpl-5.9/configure.py diff -up PyQt5-5.14.2/configure.py.qt5_sipdir PyQt5-5.14.2/configure.py
--- PyQt5_gpl-5.9/configure.py.sipdir 2017-07-03 12:24:48.000000000 -0500 --- PyQt5-5.14.2/configure.py.qt5_sipdir 2020-04-02 09:58:06.029642000 -0500
+++ PyQt5_gpl-5.9/configure.py 2017-07-05 20:31:35.319524089 -0500 +++ PyQt5-5.14.2/configure.py 2020-04-04 14:50:00.549639237 -0500
@@ -25,6 +25,7 @@ import os @@ -25,6 +25,7 @@ import os
import shutil import shutil
import stat import stat
@ -9,7 +9,7 @@ diff -up PyQt5_gpl-5.9/configure.py.sipdir PyQt5_gpl-5.9/configure.py
# Initialise the constants. # Initialise the constants.
@@ -485,7 +486,7 @@ class TargetConfiguration: @@ -511,7 +512,7 @@ class TargetConfiguration:
self.pyqt_bin_dir = py_config.bin_dir self.pyqt_bin_dir = py_config.bin_dir
self.pyqt_module_dir = py_config.module_dir self.pyqt_module_dir = py_config.module_dir
self.pyqt_stubs_dir = os.path.join(py_config.module_dir, 'PyQt5') self.pyqt_stubs_dir = os.path.join(py_config.module_dir, 'PyQt5')

View File

@ -2,8 +2,6 @@
%global with_python3 1 %global with_python3 1
%global python3_dbus_dir %(%{__python3} -c "import dbus.mainloop; print(dbus.mainloop.__path__[0])" 2>/dev/null || echo "%{python3_sitearch}/dbus/mainloop") %global python3_dbus_dir %(%{__python3} -c "import dbus.mainloop; print(dbus.mainloop.__path__[0])" 2>/dev/null || echo "%{python3_sitearch}/dbus/mainloop")
%endif %endif
%global with_python2 0
%global python2_dbus_dir %(%{__python2} -c "import dbus.mainloop; print(dbus.mainloop.__path__[0])" 2>/dev/null || echo "%{python2_sitearch}/dbus/mainloop")
# enable/disable individual modules # enable/disable individual modules
# drop power64, it's not supported yet (than) # drop power64, it's not supported yet (than)
@ -19,21 +17,22 @@
%global rpm_macros_dir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) %global rpm_macros_dir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
## f29+ no longer using separate sipdir for python3
%global py3_sipdir %{_datadir}/sip/PyQt5
%global sip_ver 4.19.23
# see also https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/JQQ66XJSIT2FGTK2YQY7AXMEH5IXMPUX/ # see also https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/JQQ66XJSIT2FGTK2YQY7AXMEH5IXMPUX/
%undefine _strict_symbol_defs_build %undefine _strict_symbol_defs_build
Summary: PyQt5 is Python bindings for Qt5 Summary: PyQt5 is Python bindings for Qt5
Name: python-qt5 Name: python-qt5
Version: 5.11.2 Version: 5.15.0
Release: 3%{?dist} Release: 3%{?dist}
License: GPLv3 License: GPLv3
Url: http://www.riverbankcomputing.com/software/pyqt/ Url: http://www.riverbankcomputing.com/software/pyqt/
%if 0%{?snap:1} Source0: https://files.pythonhosted.org/packages/8c/90/82c62bbbadcca98e8c6fa84f1a638de1ed1c89e85368241e9cc43fcbc320/PyQt5-%{version}.tar.gz
Source0: http://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt5_gpl-%{version}%{?snap:-snapshot-%{snap}}.tar.gz
%else
Source0: http://downloads.sourceforge.net/project/pyqt/PyQt5/PyQt-%{version}/PyQt5_gpl-%{version}.tar.gz
%endif
Source1: macros.pyqt5 Source1: macros.pyqt5
# wrapper, see https://bugzilla.redhat.com/show_bug.cgi?id=1193107#c9 # wrapper, see https://bugzilla.redhat.com/show_bug.cgi?id=1193107#c9
Source2: pylupdate5.sh Source2: pylupdate5.sh
@ -45,16 +44,14 @@ Source4: pyuic5.sh
## upstreamable patches ## upstreamable patches
Patch0: python-qt5_sipdir.patch Patch0: python-qt5_sipdir.patch
# support newer Qt5 releases than 5.11.1 # support newer Qt5 releases
Patch1: PyQt5-Timeline.patch Patch1: PyQt5-Timeline.patch
# make configure.py check for runtime PyQt5.sip dep informative (non-fatal)
Patch2: PyQt5_gpl-5.11.2-sip_check.patch
BuildRequires: chrpath BuildRequires: chrpath
BuildRequires: findutils BuildRequires: findutils
BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(dbus-python) BuildRequires: pkgconfig(dbus-python)
BuildRequires: qt5-qtbase-private-devel
BuildRequires: pkgconfig(Qt5Core) >= 5.5 BuildRequires: pkgconfig(Qt5Core) >= 5.5
BuildRequires: pkgconfig(Qt5Bluetooth) BuildRequires: pkgconfig(Qt5Bluetooth)
BuildRequires: pkgconfig(Qt5DBus) BuildRequires: pkgconfig(Qt5DBus)
@ -66,7 +63,7 @@ BuildRequires: pkgconfig(Qt5Nfc)
BuildRequires: pkgconfig(Qt5Network) pkgconfig(Qt5OpenGL) BuildRequires: pkgconfig(Qt5Network) pkgconfig(Qt5OpenGL)
BuildRequires: pkgconfig(Qt5Positioning) BuildRequires: pkgconfig(Qt5Positioning)
BuildRequires: pkgconfig(Qt5Quick) pkgconfig(Qt5QuickWidgets) BuildRequires: pkgconfig(Qt5Quick) pkgconfig(Qt5QuickWidgets)
BuildRequires: pkgconfig(Qt5Script) #BuildRequires: pkgconfig(Qt5Script)
BuildRequires: pkgconfig(Qt5Sensors) BuildRequires: pkgconfig(Qt5Sensors)
BuildRequires: pkgconfig(Qt5SerialPort) BuildRequires: pkgconfig(Qt5SerialPort)
BuildRequires: pkgconfig(Qt5Sql) pkgconfig(Qt5Svg) pkgconfig(Qt5Test) BuildRequires: pkgconfig(Qt5Sql) pkgconfig(Qt5Svg) pkgconfig(Qt5Test)
@ -74,22 +71,12 @@ BuildRequires: pkgconfig(Qt5X11Extras)
BuildRequires: pkgconfig(Qt5Xml) pkgconfig(Qt5XmlPatterns) BuildRequires: pkgconfig(Qt5Xml) pkgconfig(Qt5XmlPatterns)
BuildRequires: pkgconfig(Qt5WebChannel) BuildRequires: pkgconfig(Qt5WebChannel)
BuildRequires: pkgconfig(Qt5WebSockets) BuildRequires: pkgconfig(Qt5WebSockets)
%global sip_ver 4.19.12
BuildRequires: sip >= %{sip_ver}
%if 0%{?with_python2}
BuildRequires: python2-devel python2
BuildRequires: python2-enum34
BuildRequires: python2-dbus
BuildRequires: python2-pyqt5-sip >= %{sip_ver}
BuildRequires: python2-sip-devel >= %{sip_ver}
%endif
%if 0%{?with_python3} %if 0%{?with_python3}
BuildRequires: python%{python3_pkgversion}-devel python%{python3_pkgversion} BuildRequires: python%{python3_pkgversion}-devel python%{python3_pkgversion}
BuildRequires: python%{python3_pkgversion}-enum34
BuildRequires: python%{python3_pkgversion}-pyqt5-sip >= %{sip_ver}
BuildRequires: python%{python3_pkgversion}-sip >= %{sip_ver}
BuildRequires: python%{python3_pkgversion}-sip-devel >= %{sip_ver}
BuildRequires: python%{python3_pkgversion}-dbus BuildRequires: python%{python3_pkgversion}-dbus
BuildRequires: python%{python3_pkgversion}-pyqt5-sip >= %{sip_ver}
BuildRequires: python%{python3_pkgversion}-sip-devel >= %{sip_ver}
%endif # with_python3 %endif # with_python3
# when split out # when split out
@ -102,46 +89,6 @@ Obsoletes: python-qt5 < 5.5.1-10
%global __provides_exclude_from ^(%{_qt5_plugindir}/.*\\.so)$ %global __provides_exclude_from ^(%{_qt5_plugindir}/.*\\.so)$
%if 0%{?with_python2}
%package -n python2-qt5
Summary: Python 2 bindings for Qt5
Requires: python2-qt5-base%{?_isa} = %{version}-%{release}
BuildRequires: qt5-qtbase-private-devel
%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
%{?_sip_api:Requires: python2-pyqt5-sip-api(%{_sip_api_major}) >= %{_sip_api}}
Provides: PyQt5 = %{version}-%{release}
Provides: PyQt5%{?_isa} = %{version}-%{release}
Provides: python2-PyQt5 = %{version}-%{release}
Provides: python2-PyQt5%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-qt5}
%description -n python2-qt5
%{summary}.
%package -n python2-qt5-base
Summary: Python bindings for Qt5 base
Requires: %{name}-rpm-macros = %{version}-%{release}
Requires: python2-dbus
Obsoletes: python-qt5 < 5.5.1-10
%{?python_provide:%python_provide python2-qt5-base}
%description -n python2-qt5-base
%{summary}.
%package -n python2-qt5-devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: qt5-qtbase-devel
Requires: python2-sip-devel
Provides: PyQt5-devel = %{version}-%{release}
Provides: python2-PyQt5-devel = %{version}-%{release}
%{?python_provide:%python_provide python2-qt5-devel}
%description -n python2-qt5-devel
Files needed to build other bindings for C++ classes that inherit from
any of the Qt5 classes.
%endif # with_python2
%package rpm-macros %package rpm-macros
Summary: RPM macros %{name} Summary: RPM macros %{name}
# when split out # when split out
@ -153,12 +100,12 @@ BuildArch: noarch
%package -n python%{python3_pkgversion}-qt5 %package -n python%{python3_pkgversion}-qt5
Summary: Python 3 bindings for Qt5 Summary: Python 3 bindings for Qt5
%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
%{?_sip_api:Requires: python%{python3_pkgversion}-sip-api(%{_sip_api_major}) >= %{_sip_api}}
# when split out # when split out
%if 0%{?webengine} || 0%{?webkit} %if 0%{?webengine} || 0%{?webkit}
Obsoletes: python3-qt5 < 5.5.1-10 Obsoletes: python3-qt5 < 5.5.1-10
%endif %endif
Provides: PyQt5 = %{version}-%{release}
Provides: PyQt5%{?_isa} = %{version}-%{release}
Provides: python%{python3_pkgversion}-PyQt5 = %{version}-%{release} Provides: python%{python3_pkgversion}-PyQt5 = %{version}-%{release}
Provides: python%{python3_pkgversion}-PyQt5%{?_isa} = %{version}-%{release} Provides: python%{python3_pkgversion}-PyQt5%{?_isa} = %{version}-%{release}
Requires: python%{python3_pkgversion}-qt5-base%{?_isa} = %{version}-%{release} Requires: python%{python3_pkgversion}-qt5-base%{?_isa} = %{version}-%{release}
@ -169,7 +116,11 @@ Requires: python%{python3_pkgversion}-qt5-base%{?_isa} = %{version}-%{release}
%package -n python%{python3_pkgversion}-qt5-base %package -n python%{python3_pkgversion}-qt5-base
Summary: Python 3 bindings for Qt5 base Summary: Python 3 bindings for Qt5 base
%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}} %{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
%if 0%{?_python3_sip_api_major}
%{?_python3_sip_api:Requires: python%{python3_pkgversion}-pyqt5-sip-api(%{_python3_sip_api_major}) >= %{_python3_sip_api}}
%else
%{?_sip_api:Requires: python%{python3_pkgversion}-pyqt5-sip-api(%{_sip_api_major}) >= %{_sip_api}} %{?_sip_api:Requires: python%{python3_pkgversion}-pyqt5-sip-api(%{_sip_api_major}) >= %{_sip_api}}
%endif
Provides: python%{python3_pkgversion}-PyQt5-base = %{version}-%{release} Provides: python%{python3_pkgversion}-PyQt5-base = %{version}-%{release}
Provides: python%{python3_pkgversion}-PyQt5-base%{?_isa} = %{version}-%{release} Provides: python%{python3_pkgversion}-PyQt5-base%{?_isa} = %{version}-%{release}
Requires: %{name}-rpm-macros = %{version}-%{release} Requires: %{name}-rpm-macros = %{version}-%{release}
@ -197,17 +148,9 @@ BuildArch: noarch
%{summary}. %{summary}.
%if 0%{?webengine} %if 0%{?webengine}
%package -n python2-qt5-webengine
Summary: Python bindings for Qt5 WebEngine
BuildRequires: pkgconfig(Qt5WebEngine)
Obsoletes: python-qt5 < 5.5.1-10
Requires: python2-qt5%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-qt5-webengine}
%description -n python2-qt5-webengine
%{summary}.
%package -n python%{python3_pkgversion}-qt5-webengine %package -n python%{python3_pkgversion}-qt5-webengine
Summary: Python3 bindings for Qt5 WebEngine Summary: Python3 bindings for Qt5 WebEngine
BuildRequires: pkgconfig(Qt5WebEngine)
Obsoletes: python3-webengine < 5.5.1-13 Obsoletes: python3-webengine < 5.5.1-13
Obsoletes: python3-qt5 < 5.5.1-10 Obsoletes: python3-qt5 < 5.5.1-10
Requires: python%{python3_pkgversion}-qt5%{?_isa} = %{version}-%{release} Requires: python%{python3_pkgversion}-qt5%{?_isa} = %{version}-%{release}
@ -217,19 +160,10 @@ Requires: python%{python3_pkgversion}-qt5%{?_isa} = %{version}-%{release}
%endif %endif
%if 0%{?webkit} %if 0%{?webkit}
%package -n python2-qt5-webkit
Summary: Python bindings for Qt5 Webkit
BuildRequires: pkgconfig(Qt5WebKit)
BuildRequires: pkgconfig(Qt5WebKitWidgets)
Obsoletes: python3-webkit < 5.5.1-12
Obsoletes: python-qt5 < 5.5.1-10
Requires: python2-qt5%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-qt5-webkit}
%description -n python2-qt5-webkit
%{summary}.
%package -n python%{python3_pkgversion}-qt5-webkit %package -n python%{python3_pkgversion}-qt5-webkit
Summary: Python3 bindings for Qt5 Webkit Summary: Python3 bindings for Qt5 Webkit
BuildRequires: pkgconfig(Qt5WebKit)
BuildRequires: pkgconfig(Qt5WebKitWidgets)
Obsoletes: python3-qt5 < 5.5.1-10 Obsoletes: python3-qt5 < 5.5.1-10
Requires: python%{python3_pkgversion}-qt5%{?_isa} = %{version}-%{release} Requires: python%{python3_pkgversion}-qt5%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python%{python3_pkgversion}-qt5-webkit} %{?python_provide:%python_provide python%{python3_pkgversion}-qt5-webkit}
@ -239,36 +173,16 @@ Requires: python%{python3_pkgversion}-qt5%{?_isa} = %{version}-%{release}
%prep %prep
%setup -q -n PyQt5_gpl-%{version}%{?snap:-snapshot-%{snap}} %setup -q -n PyQt5-%{version}
%patch0 -p1 %patch0 -p1
%patch1 -p1 %patch1 -p1
%patch2 -p1 -b .sip_check
%build %build
## see also https://www.riverbankcomputing.com/static/Docs/PyQt5/installation.html
PATH=%{_qt5_bindir}:$PATH ; export PATH PATH=%{_qt5_bindir}:$PATH ; export PATH
# Python 2 build:
%if 0%{?with_python2}
mkdir %{_target_platform}
# copy sources, seems pure shadow build support broke with 5.9 -- rex
cp -a * %{_target_platform}/ ||:
pushd %{_target_platform}
%{__python2} ./configure.py \
--assume-shared \
--confirm-license \
--no-dist-info \
--qmake=%{_qt5_qmake} \
--qsci-api --qsci-api-destdir=%{_qt5_datadir}/qsci \
--verbose \
QMAKE_CFLAGS_RELEASE="%{optflags}" \
QMAKE_CXXFLAGS_RELEASE="%{optflags}" \
QMAKE_LFLAGS_RELEASE="%{?__global_ldflags}"
%make_build
popd
%endif # with_python2
# Python 3 build: # Python 3 build:
%if 0%{?with_python3} %if 0%{?with_python3}
mkdir %{_target_platform}-python3 mkdir %{_target_platform}-python3
@ -277,13 +191,14 @@ pushd %{_target_platform}-python3
%{__python3} ./configure.py \ %{__python3} ./configure.py \
--assume-shared \ --assume-shared \
--confirm-license \ --confirm-license \
--no-dist-info \
--qmake=%{_qt5_qmake} \ --qmake=%{_qt5_qmake} \
--sip=%{_bindir}/python3-sip \ %{?with_python2:--no-qsci-api}%{!?with_python2:--qsci-api --qsci-api-destdir=%{_qt5_datadir}/qsci} \
--no-qsci-api \ %{?py3_sip:--sip=%{_bindir}/python3-sip} \
%{?py3_sipdir:--sipdir=%{py3_sipdir}} \
--verbose \ --verbose \
--dbus=%{_includedir}/dbus-1.0/ \
QMAKE_CFLAGS_RELEASE="%{optflags}" \ QMAKE_CFLAGS_RELEASE="%{optflags}" \
QMAKE_CXXFLAGS_RELEASE="%{optflags}" \ QMAKE_CXXFLAGS_RELEASE="%{optflags} `pkg-config --cflags dbus-python`" \
QMAKE_LFLAGS_RELEASE="%{?__global_ldflags}" QMAKE_LFLAGS_RELEASE="%{?__global_ldflags}"
%make_build %make_build
@ -296,20 +211,28 @@ popd
# Python 3 build: # Python 3 build:
%if 0%{?with_python3} %if 0%{?with_python3}
%make_install INSTALL_ROOT=%{buildroot} -C %{_target_platform}-python3 %make_install INSTALL_ROOT=%{buildroot} -C %{_target_platform}-python3
# ensure .so modules are executable for proper -debuginfo extraction if [ "%{_prefix}" != "/usr" ]; then
for i in %{buildroot}%{python3_sitearch}/PyQt5/*.so %{buildroot}%{python3_dbus_dir}/pyqt5.so ; do cp -ru %{buildroot}/usr/* %{buildroot}%{_prefix}/
test -x $i || chmod a+rx $i rm -rf %{buildroot}/usr/*
done fi
%endif # with_python3 %if "%py3_sipdir" == "%{_datadir}/sip/PyQt5"
# copy files to old location for compat purposes temporarily
mkdir -p %{buildroot}%{_datadir}/python3-sip
cp -alf %{buildroot}%{py3_sipdir} \
%{buildroot}%{_datadir}/python3-sip/PyQt5
%endif
if [ "%{_prefix}" != "/usr" ]; then
cp -ru %{buildroot}/usr/* %{buildroot}%{_prefix}/ || echo "Nothing to copy"
rm -rf %{buildroot}/usr/*
fi
# Python 2 build:
%if 0%{?with_python2}
%make_install INSTALL_ROOT=%{buildroot} -C %{_target_platform}
# ensure .so modules are executable for proper -debuginfo extraction # ensure .so modules are executable for proper -debuginfo extraction
for i in %{buildroot}%{python2_sitearch}/PyQt5/*.so %{buildroot}%{python2_dbus_dir}/pyqt5.so ; do find %{buildroot} -type f -name '*.so' | xargs chmod a+rx
test -x $i || chmod a+rx $i #for i in %%{buildroot}%%{python3_sitearch}/PyQt5/*.so %%{buildroot}%%{python3_dbus_dir}/pyqt5.so ; do
done #test -x $i || chmod a+rx $i
%endif # with_python2 #done
%endif # with_python3
# remove Python3 code from Python2 directory, fixes FTBFS like PyQt4 (#564633) # remove Python3 code from Python2 directory, fixes FTBFS like PyQt4 (#564633)
rm -rfv %{buildroot}%{python2_sitearch}/PyQt5/uic/port_v3/ rm -rfv %{buildroot}%{python2_sitearch}/PyQt5/uic/port_v3/
@ -340,77 +263,6 @@ sed -i \
%{buildroot}%{_bindir}/{pyrcc5,pylupdate5,pyuic5} %{buildroot}%{_bindir}/{pyrcc5,pylupdate5,pyuic5}
%endif %endif
%if 0%{?with_python2}
%files -n python2-qt5
%{_qt5_plugindir}/PyQt5/
%{python2_sitearch}/PyQt5/QtBluetooth.so
%{python2_sitearch}/PyQt5/QtDesigner.so
%{python2_sitearch}/PyQt5/QtHelp.so
%{python2_sitearch}/PyQt5/QtLocation.so
%{python2_sitearch}/PyQt5/QtMultimedia.so
%{python2_sitearch}/PyQt5/QtMultimediaWidgets.so
%{python2_sitearch}/PyQt5/QtNfc.so
%{python2_sitearch}/PyQt5/QtPositioning.so
%{python2_sitearch}/PyQt5/QtQml.so
%{python2_sitearch}/PyQt5/QtQuick.so
%{python2_sitearch}/PyQt5/QtQuickWidgets.so
%{python2_sitearch}/PyQt5/QtSensors.so
%{python2_sitearch}/PyQt5/QtSerialPort.so
%{python2_sitearch}/PyQt5/QtSvg.so
%{python2_sitearch}/PyQt5/QtWebChannel.so
%{python2_sitearch}/PyQt5/QtWebSockets.so
%{python2_sitearch}/PyQt5/QtX11Extras.so
%{python2_sitearch}/PyQt5/QtXmlPatterns.so
%{python2_sitearch}/PyQt5/uic/
%{_qt5_plugindir}/designer/libpyqt5.so
# *was* in -devel
%{_bindir}/pylupdate5
%{_bindir}/pyrcc5
%{_bindir}/pyuic5
%{python2_sitearch}/PyQt5/pylupdate.so
%{python2_sitearch}/PyQt5/pylupdate_main.py*
%{python2_sitearch}/PyQt5/pyrcc.so
%{python2_sitearch}/PyQt5/pyrcc_main.py*
%files -n python2-qt5-base
%doc NEWS README
%license LICENSE
%{python2_dbus_dir}/pyqt5.so
%dir %{python2_sitearch}/PyQt5/
%{python2_sitearch}/PyQt5/__init__.py*
%{python2_sitearch}/PyQt5/Qt.so
%{python2_sitearch}/PyQt5/QtCore.so
%{python2_sitearch}/PyQt5/QtDBus.so
%{python2_sitearch}/PyQt5/QtGui.so
%{python2_sitearch}/PyQt5/QtNetwork.so
%{python2_sitearch}/PyQt5/QtOpenGL.so
%{python2_sitearch}/PyQt5/QtPrintSupport.so
%{python2_sitearch}/PyQt5/QtSql.so
%{python2_sitearch}/PyQt5/QtTest.so
%{python2_sitearch}/PyQt5/QtWidgets.so
%{python2_sitearch}/PyQt5/QtXml.so
%{python2_sitearch}/PyQt5/_QOpenGLFunctions_2_0.so
%{python2_sitearch}/PyQt5/_QOpenGLFunctions_2_1.so
%{python2_sitearch}/PyQt5/_QOpenGLFunctions_4_1_Core.so
%if 0%{?webengine}
%files -n python2-qt5-webengine
%{python2_sitearch}/PyQt5/QtWebEngine.*
%{python2_sitearch}/PyQt5/QtWebEngineCore.*
%{python2_sitearch}/PyQt5/QtWebEngineWidgets.*
%endif
%if 0%{?webkit}
%files -n python2-qt5-webkit
%{python2_sitearch}/PyQt5/QtWebKit.*
%{python2_sitearch}/PyQt5/QtWebKitWidgets.*
%endif
%files -n python2-qt5-devel
%{_datadir}/sip/PyQt5/
%endif # with_python2
%files rpm-macros %files rpm-macros
%{rpm_macros_dir}/macros.pyqt5 %{rpm_macros_dir}/macros.pyqt5
@ -434,24 +286,14 @@ sed -i \
%{python3_sitearch}/PyQt5/QtWebSockets.* %{python3_sitearch}/PyQt5/QtWebSockets.*
%{python3_sitearch}/PyQt5/QtX11Extras.* %{python3_sitearch}/PyQt5/QtX11Extras.*
%{python3_sitearch}/PyQt5/QtXmlPatterns.* %{python3_sitearch}/PyQt5/QtXmlPatterns.*
%{python3_sitearch}/PyQt5/uic/
# *was* in python3-qt5-devel
%{_bindir}/pylupdate5
%{_bindir}/pyrcc5
%{_bindir}/pyuic5
%{python3_sitearch}/PyQt5/pylupdate.so
%{python3_sitearch}/PyQt5/pylupdate_main.py*
%{python3_sitearch}/PyQt5/pyrcc.so
%{python3_sitearch}/PyQt5/pyrcc_main.py*
%{_qt5_plugindir}/PyQt5/libpyqt5qmlplugin.so
%{_qt5_plugindir}/designer/libpyqt5.so
%files -n python%{python3_pkgversion}-qt5-base %files -n python%{python3_pkgversion}-qt5-base
%doc NEWS README %doc NEWS README
%license LICENSE %license LICENSE
%{python3_dbus_dir}/pyqt5.so %{python3_dbus_dir}/pyqt5.so
%dir %{python3_sitearch}/PyQt5/ %dir %{python3_sitearch}/PyQt5/
%{python3_sitearch}/PyQt5/__pycache__/ %{python3_sitearch}/PyQt5-%{version}.dist-info
%{python3_sitearch}/PyQt5/__pycache__/__init__.*
%{python3_sitearch}/PyQt5/__init__.py* %{python3_sitearch}/PyQt5/__init__.py*
%{python3_sitearch}/PyQt5/Qt.* %{python3_sitearch}/PyQt5/Qt.*
%{python3_sitearch}/PyQt5/QtCore.* %{python3_sitearch}/PyQt5/QtCore.*
@ -467,6 +309,20 @@ sed -i \
%{python3_sitearch}/PyQt5/_QOpenGLFunctions_2_0.* %{python3_sitearch}/PyQt5/_QOpenGLFunctions_2_0.*
%{python3_sitearch}/PyQt5/_QOpenGLFunctions_2_1.* %{python3_sitearch}/PyQt5/_QOpenGLFunctions_2_1.*
%{python3_sitearch}/PyQt5/_QOpenGLFunctions_4_1_Core.* %{python3_sitearch}/PyQt5/_QOpenGLFunctions_4_1_Core.*
# plugins
%{_qt5_plugindir}/PyQt5/
%{_qt5_plugindir}/designer/libpyqt5.so
%{python3_sitearch}/PyQt5/uic/
# *was* in python3-qt5-devel
%{_bindir}/pylupdate5
%{_bindir}/pyrcc5
%{_bindir}/pyuic5
%{python3_sitearch}/PyQt5/pylupdate.so
%{python3_sitearch}/PyQt5/pylupdate_main.py*
%{python3_sitearch}/PyQt5/__pycache__/pylupdate_main*
%{python3_sitearch}/PyQt5/pyrcc.so
%{python3_sitearch}/PyQt5/pyrcc_main.py*
%{python3_sitearch}/PyQt5/__pycache__/pyrcc_main*
%if 0%{?webengine} %if 0%{?webengine}
%files -n python%{python3_pkgversion}-qt5-webengine %files -n python%{python3_pkgversion}-qt5-webengine
@ -482,15 +338,39 @@ sed -i \
%endif %endif
%files -n python%{python3_pkgversion}-qt5-devel %files -n python%{python3_pkgversion}-qt5-devel
%{_datadir}/sip/PyQt5/ %{py3_sipdir}/
# compat location
%dir %{_datadir}/python3-sip/
%{_datadir}/python3-sip/PyQt5/
%endif # with_python3 %endif # with_python3
%files doc %files doc
#doc doc/* #doc doc/*
%doc examples/ %doc examples/
# avoid dep on qscintilla-python, own %%_qt5_datadir/qsci/... here for now
%dir %{_qt5_datadir}/qsci/
%dir %{_qt5_datadir}/qsci/api/
%dir %{_qt5_datadir}/qsci/api/python/
%doc %{_qt5_datadir}/qsci/api/python/PyQt5.api
%changelog %changelog
* Mon Apr 04 2022 Jan Grulich <jgrulich@redhat.com> - 5.15.0-3
- Rebuild (Qt 5.15.3)
Resolves: bz#2061729
* Wed Apr 28 2021 Jan Grulich <jgrulich@redhat.com> - 5.15.0-2
- Rebuild (binutils)
Resolves: bz#1949066
* Tue Apr 13 2021 Jan Grulich <jgrulich@redhat.com> - 5.15.0-1
- 5.15.0
Resolves: bz#1949066
* Fri Nov 22 2019 Jan Grulich <jgrulich@redhat.com> - 5.13.1-1
- 5.13.1
Resolves: bz#1775603
* Tue Jul 17 2018 Jan Grulich <jgrulich@redhat.com> - 5.11.2-3 * Tue Jul 17 2018 Jan Grulich <jgrulich@redhat.com> - 5.11.2-3
- BR: sip + sync with Fedora - BR: sip + sync with Fedora