diff options
Diffstat (limited to 'pkgs/applications/emulators')
-rw-r--r-- | pkgs/applications/emulators/wine/base.nix | 10 | ||||
-rw-r--r-- | pkgs/applications/emulators/wine/darwin-qos.patch | 12 |
2 files changed, 19 insertions, 3 deletions
diff --git a/pkgs/applications/emulators/wine/base.nix b/pkgs/applications/emulators/wine/base.nix index ed9e24a910f61..28efcf5875bfb 100644 --- a/pkgs/applications/emulators/wine/base.nix +++ b/pkgs/applications/emulators/wine/base.nix @@ -108,9 +108,13 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) { ]))); patches = [ ] - # Wine requires `MTLDevice.registryID` for `winemac.drv`, but that property is not available - # in the 10.12 SDK (current SDK on x86_64-darwin). Work around that by using selector syntax. - ++ lib.optional stdenv.isDarwin ./darwin-metal-compat.patch + ++ lib.optionals stdenv.isDarwin [ + # Wine requires `MTLDevice.registryID` for `winemac.drv`, but that property is not available + # in the 10.12 SDK (current SDK on x86_64-darwin). Work around that by using selector syntax. + ./darwin-metal-compat.patch + # Wine requires `qos.h`, which is not included by default on the 10.12 SDK in nixpkgs. + ./darwin-qos.patch + ] ++ patches'; configureFlags = prevConfigFlags diff --git a/pkgs/applications/emulators/wine/darwin-qos.patch b/pkgs/applications/emulators/wine/darwin-qos.patch new file mode 100644 index 0000000000000..e9bd813feaab0 --- /dev/null +++ b/pkgs/applications/emulators/wine/darwin-qos.patch @@ -0,0 +1,12 @@ +diff --git a/dlls/ntdll/unix/loader.c b/dlls/ntdll/unix/loader.c +index cde37c48b0d..be237bc0ad3 100644 +--- a/dlls/ntdll/unix/loader.c ++++ b/dlls/ntdll/unix/loader.c +@@ -65,6 +65,7 @@ + # undef LoadResource + # undef GetCurrentThread + # include <pthread.h> ++# include <pthread/qos.h> + # include <mach/mach.h> + # include <mach/mach_error.h> + # include <mach-o/getsect.h> |