mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-26 21:21:57 +03:00
bintools-wrapper: Define fallback default emulation
This ensures we by-default cross-compile to the intended platform.
This commit is contained in:
parent
1cde06acf6
commit
cc44e04472
@ -164,6 +164,20 @@ stdenv.mkDerivation {
|
||||
set +u
|
||||
'';
|
||||
|
||||
emulation = let
|
||||
fmt =
|
||||
/**/ if targetPlatform.isDarwin then "mach-o"
|
||||
else if targetPlatform.isWindows then "pe"
|
||||
else "elf" + toString targetPlatform.parsed.cpu.bits;
|
||||
endianPrefix = if targetPlatform.isBigEndian then "big" else "little";
|
||||
arch =
|
||||
/**/ if targetPlatform.isAarch64 then endianPrefix + "aarch64"
|
||||
else if targetPlatform.isArm then endianPrefix + "arm"
|
||||
else if targetPlatform.isx86_64 then "x86-64"
|
||||
else if targetPlatform.isi686 then "i386"
|
||||
else throw "unknown emulation for platform: " + targetPlatform.config;
|
||||
in targetPlatform.platform.bfdEmulation or (fmt + "-" + arch);
|
||||
|
||||
propagatedBuildInputs = extraPackages;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
@ -67,6 +67,11 @@ fi
|
||||
|
||||
extraAfter+=($NIX_@infixSalt@_LDFLAGS_AFTER)
|
||||
|
||||
# Specify the target emulation if nothing is passed in ("-m" overrides this
|
||||
# environment variable). Ensures we never blindly fallback on targeting the host
|
||||
# platform.
|
||||
: ${LDEMULATION:=@emulation@}
|
||||
|
||||
# Three tasks:
|
||||
#
|
||||
# 1. Find all -L... switches for rpath
|
||||
|
Loading…
Reference in New Issue
Block a user