commit:     270e046570595e2c3db3b8b44f799d85b7b56b0a
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Sun Dec 21 12:35:44 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Dec 30 13:17:34 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=270e0465

sci-libs/jkqtplotter: add 5.0.0_beta1

Same content as the pre-version in tree, but finally tagged as beta1
to facilitate packaging in distribs (use in avogadrolibs)

add a patch to avoid Qt5

Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/45115
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-libs/jkqtplotter/Manifest                      |  1 +
 .../files/jkqtplotter-5.0.0_beta1-qt6.patch        | 18 ++++
 .../jkqtplotter/jkqtplotter-5.0.0_beta1.ebuild     | 97 ++++++++++++++++++++++
 3 files changed, 116 insertions(+)

diff --git a/sci-libs/jkqtplotter/Manifest b/sci-libs/jkqtplotter/Manifest
index 0c44d05cc8e7..7a05db742b9b 100644
--- a/sci-libs/jkqtplotter/Manifest
+++ b/sci-libs/jkqtplotter/Manifest
@@ -1 +1,2 @@
+DIST jkqtplotter-5.0.0_beta1.tar.gz 93991427 BLAKE2B 
0ad8cf040e05fa62a35c8755abf0a0fb58b8b388dc0f2d21f521fe2f373b14b2282f6eef0a3e42d7c6dba3e7ab1a076780637e550bbf37513ab24345c5773ca2
 SHA512 
57a456b4bd0ccf9e295cd5c2783ea44611af9fab12e060f60751027a0a705325e6054a4a293c952123986e7c7ed0a792b71bf548c6fdc2b3d52385e84c09b6ce
 DIST jkqtplotter-5.0.0_pre20251013.tar.gz 94004704 BLAKE2B 
99af83e3c2a06874dbaa5c2d39c4f1b88fb76cea1bfd47b5b8daadd437cb96bc92254f5d7c5b0e163aec55eedcc7c175f2fd4b87c1b6ace04a8129f0e4f6707c
 SHA512 
035760a88772236d7411d0ad289e79e0540803a8c2405c5fee94be596925d383d090cc70fde6f17737d669e0ce44fd9399262b0e3a2e630371c78c5361829ee1

diff --git a/sci-libs/jkqtplotter/files/jkqtplotter-5.0.0_beta1-qt6.patch 
b/sci-libs/jkqtplotter/files/jkqtplotter-5.0.0_beta1-qt6.patch
new file mode 100644
index 000000000000..a2e6745b8128
--- /dev/null
+++ b/sci-libs/jkqtplotter/files/jkqtplotter-5.0.0_beta1-qt6.patch
@@ -0,0 +1,18 @@
+see https://bugs.gentoo.org/966047
+PR pending https://github.com/jkriege2/JKQtPlotter/pull/156.patch
+avoid Qt5 automagic, respect an exported value of QT_VERSION_MAJOR
+--- a/cmake/jkqtplotter_common_qtsettings.cmake
++++ b/cmake/jkqtplotter_common_qtsettings.cmake
+@@ -4,7 +4,11 @@ set(CMAKE_AUTOMOC ON)
+ set(CMAKE_AUTORCC ON)
+ set(CMAKE_AUTOUIC ON)
+ 
+-find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
++if(QT_VERSION_MAJOR)
++    find_package(QT NAMES Qt${QT_VERSION_MAJOR} COMPONENTS Core REQUIRED)
++else()
++    find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
++endif()
+ 
+ if(QT_VERSION_MAJOR LESS 5)
+     message(FATAL_ERROR "Minimum supported Qt version is 5, but you are 
trying to compile against Qt${QT_VERSION_MAJOR}")

diff --git a/sci-libs/jkqtplotter/jkqtplotter-5.0.0_beta1.ebuild 
b/sci-libs/jkqtplotter/jkqtplotter-5.0.0_beta1.ebuild
new file mode 100644
index 000000000000..28536b22b2e6
--- /dev/null
+++ b/sci-libs/jkqtplotter/jkqtplotter-5.0.0_beta1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_PN="JKQtPlotter"
+DESCRIPTION="Extensive Qt Plotter framework"
+HOMEPAGE="https://jkriege2.github.io/JKQtPlotter/";
+if [[ ${PV} == *9999 ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/jkriege2/${MY_PN}.git";
+else
+       
SRC_URI="https://github.com/jkriege2/JKQtPlotter/archive/v${PV/_/-}.tar.gz -> 
${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+       S="${WORKDIR}/${MY_PN}-${PV/_/-}"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0/5"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       dev-qt/qtbase:6[gui,opengl,widgets,xml]
+       dev-qt/qtsvg:6
+"
+RDEPEND="
+       ${DEPEND}
+       dev-texlive/texlive-fontsextra
+"
+BDEPEND="
+       doc? (
+               app-text/doxygen
+               dev-texlive/texlive-latex
+               media-gfx/graphviz[cairo]
+       )
+"
+
+PATCHES=(
+       # bug #966047, https://github.com/jkriege2/JKQtPlotter/pull/156.patch
+       "${FILESDIR}"/${PN}-5.0.0_beta1-qt6.patch
+)
+
+src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_SKIP_RPATH=ON
+               -DJKQtPlotter_BUILD_DECORATE_LIBNAMES_WITH_BUILDTYPE=OFF
+               -DJKQtPlotter_BUILD_EXAMPLES=OFF
+               -DJKQtPlotter_BUILD_INCLUDE_FIRAMATH_FONTS=OFF # 
texlive-fontsextra
+               -DJKQtPlotter_BUILD_INCLUDE_XITS_FONTS=OFF # texlive-fontsextra
+               -DJKQtPlotter_BUILD_LIB_JKQTFASTPLOTTER=OFF # deprecated
+               -DJKQtPlotter_BUILD_LIB_JKQTPLOTTER=ON
+               -DJKQtPlotter_BUILD_TESTS=$(usex test)
+               -DJKQtPlotter_BUILD_TOOLS=ON
+               -DJKQtPlotter_BUILD_WITH_PRECOMPILED_HEADERS=OFF
+               -DJKQtPlotter_ENABLED_CXX20=ON
+               -DJKQtPlotter_HAS_NO_PRINTER_SUPPORT=OFF
+               -DQT_VERSION_MAJOR=6
+       )
+
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+
+       if use doc; then
+               doxygen Doxyfile || die
+       fi
+}
+
+src_test() {
+       if use x86; then
+               local CMAKE_SKIP_TESTS+=(
+                       #JKQTPStringToolsTest.test_jkqtp_floattounitstr
+                       JKQTPStringTools_test
+               )
+       fi
+
+       local -x QT_QPA_PLATFORM=offscreen
+       LD_LIBRARY_PATH="${BUILD_DIR}/output" cmake_src_test
+}
+
+src_install() {
+       use doc && local HTML_DOCS=( doc/html/. )
+
+       cmake_src_install
+
+       rm "${ED}"/usr/share/doc/${PF}/LICENSE || die
+
+       # don't install test binaries
+       if use test; then
+               rm "${ED}"/usr/bin/*{benchmark,test}* || die
+       fi
+}

Reply via email to