Merge pull request #125753 from zhaofengli/riscv-libunwind
Use LLVM's libunwind on RISC-V
This commit is contained in:
commit
8bbe96ed8f
@ -38,8 +38,7 @@ stdenv.mkDerivation rec {
|
||||
description = "A portable and efficient API to determine the call-chain of a program";
|
||||
maintainers = with maintainers; [ orivej ];
|
||||
platforms = platforms.linux;
|
||||
badPlatforms = [ "riscv32-linux" "riscv64-linux" ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
|
||||
passthru.supportsHost = !stdenv.hostPlatform.isRiscV;
|
||||
}
|
||||
|
@ -1,9 +1,5 @@
|
||||
{ lib, stdenv, fetchurl, perl, libunwind, buildPackages }:
|
||||
|
||||
# libunwind does not have the supportsHost attribute on darwin, thus
|
||||
# when this package is evaluated it causes an evaluation error
|
||||
assert stdenv.isLinux;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "strace";
|
||||
version = "5.12";
|
||||
@ -16,7 +12,9 @@ stdenv.mkDerivation rec {
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
||||
nativeBuildInputs = [ perl ];
|
||||
|
||||
buildInputs = [ perl.out ] ++ lib.optional libunwind.supportsHost libunwind; # support -k
|
||||
# On RISC-V platforms, LLVM's libunwind implementation is unsupported by strace.
|
||||
# The build will silently fall back and -k will not work on RISC-V.
|
||||
buildInputs = [ perl.out libunwind ]; # support -k
|
||||
|
||||
postPatch = "patchShebangs --host strace-graph";
|
||||
|
||||
|
@ -16823,8 +16823,9 @@ in
|
||||
|
||||
libutempter = callPackage ../development/libraries/libutempter { };
|
||||
|
||||
libunwind = if stdenv.isDarwin
|
||||
then darwin.libunwind
|
||||
libunwind =
|
||||
if stdenv.isDarwin then darwin.libunwind
|
||||
else if stdenv.hostPlatform.isRiscV then llvmPackages_latest.libunwind
|
||||
else callPackage ../development/libraries/libunwind { };
|
||||
|
||||
libuv = callPackage ../development/libraries/libuv {
|
||||
|
Loading…
Reference in New Issue
Block a user