Package: guix-patches;
Reported by: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Date: Tue, 25 Feb 2025 10:28:02 UTC
Severity: normal
Tags: patch
View this message in rfc822 format
From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr> To: 76545 <at> debbugs.gnu.org Cc: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>, Adam Faiz <adam.faiz <at> disroot.org>, Liliana Marie Prikler <liliana.prikler <at> gmail.com>, 宋文武 <iyzsong <at> envs.net> Subject: [bug#76545] [PATCH] gnu: mame: Update to 0.274. Date: Tue, 25 Feb 2025 11:26:43 +0100
* gnu/packages/emulators.scm (mame): Update to 0.274. [source]: Add modules for CUT and SCANDIR. Preserve the minimum set of third-party libraries. [arguments]<#:make-flags>: Remove unnecessary flags. <#:phases>: Add a phase to use all possible system libraries instead of listing them piece wise. [native-inputs]: Add NASM. [inputs]: Replace LUA with LUA-5.4. Change-Id: I650a008461d69e5a39ba6a12e7140aa785dc0298 --- gnu/packages/emulators.scm | 71 ++++++++++++++++++++++++++++---------- 1 file changed, 52 insertions(+), 19 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 0eafc3df9e..7a38700ac1 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015, 2018, 2023 David Thompson <dthompson2 <at> worcester.edu> ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837 <at> gmail.com> ;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim <at> flashner.co.il> -;;; Copyright © 2017-2024 Nicolas Goaziou <mail <at> nicolasgoaziou.fr> +;;; Copyright © 2017-2025 Nicolas Goaziou <mail <at> nicolasgoaziou.fr> ;;; Copyright © 2017, 2020, 2021 Tobias Geerinckx-Rice <me <at> tobias.gr> ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling <at> mykolab.com> ;;; Copyright © 2019 Pierre Neidhardt <mail <at> ambrevar.xyz> @@ -3034,7 +3034,7 @@ (define-public libticalcs2 (define-public mame (package (name "mame") - (version "0.252") + (version "0.274") (source (origin (method git-fetch) @@ -3043,33 +3043,65 @@ (define-public mame (commit (apply string-append "mame" (string-split version #\.))))) (file-name (git-file-name name version)) (sha256 - (base32 "07qhcm1v47sy2wj30nx3cbhvcbgki0cl83gabr0miiw60fhgyn6j")) - (modules '((guix build utils))) + (base32 "0xkj5xvnv8fl54k1nnr738jpsxkxmpsxak60ins3bjzcxl3az4by")) + (modules '((ice-9 ftw) + (srfi srfi-26) + (guix build utils))) (snippet - ;; Remove bundled libraries. - '(begin - (with-directory-excursion "3rdparty" - (for-each delete-file-recursively - '("asio" "expat" "glm" "libflac" "libjpeg" "lua" - "portaudio" "portmidi" "pugixml" "rapidjson" "SDL2" - "SDL2-override" "sqlite3" "utf8proc" "zlib"))))))) + ;; Remove most bundled libraries. + ;; + ;; XXX: Some of the preserved the libraries below ship with Guix, but + ;; may prove difficult to un-bundle. + #~(with-directory-excursion "3rdparty" + (let ((keep (list "." ".." + "asmjit" + "bgfx" + "bimg" + "bx" + "genie" + "linenoise" + "lsqlite3" + "lua-linenoise" + "lua-zlib" + "luafilesystem" + "lzma" + "minimp3" + "nanosvg" + "softfloat" + "softfloat3" + "sol2" + "wdlfft" + "ymfm"))) + (for-each delete-file-recursively + (scandir "." (negate (cut member <> keep))))))))) (build-system gnu-build-system) (arguments (list #:make-flags - #~(cons* + #~(list ;; A 'strict-overflow' error pops up on i686 so disable '-Werror'. "NOWERROR=1" (string-append "QT_HOME=" #$(this-package-input "qtbase")) - (string-append "SDL_INI_PATH=" #$output "/share/mame/ini") - (map (lambda (lib) - (string-append "USE_SYSTEM_LIB_" (string-upcase lib) "=1")) - '("asio" "expat" "flac" "glm" "jpeg" "lua" "portaudio" "portmidi" - "pugixml" "rapidjson" "sqlite3" "utf8proc" "zlib"))) + (string-append "SDL_INI_PATH=" #$output "/share/mame/ini")) #:tests? #f ;no test in regular release #:phases #~(modify-phases %standard-phases + ;; (add-after 'unpack 'fix-sol2-build-error + ;; ;; Fix "error: operator '!=' has no left operand" because + ;; ;; LUA_COMPAT_BITLIB is empty. + ;; (lambda _ + ;; (substitute* "3rdparty/sol2/sol/sol.hpp" + ;; (("&& \\(LUA_COMPAT_BITLIB != 0\\)") "")))) (delete 'configure) + (add-before 'build 'use-system-libraries + (lambda _ + (substitute* "makefile" + (("# +(USE_SYSTEM_LIB)" _ option) option)))) + (add-before 'build 'use-c++-lua + (lambda _ + (substitute* (list "scripts/src/main.lua" + "scripts/src/3rdparty.lua") + (("ext_lib\\(\"lua\"\\)") "ext_lib(\"lua++\")")))) (add-after 'build 'build-documentation (lambda _ (invoke "make" "-C" "docs" "man" "info"))) (replace 'install @@ -3172,7 +3204,8 @@ (define-public mame Keywords=Game;Emulator;Arcade;~%" executable))))))))) (native-inputs - (list pkg-config + (list nasm + pkg-config python-sphinx python-sphinxcontrib-svg2pdfconverter texinfo)) @@ -3186,7 +3219,7 @@ (define-public mame libjpeg-turbo libxi libxinerama - lua + lua-5.4 portaudio portmidi pugixml base-commit: 075fe3083b5838463f2cef26e2fc0d1b2c87e310 -- 2.48.1
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.