summary refs log tree commit diff
diff options
context:
space:
mode:
authorKei Kebreau <kkebreau@posteo.net>2018-04-07 00:11:39 -0400
committerKei Kebreau <kkebreau@posteo.net>2018-04-17 20:08:38 -0400
commit9d39c300cf6e0d8d6bf20b26ce00a4bab5e9d04c (patch)
tree054bb658f80df56a74751e8d4fd02c2d4ea1c5b1
parentcbb10936f52e667cf7ccb7963fbd245100b25d75 (diff)
downloadguix-9d39c300cf6e0d8d6bf20b26ce00a4bab5e9d04c.tar.gz
gnu: nestopia-ue: Update to 1.48.
* gnu/packages/emulators.scm (nestopia-ue): Update to 1.48.
[source]: Simplify snippet; 3rd-party zlib is no longer bundled.
[build-system]: Switch to cmake-build-system.
[inputs]: Remove glu and mesa. Add libepoxy.
[arguments]: Remove #:make-flags. Re-enable 'configure' phase. Remove
'remove-xdg-desktop-menu-call' and 'remove-gdkwayland-include' phases. Add
'wrap-program' phase.
-rw-r--r--gnu/packages/emulators.scm36
1 files changed, 14 insertions, 22 deletions
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 232e14b47a..79947059bd 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -993,7 +993,7 @@ towards a working Mupen64Plus for casual users.")
 (define-public nestopia-ue
   (package
     (name "nestopia-ue")
-    (version "1.47")
+    (version "1.48")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -1002,42 +1002,34 @@ towards a working Mupen64Plus for casual users.")
               (file-name (string-append name "-" version ".tar.gz"))
               (sha256
                (base32
-                "1dzrrjmvyqks64q5l5pfly80jb6qcsbj5b3dm40fijd5xnpbapci"))
+                "184y05z4k4a4m4022niy625kan0rklh8gcxyynxli1fss2sjjrpv"))
               (modules '((guix build utils)))
               (snippet
                '(begin
                   ;; We don't need libretro for the GNU/Linux build.
-                  (delete-file-recursively "libretro")
-                  ;; Use system zlib.
-                  (delete-file-recursively "source/zlib")
-                  (substitute* "source/core/NstZlib.cpp"
-                    (("#include \"../zlib/zlib.h\"") "#include <zlib.h>"))))))
-    (build-system gnu-build-system)
+                  (delete-file-recursively "libretro")))))
+    (build-system cmake-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
     (inputs
      `(("ao" ,ao)
-       ("glu" ,glu)
        ("gtk+" ,gtk+)
        ("libarchive" ,libarchive)
-       ("mesa" ,mesa)
+       ("libepoxy" ,libepoxy)
        ("sdl2" ,sdl2)
        ("zlib" ,zlib)))
     (arguments
      '(#:phases
        (modify-phases %standard-phases
-         ;; The Nestopia build system consists solely of a Makefile.
-         (delete 'configure)
-         (add-before 'build 'remove-xdg-desktop-menu-call
-           (lambda _
-             (substitute* "Makefile"
-               (("xdg-desktop-menu install .*") ""))))
-         (add-before 'build 'remove-gdkwayland-include
-           (lambda _
-             (substitute* "source/unix/gtkui/gtkui.h"
-               (("#include <gdk/gdkwayland\\.h>") "")))))
-       #:make-flags (let ((out (assoc-ref %outputs "out")))
-                      (list "CC=gcc" "CXX=g++" (string-append "PREFIX=" out)))
+         ;; This fixes the file chooser crash that happens with GTK 3.
+         (add-after 'install 'wrap-program
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (nestopia (string-append out "/bin/nestopia"))
+                    (gtk (assoc-ref inputs "gtk+"))
+                    (gtk-share (string-append gtk "/share")))
+               (wrap-program nestopia
+                 `("XDG_DATA_DIRS" ":" prefix (,gtk-share)))))))
        ;; There are no tests.
        #:tests? #f))
     (home-page "http://0ldsk00l.ca/nestopia/")