]> git.pld-linux.org Git - packages/python-PySide.git/commitdiff
- build also python3-* packages; common part of -devel in -common-devel, .pc files...
authorJakub Bogusz <qboosh@pld-linux.org>
Fri, 23 Apr 2021 14:47:48 +0000 (16:47 +0200)
committerJakub Bogusz <qboosh@pld-linux.org>
Fri, 23 Apr 2021 14:47:48 +0000 (16:47 +0200)
python-PySide.spec

index e0c2582fc9d5a8035b66aba55a01ba95d128c79e..ca8c5b4ccdb64ca7f10b32e112221621d229e094 100644 (file)
@@ -1,9 +1,10 @@
-# TODO: python3 version?
 %define                qt_ver          4.8
 %define                pyside_ver      1.2.4
 #
 # Conditional build:
 %bcond_with    apidocs         # build API documentation (needs Qt sources)
 %define                qt_ver          4.8
 %define                pyside_ver      1.2.4
 #
 # Conditional build:
 %bcond_with    apidocs         # build API documentation (needs Qt sources)
+%bcond_without python2         # CPython 2.x module
+%bcond_without python3         # CPython 3.x module
 #
 Summary:       PySide - Python bindings for the Qt 4 toolkit
 Summary(pl.UTF-8):     PySide - wiązania Pythona do toolkitu Qt 4
 #
 Summary:       PySide - Python bindings for the Qt 4 toolkit
 Summary(pl.UTF-8):     PySide - wiązania Pythona do toolkitu Qt 4
@@ -37,7 +38,8 @@ BuildRequires:        cmake >= 2.6
 BuildRequires: phonon-devel
 BuildRequires: rpm-pythonprov
 BuildRequires: rpmbuild(macros) >= 1.605
 BuildRequires: phonon-devel
 BuildRequires: rpm-pythonprov
 BuildRequires: rpmbuild(macros) >= 1.605
-BuildRequires: shiboken-python2 >= %{pyside_ver}
+%{?with_python2:BuildRequires: shiboken-python2 >= %{pyside_ver}}
+%{?with_python3:BuildRequires: shiboken-python3 >= %{pyside_ver}}
 %if %{with apidocs}
 BuildRequires: graphviz
 BuildRequires: qt4-build
 %if %{with apidocs}
 BuildRequires: graphviz
 BuildRequires: qt4-build
@@ -46,6 +48,8 @@ BuildRequires:        sphinx-pdg
 %endif
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %endif
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                py3_soabi       %(%{__python3} -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"));')
+
 %description
 PySide project provides LGPL-licensed Python bindings for the Qt. It
 also includes complete toolchain for rapidly generating bindings for
 %description
 PySide project provides LGPL-licensed Python bindings for the Qt. It
 also includes complete toolchain for rapidly generating bindings for
@@ -53,6 +57,8 @@ any Qt-based C++ class hierarchies. PySide Qt bindings allow both free
 open source and proprietary software development and ultimately aim to
 support Qt platforms.
 
 open source and proprietary software development and ultimately aim to
 support Qt platforms.
 
+This package contains Python 2 bindings.
+
 %description -l pl.UTF-8
 Projekt PySide udostępnia na licencji LGPL wiązania Pythona dla
 tookitu Qt. Zawiera także pełny zestaw narzędzi do szybkiego
 %description -l pl.UTF-8
 Projekt PySide udostępnia na licencji LGPL wiązania Pythona dla
 tookitu Qt. Zawiera także pełny zestaw narzędzi do szybkiego
@@ -60,39 +66,114 @@ generowania wiązań dla dowolnej hierarchii klas C++ opartych na Qt.
 Wiązania Qt PySide pozwalają na tworzenie zarówno wolnodostępnego, jak
 i własnościowego oprogramowania i mają na celu wsparcie platform Qt.
 
 Wiązania Qt PySide pozwalają na tworzenie zarówno wolnodostępnego, jak
 i własnościowego oprogramowania i mają na celu wsparcie platform Qt.
 
+Ten pakiet zawiera wiązania Pythona 2.
+
 %package devel
 Summary:       Development files for PySide bindings
 Summary(pl.UTF-8):     Pliki programistyczne dla wiązań PySide
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
 %package devel
 Summary:       Development files for PySide bindings
 Summary(pl.UTF-8):     Pliki programistyczne dla wiązań PySide
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
+Requires:      %{name}-common-devel = %{version}-%{release}
 Requires:      shiboken-python2 >= %{pyside_ver}
 
 %description devel
 Requires:      shiboken-python2 >= %{pyside_ver}
 
 %description devel
-Development files for PySide bindings.
+Development files for PySide bindings for Python 2.
 
 %description devel -l pl.UTF-8
 
 %description devel -l pl.UTF-8
-Pliki programistyczne dla wiązań PySide.
+Pliki programistyczne dla wiązań PySide dla Pythona 2.
+
+%package common-devel
+Summary:       Common development files for PySide bindings
+Summary(pl.UTF-8):     Wspólne pliki programistyczne dla wiązań PySide
+Group:         Development/Libraries
+Conflicts:     python-PySide-devel < 4.8_1.2.4-1
+
+%description common-devel
+Development files for PySide bindings, common for Python 2 and 3.
+
+%description common-devel -l pl.UTF-8
+Pliki programistyczne dla wiązań PySide, wspólne dla Pythona 2 i 3.
+
+%package -n python3-PySide
+Summary:       PySide - Python bindings for the Qt 4 toolkit
+Summary(pl.UTF-8):     PySide - wiązania Pythona do toolkitu Qt 4
+Group:         Libraries/Python
+
+%description -n python3-PySide
+PySide project provides LGPL-licensed Python bindings for the Qt. It
+also includes complete toolchain for rapidly generating bindings for
+any Qt-based C++ class hierarchies. PySide Qt bindings allow both free
+open source and proprietary software development and ultimately aim to
+support Qt platforms.
+
+This package contains Python 3 bindings.
+
+%description -n python3-PySide -l pl.UTF-8
+Projekt PySide udostępnia na licencji LGPL wiązania Pythona dla
+tookitu Qt. Zawiera także pełny zestaw narzędzi do szybkiego
+generowania wiązań dla dowolnej hierarchii klas C++ opartych na Qt.
+Wiązania Qt PySide pozwalają na tworzenie zarówno wolnodostępnego, jak
+i własnościowego oprogramowania i mają na celu wsparcie platform Qt.
+
+Ten pakiet zawiera wiązania Pythona 3.
+
+%package -n python3-PySide-devel
+Summary:       Development files for PySide bindings
+Summary(pl.UTF-8):     Pliki programistyczne dla wiązań PySide
+Group:         Development/Libraries
+Requires:      %{name}-common-devel = %{version}-%{release}
+Requires:      python3-PySide = %{version}-%{release}
+Requires:      shiboken-python3 >= %{pyside_ver}
+
+%description -n python3-PySide-devel
+Development files for PySide bindings for Python 3.
+
+%description -n python3-PySide-devel -l pl.UTF-8
+Pliki programistyczne dla wiązań PySide dla Pythona 3.
 
 %prep
 %setup -q -n PySide-%{pyside_ver}
 
 %build
 
 %prep
 %setup -q -n PySide-%{pyside_ver}
 
 %build
+%if %{with python2}
 install -d build
 cd build
 %cmake ..
 
 %{__make}
 cd ..
 install -d build
 cd build
 %cmake ..
 
 %{__make}
 cd ..
+%endif
+
+%if %{with python3}
+install -d build-py3
+cd build-py3
+%cmake .. \
+       -DPYTHON_SUFFIX=.%{py3_soabi}
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
+%if %{with python2}
 %{__make} -C build install \
        DESTDIR=$RPM_BUILD_ROOT
 
 %{__make} -C build install \
        DESTDIR=$RPM_BUILD_ROOT
 
+%{__mv} $RPM_BUILD_ROOT%{_pkgconfigdir}/{pyside,pyside-py%{py_ver}}.pc
+
 %py_comp $RPM_BUILD_ROOT%{py_sitedir}/PySide
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}/PySide
 %py_postclean
 %py_comp $RPM_BUILD_ROOT%{py_sitedir}/PySide
 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}/PySide
 %py_postclean
