From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1529035-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 75B3E158008
	for <garchives@archives.gentoo.org>; Thu, 15 Jun 2023 08:43:07 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 811A9E0900;
	Thu, 15 Jun 2023 08:43:06 +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) server-digest SHA256)
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 4714BE0900
	for <gentoo-commits@lists.gentoo.org>; Thu, 15 Jun 2023 08:43:06 +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 1F72C33BEAE
	for <gentoo-commits@lists.gentoo.org>; Thu, 15 Jun 2023 08:43:05 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 5BF36A66
	for <gentoo-commits@lists.gentoo.org>; Thu, 15 Jun 2023 08:43:03 +0000 (UTC)
From: "Andrew Ammerlaan" <andrewammerlaan@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Andrew Ammerlaan" <andrewammerlaan@gentoo.org>
Message-ID: <1686818534.d38ea9a7688536c3c0e3394fa24e7f19ab45d2c9.andrewammerlaan@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-libs/qwt/
X-VCS-Repository: repo/gentoo
X-VCS-Files: x11-libs/qwt/qwt-6.2.0-r2.ebuild x11-libs/qwt/qwt-6.2.0-r3.ebuild
X-VCS-Directories: x11-libs/qwt/
X-VCS-Committer: andrewammerlaan
X-VCS-Committer-Name: Andrew Ammerlaan
X-VCS-Revision: d38ea9a7688536c3c0e3394fa24e7f19ab45d2c9
X-VCS-Branch: master
Date: Thu, 15 Jun 2023 08:43:03 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 2c6d1aa8-8382-460a-bfdc-fd21ce4988d5
X-Archives-Hash: 2bd688c76aaddbde75632dcfc4af7d74

commit:     d38ea9a7688536c3c0e3394fa24e7f19ab45d2c9
Author:     Thomas Bettler <thomas.bettler <AT> gmail <DOT> com>
AuthorDate: Wed May 31 20:04:14 2023 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Thu Jun 15 08:42:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d38ea9a7

x11-libs/qwt: add Qt6 support

Signed-off-by: Thomas Bettler <thomas.bettler <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/31250
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 x11-libs/qwt/qwt-6.2.0-r2.ebuild | 128 -------------------------------
 x11-libs/qwt/qwt-6.2.0-r3.ebuild | 159 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 159 insertions(+), 128 deletions(-)

