about summary refs log tree commit diff
path: root/pkgs/applications/emulators
diff options
context:
space:
mode:
authorWeijia Wang <9713184+wegank@users.noreply.github.com>2024-06-12 00:15:33 +0200
committerGitHub <noreply@github.com>2024-06-12 00:15:33 +0200
commitaead7eae284b534c886c2d9190ebb6528c8f18f7 (patch)
tree6d402448335749743a1eb8717b829573487792d1 /pkgs/applications/emulators
parentf69aabc50acc9f4ddf5cbeff209e013d6547013c (diff)
parentd0f6f51cb8f03b939ab2587b44524b2bcceb63ba (diff)
Merge pull request #307975 from SuperSamus/dolphin-emu-update
dolphin-emu: 5.0-21088 -> 5.0-21460
Diffstat (limited to 'pkgs/applications/emulators')
-rw-r--r--pkgs/applications/emulators/dolphin-emu/default.nix45
-rw-r--r--pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch8
2 files changed, 20 insertions, 33 deletions
diff --git a/pkgs/applications/emulators/dolphin-emu/default.nix b/pkgs/applications/emulators/dolphin-emu/default.nix
index 568f43d3564cc..c9f1e1572ab13 100644
--- a/pkgs/applications/emulators/dolphin-emu/default.nix
+++ b/pkgs/applications/emulators/dolphin-emu/default.nix
@@ -1,7 +1,6 @@
 { lib
 , stdenv
 , fetchFromGitHub
-, fetchpatch
 , cmake
 , pkg-config
 , wrapQtAppsHook
@@ -59,45 +58,30 @@
 
 stdenv.mkDerivation rec {
   pname = "dolphin-emu";
-  version = "5.0-21088";
+  version = "5.0-21460";
 
   src = fetchFromGitHub {
     owner = "dolphin-emu";
     repo = "dolphin";
-    rev = "9240f579eab18a2f67eef23846a6b508393d0e6c";
-    hash = "sha256-lOiDbEQZoi9Bsiyta/w+B1VXNNW4qST2cBZekqo5dDA=";
+    rev = "a9544510468740b77cf06ef28daaa65fe247fd32";
+    hash = "sha256-mhD7Uaqi8GzHdR7Y81TspvCnrZH2evWuWFgXMQ2c8g0=";
     fetchSubmodules = true;
   };
 
   patches = [
-    # Remove when merged https://github.com/dolphin-emu/dolphin/pull/12070
+    # TODO: Remove when merged https://github.com/dolphin-emu/dolphin/pull/12736
     ./find-minizip-ng.patch
-
-    # fix buidl w/ glibc-2.39
-    (fetchpatch {
-      url = "https://github.com/dolphin-emu/dolphin/commit/3da2e15e6b95f02f66df461e87c8b896e450fdab.patch";
-      hash = "sha256-+8yGF412wQUYbyEuYWd41pgOgEbhCaezexxcI5CNehc=";
-    })
   ];
 
   strictDeps = true;
 
   nativeBuildInputs = [
-    stdenv.cc
     cmake
     pkg-config
     wrapQtAppsHook
   ];
 
-  buildInputs = lib.optionals stdenv.isDarwin [
-    CoreBluetooth
-    ForceFeedback
-    IOBluetooth
-    IOKit
-    moltenvk
-    OpenGL
-    VideoToolbox
-  ] ++ [
+  buildInputs = [
     bzip2
     cubeb
     curl
@@ -123,7 +107,9 @@ stdenv.mkDerivation rec {
     SDL2
     sfml
     xxHash
-    xz # LibLZMA
+    xz
+    # Causes linker errors with minizip-ng, prefer vendored. Possible reason why: https://github.com/dolphin-emu/dolphin/pull/12070#issuecomment-1677311838
+    #zlib-ng
   ] ++ lib.optionals stdenv.isLinux [
     alsa-lib
     bluez
@@ -135,6 +121,14 @@ stdenv.mkDerivation rec {
     #mgba # Derivation doesn't support Darwin
     udev
     vulkan-loader
+  ] ++ lib.optionals stdenv.isDarwin [
+    CoreBluetooth
+    ForceFeedback
+    IOBluetooth
+    IOKit
+    moltenvk
+    OpenGL
+    VideoToolbox
   ];
 
   cmakeFlags = [
@@ -160,13 +154,6 @@ stdenv.mkDerivation rec {
     "--set QT_QPA_PLATFORM xcb"
   ];
 
-  # Use nix-provided libraries instead of submodules
-  postPatch = lib.optionalString stdenv.isDarwin ''
-    substituteInPlace CMakeLists.txt \
-      --replace "if(NOT APPLE)" "if(true)" \
-      --replace "if(LIBUSB_FOUND AND NOT APPLE)" "if(LIBUSB_FOUND)"
-  '';
-
   postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
     install -D $src/Data/51-usb-device.rules $out/etc/udev/rules.d/51-usb-device.rules
   '' + lib.optionalString stdenv.hostPlatform.isDarwin ''
diff --git a/pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch b/pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch
index b5c64d6e713d2..b8a6d81aed554 100644
--- a/pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch
+++ b/pkgs/applications/emulators/dolphin-emu/find-minizip-ng.patch
@@ -1,11 +1,11 @@
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index ee44d04458..2fa6bd8a10 100644
+index fb37788513..289a25fa57 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -678,7 +678,7 @@ dolphin_find_optional_system_library_pkgconfig(ZSTD libzstd>=1.4.0 zstd::zstd Ex
- 
- dolphin_find_optional_system_library_pkgconfig(ZLIB zlib-ng ZLIB::ZLIB Externals/zlib-ng)
+@@ -676,7 +676,7 @@ dolphin_find_optional_system_library_pkgconfig(ZLIB zlib-ng ZLIB::ZLIB Externals
  
+ # https://github.com/zlib-ng/minizip-ng/commit/6c5f265a55f1a12a7a016cd2962feff91cff5d2e
+ add_definitions(-DMZ_COMPAT_VERSION=110)  # This macro is for forwards compatibility with 4.0.4+
 -dolphin_find_optional_system_library_pkgconfig(MINIZIP minizip>=3.0.0 minizip::minizip Externals/minizip)
 +dolphin_find_optional_system_library_pkgconfig(MINIZIP minizip-ng>=3.0.0 minizip::minizip Externals/minizip)