+%endif
+
+%if %{with python3}
+%{__make} -C build-py3 install \
+       DESTDIR=$RPM_BUILD_ROOT
+
+%{__mv} $RPM_BUILD_ROOT%{_pkgconfigdir}/{pyside,pyside-py%{py3_ver}}.pc
+
+%py3_comp $RPM_BUILD_ROOT%{py3_sitedir}/PySide
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}/PySide
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -100,6 +181,7 @@ rm -rf $RPM_BUILD_ROOT
 %post  -p /sbin/ldconfig
 %postun        -p /sbin/ldconfig
 
 %post  -p /sbin/ldconfig
 %postun        -p /sbin/ldconfig
 
+%if %{with python2}
 %files
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libpyside-python%{py_ver}.so.*.*.*
 %files
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libpyside-python%{py_ver}.so.*.*.*
@@ -128,8 +210,49 @@ rm -rf $RPM_BUILD_ROOT
 %files devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libpyside-python%{py_ver}.so
 %files devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libpyside-python%{py_ver}.so
+%{_pkgconfigdir}/pyside-py%{py_ver}.pc
+%{_libdir}/cmake/PySide-%{pyside_ver}/PySideConfig-python%{py_ver}.cmake
+%endif
+
+%files common-devel
+%defattr(644,root,root,755)
 %{_includedir}/PySide
 %dir %{_datadir}/PySide
 %{_datadir}/PySide/typesystems
 %{_includedir}/PySide
 %dir %{_datadir}/PySide
 %{_datadir}/PySide/typesystems
-%{_pkgconfigdir}/pyside.pc
-%{_libdir}/cmake/PySide-%{pyside_ver}
+%dir %{_libdir}/cmake/PySide-%{pyside_ver}
+%{_libdir}/cmake/PySide-%{pyside_ver}/PySideConfig.cmake
+%{_libdir}/cmake/PySide-%{pyside_ver}/PySideConfigVersion.cmake
+
+%if %{with python3}
+%files -n python3-PySide
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libpyside.%{py3_soabi}.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libpyside.%{py3_soabi}.so.1.2
+%dir %{py3_sitedir}/PySide
+%attr(755,root,root) %{py3_sitedir}/PySide/QtCore.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtDeclarative.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtGui.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtHelp.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtMultimedia.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtNetwork.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtOpenGL.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtScript.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtScriptTools.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtSql.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtSvg.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtTest.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtUiTools.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtWebKit.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtXml.so
+%attr(755,root,root) %{py3_sitedir}/PySide/QtXmlPatterns.so
+%attr(755,root,root) %{py3_sitedir}/PySide/phonon.so
+%{py3_sitedir}/PySide/__init__.py
+%{py3_sitedir}/PySide/_utils.py
+%{py3_sitedir}/PySide/__pycache__
+
+%files -n python3-PySide-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libpyside.%{py3_soabi}.so
+%{_pkgconfigdir}/pyside-py%{py3_ver}.pc
+%{_libdir}/cmake/PySide-%{pyside_ver}/PySideConfig.%{py3_soabi}.cmake
+%endif
This page took 0.142898 seconds and 4 git commands to generate.