gnu: Add libretro-flycast.

* gnu/packages/emulators.scm
(flycast) [source]: Preserve "libzip" bundled copy.
(libretro-flycast): New variable.

Change-Id: Ie5f1ff3e51a7fb9021a8c272d529478c9c6f3d8e
This commit is contained in:
Maxim Cournoyer 2025-08-14 00:23:47 +09:00
parent bbc8792e18
commit 010c9c2ed7
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -4380,17 +4380,21 @@ on a Commodore C64, C128 etc.")
;; (("add_subdirectory\\(core/deps/Vulkan-Headers\\)")
;; "find_package(VulkanHeaders)"))
(with-directory-excursion "core/deps"
(for-each delete-file-recursively
'("SDL"
"Spout"
"Syphon"
;; TODO: Uncomment after our vulkan-headers
;; are update to 1.3.261.0 or newer.
;;"Vulkan-Headers"
"breakpad"
"discord-rpc"
"libzip"
"oboe")))))))
(for-each
delete-file-recursively
'("SDL"
"Spout"
"Syphon"
;; TODO: Uncomment after our vulkan-headers
;; are update to 1.3.261.0 or newer.
;;"Vulkan-Headers"
"breakpad"
"discord-rpc"
;; XXX: The libretro build requires the bundled
;; libzip, which it uses to produce a
;; static library.
;;"libzip"
"oboe")))))))
(build-system cmake-build-system)
(arguments
(list
@ -4432,6 +4436,13 @@ on a Commodore C64, C128 etc.")
and Atomiswave emulator derived from reicast.")
(license license:gpl2+))))
(define-public libretro-flycast
(package/inherit flycast
(name "libretro-flycast")
(arguments (substitute-keyword-arguments (package-arguments flycast)
((#:configure-flags flags)
#~(cons "-DLIBRETRO=ON" #$flags))))))
(define-public freedisksysrom
;; There is no release; use the latest commit.
(let ((commit "0d5f95f109bb3aadf2bb9510bfda13879bbd5266")