uboot: add Darwin build support (#426826)

This commit is contained in:
Connor Baker
2025-07-20 19:52:57 -07:00
committed by GitHub
+22 -17
View File
@@ -29,6 +29,7 @@
armTrustedFirmwareS905,
opensbi,
buildPackages,
darwin,
}@pkgs:
let
@@ -82,22 +83,25 @@ let
patchShebangs scripts
'';
nativeBuildInputs = [
ncurses # tools/kwboot
bc
bison
flex
installShellFiles
(buildPackages.python3.withPackages (p: [
p.libfdt
p.setuptools # for pkg_resources
p.pyelftools
]))
swig
which # for scripts/dtc-version.sh
perl # for oid build (secureboot)
] ++ lib.optionals (!crossTools) toolsDeps;
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs =
[
ncurses # tools/kwboot
bc
bison
flex
installShellFiles
(buildPackages.python3.withPackages (p: [
p.libfdt
p.setuptools # for pkg_resources
p.pyelftools
]))
swig
which # for scripts/dtc-version.sh
perl # for oid build (secureboot)
]
++ lib.optionals (!crossTools) toolsDeps
++ lib.optionals stdenv.buildPlatform.isDarwin [ darwin.DarwinTools ]; # sw_vers command is needed on darwin
depsBuildBuild = [ buildPackages.gccStdenv.cc ]; # gccStdenv is needed for Darwin buildPlatform
buildInputs = lib.optionals crossTools toolsDeps;
hardeningDisable = [ "all" ];
@@ -107,6 +111,7 @@ let
makeFlags = [
"DTC=${lib.getExe buildPackages.dtc}"
"CROSS_COMPILE=${stdenv.cc.targetPrefix}"
"HOSTCFLAGS=-fcommon"
] ++ extraMakeFlags;
passAsFile = [ "extraConfig" ];
@@ -114,7 +119,7 @@ let
configurePhase = ''
runHook preConfigure
make ${defconfig}
make -j$NIX_BUILD_CORES ${defconfig}
cat $extraConfigPath >> .config