diff options
Diffstat (limited to 'pkgs/os-specific/linux/busybox/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/busybox/default.nix | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/pkgs/os-specific/linux/busybox/default.nix b/pkgs/os-specific/linux/busybox/default.nix index 4956f13950dd..e1ea8fa8fdd2 100644 --- a/pkgs/os-specific/linux/busybox/default.nix +++ b/pkgs/os-specific/linux/busybox/default.nix @@ -1,8 +1,9 @@ -{ stdenv, lib, fetchurl, glibc, musl +{ stdenv, lib, buildPackages, fetchurl , enableStatic ? false , enableMinimal ? false -, useMusl ? false +, useMusl ? false, musl , extraConfig ? "" +, buildPlatform, hostPlatform }: let @@ -71,20 +72,16 @@ stdenv.mkDerivation rec { ''; postConfigure = lib.optionalString useMusl '' - makeFlagsArray+=("CC=gcc -isystem ${musl}/include -B${musl}/lib -L${musl}/lib") + makeFlagsArray+=("CC=${stdenv.cc.prefix}gcc -isystem ${musl}/include -B${musl}/lib -L${musl}/lib") ''; - buildInputs = lib.optionals (enableStatic && !useMusl) [ stdenv.cc.libc stdenv.cc.libc.static ]; + nativeBuildInputs = lib.optional (hostPlatform != buildPlatform) buildPackages.stdenv.cc; - crossAttrs = { - extraCrossConfig = '' - CONFIG_CROSS_COMPILER_PREFIX "${stdenv.cross.config}-" - ''; + buildInputs = lib.optionals (enableStatic && !useMusl) [ stdenv.cc.libc stdenv.cc.libc.static ]; - postConfigure = stdenv.lib.optionalString useMusl '' - makeFlagsArray+=("CC=$crossConfig-gcc -isystem ${musl.crossDrv}/include -B${musl.crossDrv}/lib -L${musl.crossDrv}/lib") - ''; - }; + extraCrossConfig = if hostPlatform == buildPlatform then null else '' + CONFIG_CROSS_COMPILER_PREFIX "${stdenv.cc.prefix}" + ''; enableParallelBuilding = true; |