Merge pull request #51226 from Mic92/llvm-cross-targets
llvm: fix cross-compilation
This commit is contained in:
commit
7a4c81dfc8
@ -23,6 +23,18 @@ let
|
|||||||
# Used when creating a version-suffixed symlink of libLLVM.dylib
|
# Used when creating a version-suffixed symlink of libLLVM.dylib
|
||||||
shortVersion = with stdenv.lib;
|
shortVersion = with stdenv.lib;
|
||||||
concatStringsSep "." (take 1 (splitString "." release_version));
|
concatStringsSep "." (take 1 (splitString "." release_version));
|
||||||
|
|
||||||
|
llvmTarget = platform:
|
||||||
|
if platform.parsed.cpu.family == "x86" then
|
||||||
|
"X86"
|
||||||
|
else if platform.parsed.cpu.name == "aarch64" then
|
||||||
|
"AArch64"
|
||||||
|
else if platform.parsed.cpu.family == "arm" then
|
||||||
|
"ARM"
|
||||||
|
else if platform.parsed.cpu.family == "mips" then
|
||||||
|
"Mips"
|
||||||
|
else
|
||||||
|
throw "Unsupported system";
|
||||||
in stdenv.mkDerivation (rec {
|
in stdenv.mkDerivation (rec {
|
||||||
name = "llvm-${version}";
|
name = "llvm-${version}";
|
||||||
|
|
||||||
@ -78,10 +90,9 @@ in stdenv.mkDerivation (rec {
|
|||||||
"-DLLVM_BUILD_TESTS=ON"
|
"-DLLVM_BUILD_TESTS=ON"
|
||||||
"-DLLVM_ENABLE_FFI=ON"
|
"-DLLVM_ENABLE_FFI=ON"
|
||||||
"-DLLVM_ENABLE_RTTI=ON"
|
"-DLLVM_ENABLE_RTTI=ON"
|
||||||
|
|
||||||
"-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
|
"-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
|
||||||
"-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.hostPlatform.config}"
|
"-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
|
||||||
"-DTARGET_TRIPLE=${stdenv.hostPlatform.config}"
|
"-DLLVM_TARGETS_TO_BUILD=${llvmTarget stdenv.hostPlatform};${llvmTarget stdenv.targetPlatform}"
|
||||||
|
|
||||||
"-DLLVM_ENABLE_DUMP=ON"
|
"-DLLVM_ENABLE_DUMP=ON"
|
||||||
]
|
]
|
||||||
|
Loading…
Reference in New Issue
Block a user