From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A27151581EE for ; Fri, 04 Apr 2025 18:06:45 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 89CAD3430A0 for ; Fri, 04 Apr 2025 18:06:45 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 8C14A1102CE; Fri, 04 Apr 2025 18:06:44 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 7E4761102CE for ; Fri, 04 Apr 2025 18:06:44 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 2155D3430A0 for ; Fri, 04 Apr 2025 18:06:44 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 713DC1936 for ; Fri, 04 Apr 2025 18:06:42 +0000 (UTC) From: "Nowa Ammerlaan" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Nowa Ammerlaan" Message-ID: <1743789970.f65388634c8921b8901c4dcccd7fa53ca631d46c.nowa@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/pyside/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-python/pyside/Manifest dev-python/pyside/pyside-6.8.2-r1.ebuild dev-python/pyside/pyside-6.8.3.ebuild dev-python/pyside/pyside-6.9.9999.ebuild dev-python/pyside/pyside-6.9999.ebuild X-VCS-Directories: dev-python/pyside/ X-VCS-Committer: nowa X-VCS-Committer-Name: Nowa Ammerlaan X-VCS-Revision: f65388634c8921b8901c4dcccd7fa53ca631d46c X-VCS-Branch: master Date: Fri, 04 Apr 2025 18:06:42 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 5be81053-d896-46c9-b6bf-b9ba9a4c753f X-Archives-Hash: d9590212751291a41b0191eb4e89b1f0 commit: f65388634c8921b8901c4dcccd7fa53ca631d46c Author: Nowa Ammerlaan gentoo org> AuthorDate: Fri Apr 4 18:02:37 2025 +0000 Commit: Nowa Ammerlaan gentoo org> CommitDate: Fri Apr 4 18:06:10 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6538863 dev-python/pyside: update SRC_URI Closes: https://bugs.gentoo.org/953065 Signed-off-by: Nowa Ammerlaan gentoo.org> dev-python/pyside/Manifest | 2 +- dev-python/pyside/pyside-6.8.2-r1.ebuild | 53 ++++++++++++++++++++------------ dev-python/pyside/pyside-6.8.3.ebuild | 27 ++++++++-------- dev-python/pyside/pyside-6.9.9999.ebuild | 27 ++++++++-------- dev-python/pyside/pyside-6.9999.ebuild | 27 ++++++++-------- 5 files changed, 73 insertions(+), 63 deletions(-) diff --git a/dev-python/pyside/Manifest b/dev-python/pyside/Manifest index fa25a392610a..aebd4cdd562c 100644 --- a/dev-python/pyside/Manifest +++ b/dev-python/pyside/Manifest @@ -1,2 +1,2 @@ -DIST pyside-pyside-setup-6.8.2.gh.tar.gz 19305680 BLAKE2B d4da8ec63d35714bf4418cdc9ff5921fe554c1635a7c5c467657b64c2140208b4bba57fc9932f0f96426e1d15c124209b0b29eb9340261d34eed194128a03545 SHA512 30691d27afaeaa3117e68b60745918d9697c8d9e4ee8941eaab51995cb5128c56d44964511f2db731f448bf32219160032e4a4cd4773d3fccc4de8c0e509d1c1 +DIST pyside-setup-everywhere-src-6.8.2.tar.xz 16609596 BLAKE2B 7e4f12cf81d649e2d7e52ff31eedda55db29650230e5dac2a930d38827d7e43101309a601e0dc3ccebea0274f006f25c9a6be79baa3d0390526dbb8583920230 SHA512 cc522143974d08133d68d3259caa5127916534e16678693866d65965a546db98b5b1b07d92f7c0918b7c8fb10213d94ad50259b22cf9ebc2a63b985068d75452 DIST pyside-setup-everywhere-src-6.8.3.tar.xz 16611768 BLAKE2B 119696fc184c5caa450807dab6acae903a9a2b1e98b5c641659fdb77bfcb855e3a7cb8abb4fbc0d22c5df9312ce924599aff615e28bedd45b9ee30e88dee8b56 SHA512 a7d1bbd0edd8c42e6925bf880e5ee613391fb1d75f2880598577c49fe90d0c0b81907fd4cd3032ba665bcf70a6915e0ee1a8648c7012a28e598d5c7eb6da1bfe diff --git a/dev-python/pyside/pyside-6.8.2-r1.ebuild b/dev-python/pyside/pyside-6.8.2-r1.ebuild index c565fb32f91b..228a2b6d0606 100644 --- a/dev-python/pyside/pyside-6.8.2-r1.ebuild +++ b/dev-python/pyside/pyside-6.8.2-r1.ebuild @@ -1,6 +1,11 @@ # Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# NOTE: We combine here several PyPI packages, we do this because +# pyside can and does break if it is compiled with a different +# toolchain then was used to build shiboken. This bundling ensures +# that we always use the same toolchain for all components. + EAPI=8 PYTHON_COMPAT=( python3_{10..13} ) @@ -10,17 +15,28 @@ DISTUTILS_EXT=1 inherit distutils-r1 llvm-r1 multiprocessing qmake-utils virtualx -MY_PN=pyside-pyside-setup +MY_PN=${PN}-setup-everywhere-src MY_P=${MY_PN}-${PV} DESCRIPTION="Python bindings for the Qt framework" HOMEPAGE="https://wiki.qt.io/PySide6" -SRC_URI="https://github.com/qtproject/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${MY_P}.gh.tar.gz" -S="${WORKDIR}/${MY_P}" + +if [[ ${PV} == *.9999 ]]; then + inherit git-r3 + EGIT_REPO_URI=( + "https://code.qt.io/${PN}/${PN}-setup.git" + "https://github.com/qtproject/${PN}-${PN}-setup.git" + ) + EGIT_BRANCH=dev + [[ ${PV} == 6.*.9999 ]] && EGIT_BRANCH=${PV%.9999} +else + SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-${PV}-src/${MY_P}.tar.xz" + S="${WORKDIR}/${MY_P}" + KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86" +fi LICENSE="|| ( GPL-2 GPL-3 LGPL-3 )" SLOT="6/${PV}" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86" # If a flag enables multiple Qt modules, they should be ordered # according to their dependencies, e.g. for 3d, 3DCore must be first. @@ -107,7 +123,7 @@ declare -A QT_REQUIREMENTS=( ["webchannel"]="core" ["webengine"]="core gui network printsupport quick webchannel" ["websockets"]="network" - ["webview"]="gui" + ["webview"]="gui quick webengine" ["widgets"]="gui" ["xml"]="core" ) @@ -206,8 +222,6 @@ BDEPEND=" PATCHES=( # Needs porting to newer wheel and setuptools "${FILESDIR}/${PN}-6.8.2-quick-fix-build-wheel.patch" - # References files not present in our dev-qt/qtbase - "${FILESDIR}/${P}-no-qtexampleicons.patch" # TODO: remove in 6.8.3 ) # Build system duplicates system libraries. TODO: fix @@ -345,9 +359,15 @@ python_compile() { --build-type=shiboken6 ) distutils-r1_python_compile + + # The build system uses its own build dir, find the name of this dir. + local pyside_build_dir=$(find "${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))" -maxdepth 1 -type d -name 'qfp-*' -printf "%f\n") + export BUILD_ID=${pyside_build_dir#qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-} + DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=shiboken6-generator ) distutils-r1_python_compile @@ -356,7 +376,7 @@ python_compile() { DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build - --shiboken-target-path="$(find "${BUILD_DIR}/build" -type d -name cmake)/../../" + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=pyside6 ) distutils-r1_python_compile @@ -410,7 +430,7 @@ python_compile() { done # Install misc files from inner install dir - find "${BUILD_DIR}"/build/*/install -type f \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type f \ -name libPySidePlugin.so -exec \ mkdir -p "${BUILD_DIR}/install/$(qt6_get_plugindir)/designer/" \; \ -exec \ @@ -418,7 +438,7 @@ python_compile() { || die for dir in cmake pkgconfig; do - find "${BUILD_DIR}"/build/*/install -type d -name ${dir} \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type d -name ${dir} \ -exec cp -r "{}" "${BUILD_DIR}/install/usr/lib/" \; \ || die done @@ -470,18 +490,11 @@ python_compile() { } python_test() { - # figure out the build dir - local build_dir build_classifier - build_dir=$(ls -d "${BUILD_DIR}"/build/qfp-*/build/) - build_classifier="${build_dir##${BUILD_DIR}/build/qfp-}" - build_classifier="${build_dir%%/build}" - # Otherwise it picks the last built directory breaking assumption for multi target builds mkdir -p build_history/9999-99-99_999999/ || die - cat <<- EOF > build_history/9999-99-99_999999/build_dir.txt || die - ${build_dir} - ${build_classifier} - EOF + local pyside_build_dir=qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-${BUILD_ID} + echo "$(ls -d "${BUILD_DIR}"/build*/${pyside_build_dir}/build | sort -V | tail -n 1)" > build_history/9999-99-99_999999/build_dir.txt || die + echo "${pyside_build_dir}" >> build_history/9999-99-99_999999/build_dir.txt || die virtx ${EPYTHON} testrunner.py test --projects=shiboken6 $(usev core '--projects=pyside6') || die "Tests failed with ${EPYTHON}" diff --git a/dev-python/pyside/pyside-6.8.3.ebuild b/dev-python/pyside/pyside-6.8.3.ebuild index 0cc05197aff0..5e583ba3e82d 100644 --- a/dev-python/pyside/pyside-6.8.3.ebuild +++ b/dev-python/pyside/pyside-6.8.3.ebuild @@ -30,7 +30,7 @@ if [[ ${PV} == *.9999 ]]; then EGIT_BRANCH=dev [[ ${PV} == 6.*.9999 ]] && EGIT_BRANCH=${PV%.9999} else - SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-6.8.3-src/${MY_P}.tar.xz" + SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-${PV}-src/${MY_P}.tar.xz" S="${WORKDIR}/${MY_P}" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" fi @@ -359,9 +359,15 @@ python_compile() { --build-type=shiboken6 ) distutils-r1_python_compile + + # The build system uses its own build dir, find the name of this dir. + local pyside_build_dir=$(find "${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))" -maxdepth 1 -type d -name 'qfp-*' -printf "%f\n") + export BUILD_ID=${pyside_build_dir#qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-} + DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=shiboken6-generator ) distutils-r1_python_compile @@ -370,7 +376,7 @@ python_compile() { DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build - --shiboken-target-path="$(find "${BUILD_DIR}/build" -type d -name cmake)/../../" + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=pyside6 ) distutils-r1_python_compile @@ -424,7 +430,7 @@ python_compile() { done # Install misc files from inner install dir - find "${BUILD_DIR}"/build/*/install -type f \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type f \ -name libPySidePlugin.so -exec \ mkdir -p "${BUILD_DIR}/install/$(qt6_get_plugindir)/designer/" \; \ -exec \ @@ -432,7 +438,7 @@ python_compile() { || die for dir in cmake pkgconfig; do - find "${BUILD_DIR}"/build/*/install -type d -name ${dir} \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type d -name ${dir} \ -exec cp -r "{}" "${BUILD_DIR}/install/usr/lib/" \; \ || die done @@ -484,18 +490,11 @@ python_compile() { } python_test() { - # figure out the build dir - local build_dir build_classifier - build_dir=$(ls -d "${BUILD_DIR}"/build/qfp-*/build/) - build_classifier="${build_dir##${BUILD_DIR}/build/qfp-}" - build_classifier="${build_dir%%/build}" - # Otherwise it picks the last built directory breaking assumption for multi target builds mkdir -p build_history/9999-99-99_999999/ || die - cat <<- EOF > build_history/9999-99-99_999999/build_dir.txt || die - ${build_dir} - ${build_classifier} - EOF + local pyside_build_dir=qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-${BUILD_ID} + echo "$(ls -d "${BUILD_DIR}"/build*/${pyside_build_dir}/build | sort -V | tail -n 1)" > build_history/9999-99-99_999999/build_dir.txt || die + echo "${pyside_build_dir}" >> build_history/9999-99-99_999999/build_dir.txt || die virtx ${EPYTHON} testrunner.py test --projects=shiboken6 $(usev core '--projects=pyside6') || die "Tests failed with ${EPYTHON}" diff --git a/dev-python/pyside/pyside-6.9.9999.ebuild b/dev-python/pyside/pyside-6.9.9999.ebuild index 0cc05197aff0..5e583ba3e82d 100644 --- a/dev-python/pyside/pyside-6.9.9999.ebuild +++ b/dev-python/pyside/pyside-6.9.9999.ebuild @@ -30,7 +30,7 @@ if [[ ${PV} == *.9999 ]]; then EGIT_BRANCH=dev [[ ${PV} == 6.*.9999 ]] && EGIT_BRANCH=${PV%.9999} else - SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-6.8.3-src/${MY_P}.tar.xz" + SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-${PV}-src/${MY_P}.tar.xz" S="${WORKDIR}/${MY_P}" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" fi @@ -359,9 +359,15 @@ python_compile() { --build-type=shiboken6 ) distutils-r1_python_compile + + # The build system uses its own build dir, find the name of this dir. + local pyside_build_dir=$(find "${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))" -maxdepth 1 -type d -name 'qfp-*' -printf "%f\n") + export BUILD_ID=${pyside_build_dir#qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-} + DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=shiboken6-generator ) distutils-r1_python_compile @@ -370,7 +376,7 @@ python_compile() { DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build - --shiboken-target-path="$(find "${BUILD_DIR}/build" -type d -name cmake)/../../" + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=pyside6 ) distutils-r1_python_compile @@ -424,7 +430,7 @@ python_compile() { done # Install misc files from inner install dir - find "${BUILD_DIR}"/build/*/install -type f \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type f \ -name libPySidePlugin.so -exec \ mkdir -p "${BUILD_DIR}/install/$(qt6_get_plugindir)/designer/" \; \ -exec \ @@ -432,7 +438,7 @@ python_compile() { || die for dir in cmake pkgconfig; do - find "${BUILD_DIR}"/build/*/install -type d -name ${dir} \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type d -name ${dir} \ -exec cp -r "{}" "${BUILD_DIR}/install/usr/lib/" \; \ || die done @@ -484,18 +490,11 @@ python_compile() { } python_test() { - # figure out the build dir - local build_dir build_classifier - build_dir=$(ls -d "${BUILD_DIR}"/build/qfp-*/build/) - build_classifier="${build_dir##${BUILD_DIR}/build/qfp-}" - build_classifier="${build_dir%%/build}" - # Otherwise it picks the last built directory breaking assumption for multi target builds mkdir -p build_history/9999-99-99_999999/ || die - cat <<- EOF > build_history/9999-99-99_999999/build_dir.txt || die - ${build_dir} - ${build_classifier} - EOF + local pyside_build_dir=qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-${BUILD_ID} + echo "$(ls -d "${BUILD_DIR}"/build*/${pyside_build_dir}/build | sort -V | tail -n 1)" > build_history/9999-99-99_999999/build_dir.txt || die + echo "${pyside_build_dir}" >> build_history/9999-99-99_999999/build_dir.txt || die virtx ${EPYTHON} testrunner.py test --projects=shiboken6 $(usev core '--projects=pyside6') || die "Tests failed with ${EPYTHON}" diff --git a/dev-python/pyside/pyside-6.9999.ebuild b/dev-python/pyside/pyside-6.9999.ebuild index 0cc05197aff0..5e583ba3e82d 100644 --- a/dev-python/pyside/pyside-6.9999.ebuild +++ b/dev-python/pyside/pyside-6.9999.ebuild @@ -30,7 +30,7 @@ if [[ ${PV} == *.9999 ]]; then EGIT_BRANCH=dev [[ ${PV} == 6.*.9999 ]] && EGIT_BRANCH=${PV%.9999} else - SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-6.8.3-src/${MY_P}.tar.xz" + SRC_URI="https://download.qt.io/official_releases/QtForPython/${PN}6/PySide6-${PV}-src/${MY_P}.tar.xz" S="${WORKDIR}/${MY_P}" KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" fi @@ -359,9 +359,15 @@ python_compile() { --build-type=shiboken6 ) distutils-r1_python_compile + + # The build system uses its own build dir, find the name of this dir. + local pyside_build_dir=$(find "${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))" -maxdepth 1 -type d -name 'qfp-*' -printf "%f\n") + export BUILD_ID=${pyside_build_dir#qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-} + DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=shiboken6-generator ) distutils-r1_python_compile @@ -370,7 +376,7 @@ python_compile() { DISTUTILS_ARGS=( "${MAIN_DISTUTILS_ARGS[@]}" --reuse-build - --shiboken-target-path="$(find "${BUILD_DIR}/build" -type d -name cmake)/../../" + --shiboken-target-path="${BUILD_DIR}/build$((${#DISTUTILS_WHEELS[@]}-1))/${pyside_build_dir}/install" --build-type=pyside6 ) distutils-r1_python_compile @@ -424,7 +430,7 @@ python_compile() { done # Install misc files from inner install dir - find "${BUILD_DIR}"/build/*/install -type f \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type f \ -name libPySidePlugin.so -exec \ mkdir -p "${BUILD_DIR}/install/$(qt6_get_plugindir)/designer/" \; \ -exec \ @@ -432,7 +438,7 @@ python_compile() { || die for dir in cmake pkgconfig; do - find "${BUILD_DIR}"/build/*/install -type d -name ${dir} \ + find "${BUILD_DIR}"/build*/${pyside_build_dir}/install -type d -name ${dir} \ -exec cp -r "{}" "${BUILD_DIR}/install/usr/lib/" \; \ || die done @@ -484,18 +490,11 @@ python_compile() { } python_test() { - # figure out the build dir - local build_dir build_classifier - build_dir=$(ls -d "${BUILD_DIR}"/build/qfp-*/build/) - build_classifier="${build_dir##${BUILD_DIR}/build/qfp-}" - build_classifier="${build_dir%%/build}" - # Otherwise it picks the last built directory breaking assumption for multi target builds mkdir -p build_history/9999-99-99_999999/ || die - cat <<- EOF > build_history/9999-99-99_999999/build_dir.txt || die - ${build_dir} - ${build_classifier} - EOF + local pyside_build_dir=qfp-py${EPYTHON#python}-qt$(ver_cut 1-3)-${BUILD_ID} + echo "$(ls -d "${BUILD_DIR}"/build*/${pyside_build_dir}/build | sort -V | tail -n 1)" > build_history/9999-99-99_999999/build_dir.txt || die + echo "${pyside_build_dir}" >> build_history/9999-99-99_999999/build_dir.txt || die virtx ${EPYTHON} testrunner.py test --projects=shiboken6 $(usev core '--projects=pyside6') || die "Tests failed with ${EPYTHON}"