Merge branch 'master' into staging-next

This commit is contained in:
Jan Tojnar
2021-03-18 13:35:59 +01:00
206 changed files with 3936 additions and 1371 deletions

View File

@@ -1,4 +1,4 @@
{ lib, stdenv, binutils-unwrapped, cctools, llvm }:
{ lib, stdenv, makeWrapper, binutils-unwrapped, cctools, llvm, clang-unwrapped }:
# Make sure both underlying packages claim to have prepended their binaries
# with the same targetPrefix.
@@ -49,8 +49,19 @@ stdenv.mkDerivation {
ln -sv "$path" "$dest_path"
done
done
''
# On aarch64-darwin we must use clang, because "as" from cctools just doesn't
# handle the arch. Proxying calls to clang produces quite a bit of warnings,
# and using clang directly here is a better option than relying on cctools.
# On x86_64-darwin the Clang version is too old to support this mode.
+ lib.optionalString stdenv.isAarch64 ''
rm $out/bin/as
makeWrapper "${clang-unwrapped}/bin/clang" "$out/bin/as" \
--add-flags "-x assembler -integrated-as -c"
'';
nativeBuildInputs = lib.optionals stdenv.isAarch64 [ makeWrapper ];
passthru = {
inherit targetPrefix;
};