diff options
author | Michał Górny <mgorny@gentoo.org> | 2024-01-17 19:45:44 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2024-01-18 15:27:40 +0100 |
commit | 0c3cb73132784dedc69a447368ee9b35deb60bb5 (patch) | |
tree | 3db25bd0880aabe79be47bcbdbee5977d81a550c /dev-debug/edb-debugger | |
parent | Move {dev-util → dev-debug}/ddd (diff) | |
download | gentoo-0c3cb73132784dedc69a447368ee9b35deb60bb5.tar.gz gentoo-0c3cb73132784dedc69a447368ee9b35deb60bb5.tar.bz2 gentoo-0c3cb73132784dedc69a447368ee9b35deb60bb5.zip |
Move {dev-util → dev-debug}/edb-debugger
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-debug/edb-debugger')
-rw-r--r-- | dev-debug/edb-debugger/Manifest | 1 | ||||
-rw-r--r-- | dev-debug/edb-debugger/edb-debugger-1.3.0-r1.ebuild | 56 | ||||
-rw-r--r-- | dev-debug/edb-debugger/edb-debugger-9999.ebuild | 50 | ||||
-rw-r--r-- | dev-debug/edb-debugger/files/edb-debugger-1.3.0-capstone-5.patch | 29 | ||||
-rw-r--r-- | dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc12.patch | 88 | ||||
-rw-r--r-- | dev-debug/edb-debugger/files/edb-debugger-1.3.0-gcc13.patch | 26 | ||||
-rw-r--r-- | dev-debug/edb-debugger/metadata.xml | 8 |
7 files changed, 258 insertions, 0 deletions
diff --git a/dev-debug/edb-debugger/Manifest b/dev-debug/edb-debugger/Manifest new file mode 100644 index 000000000000..3b2764138681 --- /dev/null +++ b/dev-debug/edb-debugger/Manifest @@ -0,0 +1 @@ +DIST edb-debugger-1.3.0.tgz 618227 BLAKE2B 1650e727851b629d7778c8488a464b6439f2ac4e5a72c0738cfe1ee302538b0d97dcbf9587a1108a82f8f8f4a6bec273e31ad454063f70704ffb48ca8ba5b73f SHA512 9d813bb61cdc7b61b594e63834ffb3999d3e1bb0c7a435095efea9b3b6726369a06c553ba6633df160d9456758ff54d5eee8cfbee6a1304f3a01d09fe2c7a65d 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> |