commit:     161e02d69d17a9f4c27580b06dfd42fb4f4c1cd3
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Sun Jan 12 00:24:40 2025 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Tue Feb 18 17:08:19 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=161e02d6

dev-util/kdstatemachineeditor: add 2.0.0

remove qmake-utils
port to qt6
rename cmake options
add gui useflag: proof-of-concept application with presets files
license LGPL-2.1

Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Closes: https://github.com/gentoo/gentoo/pull/40108
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 dev-util/kdstatemachineeditor/Manifest             |  1 +
 .../kdstatemachineeditor-2.0.0.ebuild              | 99 ++++++++++++++++++++++
 2 files changed, 100 insertions(+)

diff --git a/dev-util/kdstatemachineeditor/Manifest 
b/dev-util/kdstatemachineeditor/Manifest
index 831bcf128600..5910105393dc 100644
--- a/dev-util/kdstatemachineeditor/Manifest
+++ b/dev-util/kdstatemachineeditor/Manifest
@@ -1 +1,2 @@
 DIST kdstatemachineeditor-1.2.8.tar.gz 243271 BLAKE2B 
0b44598115d6bf7272ef8a534a857c02141a34070836a010021b8925002f2b87bd590c3c76413904ac52de297bcb322db0dea6d76f5e04947bd98257e2ece229
 SHA512 
728b8576d2d0b32b285b0fccbd698b426c557ab08470fc4ec044ec5acce5dc7a394c183d24ae3e9cde02d872b3eaef6b60424a3acd22052508b2456b0dad10a3
+DIST KDStateMachineEditor-v2.0.0.tar.gz 1008123 BLAKE2B 
5aa60276b91bfec01528300d6d80872a586baf1ef5f76b0b2afb058bed84d4a2400a302b9bbd647cb82e69ca9daad5f1fc14d1b758bdce88010d51a147444e39
 SHA512 
dedd7166f434689cd5acf4ee3172169d3f77182269d3187f0a7a12966467dd5c7733e3ff64cd1fd03b0f3866c2aafa37cc3f2d7b8a3f4a5d8a7592da039de7af

diff --git a/dev-util/kdstatemachineeditor/kdstatemachineeditor-2.0.0.ebuild 
b/dev-util/kdstatemachineeditor/kdstatemachineeditor-2.0.0.ebuild
new file mode 100644
index 000000000000..087476985050
--- /dev/null
+++ b/dev-util/kdstatemachineeditor/kdstatemachineeditor-2.0.0.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+MY_PN="KDStateMachineEditor"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Framework for creating Qt State Machine metacode using graphical 
user interfaces"
+HOMEPAGE="https://github.com/KDAB/KDStateMachineEditor";
+
+if [[ ${PV} == *9999* ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/KDAB/KDStateMachineEditor.git";
+else
+       
SRC_URI="https://github.com/KDAB/KDStateMachineEditor/releases/download/v${PV}/${MY_PN}-v${PV}.tar.gz";
+       KEYWORDS="~amd64"
+       S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+IUSE="doc gui test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       dev-qt/qtbase:6[gui,network,opengl,widgets]
+       dev-qt/qtdeclarative:6[widgets]
+       dev-qt/qtremoteobjects:6
+       dev-qt/qtscxml:6
+       media-gfx/graphviz
+       gui? ( dev-qt/qt5compat:6[qml] )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       doc? (
+               app-text/doxygen
+               dev-qt/qttools:6[assistant]
+       )
+       gui? ( dev-util/patchelf )
+"
+
+src_prepare() {
+       # set TEST_DATA_DIR for application env instead of test env.
+       if use gui; then
+               sed -e 
's:${CMAKE_CURRENT_SOURCE_DIR}/data:'"${EPREFIX}"'/usr/share/'"${PN}"'/data:' \
+                       -i CMakeLists.txt || die
+       fi
+
+       cmake_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DKDSME_DOCS=$(usex doc)
+               -DKDSME_EXAMPLES=OFF
+               -DKDSME_INTERNAL_GRAPHVIZ=OFF
+               -DKDSME_QT6=ON
+       )
+
+       use doc && mycmakeargs+=(
+               -DQCH_INSTALL_DIR="${EPREFIX}/usr/share/doc/${PF}/" # prevent 
${PF}-qt6
+               
-DQHELPGEN_EXECUTABLE="${EPREFIX}/usr/$(get_libdir)/qt6/libexec/qhelpgenerator"
+       )
+
+       if use gui || use test; then
+               mycmakeargs+=( -DBUILD_TESTING=ON )
+       else
+               mycmakeargs+=( -DBUILD_TESTING=OFF )
+       fi
+
+       cmake_src_configure
+}
+
+src_test() {
+       # skip tests that use scxml files in modified TEST_DATA_DIR
+       use gui && CMAKE_SKIP_TESTS=(
+               test_layouter
+               test_scxmlimport
+       )
+       local -x QT_QPA_PLATFORM=offscreen
+       KDE_DEBUG=1 cmake_src_test
+}
+
+src_install() {
+       cmake_src_install
+
+       if use gui; then
+               patchelf --remove-rpath "${BUILD_DIR}"/bin/${PN} || die
+               dobin "${BUILD_DIR}"/bin/${PN}
+               mkdir -p "${ED}"/usr/share/${PN} || die
+               cp -R data "${ED}"/usr/share/${PN}/ || die
+       fi
+
+       use doc && docompress -x 
"${ED}"/usr/share/doc/${PF}/${PN}{-api.qch,.tags}
+}

Reply via email to