treewide: use `addBinToPathHook`, minor cleanups (#379187)
[NixPkgs.git] / pkgs / stdenv / darwin / override-sdk.nix
blob482c11ce0cb2c1875f97a0af5d15bb8a5d2589ff
1 # This is a compatibility shim with `overrideSDK`.
2 # Note: `overrideSDK` is deprecated. It will be added to `aliases.nix` after in-tree usage has been cleaned up.
4   lib,
5   stdenvNoCC,
6   extendMkDerivationArgs,
7   pkgsHostTarget,
8 }:
10 stdenv: sdkVersion:
11 let
12   darwinSdkVersion =
13     if lib.isAttrs sdkVersion then sdkVersion.darwinSdkVersion or "11.0" else sdkVersion;
15 assert lib.assertMsg (darwinSdkVersion == "11.0" || darwinSdkVersion == "12.3") ''
16   `overrideSDK` and `darwin.apple_sdk_11_0.callPackage` are deprecated.
17   Only the 11.0 and 12.3 SDKs are supported using them. Please use
18   the versioned `apple-sdk` variants to use other SDK versions.
20   See the stdenv documentation for how to use `apple-sdk`.
21 '';
22 stdenv.override (old: {
23   mkDerivationFromStdenv = extendMkDerivationArgs old (args: {
24     buildInputs =
25       args.buildInputs or [ ]
26       ++ lib.optional (darwinSdkVersion == "12.3") pkgsHostTarget.apple-sdk_12
27       ++ lib.optional (sdkVersion ? darwinMinVersion) (
28         pkgsHostTarget.darwinMinVersionHook sdkVersion.darwinMinVersion
29       );
30   });