diff --git a/x11-libs/qwt/qwt-6.2.0-r2.ebuild b/x11-libs/qwt/qwt-6.2.0-r2.ebuild
deleted file mode 100644
index cea9701a4b9a..000000000000
--- a/x11-libs/qwt/qwt-6.2.0-r2.ebuild
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DOCS_BUILDER="doxygen"
-DOCS_DIR="doc"
-DOCS_CONFIG_NAME="Doxyfile"
-DOCS_DEPEND="media-gfx/graphviz"
-
-inherit qmake-utils docs
-
-DESCRIPTION="2D plotting library for Qt5"
-HOMEPAGE="https://qwt.sourceforge.io/"
-SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${PV}/${P}.tar.bz2"
-
-LICENSE="qwt"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
-SLOT="6/2.0"
-IUSE="designer doc examples opengl polar svg"
-
-DEPEND="
-	dev-qt/qtconcurrent:5
-	dev-qt/qtcore:5
-	dev-qt/qtgui:5
-	dev-qt/qtprintsupport:5
-	dev-qt/qtwidgets:5
-	designer? ( dev-qt/designer:5 )
-	opengl? (
-		dev-qt/qtopengl:5
-		virtual/opengl
-	)
-	svg? ( dev-qt/qtsvg:5 )
-"
-RDEPEND="${DEPEND}"
-
-# tests require package to be already installed
-RESTRICT="test"
-
-DOCS=( CHANGES-6.2 README )
-
-src_prepare() {
-	default
-
-	cat > qwtconfig.pri <<-EOF || die
-		QWT_INSTALL_LIBS = "${EPREFIX}/usr/$(get_libdir)"
-		QWT_INSTALL_HEADERS = "${EPREFIX}/usr/include/qwt6"
-		QWT_INSTALL_DOCS = "${EPREFIX}/usr/share/doc/${PF}"
-		QWT_CONFIG += QwtPlot QwtWidgets QwtPkgConfig
-		VER_MAJ = $(ver_cut 1)
-		VER_MIN = $(ver_cut 2)
-		VER_PAT = $(ver_cut 3)
-		VERSION = ${PV/_*}
-		QWT_VER_MAJ = $(ver_cut 1)
-		QWT_VER_MIN = $(ver_cut 2)
-		QWT_VER_PAT = $(ver_cut 3)
-		QWT_VERSION = ${PV/_*}
-	EOF
-
-	use designer && echo "QWT_CONFIG += QwtDesigner" >> qwtconfig.pri
-	use opengl && echo "QWT_CONFIG += QwtOpenGL" >> qwtconfig.pri
-	use polar && echo "QWT_CONFIG += QwtPolar" >> qwtconfig.pri
-	use svg && echo "QWT_CONFIG += QwtSvg" >> qwtconfig.pri
-
-	cat > qwtbuild.pri <<-EOF || die
-		QWT_CONFIG += qt warn_on thread release no_keywords
-		DEFINES += QWT_MOC_INCLUDE=1
-	EOF
-
-	echo "QWT_CONFIG += QwtDll" >> qwtconfig.pri
-
-	cat >> qwtconfig.pri <<-EOF || die
-		QWT_INSTALL_PLUGINS   = "${EPREFIX}$(qt5_get_plugindir)/designer"
-		QWT_INSTALL_FEATURES  = "${EPREFIX}$(qt5_get_mkspecsdir)/features"
-	EOF
-	sed \
-		-e 's/target doc/target/' \
-		-e "/^TARGET/s:(qwt):(qwt6-qt5):g" \
-		-e "/^TARGET/s:qwt):qwt6-qt5):g" \
-		-e "s:QWT_SONAME=libqwt.so:QWT_SONAME=libqwt6-qt5.so:g" \
-		-i src/src.pro || die
-
-	sed \
-		-e '/qwtAddLibrary/s:(qwt):(qwt6-qt5):g' \
-		-e '/qwtAddLibrary/s:qwt):qwt6-qt5):g' \
-		-i qwt.prf designer/designer.pro examples/examples.pri || die
-}
-
-src_configure() {
-	eqmake5
-}
-
-src_compile() {
-	default
-	# need doxyfilter.sh in PATH
-	PATH="${PATH}:${S}/doc/" docs_compile
-}
-
-src_test() {
-	cd tests || die
-	eqmake5 tests.pro
-	emake
-}
-
-src_install() {
-	emake INSTALL_ROOT="${D}" install
-	einstalldocs
-
-	mkdir -p "${ED}"/usr/share/man/ || die
-	mv "${ED}"/usr/share/doc/${PF}/man/man3 "${ED}"/usr/share/man/ && \
-		rmdir "${ED}"/usr/share/doc/${PF}/man || die
-
-	if use examples; then
-		# don't build examples - fix the qt files to build once installed
-		cat > examples/examples.pri <<-EOF || die
-			include( qwtconfig.pri )
-			TEMPLATE     = app
-			MOC_DIR      = moc
-			INCLUDEPATH += "${EPREFIX}/usr/include/qwt6"
-			DEPENDPATH  += "${EPREFIX}/usr/include/qwt6"
-			LIBS        += -lqwt6
-		EOF
-		sed -i -e 's:../qwtconfig:qwtconfig:' examples/examples.pro || die
-		cp *.pri examples/ || die
-		insinto /usr/share/${PN}6
-		doins -r examples
-	fi
-}

