diff options
Diffstat (limited to 'gnu/packages/emulators.scm')
-rw-r--r-- | gnu/packages/emulators.scm | 169 |
1 files changed, 89 insertions, 80 deletions
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 9f64863e9b..7c8202dd71 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -147,7 +147,6 @@ (build-system cmake-build-system) (arguments (list #:tests? #f ; No tests - #:cmake cmake-next ; Requires cmake >= 3.28 #:configure-flags #~(list "-DARES_BUILD_LOCAL=FALSE" "-DARES_BUILD_OFFICIAL=TRUE" @@ -491,6 +490,9 @@ It aims to support Nintendo DSi and 3DS as well.") (build-system cmake-build-system) (arguments (list + #:modules '((guix build cmake-build-system) + ((guix build gnu-build-system) #:prefix gnu:) + (guix build utils)) #:phases #~(modify-phases %standard-phases (add-before 'configure 'generate-fonts&hardcode-libvulkan-path @@ -512,6 +514,10 @@ It aims to support Nintendo DSi and 3DS as well.") (("\"vulkan\", 1") (string-append "\"vulkan\"")) (("\"vulkan\"") (string-append "\"" libvulkan "\"")) (("Common::DynamicLibrary::GetVersionedFilename") ""))))) + (replace 'check + (lambda* (#:rest args) + (apply (assoc-ref gnu:%standard-phases 'check) + #:test-target "unittests" args))) (add-before 'install 'build-codeloader.bin (lambda _ (with-directory-excursion "../source/docs" @@ -537,8 +543,7 @@ It aims to support Nintendo DSi and 3DS as well.") (rename-file "dsp_coef.bin" "Data/Sys/GC/dsp_coef.bin"))))) #:configure-flags #~(list "-DUSE_DISCORD_PRESENCE=OFF" ;avoid bundled discord-rpc lib - "-DDSPTOOL=ON") - #:test-target "unittests")) + "-DDSPTOOL=ON"))) (native-inputs (list (cross-gcc "powerpc-linux-gnu") gettext-minimal @@ -868,39 +873,44 @@ emulate a serial nullmodem over TCP/IP.") "1fal7a8y5g0rqqjrk795jh1l50ihz01ppjnrfjrk9vkjbd59szbp")))) (build-system qt-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (invoke "qmake" - (string-append "PREFIX=" (assoc-ref outputs "out")) - "qtmips.pro"))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (substitute* "tests/test.sh" - (("qtchooser.*") "")) - (substitute* '("tests/cpu_trap/test.sh" - "tests/registers/test.sh") - (("sub-qtmips_cli") "qtmips_cli")) - (if tests? - (invoke "tests/run-all.sh") - #t))) - (replace 'install - ;; There is no install target. - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (apps (string-append out "/share/applications")) - (icons (string-append out "/share/icons/hicolor"))) - (install-file "qtmips_gui/qtmips_gui" bin) - (install-file "qtmips_cli/qtmips_cli" bin) - (install-file "data/qtmips.desktop" apps) - (install-file "data/icons/qtmips_gui.svg" - (string-append icons "/scalable/apps")) - (install-file "data/icons/qtmips_gui.png" - (string-append icons "/48x48/apps")) - #t)))) - #:tests? #f)) ; test suite wants mips toolchain + (list + #:modules '((guix build qt-build-system) + ((guix build gnu-build-system) #:prefix gnu:) + (guix build utils)) + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (invoke "qmake" + (string-append "PREFIX=" (assoc-ref outputs "out")) + "qtmips.pro"))) + (replace 'build (assoc-ref gnu:%standard-phases 'build)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (substitute* "tests/test.sh" + (("qtchooser.*") "")) + (substitute* '("tests/cpu_trap/test.sh" + "tests/registers/test.sh") + (("sub-qtmips_cli") "qtmips_cli")) + (if tests? + (invoke "tests/run-all.sh") + #t))) + (replace 'install + ;; There is no install target. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (apps (string-append out "/share/applications")) + (icons (string-append out "/share/icons/hicolor"))) + (install-file "qtmips_gui/qtmips_gui" bin) + (install-file "qtmips_cli/qtmips_cli" bin) + (install-file "data/qtmips.desktop" apps) + (install-file "data/icons/qtmips_gui.svg" + (string-append icons "/scalable/apps")) + (install-file "data/icons/qtmips_gui.png" + (string-append icons "/48x48/apps")) + #t)))) + #:tests? #f)) ; test suite wants mips toolchain (inputs (list elfutils qtbase-5 qtwayland-5)) (home-page "https://github.com/cvut/QtMips") @@ -3561,59 +3571,58 @@ assembler, and debugger for the Intel 8085 microprocessor. (define-public pcsxr ;; No release since 2017. - (let ((commit "6484236cb0281e8040ff6c8078c87899a3407534")) + (let ((commit "666604321bf2d3dd5e5f58b534cfce41e72ad7d1") + (revision "1")) (package (name "pcsxr") - ;; Version is tagged here: https://github.com/frealgagu/PCSX-Reloaded - (version "1.9.95") + ;; From CMakeLists.txt. + (version (git-version "1.9.94" revision commit)) (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/pcsxr/PCSX-Reloaded") + (url "https://github.com/MaddTheSane/PCSX-Reloaded") (commit commit))) + (patches (search-patches "pcsxr-find-harfbuzz.patch" + "pcsxr-fix-definitions.patch")) (sha256 - (base32 - "138mayp7zi9v4l3lm5f6xxkds619w1fgg769zm8s45c84jbz7dza")) + (base32 "0lcypcawnipm02m3wnjsrm9r10llabncx78ramk7iw03a646dngj")) (file-name (git-file-name name commit)))) (build-system cmake-build-system) (arguments - `(#:tests? #f ;no "test" target - #:configure-flags - (list "-DSND_BACKEND=pulse" - "-DENABLE_CCDDA='ON'" - "-DUSE_LIBARCHIVE='ON'" - "-DUSE_LIBCDIO='ON'") - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'cd-subdir - (lambda _ (chdir "pcsxr") #t)) - (add-before 'configure 'fix-cdio-lookup - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "cmake/FindCdio.cmake" - (("/usr/include/cdio") - (search-input-directory inputs "/include/cdio"))))) - (add-after 'install 'wrap-program - (lambda* (#:key inputs outputs #:allow-other-keys) - (wrap-program (string-append (assoc-ref outputs "out") - "/bin/pcsxr") - ;; For GtkFileChooserDialog. - `("GSETTINGS_SCHEMA_DIR" = - (,(string-append (assoc-ref inputs "gtk+") - "/share/glib-2.0/schemas"))))))))) - (native-inputs - (list pkg-config intltool - `(,glib "bin"))) - (inputs - (list bash-minimal - libcdio - sdl2 - gtk+ - ffmpeg-4 - libxv - libarchive - pulseaudio)) - (home-page "https://archive.codeplex.com/?p=pcsxr") + (list + #:tests? #f ;no "test" target + #:configure-flags + #~(list "-DSND_BACKEND=pulse" + "-DENABLE_CCDDA='ON'" + "-DUSE_LIBARCHIVE='ON'" + "-DUSE_LIBCDIO='ON'" + "-DCMAKE_C_FLAGS=-Wno-incompatible-pointer-types") + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'fix-cdio-lookup + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "cmake/FindCdio.cmake" + (("/usr/include/cdio") + (search-input-directory inputs "/include/cdio"))))) + (add-after 'install 'wrap-program + (lambda* (#:key inputs #:allow-other-keys) + (wrap-program (string-append #$output "/bin/pcsxr") + ;; For GtkFileChooserDialog. + `("GSETTINGS_SCHEMA_DIR" = + (,(string-append (assoc-ref inputs "gtk+") + "/share/glib-2.0/schemas"))))))))) + (native-inputs (list pkg-config intltool + `(,glib "bin"))) + (inputs (list bash-minimal + libcdio + sdl2 + gtk+ + ffmpeg-4 + libxv + libarchive + pulseaudio)) + (home-page "https://github.com/MaddTheSane/PCSX-Reloaded") (synopsis "PlayStation emulator") (description "A PlayStation emulator based on PCSX-df Project with bugfixes and @@ -4130,7 +4139,7 @@ graphic filters. Some of its features include: (("include\\(cmake/") "include("))))) (build-system pyproject-build-system) - (native-inputs (list cmake pkg-config python-setuptools python-wheel)) + (native-inputs (list cmake-minimal pkg-config python-setuptools python-wheel)) (home-page "https://www.unicorn-engine.org") (synopsis "Generic CPU emulator framework") (description @@ -4579,7 +4588,7 @@ stack-machine, written in ANSI C. Graphical output is implemented using SDL2.") (base32 "1xahdr6bh3dw5swrc2r8kqa8ljhqlb7k2kxv5mrw5rhcmcnzcyig")))) (build-system pyproject-build-system) (native-inputs - (list cmake + (list cmake-minimal python-setuptools python-wheel)) (home-page "https://www.keystone-engine.org") |