diff --git a/pkgs/by-name/dx/dxvk_1/gcc14-compat.patch b/pkgs/by-name/dx/dxvk_1/gcc14-compat.patch new file mode 100644 index 000000000000..917f437fdcc3 --- /dev/null +++ b/pkgs/by-name/dx/dxvk_1/gcc14-compat.patch @@ -0,0 +1,14 @@ +diff --git a/src/d3d10/d3d10_interfaces.h b/src/d3d10/d3d10_interfaces.h +index aa028ab575..99f1dc4567 100644 +--- a/src/d3d10/d3d10_interfaces.h ++++ b/src/d3d10/d3d10_interfaces.h +@@ -1,9 +1,3 @@ + #pragma once + + #include "d3d10_include.h" +- +-#ifdef _MSC_VER +-struct __declspec(uuid("0803425a-57f5-4dd6-9465-a87570834a08")) ID3D10StateBlock; +-#else +-__CRT_UUID_DECL(ID3D10StateBlock, 0x0803425a,0x57f5,0x4dd6,0x94,0x65,0xa8,0x75,0x70,0x83,0x4a,0x08); +-#endif diff --git a/pkgs/by-name/dx/dxvk_1/package.nix b/pkgs/by-name/dx/dxvk_1/package.nix index 6d24af612e3c..ace6746f3f2a 100644 --- a/pkgs/by-name/dx/dxvk_1/package.nix +++ b/pkgs/by-name/dx/dxvk_1/package.nix @@ -29,6 +29,8 @@ stdenv.mkDerivation (finalAttrs: { url = "https://github.com/doitsujin/dxvk/commit/1a5afc77b1859e6c7e31b55e11ece899e3b5295a.patch"; hash = "sha256-tTAsQOMAazgH/6laLNTuG2lki257VUR9EBivnD4vCuY="; }) + # Fixes errors building with GCC 14. + ./gcc14-compat.patch ] ++ lib.optionals enableMoltenVKCompat [ # Patch DXVK to work with MoltenVK even though it doesn’t support some required features.