diff --git a/dev-python/pyqt/pyqt-5.8.recipe b/dev-python/pyqt/pyqt-5.8.recipe new file mode 100644 index 000000000..5f4dbd483 --- /dev/null +++ b/dev-python/pyqt/pyqt-5.8.recipe @@ -0,0 +1,219 @@ +SUMMARY="Python v2 and v3 bindings for Qt application framework" +DESCRIPTION="PyQt combines all the advantages of Qt and Python. A programmer \ +has all the power of Qt, but is able to exploit it with the \ +simplicity of Python." +HOMEPAGE="http://www.riverbankcomputing.com/software/pyqt/" +COPYRIGHT="2015-2017 Riverbank Computing Limited" +LICENSE="GNU GPL v3" +REVISION="1" +SOURCE_URI="https://downloads.sourceforge.net/project/pyqt/PyQt5/PyQt-$portVersion/PyQt5_gpl-$portVersion.tar.gz" +CHECKSUM_SHA256="9edf2816105a4111a447452df2bef7ce47d7efb307c75c3e74c27b8d31d7f66e" +SOURCE_DIR="PyQt5_gpl-$portVersion" + +ARCHITECTURES="!x86_gcc2 ?x86 x86_64" +SECONDARY_ARCHITECTURES="?x86" + +PROVIDES=" + pyqt${secondaryArchSuffix} = $portVersion + " +REQUIRES=" + haiku${secondaryArchSuffix} + lib:libQt5Bluetooth$secondaryArchSuffix + lib:libQt5Core$secondaryArchSuffix + lib:libQt5Designer$secondaryArchSuffix + lib:libQt5DBus$secondaryArchSuffix + lib:libQt5Gui$secondaryArchSuffix + lib:libQt5Help$secondaryArchSuffix + lib:libQt5Location$secondaryArchSuffix + lib:libQt5Multimedia$secondaryArchSuffix + lib:libQt5MultimediaWidgets$secondaryArchSuffix + lib:libQt5Network$secondaryArchSuffix + lib:libQt5Nfc$secondaryArchSuffix + lib:libQt5OpenGL$secondaryArchSuffix + lib:libQt5PrintSupport$secondaryArchSuffix + lib:libQt5Positioning$secondaryArchSuffix + lib:libQt5Qml$secondaryArchSuffix + lib:libQt5Quick$secondaryArchSuffix + lib:libQt5QuickWidgets$secondaryArchSuffix + lib:libQt5Sensors$secondaryArchSuffix + lib:libQt5SerialPort$secondaryArchSuffix + lib:libQt5Sql$secondaryArchSuffix + lib:libQt5Svg$secondaryArchSuffix + lib:libQt5Test$secondaryArchSuffix + lib:libQt5WebChannel$secondaryArchSuffix + lib:libQt5WebKit$secondaryArchSuffix + lib:libQt5WebKitWidgets$secondaryArchSuffix + lib:libQt5WebSockets$secondaryArchSuffix + lib:libQt5Widgets$secondaryArchSuffix + lib:libQt5Xml$secondaryArchSuffix + lib:libQt5XmlPatterns$secondaryArchSuffix + lib:libGL${secondaryArchSuffix} + " + +PROVIDES_python=" + pyqt_python${secondaryArchSuffix} = $portVersion + python_pyqt${secondaryArchSuffix} + cmd:python2_pylupdate5${secondaryArchSuffix} + cmd:python2_pyrcc5${secondaryArchSuffix} + cmd:python2_pyuic5${secondaryArchSuffix} + " +REQUIRES_python=" + pyqt$secondaryArchSuffix == $portVersion base + sip_python >= 4.19 + cmd:python2 + $REQUIRES + " +REPLACES_python=" + python_pyqt${secondaryArchSuffix} + " + +PROVIDES_python3=" + pyqt_python3${secondaryArchSuffix} = $portVersion + python3_pyqt${secondaryArchSuffix} + cmd:pylupdate5${secondaryArchSuffix} + cmd:pyrcc5${secondaryArchSuffix} + cmd:pyuic5${secondaryArchSuffix} + " +REQUIRES_python3=" + haiku${secondaryArchSuffix} + pyqt$secondaryArchSuffix == $portVersion base + sip_python3 >= 4.19 + cmd:python3 + $REQUIRES + " +REPLACES_python3=" + python3_pyqt${secondaryArchSuffix} + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + python_setuptools + sip_python # >= 4.19 + python3_setuptools + sip_python3 # >= 4.19 + devel:libQt5Bluetooth$secondaryArchSuffix >= 5.7 + devel:libQt5Core$secondaryArchSuffix >= 5.7 + devel:libQt5Designer$secondaryArchSuffix >= 5.7 + devel:libQt5DBus$secondaryArchSuffix >= 5.7 + devel:libQt5Gui$secondaryArchSuffix >= 5.7 + devel:libQt5Help$secondaryArchSuffix >= 5.7 + devel:libQt5Location$secondaryArchSuffix >= 5.7 + devel:libQt5Multimedia$secondaryArchSuffix >= 5.7 + devel:libQt5MultimediaWidgets$secondaryArchSuffix >= 5.7 + devel:libQt5Network$secondaryArchSuffix >= 5.7 + devel:libQt5Nfc$secondaryArchSuffix >= 5.7 + devel:libQt5OpenGL$secondaryArchSuffix >= 5.7 + devel:libQt5PrintSupport$secondaryArchSuffix >= 5.7 + devel:libQt5Positioning$secondaryArchSuffix >= 5.7 + devel:libQt5Qml$secondaryArchSuffix >= 5.7 + devel:libQt5Quick$secondaryArchSuffix >= 5.7 + devel:libQt5QuickWidgets$secondaryArchSuffix >= 5.7 + devel:libQt5Sensors$secondaryArchSuffix >= 5.7 + devel:libQt5SerialPort$secondaryArchSuffix >= 5.7 + devel:libQt5Sql$secondaryArchSuffix >= 5.7 + devel:libQt5Svg$secondaryArchSuffix >= 5.7 + devel:libQt5Test$secondaryArchSuffix >= 5.7 + devel:libQt5WebChannel$secondaryArchSuffix >= 5.7 + devel:libQt5WebKit$secondaryArchSuffix >= 5.7 + devel:libQt5WebKitWidgets$secondaryArchSuffix >= 5.7 + devel:libQt5WebSockets$secondaryArchSuffix >= 5.7 + devel:libQt5Widgets$secondaryArchSuffix >= 5.7 + devel:libQt5Xml$secondaryArchSuffix >= 5.7 + devel:libQt5XmlPatterns$secondaryArchSuffix >= 5.7 + devel:libGL${secondaryArchSuffix} + " +BUILD_PREREQUIRES=" + cmd:python2 + cmd:python3 + cmd:gcc${secondaryArchSuffix} + cmd:make + cmd:ld${secondaryArchSuffix} + cmd:qmake${secondaryArchSuffix} >= 5 + " + +BUILD() +{ + OLDPYTHONPATH=$PYTHONPATH + mkdir -p build; cd build + + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python2/bin/python2 + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$OLDPYTHONPATH + + $portPackageLinksDir/cmd~python2/bin/python2 ../configure.py \ + --confirm-license \ + --no-designer-plugin \ + --no-qml-plugin \ + --bindir=$binDir \ + --destdir=$installLocation \ + --sipdir=$dataDir \ + --sip=$portPackageLinksDir/sip_python/bin/python2-sip \ + --stubsdir=$installLocation/PyQt5 \ + #--verbose + + make $jobArgs + + mkdir -p ../build3; cd ../build3 + + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python3/bin/python3 + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$OLDPYTHONPATH + + $portPackageLinksDir/cmd~python3/bin/python3 ../configure.py \ + --confirm-license \ + --no-designer-plugin \ + --no-qml-plugin \ + --bindir=$binDir \ + --destdir=$installLocation \ + --sipdir=$dataDir \ + --sip=$portPackageLinksDir/sip_python3/bin/sip \ + --stubsdir=$installLocation/PyQt5 \ + #--verbose + + make $jobArgs +} + +INSTALL() +{ + OLDPYTHONPATH=$PYTHONPATH + cd build + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python2/bin/python2 + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$OLDPYTHONPATH + + mkdir -p $installLocation + make install + + for file in pylupdate5 pyrcc5 pyuic5; do + mv $binDir/$file $binDir/python2-$file + done + + packageEntries python \ + $installLocation \ + $binDir/python2* + + rmdir $prefix/lib/python$pythonVersion + + cd ../build3 + # GENERIC: all python_setuptools-based installs need this + python=$portPackageLinksDir/cmd~python3/bin/python3 + pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3) + installLocation=$prefix/lib/python$pythonVersion/vendor-packages/ + export PYTHONPATH=$installLocation:$OLDPYTHONPATH + + mkdir -p $installLocation + make install + + packageEntries python3 \ + $installLocation \ + $binDir + + rmdir $prefix/lib/python$pythonVersion + +}