mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-04 21:03:15 +00:00
llvmPackages_13.libcxxabi: Align with 11 libcxxabi
LLVM 11 libcxxabi has some flags to support usage in the Darwin stdenv, in particular, `standalone` and `withLibunwind`. Darwin stdenv needs the `standalone` flag because its `hostPlatform` set doesn't have `useLLVM` set to true. And it needs `withLibunwind` to explicitly disable including `libunwind` as a build input. We also prefix `install_name_tool` in case we're cross-compiling.
This commit is contained in:
parent
d90fb1c038
commit
21df776a31
@ -1,6 +1,7 @@
|
|||||||
{ lib, stdenv, llvm_meta, cmake, python3, src, libunwind, version
|
{ lib, stdenv, llvm_meta, cmake, python3, src, libunwind, libcxx, version
|
||||||
, enableShared ? !stdenv.hostPlatform.isStatic
|
, enableShared ? !stdenv.hostPlatform.isStatic
|
||||||
, libcxx
|
, standalone ? stdenv.hostPlatform.useLLVM or false
|
||||||
|
, withLibunwind ? !stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
@ -23,12 +24,13 @@ stdenv.mkDerivation rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake python3 ];
|
nativeBuildInputs = [ cmake python3 ];
|
||||||
buildInputs = lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
|
buildInputs = lib.optional withLibunwind libunwind;
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DLIBCXXABI_LIBCXX_INCLUDES=${libcxx.dev}/include/c++/v1"
|
"-DLIBCXXABI_LIBCXX_INCLUDES=${libcxx.dev}/include/c++/v1"
|
||||||
] ++ lib.optionals (stdenv.hostPlatform.useLLVM or false) [
|
] ++ lib.optionals standalone [
|
||||||
"-DLLVM_ENABLE_LIBCXX=ON"
|
"-DLLVM_ENABLE_LIBCXX=ON"
|
||||||
|
] ++ lib.optionals (standalone && withLibunwind) [
|
||||||
"-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
|
"-DLIBCXXABI_USE_LLVM_UNWINDER=ON"
|
||||||
] ++ lib.optionals stdenv.hostPlatform.isWasm [
|
] ++ lib.optionals stdenv.hostPlatform.isWasm [
|
||||||
"-DLIBCXXABI_ENABLE_THREADS=OFF"
|
"-DLIBCXXABI_ENABLE_THREADS=OFF"
|
||||||
|
Loading…
Reference in New Issue
Block a user