diff --git a/x11-libs/qwt/qwt-6.2.0-r3.ebuild b/x11-libs/qwt/qwt-6.2.0-r3.ebuild
new file mode 100644
index 000000000000..01157fff6808
--- /dev/null
+++ b/x11-libs/qwt/qwt-6.2.0-r3.ebuild
@@ -0,0 +1,159 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="doxygen"
+DOCS_DIR="doc"
+DOCS_CONFIG_NAME="Doxyfile"
+DOCS_DEPEND="media-gfx/graphviz"
+
+inherit docs multibuild qmake-utils
+
+DESCRIPTION="2D plotting library for Qt"
+HOMEPAGE="https://qwt.sourceforge.io/"
+SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${PV}/${P}.tar.bz2"
+
+LICENSE="qwt"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+SLOT="6/2.0"
+IUSE="designer doc examples opengl polar +qt5 qt6 svg"
+
+DEPEND="
+	qt5? (
+		dev-qt/qtconcurrent:5
+		dev-qt/qtcore:5
+		dev-qt/qtgui:5
+		dev-qt/qtprintsupport:5
+		dev-qt/qtwidgets:5
+		designer? ( dev-qt/designer:5 )
+		opengl? (
+				dev-qt/qtopengl:5
+				virtual/opengl
+		)
+		svg? ( dev-qt/qtsvg:5 )
+	)
+	qt6? (
+		dev-qt/qtbase:6[concurrent,gui,cups,widgets]
+		designer? ( dev-qt/qttools:6[designer] )
+		opengl? (
+			dev-qt/qtbase:6[opengl]
+			virtual/opengl
+		)
+		svg? ( dev-qt/qtsvg:6 )
+	)
+"
+RDEPEND="${DEPEND}"
+
+# tests require package to be already installed
+RESTRICT="test"
+
+DOCS=( CHANGES-6.2 README )
+
+pkg_setup() {
+	MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) )
+}
+
+src_prepare() {
+	my_src_prepare() {
+		cat > qwtconfig.pri <<-EOF || die
+			QWT_INSTALL_LIBS = "${EPREFIX}/usr/$(get_libdir)"
+			QWT_INSTALL_HEADERS = "${EPREFIX}/usr/include/qwt6"
+			QWT_INSTALL_DOCS = "${EPREFIX}/usr/share/doc/${PF}"
+			QWT_CONFIG += QwtPlot QwtWidgets QwtPkgConfig
+			VER_MAJ = $(ver_cut 1)
+			VER_MIN = $(ver_cut 2)
+			VER_PAT = $(ver_cut 3)
+			VERSION = ${PV/_*}
+			QWT_VER_MAJ = $(ver_cut 1)
+			QWT_VER_MIN = $(ver_cut 2)
+			QWT_VER_PAT = $(ver_cut 3)
+			QWT_VERSION = ${PV/_*}
+		EOF
+
+		use designer && echo "QWT_CONFIG += QwtDesigner" >> qwtconfig.pri
+		use opengl && echo "QWT_CONFIG += QwtOpenGL" >> qwtconfig.pri
+		use polar && echo "QWT_CONFIG += QwtPolar" >> qwtconfig.pri
+		use svg && echo "QWT_CONFIG += QwtSvg" >> qwtconfig.pri
+
+		cat > qwtbuild.pri <<-EOF || die
+			QWT_CONFIG += qt warn_on thread release no_keywords
+			DEFINES += QWT_MOC_INCLUDE=1
+		EOF
+
+		echo "QWT_CONFIG += QwtDll" >> qwtconfig.pri
+
+		cat >> qwtconfig.pri <<-EOF || die
+			QWT_INSTALL_PLUGINS   = "${EPREFIX}/usr/$(get_libdir)/${MULTIBUILD_VARIANT}/plugins/designer"
+			QWT_INSTALL_FEATURES  = "${EPREFIX}/usr/$(get_libdir)/${MULTIBUILD_VARIANT}/mkspecs/features"
+		EOF
+		sed \
+			-e 's/target doc/target/' \
+			-e "/^TARGET/s:(qwt):(qwt6-${MULTIBUILD_VARIANT}):g" \
+			-e "/^TARGET/s:qwt):qwt6-${MULTIBUILD_VARIANT}):g" \
+			-e "s:QWT_SONAME=libqwt.so:QWT_SONAME=libqwt6-${MULTIBUILD_VARIANT}.so:g" \
+			-i src/src.pro || die
+
+		sed \
+			-e "/qwtAddLibrary/s:(qwt):(qwt6-${MULTIBUILD_VARIANT}):g" \
+			-e "/qwtAddLibrary/s:qwt):qwt6-${MULTIBUILD_VARIANT}):g" \
+			-i qwt.prf designer/designer.pro examples/examples.pri || die
+	}
+	default
+	multibuild_copy_sources
+	multibuild_foreach_variant run_in_build_dir my_src_prepare
+}
+
+src_configure() {
+	my_src_configure() {
+		case ${MULTIBUILD_VARIANT} in
+			qt5) eqmake5 ;;
+			qt6) eqmake6 ;;
+		esac
+	}
+	multibuild_foreach_variant run_in_build_dir my_src_configure
+}
+
+src_compile() {
+	multibuild_foreach_variant run_in_build_dir emake
+
+	# need doxyfilter.sh in PATH
+	PATH="${PATH}:${S}/doc/" docs_compile
+}
+
+src_test() {
+	my_src_test() {
+		cd "${BUILD_DIR}"/tests || die
+		case ${MULTIBUILD_VARIANT} in
+			qt5) eqmake5 tests.pro ;;
+			qt6) eqmake6 tests.pro ;;
+		esac
+		emake
+	}
+	multibuild_foreach_variant my_src_test
+}
+
+src_install() {
+	multibuild_foreach_variant run_in_build_dir emake INSTALL_ROOT="${D}" install
+	einstalldocs
+
+	mkdir -p "${ED}"/usr/share/man/ || die
+	mv "${ED}"/usr/share/doc/${PF}/man/man3 "${ED}"/usr/share/man/ && \
+		rmdir "${ED}"/usr/share/doc/${PF}/man || die
+
+	if use examples; then
+		# don't build examples - fix the qt files to build once installed
+		cat > examples/examples.pri <<-EOF || die
+			include( qwtconfig.pri )
+			TEMPLATE     = app
+			MOC_DIR      = moc
+			INCLUDEPATH += "${EPREFIX}/usr/include/qwt6"
+			DEPENDPATH  += "${EPREFIX}/usr/include/qwt6"
+			LIBS        += -lqwt6
+		EOF
+		sed -i -e 's:../qwtconfig:qwtconfig:' examples/examples.pro || die
+		cp *.pri examples/ || die
+		insinto /usr/share/${PN}6
+		doins -r examples
+	fi
+}