GNU bug report logs - #49090
[PATCH] gnu: Add blastem.

Previous Next

Package: guix-patches;

Reported by: Leo Prikler <leo.prikler <at> student.tugraz.at>

Date: Fri, 18 Jun 2021 15:01:02 UTC

Severity: normal

Tags: patch

Done: Leo Prikler <leo.prikler <at> student.tugraz.at>

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 49090 in the body.
You can then email your comments to 49090 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#49090; Package guix-patches. (Fri, 18 Jun 2021 15:01:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Leo Prikler <leo.prikler <at> student.tugraz.at>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 18 Jun 2021 15:01:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo Prikler <leo.prikler <at> student.tugraz.at>
To: guix-patches <at> gnu.org
Subject: [PATCH] gnu: Add blastem.
Date: Fri, 18 Jun 2021 16:59:27 +0200
* gnu/packages/emulators.scm (blastem): New variable.
---
 gnu/packages/emulators.scm | 67 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 67 insertions(+)

diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index ec8d3d21d6..1f1e726d8d 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -39,6 +39,7 @@
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix svn-download)
+  #:use-module (guix hg-download)
   #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
@@ -141,6 +142,72 @@ C610/C510).  An extra emulator is provided for C64 expanded with the CMD
 SuperCPU.")
     (license license:gpl2+)))
 
