cross-stdenv: Inline useless bindings and reindent
Semantics should be unchanged
This commit is contained in:
parent
09401d44eb
commit
1c0365bd88
@ -56,21 +56,18 @@ rec {
|
|||||||
|
|
||||||
# Return a modified stdenv that adds a cross compiler to the
|
# Return a modified stdenv that adds a cross compiler to the
|
||||||
# builds.
|
# builds.
|
||||||
makeStdenvCross = stdenv: cross: binutilsCross: gccCross: stdenv //
|
makeStdenvCross = stdenv: cross: binutilsCross: gccCross: stdenv // {
|
||||||
{ mkDerivation = {name ? "", buildInputs ? [], nativeBuildInputs ? [],
|
|
||||||
propagatedBuildInputs ? [], propagatedNativeBuildInputs ? [],
|
|
||||||
selfNativeBuildInput ? false, ...}@args: let
|
|
||||||
|
|
||||||
|
mkDerivation =
|
||||||
|
{ name ? "", buildInputs ? [], nativeBuildInputs ? []
|
||||||
|
, propagatedBuildInputs ? [], propagatedNativeBuildInputs ? []
|
||||||
|
, selfNativeBuildInput ? false, ...
|
||||||
|
} @ args:
|
||||||
|
|
||||||
|
let
|
||||||
# *BuildInputs exists temporarily as another name for
|
# *BuildInputs exists temporarily as another name for
|
||||||
# *HostInputs.
|
# *HostInputs.
|
||||||
|
|
||||||
# In nixpkgs, sometimes 'null' gets in as a buildInputs element,
|
|
||||||
# and we handle that through isAttrs.
|
|
||||||
nativeBuildInputsDrvs = nativeBuildInputs;
|
|
||||||
buildInputsDrvs = buildInputs;
|
|
||||||
propagatedBuildInputsDrvs = propagatedBuildInputs;
|
|
||||||
propagatedNativeBuildInputsDrvs = propagatedNativeBuildInputs;
|
|
||||||
|
|
||||||
# The base stdenv already knows that nativeBuildInputs and
|
# The base stdenv already knows that nativeBuildInputs and
|
||||||
# buildInputs should be built with the usual gcc-wrapper
|
# buildInputs should be built with the usual gcc-wrapper
|
||||||
# And the same for propagatedBuildInputs.
|
# And the same for propagatedBuildInputs.
|
||||||
@ -85,10 +82,10 @@ rec {
|
|||||||
buildInputsNotNull = stdenv.lib.filter
|
buildInputsNotNull = stdenv.lib.filter
|
||||||
(drv: builtins.isAttrs drv && drv ? nativeDrv) buildInputs;
|
(drv: builtins.isAttrs drv && drv ? nativeDrv) buildInputs;
|
||||||
nativeInputsFromBuildInputs = stdenv.lib.filter hostAsNativeDrv buildInputsNotNull;
|
nativeInputsFromBuildInputs = stdenv.lib.filter hostAsNativeDrv buildInputsNotNull;
|
||||||
|
in
|
||||||
in stdenv.mkDerivation (args // {
|
stdenv.mkDerivation (args // {
|
||||||
name = name + "-" + cross.config;
|
name = name + "-" + cross.config;
|
||||||
nativeBuildInputs = nativeBuildInputsDrvs
|
nativeBuildInputs = nativeBuildInputs
|
||||||
++ nativeInputsFromBuildInputs
|
++ nativeInputsFromBuildInputs
|
||||||
++ [ gccCross binutilsCross ]
|
++ [ gccCross binutilsCross ]
|
||||||
++ stdenv.lib.optional selfNativeBuildInput nativeDrv
|
++ stdenv.lib.optional selfNativeBuildInput nativeDrv
|
||||||
@ -102,14 +99,15 @@ rec {
|
|||||||
# any library needed to link the program dynamically at
|
# any library needed to link the program dynamically at
|
||||||
# loader time. ld(1) explains it.
|
# loader time. ld(1) explains it.
|
||||||
buildInputs = [];
|
buildInputs = [];
|
||||||
propagatedBuildInputs = propagatedBuildInputsDrvs ++ buildInputsDrvs;
|
propagatedBuildInputs = propagatedBuildInputs ++ buildInputs;
|
||||||
propagatedNativeBuildInputs = propagatedNativeBuildInputsDrvs;
|
propagatedNativeBuildInputs = propagatedNativeBuildInputs;
|
||||||
|
|
||||||
crossConfig = cross.config;
|
crossConfig = cross.config;
|
||||||
} // args.crossAttrs or {});
|
} // args.crossAttrs or {});
|
||||||
} // {
|
|
||||||
inherit gccCross binutilsCross;
|
inherit gccCross binutilsCross;
|
||||||
ccCross = gccCross;
|
ccCross = gccCross;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user