zig: move passthru into a separate file

This commit is contained in:
Tristan Ross 2025-06-06 11:21:04 -07:00
parent c850de6ddc
commit bac3beb820
No known key found for this signature in database
GPG Key ID: B09C422035669AF8
2 changed files with 44 additions and 22 deletions

View File

@ -142,28 +142,17 @@ stdenv.mkDerivation (finalAttrs: {
runHook postInstallCheck
'';
passthru = {
hook = callPackage ./hook.nix { zig = finalAttrs.finalPackage; };
bintools-unwrapped = callPackage ./bintools.nix { zig = finalAttrs.finalPackage; };
bintools = wrapBintoolsWith { bintools = finalAttrs.finalPackage.bintools-unwrapped; };
cc-unwrapped = callPackage ./cc.nix { zig = finalAttrs.finalPackage; };
cc = wrapCCWith {
cc = finalAttrs.finalPackage.cc-unwrapped;
bintools = finalAttrs.finalPackage.bintools;
extraPackages = [ ];
nixSupport.cc-cflags =
[
"-target"
"${stdenv.targetPlatform.system}-${stdenv.targetPlatform.parsed.abi.name}"
]
++ lib.optional (
stdenv.targetPlatform.isLinux && !(stdenv.targetPlatform.isStatic or false)
) "-Wl,-dynamic-linker=${targetPackages.stdenv.cc.bintools.dynamicLinker}";
};
stdenv = overrideCC stdenv finalAttrs.finalPackage.cc;
passthru = import ./passthru.nix {
inherit
lib
stdenv
callPackage
wrapCCWith
wrapBintoolsWith
overrideCC
targetPackages
;
zig = finalAttrs.finalPackage;
};
meta = {

View File

@ -0,0 +1,33 @@
{
lib,
stdenv,
zig,
callPackage,
wrapCCWith,
wrapBintoolsWith,
overrideCC,
targetPackages,
}:
{
hook = callPackage ./hook.nix { inherit zig; };
bintools-unwrapped = callPackage ./bintools.nix { inherit zig; };
bintools = wrapBintoolsWith { bintools = zig.bintools-unwrapped; };
cc-unwrapped = callPackage ./cc.nix { inherit zig; };
cc = wrapCCWith {
cc = zig.cc-unwrapped;
bintools = zig.bintools;
extraPackages = [ ];
nixSupport.cc-cflags =
[
"-target"
"${stdenv.targetPlatform.system}-${stdenv.targetPlatform.parsed.abi.name}"
]
++ lib.optional (
stdenv.targetPlatform.isLinux && !(stdenv.targetPlatform.isStatic or false)
) "-Wl,-dynamic-linker=${targetPackages.stdenv.cc.bintools.dynamicLinker}";
};
stdenv = overrideCC stdenv zig.cc;
}