+(define-public blastem
+  (package
+    (name "blastem")
+    (version "0.6.2")
+    (source (origin
+              (method hg-fetch)
+              (uri (hg-reference
+                    (url "https://www.retrodev.com/repos/blastem")
+                    (changeset (string-append "v" version))))
+              (file-name (string-append name "-" version "-checkout"))
+              (sha256
+               (base32
+                "08ycfisivh9rb9vmijlrpdryaw8spd81ck48960p15cnf8h2535q"))
+              (modules '((guix build utils)))
+              (snippet
+               '(begin
+                  ;; TODO: Separately package and unbundle nuklear
+                  (delete-file-recursively "zlib")))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags (list (string-append "CC=" ,(cc-for-target))
+                          "HOST_ZLIB=1"
+                          "HAS_PROC=-DHAS_PROC"
+                          (string-append "CONFIG_PATH="
+                                         %output "/share/blastem")
+                          (string-append "DATA_PATH="
+                                         %output "/share/blastem"))
+       #:tests? #f ; No check target and custom tests don't seem to build
+       #:imported-modules
+       ((guix build copy-build-system)
+        ,@%gnu-build-system-modules)
+       #:modules
+       (((guix build copy-build-system)
+         #:prefix copy:)
+        (guix build gnu-build-system)
+        (guix build utils))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-source
+           (lambda _
+             (substitute* (find-files "." ".*\\.[ch]")
+               (("\"zlib/zlib.h\"") "<zlib.h>"))))
+         (delete 'configure)
+         (replace 'install
+           (lambda* args
+             (apply (assoc-ref copy:%standard-phases 'install)
+                    #:install-plan
+                    '(("." "bin" #:include ("blastem" "vgmplay"))
+                      ("." "share/blastem"
+                       #:include ("default.cfg" "rom.db")
+                       #:exclude ("android"))
+                      ("shaders" "share/blastem/shaders"))
+                    args))))))
+    (inputs
+     `(("glew" ,glew)
+       ("mesa" ,mesa)
+       ("sdl2" ,sdl2)
+       ("zlib" ,zlib)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://www.retrodev.com/blastem/")
+    (synopsis "Genesis/Mega Drive emulator")
+    (description "Blastem is an emulator for the Sega Genesis/Mega Drive
+console.")
+    (license license:gpl3+)))
+
 (define-public desmume
   (package
     (name "desmume")
-- 
2.32.0





Information forwarded to guix-patches <at> gnu.org:
bug#49090; Package guix-patches. (Fri, 18 Jun 2021 18:40:02 GMT) Full text and rfc822 format available.

Message #8 received at 49090 <at> debbugs.gnu.org (full text, mbox):

From: Xinglu Chen <public <at> yoctocell.xyz>
To: Leo Prikler <leo.prikler <at> student.tugraz.at>, 49090 <at> debbugs.gnu.org
Subject: Re: [bug#49090] [PATCH] gnu: Add blastem.
Date: Fri, 18 Jun 2021 20:39:25 +0200
[Message part 1 (text/plain, inline)]
On Fri, Jun 18 2021, Leo Prikler wrote:

> +(define-public blastem
> +  (package
> +    (name "blastem")
> +    (version "0.6.2")
> +    (source (origin
> +              (method hg-fetch)
> +              (uri (hg-reference
> +                    (url "https://www.retrodev.com/repos/blastem")
> +                    (changeset (string-append "v" version))))
> +              (file-name (string-append name "-" version "-checkout"))

Nit: (guix hg-download) provides a ‘hg-file-name’ procedure, so you can
just use (hg-file-name name version).

> +              (sha256
> +               (base32
> +                "08ycfisivh9rb9vmijlrpdryaw8spd81ck48960p15cnf8h2535q"))
> +              (modules '((guix build utils)))
> +              (snippet
> +               '(begin
> +                  ;; TODO: Separately package and unbundle nuklear
> +                  (delete-file-recursively "zlib")))))

Why is the zlib directory removed?  Or perhaps, why do they bundle their
own Zlib?

[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#49090; Package guix-patches. (Fri, 18 Jun 2021 19:16:01 GMT) Full text and rfc822 format available.

Message #11 received at 49090 <at> debbugs.gnu.org (full text, mbox):

From: Leo Prikler <leo.prikler <at> student.tugraz.at>
To: Xinglu Chen <public <at> yoctocell.xyz>, 49090 <at> debbugs.gnu.org
Subject: Re: [bug#49090] [PATCH] gnu: Add blastem.
Date: Fri, 18 Jun 2021 21:15:31 +0200
Am Freitag, den 18.06.2021, 20:39 +0200 schrieb Xinglu Chen:
> On Fri, Jun 18 2021, Leo Prikler wrote:
> 
> > +(define-public blastem
> > +  (package
> > +    (name "blastem")
> > +    (version "0.6.2")
> > +    (source (origin
> > +              (method hg-fetch)
> > +              (uri (hg-reference
> > +                    (url "https://www.retrodev.com/repos/blastem")
> > +                    (changeset (string-append "v" version))))
> > +              (file-name (string-append name "-" version "-
> > checkout"))
> 
> Nit: (guix hg-download) provides a ‘hg-file-name’ procedure, so you
> can just use (hg-file-name name version).
Good to know, I simply used the hg-reference... expansion from
etc/snippets, so that should probably be updated.
> 
> > +              (sha256
> > +               (base32
> > +                "08ycfisivh9rb9vmijlrpdryaw8spd81ck48960p15cnf8h25
> > 35q"))
> > +              (modules '((guix build utils)))
> > +              (snippet
> > +               '(begin
> > +                  ;; TODO: Separately package and unbundle nuklear
> > +                  (delete-file-recursively "zlib")))))
> 
> Why is the zlib directory removed?  Or perhaps, why do they bundle
> their own Zlib?
The have their own PNG implementation, which appears different from
libpng.  So zlib exists as a dependency of that, but it's also
#included elsewhere.





Information forwarded to guix-patches <at> gnu.org:
bug#49090; Package guix-patches. (Sat, 19 Jun 2021 08:31:02 GMT) Full text and rfc822 format available.

Message #14 received at 49090 <at> debbugs.gnu.org (full text, mbox):

From: Xinglu Chen <public <at> yoctocell.xyz>
To: Leo Prikler <leo.prikler <at> student.tugraz.at>, 49090 <at> debbugs.gnu.org
Subject: Re: [bug#49090] [PATCH] gnu: Add blastem.
Date: Sat, 19 Jun 2021 10:30:03 +0200
[Message part 1 (text/plain, inline)]
On Fri, Jun 18 2021, Leo Prikler wrote:

> Am Freitag, den 18.06.2021, 20:39 +0200 schrieb Xinglu Chen:
>> On Fri, Jun 18 2021, Leo Prikler wrote:
>> 
>> > +(define-public blastem
>> > +  (package
>> > +    (name "blastem")
>> > +    (version "0.6.2")
>> > +    (source (origin
>> > +              (method hg-fetch)
>> > +              (uri (hg-reference
>> > +                    (url "https://www.retrodev.com/repos/blastem")
>> > +                    (changeset (string-append "v" version))))
>> > +              (file-name (string-append name "-" version "-
>> > checkout"))
>> 
>> Nit: (guix hg-download) provides a ‘hg-file-name’ procedure, so you
>> can just use (hg-file-name name version).
> Good to know, I simply used the hg-reference... expansion from
> etc/snippets, so that should probably be updated.

Ah, I guess it time to update etc/snippets then :)

>> > +              (sha256
>> > +               (base32
>> > +                "08ycfisivh9rb9vmijlrpdryaw8spd81ck48960p15cnf8h25
>> > 35q"))
>> > +              (modules '((guix build utils)))
>> > +              (snippet
>> > +               '(begin
>> > +                  ;; TODO: Separately package and unbundle nuklear
>> > +                  (delete-file-recursively "zlib")))))
>> 
>> Why is the zlib directory removed?  Or perhaps, why do they bundle
>> their own Zlib?
> The have their own PNG implementation, which appears different from
> libpng.  So zlib exists as a dependency of that, but it's also
> #included elsewhere.

OK, thanks for the explanation.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#49090; Package guix-patches. (Sat, 26 Jun 2021 20:49:01 GMT) Full text and rfc822 format available.

Message #17 received at 49090 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Leo Prikler <leo.prikler <at> student.tugraz.at>
Cc: 49090 <at> debbugs.gnu.org, Xinglu Chen <public <at> yoctocell.xyz>
Subject: Re: bug#49090: [PATCH] gnu: Add blastem.
Date: Sat, 26 Jun 2021 22:48:33 +0200
Hi Leo,

Looks like this patch should be ready now?

Thanks,
Ludo’.




Reply sent to Leo Prikler <leo.prikler <at> student.tugraz.at>:
You have taken responsibility. (Sun, 27 Jun 2021 09:29:02 GMT) Full text and rfc822 format available.

Notification sent to Leo Prikler <leo.prikler <at> student.tugraz.at>:
bug acknowledged by developer. (Sun, 27 Jun 2021 09:29:02 GMT) Full text and rfc822 format available.

Message #22 received at 49090-done <at> debbugs.gnu.org (full text, mbox):

From: Leo Prikler <leo.prikler <at> student.tugraz.at>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: Xinglu Chen <public <at> yoctocell.xyz>, 49090-done <at> debbugs.gnu.org
Subject: Re: bug#49090: [PATCH] gnu: Add blastem.
Date: Sun, 27 Jun 2021 11:28:15 +0200
Am Samstag, den 26.06.2021, 22:48 +0200 schrieb Ludovic Courtès:
> Hi Leo,
> 
> Looks like this patch should be ready now?
> 
> Thanks,
> Ludo’.
I would say so too.  I've pushed it now.

Thanks,
Leo





bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 25 Jul 2021 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 269 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.