vp-build/srcpkgs/python-PyQt5/template

526 lines
16 KiB
Bash

# Template file for 'python-PyQt5'
pkgname=python-PyQt5
version=5.8.1
revision=1
lib32disabled=yes
wrksrc="PyQt5_gpl-${version}"
replaces="python-PyQt5-enginio<5.7_1"
hostmakedepends="pkg-config"
makedepends="
python-devel python3-devel python-sip-devel python3-sip-devel python-dbus-devel
qt5-tools-devel qt5-connectivity-devel qt5-declarative-devel qt5-location-devel
qt5-multimedia-devel qt5-sensors-devel qt5-serialport-devel qt5-svg-devel
qt5-webchannel-devel qt5-webengine-devel qt5-webkit-devel qt5-websockets-devel
qt5-x11extras-devel qt5-xmlpatterns-devel pulseaudio-devel"
depends="python-sip"
pycompile_module="PyQt5"
short_desc="Python2 bindings for the Qt5 toolkit"
maintainer="Alessio Sergi <al3hex@gmail.com>"
homepage="http://www.riverbankcomputing.co.uk/software/pyqt/intro"
license="GPL-3"
distfiles="${SOURCEFORGE_SITE}/pyqt/PyQt5_gpl-${version}.tar.gz"
checksum=1e8f24b261f34fa5bad19b5a637aadba2fa9a62e440749117b229253e8992a2e
# FIXME: Cross fails because make -f qtdetail uses g++ but $CXXFLAGS
# qtdetail is a host tool and should be compiled as such
nocross=yes
pre_build() {
mkdir -p pyqt5-${py2_ver}
mv * pyqt5-${py2_ver} || true
cp -a pyqt5-${py2_ver} pyqt5-${py3_ver}
rm -rf pyqt5-${py2_ver}/pyuic/uic/port_v3
rm -rf pyqt5-${py3_ver}/pyuic/uic/port_v2
}
do_build() {
local tools=
for pyver in $py2_ver $py3_ver; do
cd $wrksrc/pyqt5-$pyver
python${pyver} configure.py --confirm-license --assume-shared \
STRIP="" QMAKE_CXXFLAGS="${CXXFLAGS}" QMAKE_LFLAGS="${LDFLAGS}"
make ${makejobs}
done
}
do_install() {
# install python-pyqt5
make -C pyqt5-${py2_ver} DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install
for f in pylupdate5 pyrcc5 pyuic5; do
sed -i 's,/usr/bin/python2.7,/usr/bin/python2,' ${DESTDIR}/usr/bin/${f}
mv ${DESTDIR}/usr/bin/{,python2-}${f}
done
# install python3-pyqt5
make -C pyqt5-${py3_ver} DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install
for f in pylupdate5 pyrcc5 pyuic5; do
sed -i 's,/usr/bin/python3[.0-9]*,/usr/bin/python3,' ${DESTDIR}/usr/bin/${f}
mv ${DESTDIR}/usr/bin/{,python3-}${f}
done
cd pyqt5-${py2_ver}
# install doc
vmkdir usr/share/doc/${pkgname}
vcopy doc/html usr/share/doc/${pkgname}
}
python-PyQt5-devel-tools_package() {
lib32disabled=yes
short_desc+=" - development tools"
alternatives="
pyqt5:pylupdate5:/usr/bin/python2-pylupdate5
pyqt5:pyrcc5:/usr/bin/python2-pyrcc5
pyqt5:pyuic5:/usr/bin/python2-pyuic5"
pycompile_module="PyQt5"
pkg_install() {
vmove usr/bin/python2-*
vmove ${py2_sitelib}/PyQt5/pylupdate.so
vmove ${py2_sitelib}/PyQt5/pylupdate_main.py
vmove ${py2_sitelib}/PyQt5/pyrcc.so
vmove ${py2_sitelib}/PyQt5/pyrcc_main.py
}
}
python3-PyQt5-devel-tools_package() {
lib32disabled=yes
short_desc="${short_desc/Python2/Python3} - development tools"
alternatives="
pyqt5:pylupdate5:/usr/bin/python3-pylupdate5
pyqt5:pyrcc5:/usr/bin/python3-pyrcc5
pyqt5:pyuic5:/usr/bin/python3-pyuic5"
pycompile_module="PyQt5"
pkg_install() {
vmove usr/bin/python3-*
vmove ${py3_sitelib}/PyQt5/pylupdate.so
vmove ${py3_sitelib}/PyQt5/pylupdate_main.py
vmove ${py3_sitelib}/PyQt5/pyrcc.so
vmove ${py3_sitelib}/PyQt5/pyrcc_main.py
}
}
python-PyQt5-devel_package() {
depends="python-sip-devel python3-sip-devel
python-PyQt5-${version}_${revision} python3-PyQt5-${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/share/sip
}
}
python-PyQt5-doc_package() {
noarch=yes
short_desc+=" - documentation files"
pkg_install() {
vmove usr/share/doc
}
}
python-PyQt5-dbus_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision} python-dbus"
short_desc+=" - dbus support"
pkg_install() {
vmove ${py2_sitelib}/dbus/mainloop/pyqt5.so
}
}
python-PyQt5-connectivity_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - connectivity module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtBluetooth.so
vmove ${py2_sitelib}/PyQt5/QtNfc.so
}
}
python-PyQt5-multimedia_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - multimedia module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtMultimedia.so
vmove ${py2_sitelib}/PyQt5/QtMultimediaWidgets.so
}
}
python-PyQt5-opengl_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - opengl module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtOpenGL.so
vmove ${py2_sitelib}/PyQt5/_QOpenGLFunctions_2_0.so
}
}
python-PyQt5-location_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - location module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtLocation.so
vmove ${py2_sitelib}/PyQt5/QtPositioning.so
}
}
python-PyQt5-quick_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - quick module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtQml.so
vmove ${py2_sitelib}/PyQt5/QtQuick.so
vmove ${py2_sitelib}/PyQt5/QtQuickWidgets.so
}
}
python-PyQt5-sensors_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - sensors module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtSensors.so
}
}
python-PyQt5-serialport_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - serialport module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtSerialPort.so
}
}
python-PyQt5-sql_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - sql module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtSql.so
}
}
python-PyQt5-svg_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - svg module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtSvg.so
}
}
python-PyQt5-tools_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - designer, help modules"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtDesigner.so
vmove ${py2_sitelib}/PyQt5/QtHelp.so
}
}
python-PyQt5-webchannel_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - webchannel module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtWebChannel.so
}
}
python-PyQt5-webengine_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}
python-PyQt5-webchannel-${version}_${revision}"
short_desc+=" - webengine module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtWebEngine.so
vmove ${py2_sitelib}/PyQt5/QtWebEngineCore.so
vmove ${py2_sitelib}/PyQt5/QtWebEngineWidgets.so
}
}
python-PyQt5-webkit_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - webkit module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtWebKit.so
vmove ${py2_sitelib}/PyQt5/QtWebKitWidgets.so
}
}
python-PyQt5-websockets_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - websockets module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtWebSockets.so
}
}
python-PyQt5-x11extras_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - x11extras module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtX11Extras.so
}
}
python-PyQt5-xmlpatterns_package() {
lib32disabled=yes
depends="${sourcepkg}-${version}_${revision}"
short_desc+=" - xmlpatterns module"
pkg_install() {
vmove ${py2_sitelib}/PyQt5/QtXmlPatterns.so
}
}
python3-PyQt5_package() {
lib32disabled=yes
depends="python3-sip"
pycompile_module="PyQt5"
replaces="python3.4-PyQt5>=0 python3-PyQt5-enginio<5.7_1"
short_desc="${short_desc/Python2/Python3}"
pkg_install() {
vmove ${py3_sitelib}
}
}
python3-PyQt5-dbus_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-dbus>=0"
depends="python3-PyQt5-${version}_${revision} python3-dbus"
short_desc="${short_desc/Python2/Python3} - dbus support"
pkg_install() {
vmove ${py3_sitelib}/dbus/mainloop/pyqt5.so
}
}
python3-PyQt5-connectivity_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-connectivity>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - connectivity module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtBluetooth.so
vmove ${py3_sitelib}/PyQt5/QtNfc.so
}
}
python3-PyQt5-multimedia_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-multimedia>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - multimedia module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtMultimedia.so
vmove ${py3_sitelib}/PyQt5/QtMultimediaWidgets.so
}
}
python3-PyQt5-opengl_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-opengl>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - opengl module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtOpenGL.so
vmove ${py3_sitelib}/PyQt5/_QOpenGLFunctions_2_0.so
}
}
python3-PyQt5-location_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-location>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - location module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtLocation.so
vmove ${py3_sitelib}/PyQt5/QtPositioning.so
}
}
python3-PyQt5-quick_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-quick>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - quick module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtQml.so
vmove ${py3_sitelib}/PyQt5/QtQuick.so
vmove ${py3_sitelib}/PyQt5/QtQuickWidgets.so
vmove usr/lib/qt5/plugins/PyQt5/libpyqt5qmlplugin.so
}
}
python3-PyQt5-sensors_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-sensors>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - sensors module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtSensors.so
}
}
python3-PyQt5-serialport_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-serialport>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - serialport module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtSerialPort.so
}
}
python3-PyQt5-sql_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-sql>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - sql module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtSql.so
}
}
python3-PyQt5-svg_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-svg>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - svg module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtSvg.so
}
}
python3-PyQt5-tools_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-tools>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - designer, help modules"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtDesigner.so
vmove ${py3_sitelib}/PyQt5/QtHelp.so
vmove usr/lib/qt5/plugins/designer/libpyqt5.so
}
}
python3-PyQt5-webchannel_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-webchannel>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - webchannel module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtWebChannel.so
}
}
python3-PyQt5-webengine_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-webengine>=0"
depends="python3-PyQt5-${version}_${revision}
python3-PyQt5-webchannel-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - webengine module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtWebEngine.so
vmove ${py3_sitelib}/PyQt5/QtWebEngineCore.so
vmove ${py3_sitelib}/PyQt5/QtWebEngineWidgets.so
}
}
python3-PyQt5-webkit_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-webkit>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - webkit module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtWebKit.so
vmove ${py3_sitelib}/PyQt5/QtWebKitWidgets.so
}
}
python3-PyQt5-websockets_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-websockets>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - websockets module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtWebSockets.so
}
}
python3-PyQt5-x11extras_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-x11extras>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - x11extras module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtX11Extras.so
}
}
python3-PyQt5-xmlpatterns_package() {
lib32disabled=yes
replaces="python3.4-PyQt5-xmlpatterns>=0"
depends="python3-PyQt5-${version}_${revision}"
short_desc="${short_desc/Python2/Python3} - xmlpatterns module"
pkg_install() {
vmove ${py3_sitelib}/PyQt5/QtXmlPatterns.so
}
}
python3.4-PyQt5_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} (transitional dummy package)"
depends="python3-PyQt5>=${version}_${revision}"
replaces="python3.4-PyQt5-enginio<5.7_1"
}
python3.4-PyQt5-connectivity_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - connectivity module (transitional dummy package)"
depends="python3-PyQt5-connectivity>=${version}_${revision}"
}
python3.4-PyQt5-dbus_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - dbus module (transitional dummy package)"
depends="python3-PyQt5-dbus>=${version}_${revision}"
}
python3.4-PyQt5-location_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - location module (transitional dummy package)"
depends="python3-PyQt5-location>=${version}_${revision}"
}
python3.4-PyQt5-multimedia_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - multimedia module (transitional dummy package)"
depends="python3-PyQt5-multimedia>=${version}_${revision}"
}
python3.4-PyQt5-opengl_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - opengl module (transitional dummy package)"
depends="python3-PyQt5-opengl>=${version}_${revision}"
}
python3.4-PyQt5-quick_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - quick module (transitional dummy package)"
depends="python3-PyQt5-quick>=${version}_${revision}"
}
python3.4-PyQt5-sensors_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - sensors module (transitional dummy package)"
depends="python3-PyQt5-sensors>=${version}_${revision}"
}
python3.4-PyQt5-serialport_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - serialport module (transitional dummy package)"
depends="python3-PyQt5-serialport>=${version}_${revision}"
}
python3.4-PyQt5-sql_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - sql module (transitional dummy package)"
depends="python3-PyQt5-sql>=${version}_${revision}"
}
python3.4-PyQt5-svg_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - svg module (transitional dummy package)"
depends="python3-PyQt5-svg>=${version}_${revision}"
}
python3.4-PyQt5-tools_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - designer, help module (transitional dummy package)"
depends="python3-PyQt5-tools>=${version}_${revision}"
}
python3.4-PyQt5-webchannel_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - webchannel module (transitional dummy package)"
depends="python3-PyQt5-webchannel>=${version}_${revision}"
}
python3.4-PyQt5-webengine_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - webengine module (transitional dummy package)"
depends="python3-PyQt5-webengine>=${version}_${revision}"
}
python3.4-PyQt5-webkit_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - webkit module (transitional dummy package)"
depends="python3-PyQt5-webkit>=${version}_${revision}"
}
python3.4-PyQt5-websockets_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - websockets module (transitional dummy package)"
depends="python3-PyQt5-websockets>=${version}_${revision}"
}
python3.4-PyQt5-x11extras_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - x11extras module (transitional dummy package)"
depends="python3-PyQt5-x11extras>=${version}_${revision}"
}
python3.4-PyQt5-xmlpatterns_package() {
build_style=meta
short_desc="${short_desc/Python2/Python3.4} - xmlpatterns module (transitional dummy package)"
depends="python3-PyQt5-xmlpatterns>=${version}_${revision}"
}