xevd: Fix Darwin build

toonn 2b430b6f 7a14a916

+53 -8
+53 -8
pkgs/by-name/xe/xevd/package.nix
··· 19 19 hash = "sha256-Dc2V77t+DrZo9252FAL0eczrmikrseU02ob2RLBdVvU="; 20 20 }; 21 21 22 - patches = lib.optionals (!lib.versionOlder "0.5.0" finalAttrs.version) [ 23 - (fetchpatch2 { 24 - url = "https://github.com/mpeg5/xevd/commit/7eda92a6ebb622189450f7b63cfd4dcd32fd6dff.patch?full_index=1"; 25 - hash = "sha256-Ru7jGk1b+Id5x1zaiGb7YKZGTNaTcArZGYyHbJURfgs="; 26 - }) 27 - ]; 22 + patches = lib.optionals (!lib.versionOlder "0.5.0" finalAttrs.version) ( 23 + builtins.map fetchpatch2 [ 24 + # Upstream accepted patches, should be dropped on next version bump. 25 + { 26 + url = "https://github.com/mpeg5/xevd/commit/7eda92a6ebb622189450f7b63cfd4dcd32fd6dff.patch?full_index=1"; 27 + hash = "sha256-Ru7jGk1b+Id5x1zaiGb7YKZGTNaTcArZGYyHbJURfgs="; 28 + } 29 + { 30 + url = "https://github.com/mpeg5/xevd/commit/499bc0153a99f8c8fd00143dd81fc0d858a5b509.patch?full_index=1"; 31 + hash = "sha256-3ExBNTeBhj/IBweYkgWZ2ZgUypFua4oSC24XXFmjxXA="; 32 + } 33 + { 34 + url = "https://github.com/mpeg5/xevd/commit/b099623a09c09cddfe7f732fb795b2af8a020620.patch?full_index=1"; 35 + hash = "sha256-Ee/PQmsGpUCU7KUMbdGEXEEKOc8BHYcGF4mq+mmWb/w="; 36 + } 37 + { 38 + url = "https://github.com/mpeg5/xevd/commit/2e6b24bf1f946c30d789b114dfd56e91b99039fe.patch?full_index=1"; 39 + hash = "sha256-thT0kVSKwWruyhIjDFBulyUNeyG9zQ8rQtpZVmRvYxI="; 40 + } 41 + { 42 + url = "https://github.com/mpeg5/xevd/commit/c1f23a41b8def84ab006a8ce4e9221b2fff84a1a.patch?full_index=1"; 43 + hash = "sha256-MOJ9mU5txk6ISzJsQdK+TTb2dlWD8ofGZI0nfq9rsPo="; 44 + } 45 + { 46 + url = "https://github.com/mpeg5/xevd/commit/adf1c45d6edb0d235997a40261689d7454b711c5.patch?full_index=1"; 47 + hash = "sha256-tGIPaswx9S1Oy8QF928RzV/AHr710kYxXfMRYg6SLR4="; 48 + } 49 + ] 50 + ); 28 51 29 52 postPatch = '' 30 53 echo v$version > version.txt ··· 32 55 33 56 nativeBuildInputs = [ cmake ]; 34 57 58 + cmakeFlags = 59 + let 60 + inherit (lib) cmakeBool cmakeFeature optional; 61 + inherit (stdenv.hostPlatform) isAarch64 isDarwin; 62 + in 63 + optional isAarch64 (cmakeBool "ARM" true) 64 + ++ optional isDarwin (cmakeFeature "CMAKE_SYSTEM_NAME" "Darwin"); 65 + 66 + env.NIX_CFLAGS_COMPILE = builtins.toString ( 67 + builtins.map (w: "-Wno-" + w) ( 68 + [ 69 + # Evaluate on version bump whether still necessary. 70 + "sometimes-uninitialized" 71 + "unknown-warning-option" 72 + ] 73 + ++ ( 74 + # Fixed upstream in 325fd9f94f3fdf0231fa931a31ebb72e63dc3498 but might 75 + # change behavior, therefore opted to leave it out for now. 76 + lib.optional (!lib.versionOlder "0.5.0" finalAttrs.version) "for-loop-analysis" 77 + ) 78 + ) 79 + ); 80 + 35 81 postInstall = '' 36 82 ln $dev/include/xevd/* $dev/include/ 37 83 ''; ··· 53 99 pkgConfigModules = [ "xevd" ]; 54 100 maintainers = with lib.maintainers; [ jopejoe1 ]; 55 101 platforms = lib.platforms.all; 56 - # Currently only supports gcc and msvc as compiler, the limitation for clang gets removed in the next release, but that does not fix building on darwin. 57 - broken = !stdenv.hostPlatform.isx86 || !stdenv.cc.isGNU; 102 + broken = stdenv.isLinux && stdenv.isAarch64; 58 103 }; 59 104 })