public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Ionen Wolkens" <ionen@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/pyqt6/
Date: Mon, 25 Nov 2024 07:46:40 +0000 (UTC)	[thread overview]
Message-ID: <1732520749.2dac4fae78184f669f98685e1d0c8be1e10deacf.ionen@gentoo> (raw)

commit:     2dac4fae78184f669f98685e1d0c8be1e10deacf
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 25 07:23:09 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Nov 25 07:45:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2dac4fae

dev-python/pyqt6: add 6.8.0_pre2411221125

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-python/pyqt6/Manifest                         |   1 +
 dev-python/pyqt6/pyqt6-6.8.0_pre2411221125.ebuild | 194 ++++++++++++++++++++++
 2 files changed, 195 insertions(+)

diff --git a/dev-python/pyqt6/Manifest b/dev-python/pyqt6/Manifest
index 4648db2fc3b1..facf2a8e4031 100644
--- a/dev-python/pyqt6/Manifest
+++ b/dev-python/pyqt6/Manifest
@@ -1,2 +1,3 @@
 DIST PyQt6-6.7.1.tar.gz 1051212 BLAKE2B 9c1c619b08cc14e0a92ea22812c14d5a3cb47e45eea917d50ab63918d8433d54b354f26b885f2567b9c6e2f0380e819972d055d1a1751f6646ebb5e6cf72b228 SHA512 1e0fec009e1823b06460fd96eddc00ed31388c20f6d832aa0ebaa130baf06d83514df43af7961c3cb2872570d27e539d6db7bf6143ccdfd61a19da7521be2c7e
 DIST PyQt6-6.8.0.dev2410211537.tar.gz 1062853 BLAKE2B 1838bc76a7a4b2d6787e8f2f5e2960ea8d1f48715dad16886da6121eb36e8ca573d888de733ecf4da61439303e0151747785d1e5a7325271e398866630cdd946 SHA512 3fdf464609da8a2194980b4d100531aa593de6c22027bf212c92e393629e329da8c8259e05dcda11a3c90eb9cdbc1c3c70696642d323822adb721e78b6270b40
+DIST PyQt6-6.8.0.dev2411221125.tar.gz 1062521 BLAKE2B 88c4fc1580b74bf18f41ed266ec486cbfa60851834b747c153ac1fe20f08125154eda1755e4c33bf59a84e6560129a7c3c800a0c1cd4f8658f20fda0e4e35dfd SHA512 f52fe48969a8b86651f6a3bf6156a91c57e42e4192bd184dfe6b7ac8a4728509b4610c2da8fb88039ff2880b02c6dbb455d1ed12fb65b7cd65ddb8ca7fb6a476

