%if 0%{?fedora} %global with_python3 1 %endif %global with_python2 1 Summary: Python bindings for Qt5 Name: python-qt5 Version: 5.3.1 Release: 1%{?dist} # all BSD, except for GPLv2+ dbus bindings and examples License: BSD and GPLv2+ Url: http://www.riverbankcomputing.com/software/pyqt/ %if 0%{?snap:1} Source0: http://www.riverbankcomputing.com/static/Downloads/PyQt5/PyQt-gpl-%{version}%{?snap:-snapshot-%{snap}}.tar.gz %else Source0: http://downloads.sourceforge.net/project/pyqt/PyQt5/PyQt-%{version}/PyQt-gpl-%{version}.tar.gz %endif ## upstreamable patches BuildRequires: chrpath BuildRequires: findutils BuildRequires: pkgconfig(dbus-1) pkgconfig(dbus-python) BuildRequires: pkgconfig(phonon4qt5) BuildRequires: pkgconfig(Qt5Core) >= 5.3 BuildRequires: pkgconfig(Qt5Bluetooth) BuildRequires: pkgconfig(Qt5DBus) pkgconfig(Qt5Declarative) BuildRequires: pkgconfig(Qt5Designer) BuildRequires: pkgconfig(Qt5Gui) pkgconfig(Qt5Multimedia) BuildRequires: pkgconfig(Qt5Network) pkgconfig(QtOpenGL) BuildRequires: pkgconfig(Qt5Positioning) BuildRequires: pkgconfig(Qt5Quick) pkgconfig(Qt5QuickWidgets) BuildRequires: pkgconfig(Qt5Script) BuildRequires: pkgconfig(Qt5Sensors) BuildRequires: pkgconfig(Qt5SerialPort) BuildRequires: pkgconfig(Qt5Sql) pkgconfig(Qt5Svg) pkgconfig(Qt5Test) BuildRequires: pkgconfig(Qt5X11Extras) BuildRequires: pkgconfig(Qt5Xml) pkgconfig(Qt5XmlPatterns) BuildRequires: pkgconfig(Qt5WebKit) pkgconfig(Qt5WebKitWidgets) BuildRequires: python2-devel BuildRequires: sip-devel >= 4.16 %if 0%{?with_python3} BuildRequires: python3-devel BuildRequires: python3-sip-devel >= 4.16 BuildRequires: python3-dbus %endif # with_python3 Requires: dbus-python %{?_qt5_version:Requires: qt5-qtbase%{?_isa} >= %{_qt5_version}} %{?_sip_api:Requires: sip-api(%{_sip_api_major}) >= %{_sip_api}} %filter_provides_in %{python_sitearch} %{?_qt5_plugindir} %if 0%{?with_python3} %filter_provides_in %{python3_sitearch} %{?_qt5_plugindir} %endif %filter_setup Provides: PyQt5 = %{version}-%{release} Provides: PyQt5%{?_isa} = %{version}-%{release} %description These are Python bindings for Qt5. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: qt5-qtbase-devel Requires: sip-devel Provides: PyQt5-devel = %{version}-%{release} %description devel Files needed to build other bindings for C++ classes that inherit from any of the Qt5 classes (e.g. KDE or your own). %package -n python3-qt5 Summary: Python 3 bindings for Qt5 %{?_sip_api:Requires: python3-sip-api(%{_sip_api_major}) >= %{_sip_api}} Provides: python3-PyQt5 = %{version}-%{release} Requires: python3-dbus %description -n python3-qt5 %{summary}. %package -n python3-qt5-devel Summary: Python 3 bindings for Qt5 Requires: python3-qt5%{?_isa} = %{version}-%{release} Requires: python3-sip-devel Provides: python3-PyQt5-devel = %{version}-%{release} %description -n python3-qt5-devel Files needed to build other bindings for C++ classes that inherit from any of the Qt5 classes (e.g. KDE or your own). %package doc Summary: Developer documentation for %{name} Provides: PyQt5-doc = %{version}-%{release} BuildArch: noarch %description doc %{summary}. %prep %setup -n PyQt-gpl-%{version}%{?snap:-snapshot-%{snap}} %if 0%{?with_python3} rm -rf %{py3dir} cp -a . %{py3dir} %endif # with_python3 %build PATH=%{_qt5_bindir}:$PATH ; export PATH # Python 2 build: %if 0%{?with_python2} %{__python2} configure.py \ --assume-shared \ --confirm-license \ --no-timestamp \ --qmake=%{_qt5_qmake} \ --verbose make %{?_smp_mflags} %endif # with_python2 # Python 3 build: %if 0%{?with_python3} pushd %{py3dir} %{__python3} configure.py \ --assume-shared \ --confirm-license \ --no-timestamp \ --qmake=%{_qt5_qmake} \ --verbose make %{?_smp_mflags} popd %endif # with_python3 %install # Python 3 build: %if 0%{?with_python3} make install DESTDIR=%{buildroot} INSTALL_ROOT=%{buildroot} -C %{py3dir} %endif # with_python3 # Python 2 build: %if 0%{?with_python2} make install DESTDIR=%{buildroot} INSTALL_ROOT=%{buildroot} %endif # with_python2 # remove Python3 code from Python2 directory, fixes FTBFS like PyQt4 (#564633) rm -rfv %{buildroot}%{python2_sitearch}/PyQt5/uic/port_v3/ # remove Python2 code from Python3 directory (for when/if we support python3 here) rm -rfv %{buildroot}%{python3_sitearch}/PyQt5/uic/port_v2/ %if 0%{?with_python2} %files %doc NEWS README %doc LICENSE %{python2_sitelib}/dbus/mainloop/pyqt5.so %{_qt5_plugindir}/PyQt5/ %dir %{python2_sitearch}/PyQt5/ %{python2_sitearch}/PyQt5/__init__.py* %{python2_sitearch}/PyQt5/Qt.so %{python2_sitearch}/PyQt5/QtBluetooth.so %{python2_sitearch}/PyQt5/QtCore.so %{python2_sitearch}/PyQt5/QtDBus.so %{python2_sitearch}/PyQt5/QtDesigner.so %{python2_sitearch}/PyQt5/QtGui.so %{python2_sitearch}/PyQt5/QtHelp.so %{python2_sitearch}/PyQt5/QtMultimedia.so %{python2_sitearch}/PyQt5/QtMultimediaWidgets.so %{python2_sitearch}/PyQt5/QtNetwork.so %{python2_sitearch}/PyQt5/QtOpenGL.so %{python2_sitearch}/PyQt5/QtPositioning.so %{python2_sitearch}/PyQt5/QtPrintSupport.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/QtSql.so %{python2_sitearch}/PyQt5/QtSvg.so %{python2_sitearch}/PyQt5/QtTest.so %{python2_sitearch}/PyQt5/QtWebKit.so %{python2_sitearch}/PyQt5/QtWebKitWidgets.so %{python2_sitearch}/PyQt5/QtWidgets.so %{python2_sitearch}/PyQt5/QtX11Extras.so %{python2_sitearch}/PyQt5/QtXmlPatterns.so %{python2_sitearch}/PyQt5/_QOpenGLFunctions_2_0.so %{python2_sitearch}/PyQt5/uic/ %{_qt5_plugindir}/designer/libpyqt5.so %files devel %{_bindir}/pylupdate5 %{_bindir}/pyrcc5 %{_bindir}/pyuic5 %{_datadir}/sip/PyQt5/ %endif %if 0%{?with_python3} %files -n python3-qt5 %doc NEWS README %doc LICENSE %{python3_sitelib}/dbus/mainloop/pyqt5.so %dir %{python3_sitearch}/PyQt5/ %{python3_sitearch}/PyQt5/__pycache__/ %{python3_sitearch}/PyQt5/__init__.py* %{python3_sitearch}/PyQt5/Qt.so %{python3_sitearch}/PyQt5/QtBluetooth.so %{python3_sitearch}/PyQt5/QtCore.so %{python3_sitearch}/PyQt5/QtDBus.so %{python3_sitearch}/PyQt5/QtDesigner.so %{python3_sitearch}/PyQt5/QtGui.so %{python3_sitearch}/PyQt5/QtHelp.so %{python3_sitearch}/PyQt5/QtMultimedia.so %{python3_sitearch}/PyQt5/QtMultimediaWidgets.so %{python3_sitearch}/PyQt5/QtNetwork.so %{python3_sitearch}/PyQt5/QtOpenGL.so %{python3_sitearch}/PyQt5/QtPositioning.so %{python3_sitearch}/PyQt5/QtPrintSupport.so %{python3_sitearch}/PyQt5/QtQml.so %{python3_sitearch}/PyQt5/QtQuick.so %{python3_sitearch}/PyQt5/QtQuickWidgets.so %{python3_sitearch}/PyQt5/QtSensors.so %{python3_sitearch}/PyQt5/QtSerialPort.so %{python3_sitearch}/PyQt5/QtSql.so %{python3_sitearch}/PyQt5/QtSvg.so %{python3_sitearch}/PyQt5/QtTest.so %{python3_sitearch}/PyQt5/QtWebKit.so %{python3_sitearch}/PyQt5/QtWebKitWidgets.so %{python3_sitearch}/PyQt5/QtWidgets.so %{python3_sitearch}/PyQt5/QtX11Extras.so %{python3_sitearch}/PyQt5/QtXmlPatterns.so %{python3_sitearch}/PyQt5/_QOpenGLFunctions_2_0.so %{python3_sitearch}/PyQt5/uic/ # FIXME/TODO #files -n python3-qt5-devel %endif # with_python3 %files doc %doc doc/* %doc examples/ %changelog * Sun Jul 06 2014 Rex Dieter 5.3.1-1 - PyQt-gpl-5.3.1 * Sat Jun 07 2014 Fedora Release Engineering - 5.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Mon Jun 02 2014 Rex Dieter 5.3-2 - python3: (Build)Requires: python3-dbus * Mon Jun 02 2014 Rex Dieter 5.3-1 - PyQt-gpl-5.3 - +Qt5Bluetooth,Qt5Quick,Qt5SerialPorts support * Mon May 12 2014 Rex Dieter 5.2.1-2 - rebuild (f21-python) - +Qt5Positioning,Qt5Sensors support * Sun Mar 16 2014 Rex Dieter 5.2.1-1 - PyQt-5.2.1 * Sat Mar 08 2014 Kevin Kofler 5.2-5 - Rebuild against fixed qt5-qtbase to fix -debuginfo (#1065636) * Sat Feb 15 2014 Rex Dieter 5.2-4 - python3-qt5 support * Thu Feb 13 2014 Rex Dieter 5.2-3 - Provides: PyQt5 * Thu Feb 06 2014 Rex Dieter 5.2-2 - BR: python2-devel, use %%__python2 macro * Wed Jan 08 2014 Rex Dieter 5.2-1 - PyQt-5.2