summaryrefslogtreecommitdiff
path: root/dev-debug/edb-debugger
diff options
context:
space:
mode:
Diffstat (limited to 'dev-debug/edb-debugger')
-rw-r--r--dev-debug/edb-debugger/Manifest7
-rw-r--r--dev-debug/edb-debugger/edb-debugger-1.3.0-r1.ebuild56
-rw-r--r--dev-debug/edb-debugger/edb-debugger-9999.ebuild50
-rw-r--r--dev-debug/edb-debugger/files/edb-debugger-1.3.0-capstone-5.patch29
-rw-r--r--dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc12.patch88
-rw-r--r--dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc13.patch26
-rw-r--r--dev-debug/edb-debugger/metadata.xml8
7 files changed, 264 insertions, 0 deletions
diff --git a/dev-debug/edb-debugger/Manifest b/dev-debug/edb-debugger/Manifest
new file mode 100644
index 000000000000..22cd34404664
--- /dev/null
+++ b/dev-debug/edb-debugger/Manifest
@@ -0,0 +1,7 @@
+AUX edb-debugger-1.3.0-capstone-5.patch 1135 BLAKE2B 835105b255338811747521ca9b76c88eb5b88cebb050c536657b110fcf20fa81b5e0a33fae1c81fe9c890daba9021f4782df7440a1197ae5da7b325a1076d504 SHA512 7b6edec1d8fa7f350883eb0e1184c5051096dec3a4ea9519dbaacd036a0c893ed452f11906ae2c1844c94f3df5f215ba43a21cc70c5da74412b1e905deb9c06a
+AUX edb-debugger-1.3.0-gcc12.patch 3374 BLAKE2B 6e75e6d940da2d54d20bfdd62dd26c7955ffcc00d00d84a1029b583b00bee69106e43a64ad5b9ab96a269b84f7a69e48c12d6acbfd0f4404b8d490660620c35f SHA512 9b0fb244ce7e80ca4810323d6198e273019b3255c40e198563da109e228f1329bf0b36560024607b6015bc1ba992e396151858cb1bed1fecc39d2dd688232e62
+AUX edb-debugger-1.3.0-gcc13.patch 795 BLAKE2B eed779fd71962ec451606d54793e7ce9628a5ced1f05fc82ebeb3ae807be175060f9a7e881252d78143ee29c5bd1cedadaebdfc229bdf641aa4e46fbbb3b533b SHA512 836516212cc893dde4774854fe76856b6cc40dafa58bebf8a7757d7d758b9d8d2885f6690018be49f233d3208639ab84393a381f2660c86b184f07c3094144f7
+DIST edb-debugger-1.3.0.tgz 618227 BLAKE2B 1650e727851b629d7778c8488a464b6439f2ac4e5a72c0738cfe1ee302538b0d97dcbf9587a1108a82f8f8f4a6bec273e31ad454063f70704ffb48ca8ba5b73f SHA512 9d813bb61cdc7b61b594e63834ffb3999d3e1bb0c7a435095efea9b3b6726369a06c553ba6633df160d9456758ff54d5eee8cfbee6a1304f3a01d09fe2c7a65d
+EBUILD edb-debugger-1.3.0-r1.ebuild 1375 BLAKE2B ddb3444426bb1d4942be1793a6beed7c9aeef774715aa576c7fcb7139bfc5cecba65f5563631ef73b23c7daaabc1cb9b09822675beb244708c010542233b7f42 SHA512 57e86d04276e3b941132f09d9f96f444a2a50da53df3b4670103dafffd5d7f6bb6af97355bf514b150aee5ce01249425d5c699855a880f8b13c1a215ad1c836a
+EBUILD edb-debugger-9999.ebuild 1247 BLAKE2B 362ca3698ed3e1e0f6840ea0f77c0ee3d5a45d54416999a18324d563f6102df6981915215eae2d399a264f78a489c511b46ea5e03cfed52938253ec1c91dc453 SHA512 d1f60bda8799425668b95527da9e15b130b7a13c496739434010f2c984bf3dfc2233e518b09b022537bb77d3061986313ed19743486c73b1ca545fdc0d7642ad
+MISC metadata.xml 252 BLAKE2B fb12cf596eb089cfb2077cf0726394d90785dbea303035ffbb140513dbb5e0fc69ddcdab039f0d159a41cedd601084eab5f93d017c8eed995112ced496a1ebf2 SHA512 23a9f942e083e04792112e33470839ef3906e11035ef61a24b4f5aa2bf0a5b4fc322ed9f48e09905132c9a8a5f7abe02b2711bd3396da9f6d4ec95fea50ccadb
diff --git a/dev-debug/edb-debugger/edb-debugger-1.3.0-r1.ebuild b/dev-debug/edb-debugger/edb-debugger-1.3.0-r1.ebuild
new file mode 100644
index 000000000000..18c5a36f7a6f
--- /dev/null
+++ b/dev-debug/edb-debugger/edb-debugger-1.3.0-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="edb is a cross platform x86/x86-64 debugger, inspired by Ollydbg"
+HOMEPAGE="https://github.com/eteran/edb-debugger"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/eteran/edb-debugger"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/eteran/edb-debugger/releases/download/${PV}/edb-debugger-${PV}.tgz"
+ S="${WORKDIR}"/${PN}
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="graphviz"
+
+RDEPEND="dev-libs/capstone:=
+ dev-libs/double-conversion:=
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ dev-qt/qtxmlpatterns:5
+ graphviz? ( media-gfx/graphviz )"
+DEPEND="dev-libs/boost
+ ${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-gcc12.patch
+ "${FILESDIR}"/${PN}-1.3.0-capstone-5.patch
+ "${FILESDIR}"/${PN}-1.3.0-gcc13.patch
+)
+
+src_prepare() {
+ # Make the desktop's entries somewhat better
+ sed -i -e 's/GenericName=edb debugger/GenericName=Evan\x27s Debugger/' edb.desktop || die
+ sed -i -e 's/Comment=edb debugger/Comment=edb is a cross platform x86\/x86-64 debugger/' edb.desktop || die
+
+ if ! use graphviz; then
+ sed -i -e '/pkg_check_modules(GRAPHVIZ/d' CMakeLists.txt || die
+ fi
+
+ cmake_src_prepare
+}
diff --git a/dev-debug/edb-debugger/edb-debugger-9999.ebuild b/dev-debug/edb-debugger/edb-debugger-9999.ebuild
new file mode 100644
index 000000000000..7cb7dbf2f7f2
--- /dev/null
+++ b/dev-debug/edb-debugger/edb-debugger-9999.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="edb is a cross platform x86/x86-64 debugger, inspired by Ollydbg"
+HOMEPAGE="https://github.com/eteran/edb-debugger"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/eteran/edb-debugger"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/eteran/edb-debugger/releases/download/${PV}/edb-debugger-${PV}.tgz"
+ S="${WORKDIR}"/${PN}
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2+"
+SLOT="0"
+IUSE="graphviz"
+
+RDEPEND="dev-libs/capstone:=
+ dev-libs/double-conversion:=
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ dev-qt/qtxmlpatterns:5
+ graphviz? ( media-gfx/graphviz )"
+DEPEND="dev-libs/boost
+ ${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ # Make the desktop's entries somewhat better
+ sed -i -e 's/GenericName=edb debugger/GenericName=Evan\x27s Debugger/' edb.desktop || die
+ sed -i -e 's/Comment=edb debugger/Comment=edb is a cross platform x86\/x86-64 debugger/' edb.desktop || die
+
+ if ! use graphviz; then
+ sed -i -e '/pkg_check_modules(GRAPHVIZ/d' CMakeLists.txt || die
+ fi
+
+ cmake_src_prepare
+}
diff --git a/dev-debug/edb-debugger/files/edb-debugger-1.3.0-capstone-5.patch b/dev-debug/edb-debugger/files/edb-debugger-1.3.0-capstone-5.patch
new file mode 100644
index 000000000000..d900ae335242
--- /dev/null
+++ b/dev-debug/edb-debugger/files/edb-debugger-1.3.0-capstone-5.patch
@@ -0,0 +1,29 @@
+From cb1da3fb1d2e45e279118ee8e68468373b71dbc8 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Tue, 13 Sep 2022 17:52:01 +0100
+Subject: [PATCH] Fix build with Capstone 5
+
+Capstone 5 drops X86_INS_VCVTPD2DQX and X86_INS_VCVTPD2PSX from
+x86.h (happened in https://github.com/capstone-engine/capstone/commit/dd91f03fef5102492352756e2adb5972dd79a70f
+but no real explanation).
+
+Given:
+1. these instructions had no wiring up;
+2. other Capstone consumers have done the same
+let's drop based on a macro for the Capstone version.
+
+Bug: https://bugs.gentoo.org/843755
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/src/capstone-edb/Instruction.cpp
++++ b/src/capstone-edb/Instruction.cpp
+@@ -880,8 +880,10 @@ bool is_SIMD_PD(const Operand &operand) {
+ case X86_INS_CVTPD2PI:
+ case X86_INS_CVTPD2PS:
+ case X86_INS_VCVTPD2PS:
++#if CS_API_MAJOR < 5
+ case X86_INS_VCVTPD2DQX: // FIXME: what's this?
+ case X86_INS_VCVTPD2PSX: // FIXME: what's this?
++#endif
+ // case X86_INS_VCVTPD2QQ: // FIXME: Capstone seems to not support it
+ case X86_INS_VCVTPD2UDQ:
+ // case X86_INS_VCVTPD2UQQ: // FIXME: Capstone seems to not support it
diff --git a/dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc12.patch b/dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc12.patch
new file mode 100644
index 000000000000..df037193310f
--- /dev/null
+++ b/dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc12.patch
@@ -0,0 +1,88 @@
+https://github.com/eteran/edb-debugger/commit/da04c339559f82257ff54ea62b1d403ee98c1ba0
+https://bugs.gentoo.org/841839
+
+From da04c339559f82257ff54ea62b1d403ee98c1ba0 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyich@gmail.com>
+Date: Sat, 2 Apr 2022 22:36:50 +0000
+Subject: [PATCH] Gcc 12 includes fix (#815)
+
+* RegisterViewModelBase.h: add <memory> for unique_ptr
+
+Without the change gcc-12 fails to build edb-debugger as:
+
+ [ 20%] Building CXX object src/CMakeFiles/edb.dir/RegisterViewModelBase.cpp.o
+ In file included from edb-debugger/src/RegisterViewModelBase.cpp:18:
+ edb-debugger/include/RegisterViewModelBase.h:162:14: error:
+ 'unique_ptr' in namespace 'std' does not name a template type
+ 162 | std::unique_ptr<CategoriesHolder> rootItem;
+ | ^~~~~~~~~~
+ edb-debugger/include/RegisterViewModelBase.h:9:1: note:
+ 'std::unique_ptr' is defined in header '<memory>';
+ did you forget to '#include <memory>'?
+ 8 | #include <deque>
+ +++ |+#include <memory>
+
+* State.h: add <memory> for unique_ptr
+
+Without the change gcc-12 fails to build edb-debugger as:
+
+ [ 21%] Building CXX object src/CMakeFiles/edb.dir/State.cpp.o
+ In file included from edb-debugger/src/State.cpp:19:
+ edb-debugger/include/State.h:93:14:
+ error: 'unique_ptr' in namespace 'std' does not name a template type
+ 93 | std::unique_ptr<IState> impl_;
+ | ^~~~~~~~~~
+ edb-debugger/include/State.h:24:1:
+ note: 'std::unique_ptr' is defined in header '<memory>';
+ did you forget to '#include <memory>'?
+ 23 | #include "Types.h"
+ +++ |+#include <memory>
+ 24 |
+
+* IState.h: add <memory> for unique_ptr
+
+Without the change gcc-12 fails to build edb-debugger as:
+
+ [ 69%] Building CXX object plugins/DebuggerCore/CMakeFiles/DebuggerCore.dir/unix/linux/arch/x86-generic/PlatformState.cpp.o
+ In file included from edb-debugger/plugins/DebuggerCore/unix/linux/arch/x86-generic/PlatformState.h:22,
+ from edb-debugger/plugins/DebuggerCore/unix/linux/arch/x86-generic/PlatformState.cpp:19:
+ edb-debugger/include/IState.h:33:22:
+ error: 'unique_ptr' in namespace 'std' does not name a template type
+ 33 | virtual std::unique_ptr<IState> clone() const = 0;
+ | ^~~~~~~~~~
+ edb-debugger/include/IState.h:23:1:
+ note: 'std::unique_ptr' is defined in header '<memory>';
+ did you forget to '#include <memory>'?
+ 22 | #include "Register.h"
+ +++ |+#include <memory>
+ 23 | #include "Types.h"
+--- a/include/IState.h
++++ b/include/IState.h
+@@ -19,6 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #ifndef ISTATE_H_20110315_
+ #define ISTATE_H_20110315_
+
++#include <memory>
+ #include "Register.h"
+ #include "Types.h"
+
+--- a/include/RegisterViewModelBase.h
++++ b/include/RegisterViewModelBase.h
+@@ -6,6 +6,7 @@
+ #include "util/Integer.h"
+ #include <QAbstractItemModel>
+ #include <deque>
++#include <memory>
+ #include <vector>
+
+ Q_DECLARE_METATYPE(std::vector<NumberDisplayMode>)
+--- a/include/State.h
++++ b/include/State.h
+@@ -19,6 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #ifndef STATE_H_20060715_
+ #define STATE_H_20060715_
+
++#include <memory>
+ #include "API.h"
+ #include "Types.h"
+
diff --git a/dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc13.patch b/dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc13.patch
new file mode 100644
index 000000000000..f30eacc97436
--- /dev/null
+++ b/dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc13.patch
@@ -0,0 +1,26 @@
+https://github.com/eteran/edb-debugger/pull/837
+
+From 934de81a7799f3e1d210366e0eb5ea86d172ead4 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 15 Apr 2023 10:05:11 +0100
+Subject: [PATCH] Fix build with GCC 13
+
+GCC 13 (as usual for new compiler releases) shuffles around some internal includes so some
+are no longer transitively included.
+
+See https://gnu.org/software/gcc/gcc-13/porting_to.html.
+
+Bug: https://bugs.gentoo.org/897890
+--- a/plugins/DebuggerCore/unix/linux/FeatureDetect.cpp
++++ b/plugins/DebuggerCore/unix/linux/FeatureDetect.cpp
+@@ -19,6 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ #include "FeatureDetect.h"
+ #include "edb.h"
+
++#include <cstdint>
+ #include <fcntl.h>
+ #include <iomanip>
+ #include <iostream>
+--
+2.40.0
+
diff --git a/dev-debug/edb-debugger/metadata.xml b/dev-debug/edb-debugger/metadata.xml
new file mode 100644
index 000000000000..09229532f67a
--- /dev/null
+++ b/dev-debug/edb-debugger/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">eteran/edb-debugger</remote-id>
+ </upstream>
+</pkgmetadata>