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: Fri, 19 Jul 2024 14:39:34 +0000 (UTC)	[thread overview]
Message-ID: <1721399954.6cd4a8f7eb42ad3d29ac36c0219a7bd24c83d1ac.ionen@gentoo> (raw)

commit:     6cd4a8f7eb42ad3d29ac36c0219a7bd24c83d1ac
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 19 12:42:32 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Fri Jul 19 14:39:14 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6cd4a8f7

dev-python/PyQt6: add 6.7.1

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

 dev-python/PyQt6/Manifest           |   1 +
 dev-python/PyQt6/PyQt6-6.7.1.ebuild | 178 ++++++++++++++++++++++++++++++++++++
 2 files changed, 179 insertions(+)

diff --git a/dev-python/PyQt6/Manifest b/dev-python/PyQt6/Manifest
index a05196bcef53..e9d3f8bb89cf 100644
--- a/dev-python/PyQt6/Manifest
+++ b/dev-python/PyQt6/Manifest
@@ -1 +1,2 @@
 DIST PyQt6-6.7.0.tar.gz 1050408 BLAKE2B 30dc8a2762cb5a149c401d497af714bb9209bc46847c0699522ee60080c46f0b1d4da854e70151a508c90820a2aa32da422bfd20c4320bcc9b5d5f92fd9e8677 SHA512 619210d2de3e149b55e2d45cbd8ec2113b3effcaccd25eef6067ea99b82e250f1ce288b38136604536053690071f8c843339b934b5ce5e539a5dfdecc26f44d2
+DIST PyQt6-6.7.1.tar.gz 1051212 BLAKE2B 9c1c619b08cc14e0a92ea22812c14d5a3cb47e45eea917d50ab63918d8433d54b354f26b885f2567b9c6e2f0380e819972d055d1a1751f6646ebb5e6cf72b228 SHA512 1e0fec009e1823b06460fd96eddc00ed31388c20f6d832aa0ebaa130baf06d83514df43af7961c3cb2872570d27e539d6db7bf6143ccdfd61a19da7521be2c7e

diff --git a/dev-python/PyQt6/PyQt6-6.7.1.ebuild b/dev-python/PyQt6/PyQt6-6.7.1.ebuild
new file mode 100644
index 000000000000..0788d33ceccf
--- /dev/null
+++ b/dev-python/PyQt6/PyQt6-6.7.1.ebuild
@@ -0,0 +1,178 @@
+# 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
+PYTHON_COMPAT=( python3_{10..13} )
+inherit distutils-r1 flag-o-matic multiprocessing pypi qmake-utils
+
+# '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/"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv"
+# 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 serialport sensors spatialaudio speech +sql
+	+ssl svg testlib webchannel websockets +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 )
+	spatialaudio? ( multimedia )
+	sql? ( widgets )
+	svg? ( gui )
+	testlib? ( gui widgets )
+	webchannel? ( network )
+	websockets? ( network )
+	widgets? ( gui )
+"
+
+# may use qt private symbols wrt qtbase's :=
+DEPEND="
+	>=dev-qt/qtbase-${QT_PV}=[dbus?,gles2-only=,gui?,network?,opengl?,sql?,ssl=,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] )
+	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="
+	${DEPEND}
+	>=dev-python/PyQt6-sip-13.8[${PYTHON_USEDEP}]
+"
+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)
+		--disable=QtRemoteObjects # not packaged
+		$(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)
+
+		# 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-07-19 14:39 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-19 14:39 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-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-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=1721399954.6cd4a8f7eb42ad3d29ac36c0219a7bd24c83d1ac.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