aports/community/pyside6/APKBUILD
2023-04-22 23:58:02 +02:00

114 lines
3.0 KiB
Plaintext

# Contributor: Luca Weiss <luca@z3ntu.xyz>
# Maintainer: psykose <alice@ayaya.dev>
pkgname=pyside6
pkgver=6.5.0
pkgrel=1
_llvmver=16
pkgdesc="Enables the use of Qt6 APIs in Python applications"
url="https://doc.qt.io/qtforpython-6/"
# arm: broken with opengles2 feature in 6.5
arch="all !aarch64 !armhf !armv7"
license="LGPL-3.0-only AND GPL-2.0-only"
makedepends="
clang$_llvmver-dev
clang$_llvmver-static
cmake
llvm$_llvmver-dev
llvm$_llvmver-static
py3-numpy-dev
py3-setuptools
py3-wheel
python3-dev
qt6-qtbase-dev
qt6-qtcharts-dev
qt6-qtconnectivity-dev
qt6-qtdatavis3d-dev
qt6-qtdeclarative-dev
qt6-qthttpserver-dev
qt6-qtmultimedia-dev
qt6-qtnetworkauth-dev
qt6-qtpositioning-dev
qt6-qtquick3d-dev
qt6-qtremoteobjects-dev
qt6-qtscxml-dev
qt6-qtsensors-dev
qt6-qtserialport-dev
qt6-qtspeech-dev
qt6-qtsvg-dev
qt6-qttools-dev
qt6-qtwebchannel-dev
qt6-qtwebsockets-dev
samurai
"
subpackages="
py3-pyside6:pyside
py3-shiboken6:pyshiboken
$pkgname-dev
"
source="$pkgver-$pkgname.tar.xz::https://download.qt.io/official_releases/QtForPython/pyside6/PySide6-$pkgver-src/pyside-setup-everywhere-src-$pkgver.tar.xz
clang16.patch
"
builddir="$srcdir/pyside-setup-everywhere-src-${pkgver%.*}"
options="!check" # Tests fail
case "$CARCH" in
x86)
;;
*)
makedepends="$makedepends qt6-qt3d-dev"
;;
esac
build() {
export LLVM_INSTALL_DIR=/usr/lib/llvm$_llvmver
export SETUPTOOLS_USE_DISTUTILS=stdlib
CFLAGS="$CFLAGS -flto=auto" \
CXXFLAGS="$CXXFLAGS -I/usr/lib/llvm$_llvmver/include -flto=auto" \
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_SKIP_RPATH=ON \
-DBUILD_SHARED_LIBS=True \
-DPYTHON_EXECUTABLE=/usr/bin/python3 \
-DBUILD_TESTS=OFF
PYTHONPATH="$PWD/build/sources" \
cmake --build build
}
package() {
export SETUPTOOLS_USE_DISTUTILS=stdlib
DESTDIR="$pkgdir" cmake --install build/sources/pyside6
DESTDIR="$pkgdir" cmake --install build/sources/shiboken6
# Install egg info
export PATH="/usr/lib/qt6/bin:$PATH"
local pythonpath="$(python3 -c "from sysconfig import get_path; print(get_path('platlib'))")"
python3 setup.py egg_info --build-type=pyside6
python3 setup.py egg_info --build-type=shiboken6
python3 setup.py egg_info --build-type=shiboken6-generator
cp -r PySide6.egg-info "$pkgdir/$pythonpath"
cp -r shiboken6*.egg-info "$pkgdir/$pythonpath"
}
pyshiboken() {
pkgdesc="qt shiboken6 python module"
amove usr/bin # shiboken6 build tool
amove usr/lib/libshiboken6* # python object
amove usr/lib/python3.*/site-packages/shiboken6*
}
pyside() {
pkgdesc="qt pyside6 python module"
amove usr/lib/libpyside6* # python object
amove usr/lib/python3.*/site-packages/PySide6*
amove usr/share/PySide6
}
sha512sums="
4a1f88d18d7276182c83b6deff8d57c4c40914292b61dcea76975de5506d7fffa4db7b783161373585ff90dc96a2acc6fed98d06a6a35fff6e92864f2699ea7f 6.5.0-pyside6.tar.xz
f7c7eea197a9f3d19fb61865bc1b633a7b60b7766d167d493c4779b5717cc169b1b2fd2f4c635a9cc4030a21c5f1f52d4868c95d9c90f8475fd6904d858d7ca5 clang16.patch
"