aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorSören Tempel <soeren@soeren-tempel.net>2024-07-11 23:27:18 +0200
committerjgart <jgart@dismail.de>2024-07-13 09:59:22 -0500
commitc31c325a12566a4f2c274a4d23c3b0089f210b43 (patch)
tree806c2ff9939d85e7aae433dd1b0f98f538d89677 /gnu
parent2ef047f678ee1d253e28f98857c6d99b81952d56 (diff)
downloadguix-c31c325a12566a4f2c274a4d23c3b0089f210b43.tar.gz
guix-c31c325a12566a4f2c274a4d23c3b0089f210b43.zip
gnu: Add python-archinfo.
* gnu/packages/emulators.scm (python-archinfo): New variable. Signed-off-by: jgart <jgart@dismail.de>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/emulators.scm28
1 files changed, 28 insertions, 0 deletions
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 486610f1f0..f2b93666b1 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -67,6 +67,7 @@
#:use-module (gnu packages cross-base)
#:use-module (gnu packages curl)
#:use-module (gnu packages digest)
+ #:use-module (gnu packages engineering)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
#:use-module (gnu packages fltk)
@@ -2644,6 +2645,33 @@ and offers an intuitive architecture-neutral API for interacting with
assembly for these architectures.")
(license license:gpl2)))
+(define-public python-archinfo
+ (package
+ (name "python-archinfo")
+ ;; Must be the same version as python-angr.
+ (version "9.2.46")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "archinfo" version))
+ (sha256
+ (base32 "037xfq3wcf8ngayxz9623l4646m780v2102mfbygpzbkkjha1966"))))
+ (build-system pyproject-build-system)
+ (propagated-inputs (list python-capstone python-keystone-engine))
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (with-directory-excursion "tests"
+ (invoke "python" "-m" "unittest"))))))))
+ (home-page "https://github.com/angr/archinfo")
+ (synopsis "Extract architecture-specific information from binaries")
+ (description
+ "Collection of classes that contain architecture-specific information
+information. Useful for cross-architecture tools (such as @code{python-pyvex}).")
+ (license license:bsd-2)))
+
(define-public emu8051
(let ((commit "5dc681275151c4a5d7b85ec9ff4ceb1b25abd5a8")
(revision "1"))