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: Sat,  3 Jun 2023 05:21:19 +0000 (UTC)	[thread overview]
Message-ID: <1685769637.9d08d4bb6c19ec4ef3b7aacfc63b5b45ab4f9119.ionen@gentoo> (raw)

commit:     9d08d4bb6c19ec4ef3b7aacfc63b5b45ab4f9119
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Jun  3 04:41:48 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Jun  3 05:20:37 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d08d4bb

dev-python/PyQt6: add 6.5.1

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

 dev-python/PyQt6/Manifest           |   1 +
 dev-python/PyQt6/PyQt6-6.5.1.ebuild | 157 ++++++++++++++++++++++++++++++++++++
 2 files changed, 158 insertions(+)

diff --git a/dev-python/PyQt6/Manifest b/dev-python/PyQt6/Manifest
index 229dd57190ce..4afae3cc918c 100644
--- a/dev-python/PyQt6/Manifest
+++ b/dev-python/PyQt6/Manifest
@@ -1 +1,2 @@
 DIST PyQt6-6.5.0.tar.gz 1033399 BLAKE2B a22ad07813c50d6b626b95aa168996ab51f9714fbf3bf3d6e41a233ec2edb8c8e2cb7edcf3b036bc4f69f0a8f1e6549cde512562a420c0809f84a0e04cfb9368 SHA512 c73d4c253245d2ccc776544bc651d47ea67067f57b49c3f820100701af4d79385ef4cabe9f65098f35daeba5f2921a566606be4f237e567f6f56360cc760f548
+DIST PyQt6-6.5.1.tar.gz 1036776 BLAKE2B e8e9ac2222de1864386d1fddb75414cf600e380e584e274cfcffbdeb1451cde9e199a43ad4c66cfc8a006cabc833904fe177ccf9dda85ac683f9c8e4f6f87e53 SHA512 8c1135ec48906fe842f0cb50e253a0325b478dd43a7f313b925aaf1d3c148f5462a3e96142470ab0efc0f24fcc8b15704242401cab9f8ec9c3c424e922c49681

diff --git a/dev-python/PyQt6/PyQt6-6.5.1.ebuild b/dev-python/PyQt6/PyQt6-6.5.1.ebuild
new file mode 100644
index 000000000000..3b1efa1e76b0
--- /dev/null
+++ b/dev-python/PyQt6/PyQt6-6.5.1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 2022-2023 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_{9..11} )
+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"
+# 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="
+	+dbus debug qml designer examples gles2-only +gui help multimedia
+	+network opengl positioning +printsupport quick quick3d serialport
+	spatialaudio +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 )
+	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 )"
+
+# can use parts of the Qt private api and "sometimes" needs rebuilds wrt :=
+DEPEND="
+	>=dev-qt/qtbase-${QT_PV}=[dbus?,gles2-only=,gui?,network?,opengl?,sql?,ssl=,widgets?,xml?]
+	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} )
+	opengl? ( gles2-only? ( media-libs/libglvnd ) )
+	positioning? ( >=dev-qt/qtpositioning-${QT_PV} )
+	qml? ( >=dev-qt/qtdeclarative-${QT_PV} )
+	quick3d? ( >=dev-qt/qtquick3d-${QT_PV} )
+	serialport? ( >=dev-qt/qtserialport-${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.4[${PYTHON_USEDEP}]"
+BDEPEND="
+	>=dev-python/PyQt-builder-1.15[${PYTHON_USEDEP}]
+	>=dev-qt/qtbase-${QT_PV}
+	sys-devel/gcc
+	dbus? ( virtual/pkgconfig )"
+
+src_prepare() {
+	default
+
+	# hack: qmake queries g++ directly for info (not building) and that doesn't
+	# work with clang, this is to make it at least respect CHOST (bug #726112)
+	mkdir "${T}"/cxx || die
+	ln -s "$(type -P ${CHOST}-g++ || type -P g++ || die)" "${T}"/cxx/g++ || 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
+
+	pyqt-use_enable() {
+		local state=$(usex ${1} --enable= --disable=)
+		shift
+		echo ${*/#/${state}}
+	}
+
+	DISTUTILS_ARGS=(
+		--jobs=$(makeopts_jobs)
+		--qmake="$(type -P qmake6 || die)"
+		--qmake-setting="$(qt5_get_qmake_args)"
+		--verbose
+		--confirm-license
+
+		# TODO: enable more as new qt6 packages get added
+		--disable=QAxContainer
+		--disable=QtBluetooth
+		--enable=QtCore
+		$(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)
+		--disable=QtNfc
+		$(pyqt-use_enable opengl QtOpenGL \
+			$(usev widgets QtOpenGLWidgets))
+		--disable=QtPdf #+QtPdfWidgets (QtPdf is disabled in qtwebengine:6)
+		$(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
+		--disable=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)
+		--disable=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)
+		# TODO?: plugins not in wheels by upstream, see project.py#L214
+		# (if needed by something, will need to be added to python_install)
+		$(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)
+
+		# TODO: drop this when depend on a >=qtbase-<ver> which enables
+		# -DQT_FEATURE_permissions=ON (currently missing, and the feature
+		# is furthermore broken with gcc-13 on qtbase's end)
+		--disabled-feature=PyQt_Permissions
+	)
+}
+
+python_install_all() {
+	einstalldocs
+	use examples && dodoc -r examples
+}


             reply	other threads:[~2023-06-03  5:21 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-03  5:21 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-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-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=1685769637.9d08d4bb6c19ec4ef3b7aacfc63b5b45ab4f9119.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