From 4317f7ab26942b4fad23f616932a1df1611bd44b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Fri, 27 Apr 2018 23:52:50 +0200 Subject: [PATCH] kcov: fix build on aarch64 Apparently, without this patch `NT_PRSTATUS` is not found. So the patch adds the include apparently necessary. `NT_PRSTATUS` is also defined in ``, which would likely have been a better name, were it not in the `linux/` directory, which is a priori not stable. The need to do that is kind of weird (the change was introduced in [1], and fedora apparently didn't need this additional import), but I'll try to upstream it. [1] https://github.com/SimonKagstrom/kcov/pull/239 --- .../tools/analysis/kcov/aarch64_nt_prstatus.patch | 12 ++++++++++++ pkgs/development/tools/analysis/kcov/default.nix | 2 ++ 2 files changed, 14 insertions(+) create mode 100644 pkgs/development/tools/analysis/kcov/aarch64_nt_prstatus.patch diff --git a/pkgs/development/tools/analysis/kcov/aarch64_nt_prstatus.patch b/pkgs/development/tools/analysis/kcov/aarch64_nt_prstatus.patch new file mode 100644 index 00000000000..d5c3662e9ab --- /dev/null +++ b/pkgs/development/tools/analysis/kcov/aarch64_nt_prstatus.patch @@ -0,0 +1,12 @@ +diff --git a/src/engines/ptrace.cc b/src/engines/ptrace.cc +index 59b615f..e02cddf 100644 +--- a/src/engines/ptrace.cc ++++ b/src/engines/ptrace.cc +@@ -21,6 +21,7 @@ + + #if defined(__aarch64__) + # include ++# include + #endif + + #include diff --git a/pkgs/development/tools/analysis/kcov/default.nix b/pkgs/development/tools/analysis/kcov/default.nix index ce391b938ca..7d75d9a34e1 100644 --- a/pkgs/development/tools/analysis/kcov/default.nix +++ b/pkgs/development/tools/analysis/kcov/default.nix @@ -16,6 +16,8 @@ stdenv.mkDerivation rec { buildInputs = [ zlib curl elfutils python libiberty libopcodes ]; + patches = [ ./aarch64_nt_prstatus.patch ]; + enableParallelBuilding = true; meta = with stdenv.lib; {