# This is a compatibility shim with `overrideSDK`. # Note: `overrideSDK` is deprecated. It will be added to `aliases.nix` after in-tree usage has been cleaned up. { lib, stdenvNoCC, extendMkDerivationArgs, pkgsHostTarget, }: stdenv: sdkVersion: let newVersion = { inherit (stdenv.hostPlatform) darwinMinVersion darwinSdkVersion; } // (if lib.isAttrs sdkVersion then sdkVersion else { darwinSdkVersion = sdkVersion; }); inherit (newVersion) darwinMinVersion darwinSdkVersion; sdkMapping = { "11.0" = pkgsHostTarget.apple-sdk_11; "12.3" = pkgsHostTarget.apple-sdk_12; }; minVersionHook = pkgsHostTarget.darwinMinVersionHook darwinMinVersion; resolvedSdk = sdkMapping.${darwinSdkVersion} or (lib.throw '' `overrideSDK` and `darwin.apple_sdk_11_0.callPackage` are deprecated. Only the 11.0 and 12.3 SDKs are supported using them. Please use the versioned `apple-sdk` variants to use other SDK versions. See the stdenv documentation for how to use `apple-sdk`. ''); in stdenv.override (old: { mkDerivationFromStdenv = extendMkDerivationArgs old (args: { buildInputs = args.buildInputs or [ ] ++ lib.optional (stdenv.hostPlatform.darwinMinVersion != darwinMinVersion) minVersionHook ++ lib.optional (stdenv.hostPlatform.darwinSdkVersion != darwinSdkVersion) resolvedSdk; }); })