commit: 7bed9a1117976203283adeeb4dc4237f6b7263a0
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 16 21:37:56 2025 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jun 16 21:37:56 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7bed9a11
dev-util/elf_diff: new package, add 0.7.1
Signed-off-by: Sam James <sam <AT> gentoo.org>
dev-util/elf_diff/Manifest | 1 +
dev-util/elf_diff/elf_diff-0.7.1.ebuild | 43 ++++++++++++++++++++++
.../files/elf_diff-0.7.1-test-runner-exit.patch | 10 +++++
dev-util/elf_diff/metadata.xml | 13 +++++++
4 files changed, 67 insertions(+)
diff --git a/dev-util/elf_diff/Manifest b/dev-util/elf_diff/Manifest
new file mode 100644
index 000000000000..7a61d0ece587
--- /dev/null
+++ b/dev-util/elf_diff/Manifest
@@ -0,0 +1 @@
+DIST elf_diff-0.7.1.tar.gz 885542 BLAKE2B
1e601d81ba616847ae7b042ea40aea1ad150e673f4491f35a86e58047d6985dbee3ef6b5b9bc00a35d210432e8b0cc802ff3f4a86280acc62c90ec44b9815db4
SHA512
b1eef9954ceabf3a1936423131eacd71cf942a5d2f28419b3afac837b6b56cf81a9ff884f6e36495d0f61840aa9f5e68836960d29b0a7d7e00f4a0e938fcc141
diff --git a/dev-util/elf_diff/elf_diff-0.7.1.ebuild
b/dev-util/elf_diff/elf_diff-0.7.1.ebuild
new file mode 100644
index 000000000000..b0488e64a0f7
--- /dev/null
+++ b/dev-util/elf_diff/elf_diff-0.7.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..13} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Tool to compare ELF binaries"
+HOMEPAGE="https://github.com/noseglasses/elf_diff
https://pypi.org/project/elf_diff"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+# Tests fail for now but probably gone unnoticed as its exit status was
+# wrong on failure.
+RESTRICT="!test? ( test ) test"
+
+RDEPEND="
+ dev-python/anytree[${PYTHON_USEDEP}]
+ dev-python/dict2xml[${PYTHON_USEDEP}]
+ dev-python/gitpython[${PYTHON_USEDEP}]
+ dev-python/jinja2[${PYTHON_USEDEP}]
+ dev-python/progressbar2[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/weasyprint[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/deepdiff[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.7.1-test-runner-exit.patch
+)
+
+python_test() {
+ "${EPYTHON}" tests/test_main.py -p || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-util/elf_diff/files/elf_diff-0.7.1-test-runner-exit.patch
b/dev-util/elf_diff/files/elf_diff-0.7.1-test-runner-exit.patch
new file mode 100644
index 000000000000..52b67911827f
--- /dev/null
+++ b/dev-util/elf_diff/files/elf_diff-0.7.1-test-runner-exit.patch
@@ -0,0 +1,10 @@
+Make the exit status of test_main.py reflect whether tests passed.
+--- a/tests/test_main.py
++++ b/tests/test_main.py
+@@ -48,4 +48,5 @@ if __name__ == "__main__":
+ tests = loader.loadTestsFromNames(test_modules)
+
+ test_runner = unittest.runner.TextTestRunner()
+- test_runner.run(tests)
++ result = test_runner.run(tests)
++ sys.exit(not result.wasSuccessful())
diff --git a/dev-util/elf_diff/metadata.xml b/dev-util/elf_diff/metadata.xml
new file mode 100644
index 000000000000..62cef40d8696
--- /dev/null
+++ b/dev-util/elf_diff/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>[email protected]</email>
+ <name>Sam James</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="github">noseglasses/elf_diff</remote-id>
+ <remote-id type="pypi">elf_diff</remote-id>
+ </upstream>
+</pkgmetadata>