dev-util/gammaray: New Package

High-level runtime introspection tool for Qt applications.

Closes: https://github.com/gentoo/gentoo/pull/9343
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Petros Siligkounas <petross404@gmail.com>
Signed-off-by: Ross Charles Campbell <rossbridger.cc@gmail.com>
This commit is contained in:
Ross Charles Campbell
2021-01-03 00:35:17 +08:00
parent 21973b3c84
commit 5807306181
3 changed files with 124 additions and 0 deletions

View File

@@ -0,0 +1 @@
DIST gammaray-2.11.2.tar.gz 10333340 BLAKE2B 8dbb83e22826cd08e3a7105bfe910d9862ea47e3709e0c61c22ed9fe4974d27412f79a587de0ac6bb092f0edf07476c10717ca40dd8e7b43903aa44686158489 SHA512 788a4bb6c96e8c5d9a6762d94ad0a452c95d20c79b4b10a1b774950fb047633f040707d984c5e769b8c47ab6a2b9f9c338b0700ad17315588b1275f226a04f51

View File

@@ -0,0 +1,87 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake
DESCRIPTION="High-level runtime introspection tool for Qt applications"
HOMEPAGE="https://www.kdab.com/gammaray https://github.com/KDAB/GammaRay"
if [[ ${PV} == 9999 ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/KDAB/GammaRay.git"
else
SRC_URI="https://github.com/KDAB/GammaRay/releases/download/v${PV}/${P}.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="GPL-2+"
SLOT=0
IUSE="3d bluetooth designer doc geolocation printsupport script scxml svg test qml wayland webengine"
RDEPEND="
dev-qt/qtcore:5
dev-qt/qtconcurrent:5
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtwidgets:5
dev-qt/qtxml:5
kde-frameworks/kitemmodels:5
3d? ( dev-qt/qt3d:5 )
bluetooth? ( dev-qt/qtbluetooth:5 )
designer? ( dev-qt/designer:5 )
geolocation? ( dev-qt/qtpositioning:5 )
printsupport? ( dev-qt/qtprintsupport:5 )
qml? ( dev-qt/qtdeclarative:5[widgets] )
script? ( dev-qt/qtscript:5[scripttools] )
scxml? ( dev-qt/qtscxml:5 )
svg? ( dev-qt/qtsvg:5 )
webengine? ( dev-qt/qtwebengine:5[widgets] )
wayland? ( dev-qt/qtwayland:5 )
"
DEPEND="${RDEPEND}
test? ( dev-qt/qttest:5 )
"
src_prepare(){
sed -i "/BackwardMacros.cmake/d" CMakeLists.txt || die
sed -i "/add_backward(gammaray_core)/d" core/CMakeLists.txt || die
cmake_src_prepare
}
src_configure(){
local mycmakeargs=(
-DCMAKE_DISABLE_FIND_PACKAGE_Qt53DAnimation=$(usex !3d)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt53DExtras=$(usex !3d)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt53DInput=$(usex !3d)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt53DLogic=$(usex !3d)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt53DRender=$(usex !3d)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt53DQuick=$(usex !3d)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Bluetooth=$(usex !bluetooth)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Designer=$(usex !designer)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Positioning=$(usex !geolocation)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5PrintSupport=$(usex !printsupport)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Qml=$(usex !qml)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Quick=$(usex !qml)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5QuickWidgets=$(usex !qml)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Script=$(usex !script)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Svg=$(usex !svg)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Scxml=$(usex !scxml)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5Test=$(usex !test)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5WaylandCompositor=$(usex !wayland)
-DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebEngineWidgets=$(usex !webengine)
-DGAMMARAY_BUILD_DOCS=$(usex doc)
-DGAMMARAY_BUILD_UI=ON
-DGAMMARAY_DISABLE_FEEDBACK=ON
)
cmake_src_configure
}
pkg_postinst() {
elog
elog "Install dev-util/kdstatemachineeditor as optional dependency"
elog "for graphical state machine debugging support"
elog
}

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>rossbridger.cc@gmail.com</email>
<name>Ross Charles Campbell</name>
</maintainer>
<maintainer type="person">
<email>petross404@gmail.com</email>
<name>Petros S</name>
</maintainer>
<longdescription>
GammaRay is a software introspection tool for Qt applications developed by KDAB.
Leveraging the QObject introspection mechanism it allows you to observe and manipulate
your application at runtime. This works both locally on your workstation and remotely
on an embedded target.
Augmenting your instruction-level debugger, GammaRay allows you to work on a much higher
level, with the same concepts as the frameworks you use. This is especially useful for
the more complex Qt frameworks such as model/view, state machines or scene graphs.
</longdescription>
<use>
<flag name="3d">Build support for Qt5 3D modules</flag>
<flag name="designer">Widget .ui file export</flag>
<flag name="geolocation">Physical position determination support from Qt5 framework</flag>
<flag name="printsupport">Printing support library from the Qt5 framework. Required for widget PDF export</flag>
<flag name="script">Enable scripting support from the Qt5 framework</flag>
<flag name="qml">Build with Qt5 Quick support</flag>
<flag name="scxml">Build support for Qt5 State Chart XML (SCXML)</flag>
<flag name="webengine">Enable support for dev-qt/qtwebengine</flag>
</use>
<upstream>
<remote-id type="github">KDAB/GammaRay</remote-id>
<bugs-to>https://github.com/KDAB/GammaRay/issues</bugs-to>
</upstream>
</pkgmetadata>