diff --git a/dev-python/pyqt6/pyqt6-6.8.0_pre2411221125.ebuild b/dev-python/pyqt6/pyqt6-6.8.0_pre2411221125.ebuild
new file mode 100644
index 000000000000..c55633447423
--- /dev/null
+++ b/dev-python/pyqt6/pyqt6-6.8.0_pre2411221125.ebuild
@@ -0,0 +1,194 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=sip
+PYPI_NO_NORMALIZE=1
+PYPI_PN=PyQt6
+PYTHON_COMPAT=( python3_{10..13} )
+inherit distutils-r1 flag-o-matic multiprocessing qmake-utils # pypi
+
+# 'can' work with older Qt depending on features, but keeping it simple
+QT_PV=$(ver_cut 1-2):6
+
+DESCRIPTION="Python bindings for the Qt framework"
+HOMEPAGE="https://www.riverbankcomputing.com/software/pyqt/"
+
+# TODO: drop this and uncomment 'pypi' on a proper bump
+MY_P=${PYPI_PN}-$(ver_cut 1-3).dev$(ver_cut 5)
+SRC_URI="https://www.riverbankcomputing.com/pypi/packages/PyQt6/${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+# defaults match what is provided with qtbase by default (except testlib),
+# reduces the need to set flags but does increase build time a fair amount
+IUSE="
+	bluetooth +dbus debug designer examples gles2-only +gui help
+	multimedia +network nfc opengl pdfium positioning +printsupport
+	qml quick quick3d remoteobjects serialport sensors spatialaudio
+	speech +sql +ssl svg testlib webchannel websockets vulkan
+	+widgets +xml
+"
+# see `grep -r "%Import " sip` and `grep qmake_QT project.py`
+REQUIRED_USE="
+	designer? ( gui widgets )
+	help? ( gui widgets )
+	multimedia? ( gui network )
+	opengl? ( gui )
+	pdfium? ( gui )
+	printsupport? ( gui widgets )
+	qml? ( network )
+	quick3d? ( gui qml )
+	quick? ( gui qml )
+	remoteobjects? ( network )
+	spatialaudio? ( multimedia )
+	sql? ( widgets )
+	svg? ( gui )
+	testlib? ( gui widgets )
+	vulkan? ( gui )
+	webchannel? ( network )
+	websockets? ( network )
+	widgets? ( gui )
+"
+
+# may use qt private symbols wrt qtbase's :=
+# non-trivially broken with Qt6.8 wrt upper bound, waiting for PyQt6-6.8.0
+COMMON_DEPEND="
+	>=dev-qt/qtbase-${QT_PV}=[dbus?,gles2-only=,gui?,network?,opengl?,sql?,ssl=,vulkan?,widgets?,xml?]
+	bluetooth? ( >=dev-qt/qtconnectivity-${QT_PV}[bluetooth] )
+	dbus? (
+		dev-python/dbus-python[${PYTHON_USEDEP}]
+		sys-apps/dbus
+	)
+	designer? ( >=dev-qt/qttools-${QT_PV}[designer] )
+	help? ( >=dev-qt/qttools-${QT_PV}[assistant] )
+	multimedia? ( >=dev-qt/qtmultimedia-${QT_PV} )
+	nfc? ( >=dev-qt/qtconnectivity-${QT_PV}[nfc] )
+	opengl? (
+		gles2-only? ( media-libs/libglvnd )
+	)
+	pdfium? ( >=dev-qt/qtwebengine-${QT_PV}[pdfium,widgets?] )
+	positioning? ( >=dev-qt/qtpositioning-${QT_PV} )
+	qml? ( >=dev-qt/qtdeclarative-${QT_PV}[widgets?] )
+	quick3d? ( >=dev-qt/qtquick3d-${QT_PV} )
+	quick? ( >=dev-qt/qtdeclarative-${QT_PV}[opengl] )
+	remoteobjects? ( >=dev-qt/qtremoteobjects-${QT_PV} )
+	sensors? ( >=dev-qt/qtsensors-${QT_PV} )
+	serialport? ( >=dev-qt/qtserialport-${QT_PV} )
+	speech? (
+		>=dev-qt/qtdeclarative-${QT_PV}
+		>=dev-qt/qtspeech-${QT_PV}
+	)
+	svg? ( >=dev-qt/qtsvg-${QT_PV} )
+	webchannel? ( >=dev-qt/qtwebchannel-${QT_PV} )
+	websockets? ( >=dev-qt/qtwebsockets-${QT_PV} )
+"
+RDEPEND="
+	${COMMON_DEPEND}
+	>=dev-python/pyqt6-sip-13.8[${PYTHON_USEDEP}]
+"
+DEPEND="
+	${COMMON_DEPEND}
+	vulkan? ( dev-util/vulkan-headers )
+"
+BDEPEND="
+	>=dev-python/pyqt-builder-1.15[${PYTHON_USEDEP}]
+	>=dev-python/sip-6.8.6[${PYTHON_USEDEP}]
+	>=dev-qt/qtbase-${QT_PV}
+	dbus? ( virtual/pkgconfig )
+"
+
+src_prepare() {
+	default
+
+	# hack: PyQt-builder runs qmake without our arguments and calls g++
+	# or clang++ depending on what qtbase was built with, not used for
+	# building but fails with -native-symlinks
+	mkdir "${T}"/cxx || die
+	local cxx
+	! cxx=$(type -P "${CHOST}"-g++) || ln -s -- "${cxx}" "${T}"/cxx/g++ || die
+	! cxx=$(type -P "${CHOST}"-clang++) || ln -s -- "${cxx}" "${T}"/cxx/clang++ || die
+	PATH=${T}/cxx:${PATH}
+}
+
+python_configure_all() {
+	append-cxxflags -std=c++17 # for old gcc / clang that use <17 (bug #892331)
+	append-cxxflags ${CPPFLAGS} # respect CPPFLAGS notably for DISTUTILS_EXT=1
+
+	pyqt_use_enable() {
+		local state=$(usex ${1} --enable= --disable=)
+		shift
+		echo ${*/#/${state}}
+	}
+
+	DISTUTILS_ARGS=(
+		--jobs="$(makeopts_jobs)"
+		--qmake="$(qt6_get_bindir)"/qmake
+		--qmake-setting="$(qt6_get_qmake_args)"
+		--verbose
+		--confirm-license
+
+		--enable=QtCore
+
+		$(pyqt_use_enable bluetooth QtBluetooth)
+		$(pyqt_use_enable dbus QtDBus)
+		$(pyqt_use_enable designer QtDesigner)
+		$(pyqt_use_enable help QtHelp)
+		$(pyqt_use_enable gui QtGui)
+		#--disable=QtLocation # force-disabled in project.py
+		$(pyqt_use_enable multimedia QtMultimedia \
+			$(usev widgets QtMultimediaWidgets))
+		$(pyqt_use_enable network QtNetwork)
+		$(pyqt_use_enable nfc QtNfc)
+		$(pyqt_use_enable opengl QtOpenGL \
+			$(usev widgets QtOpenGLWidgets))
+		$(pyqt_use_enable pdfium QtPdf \
+			$(usev widgets QtPdfWidgets))
+		$(pyqt_use_enable positioning QtPositioning)
+		$(pyqt_use_enable printsupport QtPrintSupport)
+		$(pyqt_use_enable qml QtQml)
+		$(pyqt_use_enable quick QtQuick \
+			$(usev widgets QtQuickWidgets))
+		$(pyqt_use_enable quick3d QtQuick3D)
+		$(pyqt_use_enable remoteobjects QtRemoteObjects)
+		$(pyqt_use_enable sensors QtSensors)
+		$(pyqt_use_enable serialport QtSerialPort)
+		$(pyqt_use_enable spatialaudio QtSpatialAudio)
+		$(pyqt_use_enable sql QtSql)
+		$(pyqt_use_enable svg QtSvg \
+			$(usev widgets QtSvgWidgets))
+		$(pyqt_use_enable testlib QtTest)
+		$(pyqt_use_enable speech QtTextToSpeech)
+		$(pyqt_use_enable webchannel QtWebChannel)
+		$(pyqt_use_enable websockets QtWebSockets)
+		$(pyqt_use_enable widgets QtWidgets)
+		$(pyqt_use_enable xml QtXml)
+
+		$(usev debug '--debug --qml-debug --tracing')
+
+		$(usev !dbus --no-dbus-python)
+		# note: upstream currently intentionally skips installing these two
+		# plugins when using wheels w/ pep517 so, *if* something does need
+		# them, it will need to be handled manually
+		$(usev !designer --no-designer-plugin)
+		$(usev !qml --no-qml-plugin)
+
+		$(usev !gles2-only --disabled-feature=PyQt_OpenGL_ES2)
+		$(usev !opengl --disabled-feature=PyQt_OpenGL)
+		$(usev !ssl --disabled-feature=PyQt_SSL)
+		$(usev !vulkan --disabled-feature=PyQt_Vulkan)
+
+		# intended for Windows / Android or others
+		--disable=QAxContainer
+		--disabled-feature=PyQt_Permissions
+	)
+}
+
+python_install_all() {
+	einstalldocs
+	use examples && dodoc -r examples
+}


             reply	other threads:[~2024-11-25  7:46 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-25  7:46 Ionen Wolkens [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-02-07  3:29 [gentoo-commits] repo/gentoo:master commit in: dev-python/pyqt6/ Ionen Wolkens
2024-12-16  8:42 Ionen Wolkens
2024-12-12 22:36 Ionen Wolkens
2024-12-06  5:10 Ionen Wolkens
2024-11-25  7:46 Ionen Wolkens
2024-11-22 20:00 [gentoo-commits] repo/gentoo:master commit in: dev-python/PyQt6/ Michał Górny
2024-11-13 10:04 Ionen Wolkens
2024-09-20 11:01 Arthur Zamarin
2024-09-18  6:36 Arthur Zamarin
2024-09-12 13:45 Sam James
2024-09-05  1:23 Sam James
2024-09-03 12:31 Ionen Wolkens
2024-09-02  6:16 Sam James
2024-08-31  2:42 Ionen Wolkens
2024-08-12 18:21 Arthur Zamarin
2024-08-08 10:05 Sam James
2024-07-24  9:03 Ionen Wolkens
2024-07-19 14:39 Ionen Wolkens
2024-06-29 12:29 Jakov Smolić
2024-06-28 18:05 Sam James
2024-06-28 18:05 Sam James
2024-06-28 14:45 Ionen Wolkens
2024-05-13  0:46 Sam James
2024-04-27 10:11 Ionen Wolkens
2024-04-26 11:31 Ionen Wolkens
2023-12-25 15:49 Ionen Wolkens
2023-12-22 22:40 Mart Raudsepp
2023-12-19 20:58 Ionen Wolkens
2023-12-17 18:29 Arthur Zamarin
2023-12-16 12:06 Ionen Wolkens
2023-12-04 16:08 Ionen Wolkens
2023-11-15 17:20 Arthur Zamarin
2023-11-05 15:49 Ionen Wolkens
2023-11-05 13:52 Ionen Wolkens
2023-10-30 14:47 Ionen Wolkens
2023-10-18 13:03 Ionen Wolkens
2023-10-14 14:48 Ionen Wolkens
2023-09-28 13:07 Ionen Wolkens
2023-09-28 13:07 Ionen Wolkens
2023-09-28 13:07 Ionen Wolkens
2023-09-15  6:08 Ionen Wolkens
2023-09-05 13:05 Ionen Wolkens
2023-09-05 13:05 Ionen Wolkens
2023-08-06  4:32 Ionen Wolkens
2023-07-25  0:10 Ionen Wolkens
2023-06-17  4:49 Ionen Wolkens
2023-06-17  4:49 Ionen Wolkens
2023-06-13 13:20 Ionen Wolkens
2023-06-03  5:21 Ionen Wolkens
2023-05-11 17:01 Ionen Wolkens
2023-04-23  1:21 Ionen Wolkens
2023-04-22  8:04 Ionen Wolkens
2023-04-22  6:53 Ionen Wolkens
2023-04-22  6:53 Ionen Wolkens
2023-04-19 20:07 Ionen Wolkens
2023-04-19 20:07 Ionen Wolkens
2023-04-16  9:02 Ionen Wolkens
2023-02-13 15:59 Ionen Wolkens
2023-02-13 11:46 Ionen Wolkens
2023-02-06 17:45 Ionen Wolkens
2023-01-30 19:11 Ionen Wolkens
2023-01-28 15:56 Ionen Wolkens
2022-10-28 20:53 Ionen Wolkens
2022-10-28 20:47 Ionen Wolkens
2022-10-20 13:34 Ionen Wolkens
2022-10-04  1:33 Ionen Wolkens
2022-08-03 18:58 Ionen Wolkens
2022-08-03 16:05 Ionen Wolkens
2022-08-03 13:51 Ionen Wolkens
2022-08-03  0:22 Ionen Wolkens

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1732520749.2dac4fae78184f669f98685e1d0c8be1e10deacf.ionen@gentoo \
    --to=ionen@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox