aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHendursaga <hendursaga@aol.com>2023-09-19 16:42:15 -0400
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-10-01 08:14:55 +0200
commitb14f44710652c90e4a96ece966644021c877c0e9 (patch)
tree0e0b8b10d8de19ab1ae40eef6ec45115035c0e9b
parent8027ee43373638e0773fec3532c1a13d3da95b6a (diff)
downloadguix-b14f44710652c90e4a96ece966644021c877c0e9.tar.gz
guix-b14f44710652c90e4a96ece966644021c877c0e9.zip
gnu: desmume: Update to 0.9.13.
* gnu/packages/emulators.scm (desmume): Update to 0.9.13. [source]: Switch to git-fetch. Remove patches. [build-system]: Switch to meson-build-system. [arguments]<#:configure-flags>: Replace “--enable-openal” with “-Dopenal=true”. Remove “--enable-wifi”. Add “-Dfrontend-cli=true”, “-Dfrontend-gtk=true”, and “-Dgdb-stub=true”. <#:phases>: Add ‘chdir’. [native-inputs]: Add glib:bin and gettext-minimal. [inputs]: Replace sdl with sdl2 and gtk+-2 with gtk+. Remove glu. Add agg, alsa-lib, libpcap, openal, and soundtouch. [home-page]: Use HTTPS. * gnu/packages/patches/desmume-gcc6-fixes.patch: Removed file. * gnu/packages/patches/desmume-gcc7-fixes.patch: Likewise. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/emulators.scm55
-rw-r--r--gnu/packages/patches/desmume-gcc6-fixes.patch59
-rw-r--r--gnu/packages/patches/desmume-gcc7-fixes.patch18
4 files changed, 34 insertions, 100 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 7c208b9c0d..9d7b269272 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1066,8 +1066,6 @@ dist_patch_DATA = \
%D%/packages/patches/debops-constants-for-external-program-names.patch \
%D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
%D%/packages/patches/dee-vapi.patch \
- %D%/packages/patches/desmume-gcc6-fixes.patch \
- %D%/packages/patches/desmume-gcc7-fixes.patch \
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
%D%/packages/patches/diffutils-fix-signal-processing.patch \
%D%/packages/patches/directfb-davinci-glibc-228-compat.patch \
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index c5932a057c..0cb947c58a 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -19,6 +19,7 @@
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2023 c4droid <c4droid@foxmail.com>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
+;;; Copyright © 2023 Hendursaga <hendursaga@aol.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -46,6 +47,7 @@
#:use-module (guix hg-download)
#:use-module (guix utils)
#:use-module (gnu packages)
+ #:use-module (gnu packages admin)
#:use-module (gnu packages algebra)
#:use-module (gnu packages assembly)
#:use-module (gnu packages audio)
@@ -219,28 +221,39 @@ console.")
(define-public desmume
(package
(name "desmume")
- (version "0.9.11")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "mirror://sourceforge/desmume/desmume/"
- version "/desmume-" version ".tar.gz"))
- (sha256
- (base32
- "15l8wdw3q61fniy3h93d84dnm6s4pyadvh95a0j6d580rjk4pcrs"))
- (patches (search-patches "desmume-gcc6-fixes.patch"
- "desmume-gcc7-fixes.patch"))))
- (build-system gnu-build-system)
+ (version "0.9.13")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/TASEmulators/desmume")
+ (commit (string-append "release_"
+ (string-replace-substring version
+ "." "_")))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1ylxv0gjcxwj6dgwly2fjhyr0wrs5yazkim9nvqb8p72mxfwls5y"))))
+ (build-system meson-build-system)
(arguments
- ;; Enable support for WiFi and microphone.
- `(#:configure-flags '("--enable-wifi"
- "--enable-openal")))
- (native-inputs
- (list pkg-config intltool))
- (inputs
- (list zlib sdl glib gtk+-2 glu))
- (home-page "http://desmume.org/")
+ (list #:configure-flags #~(list "-Dfrontend-cli=true"
+ "-Dfrontend-gtk=true"
+ "-Dgdb-stub=true"
+ "-Dopenal=true")
+ #:phases #~(modify-phases %standard-phases
+ ;; meson.build is in a subdirectory.
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "desmume/src/frontend/posix"))))))
+ (native-inputs (list `(,glib "bin") gettext-minimal intltool pkg-config))
+ (inputs (list agg
+ alsa-lib
+ gtk+
+ libpcap
+ openal
+ sdl2
+ soundtouch
+ zlib))
+ (home-page "https://desmume.org/")
(synopsis "Nintendo DS emulator")
(description
"DeSmuME is an emulator for the Nintendo DS handheld gaming console.")
diff --git a/gnu/packages/patches/desmume-gcc6-fixes.patch b/gnu/packages/patches/desmume-gcc6-fixes.patch
deleted file mode 100644
index 6eb9576f64..0000000000
--- a/gnu/packages/patches/desmume-gcc6-fixes.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From: zeromus
-Origin: upstream, https://sourceforge.net/p/desmume/code/5514, https://sourceforge.net/p/desmume/code/5517, https://sourceforge.net/p/desmume/code/5430
-Subject: fix GCC6 issues
-Bug: https://sourceforge.net/p/desmume/bugs/1570/
-Bug-Debian: http://bugs.debian.org/811691
-
-Index: desmume/src/MMU_timing.h
-===================================================================
---- desmume/src/MMU_timing.h (revision 5513)
-+++ desmume/src/MMU_timing.h (revision 5517)
-@@ -155,8 +155,8 @@
- enum { ASSOCIATIVITY = 1 << ASSOCIATIVESHIFT };
- enum { BLOCKSIZE = 1 << BLOCKSIZESHIFT };
- enum { TAGSHIFT = SIZESHIFT - ASSOCIATIVESHIFT };
-- enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
-- enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << BLOCKSIZESHIFT) };
-+ enum { TAGMASK = (u32)(~0U << TAGSHIFT) };
-+ enum { BLOCKMASK = ((u32)~0U >> (32 - TAGSHIFT)) & (u32)(~0U << BLOCKSIZESHIFT) };
- enum { WORDSIZE = sizeof(u32) };
- enum { WORDSPERBLOCK = (1 << BLOCKSIZESHIFT) / WORDSIZE };
- enum { DATAPERWORD = WORDSIZE * ASSOCIATIVITY };
-Index: desmume/src/ctrlssdl.cpp
-===================================================================
---- desmume/src/ctrlssdl.cpp (revision 5513)
-+++ desmume/src/ctrlssdl.cpp (revision 5517)
-@@ -200,7 +200,7 @@
- break;
- case SDL_JOYAXISMOTION:
- /* Dead zone of 50% */
-- if( (abs(event.jaxis.value) >> 14) != 0 )
-+ if( ((u32)abs(event.jaxis.value) >> 14) != 0 )
- {
- key = ((event.jaxis.which & 15) << 12) | JOY_AXIS << 8 | ((event.jaxis.axis & 127) << 1);
- if (event.jaxis.value > 0) {
-@@ -370,7 +370,7 @@
- Note: button constants have a 1bit offset. */
- case SDL_JOYAXISMOTION:
- key_code = ((event->jaxis.which & 15) << 12) | JOY_AXIS << 8 | ((event->jaxis.axis & 127) << 1);
-- if( (abs(event->jaxis.value) >> 14) != 0 )
-+ if( ((u32)abs(event->jaxis.value) >> 14) != 0 )
- {
- if (event->jaxis.value > 0)
- key_code |= 1;
-Index: desmume/src/wifi.cpp
-===================================================================
---- desmume/src/wifi.cpp (revision 5429)
-+++ desmume/src/wifi.cpp (revision 5430)
-@@ -320,9 +320,9 @@
-
- #if (WIFI_LOGGING_LEVEL >= 1)
- #if WIFI_LOG_USE_LOGC
-- #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: "__VA_ARGS__);
-+ #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: " __VA_ARGS__);
- #else
-- #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) printf("WIFI: "__VA_ARGS__);
-+ #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) printf("WIFI: " __VA_ARGS__);
- #endif
- #else
- #define WIFI_LOG(level, ...) {}
diff --git a/gnu/packages/patches/desmume-gcc7-fixes.patch b/gnu/packages/patches/desmume-gcc7-fixes.patch
deleted file mode 100644
index a4934ff6e6..0000000000
--- a/gnu/packages/patches/desmume-gcc7-fixes.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-From e1f7039f1b06add4fb75b2f8774000b8f05574af Mon Sep 17 00:00:00 2001
-From: rogerman <rogerman@users.sf.net>
-Date: Mon, 17 Aug 2015 21:15:04 +0000
-Subject: Fix bug with libfat string handling.
-
-diff --git a/src/utils/libfat/directory.cpp b/src/utils/libfat/directory.cpp
-index 765d7ae5..b6d7f01f 100644
---- a/src/utils/libfat/directory.cpp
-+++ b/src/utils/libfat/directory.cpp
-@@ -139,7 +139,7 @@ static size_t _FAT_directory_mbstoucs2 (ucs2_t* dst, const char* src, size_t len
- int bytes;
- size_t count = 0;
-
-- while (count < len-1 && src != '\0') {
-+ while (count < len-1 && *src != '\0') {
- bytes = mbrtowc (&tempChar, src, MB_CUR_MAX, &ps);
- if (bytes > 0) {
- *dst = (ucs2_t)tempChar;