GNU bug report logs -
#63442
[PATCH] gnu: unicorn: Update to 2.0.1.post1.
Previous Next
Reported by: c4droid <c4droid <at> foxmail.com>
Date: Thu, 11 May 2023 09:42:02 UTC
Severity: normal
Tags: patch
Done: jgart <jgart <at> dismail.de>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 63442 in the body.
You can then email your comments to 63442 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#63442
; Package
guix-patches
.
(Thu, 11 May 2023 09:42:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
c4droid <c4droid <at> foxmail.com>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Thu, 11 May 2023 09:42:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi, Guix!
I noticed unicorn is using pyproject now, so I update the unicorn definition in my guix fork,
I tested it on my local machine it can be built successfully.
[update-unicorn.patch (text/plain, attachment)]
Information forwarded
to
paren <at> disroot.org, guix <at> cbaines.net, ludo <at> gnu.org, othacehe <at> gnu.org, rg <at> raghavgururajan.name, rekado <at> elephly.net, zimon.toutoune <at> gmail.com, me <at> tobias.gr, jgart <at> dismail.de, guix-patches <at> gnu.org
:
bug#63442
; Package
guix-patches
.
(Tue, 24 Oct 2023 15:39:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 63442 <at> debbugs.gnu.org (full text, mbox):
Hi,
I can confirm that this patch builds locally. I can also confirm that
the Python bindings work as intended. The Unicorn version presently
shipped by Guix is very ancient and doesn't build at the moment (fails
test). As such, it would be cool if this patch could be merged.
I am currently working on a Guix package for angr <https://angr.io/> and
need Unicorn 2.X for this (with the patch my angr Guix package works as
intended). I would also be willing to revise the patch in case OP isn't
active any more.
Let me know if any changes are needed (CC'd the mentors, hope that's ok).
Greetings,
Sören Tempel
Information forwarded
to
guix-patches <at> gnu.org
:
bug#63442
; Package
guix-patches
.
(Wed, 10 Jul 2024 15:43:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 63442 <at> debbugs.gnu.org (full text, mbox):
> I can confirm that this patch builds locally. I can also confirm that
Can you send an updated patch as a v2?
The update-unicorn.patch no longer applies.
I tried to wiggle it but no luck:
https://toys.whereis.みんな/?search=wiggle
--
all the best,
jgart
Information forwarded
to
guix-patches <at> gnu.org
:
bug#63442
; Package
guix-patches
.
(Thu, 11 Jul 2024 18:02:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 63442 <at> debbugs.gnu.org (full text, mbox):
From: c4droid <c4droid <at> foxmail.com>
* gnu/packages/emulators.scm (unicorn) Update to 2.0.1.post1.
Co-authored-by: Sören Tempel <soeren <at> soeren-tempel.net>
---
gnu/packages/emulators.scm | 118 ++++++-------------------------------
1 file changed, 19 insertions(+), 99 deletions(-)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 4471de9040..5979294ef2 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -61,6 +61,7 @@ (define-module (gnu packages emulators)
#:use-module (gnu packages boost)
#:use-module (gnu packages cdrom)
#:use-module (gnu packages check)
+ #:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages containers)
#:use-module (gnu packages cross-base)
@@ -113,6 +114,7 @@ (define-module (gnu packages emulators)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
+ #:use-module (guix build-system pyproject)
#:use-module (guix build-system qt))
(define-public vice
@@ -2296,106 +2298,24 @@ (define-public zsnes
(license license:gpl2+)
(supported-systems (list "x86_64-linux"))))
-;; python-pwntools requires a -rc release of unicorn
(define-public unicorn
- (let ((unless-x86
- (lambda (code)
- (if (member (%current-system) '("x86_64-linux" "i686-linux"))
- '()
- code))))
- (package
- (name "unicorn")
- (version "1.0.2-rc4")
- ;; NOTE: unicorn ships a bundled QEMU, but with a lot of custom modifications.
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/unicorn-engine/unicorn")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "17nyccgk7hpc4hab24yn57f1xnmr7kq4px98zbp2bkwcrxny8gwy"))))
- (outputs '("out" "python"))
- ;; The main library is not written in Python, but the build process has
- ;; little in common with any defined build system, so we might as well
- ;; build on top of python-build-system and make use of all
- ;; the Python-specific phases that can be reused.
- (build-system python-build-system)
- (arguments
- `(#:modules ((srfi srfi-26)
- (guix build python-build-system)
- (guix build utils))
- #:phases
- (modify-phases %standard-phases
- (add-before 'build 'build-library
- (lambda* (#:key inputs #:allow-other-keys)
- (invoke "make"
- "-j" (number->string (parallel-job-count))
- "UNICORN_STATIC=no"
- "CC=gcc")))
- (add-after 'build-library 'install-library
- (lambda* (#:key outputs #:allow-other-keys)
- (invoke "make" "install"
- "UNICORN_STATIC=no"
- (string-append
- "PREFIX="
- (assoc-ref outputs "out")))))
- (add-before 'build 'prepare-bindings
- (lambda* (#:key outputs #:allow-other-keys)
- (chdir "bindings/python")
- ;; Set this environment variable so that the Python bindings
- ;; don't build their own copy of the shared object, but use
- ;; a dummy value such that the bindings test suite uses the
- ;; same mechanism for loading the library as any other user.
- (setenv "LIBUNICORN_PATH" "1")
- (substitute* "unicorn/unicorn.py"
- (("_path_list = \\[.*")
- (string-append
- "_path_list = [\""
- (assoc-ref outputs "out")
- ;; eat the rest of the list
- "/lib\"] + 0*[")))
- #t))
- (add-before 'check 'check-library
- (lambda* (#:key outputs #:allow-other-keys)
- (for-each
- (lambda (suite)
- (with-directory-excursion
- (string-append "../../tests/" suite)
- (invoke "make" "test" "CC=gcc"
- ,@(unless-x86
- '("AS=i686-unknown-linux-gnu-as"
- "OBJCOPY=i686-unknown-linux-gnu-objcopy")))))
- '("unit" "regress"))
- #t))
- (add-after 'install 'install-samples
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((python-samples (find-files "." "sample_.*"))
- (c-samples (find-files "../../samples" ".*\\.c"))
- (python-docdir
- (string-append (assoc-ref outputs "python")
- "/share/doc/unicorn/samples"))
- (c-docdir
- (string-append (assoc-ref outputs "out")
- "/share/doc/unicorn/samples")))
- (for-each (cut install-file <> c-docdir) c-samples)
- (for-each (cut install-file <> python-docdir) python-samples)
- #t))))))
- (native-inputs
- ;; NOTE: cross-binutils needs to be wrapped with unless-x86, as otherwise
- ;; the linker provided by the package will be used, circumventing the ld-wrapper.
- `(,@(unless-x86
- `(("assembler-for-tests" ,(cross-binutils "i686-unknown-linux-gnu"))))
- ("cmocka" ,cmocka)
- ("hexdump-for-tests" ,util-linux)))
- (home-page "https://www.unicorn-engine.org")
- (synopsis "Unicorn CPU emulator framework")
- (description
- "Unicorn is a lightweight, multi-platform, multi-architecture CPU emulator
-framework based on QEMU.")
- (license license:gpl2+))))
+ (package
+ (name "unicorn")
+ (version "2.0.1.post1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri name version))
+ (sha256
+ (base32 "0mlfs8qfi0clyncfkbxp6in0cpl747510i6bqymwid43xcirbikz"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list cmake pkg-config))
+ (home-page "https://www.unicorn-engine.org")
+ (synopsis "Generic CPU emulator framework")
+ (description
+ "Uniforn is a lightweight, multi-platform, multi-architecture CPU
+emulator framework based on QEMU.")
+ (license license:gpl2+)))
(define-public ppsspp
(package
base-commit: 437f8f19ac74c85b80432881d9df2b0d80943bca
Reply sent
to
jgart <jgart <at> dismail.de>
:
You have taken responsibility.
(Thu, 11 Jul 2024 20:18:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
c4droid <c4droid <at> foxmail.com>
:
bug acknowledged by developer.
(Thu, 11 Jul 2024 20:18:02 GMT)
Full text and
rfc822 format available.
Message #19 received at 63442-done <at> debbugs.gnu.org (full text, mbox):
Applied, thanks!
--
all the best,
jgart
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 09 Aug 2024 11:24:07 GMT)
Full text and
rfc822 format available.
This bug report was last modified 273 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.