From c8cb015ff6bdcbe1d8787c8bfef1b6e3e72a3c2f Mon Sep 17 00:00:00 2001 From: Austin Seipp Date: Fri, 3 May 2019 15:08:18 -0500 Subject: [PATCH] linuxPackages.perf: add libopcodes as a buildInput Newer versions of perf in Linux 5.1+ support disassembling and annotating eBPF programs inside the kernel. In order to do this, it uses libbfd's support for bpf disassembly. There are two parts: libopcodes and libbfd. The 'perf' build system seems to expect libopcodes/libbfd to go "hand in hand" -- always together, if one or the other is installed. If the build system detects libbfd is available, then an import of is performed, but this fails since it wasn't in the buildInput. Fixing this should be an easy, backwards-compatible change. Fixes #60891, allowing linuxPackages_testing.perf to build again (currently kernel version 5.1.0-rc7). Signed-off-by: Austin Seipp --- pkgs/os-specific/linux/kernel/perf.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/perf.nix b/pkgs/os-specific/linux/kernel/perf.nix index 840d4cc9cf7..1e5c987d508 100644 --- a/pkgs/os-specific/linux/kernel/perf.nix +++ b/pkgs/os-specific/linux/kernel/perf.nix @@ -1,6 +1,6 @@ { lib, stdenv, kernel, elfutils, python, perl, newt, slang, asciidoc, xmlto, makeWrapper , docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkgconfig, libunwind, binutils -, libiberty, audit, libbfd, openssl, systemtap, numactl +, libiberty, audit, libbfd, libopcodes, openssl, systemtap, numactl , zlib, withGtk ? false, gtk2 ? null }: @@ -40,6 +40,7 @@ stdenv.mkDerivation { ]; buildInputs = [ elfutils newt slang libunwind libbfd zlib openssl systemtap.stapBuild numactl + libopcodes ] ++ stdenv.lib.optional withGtk gtk2; # Note: we don't add elfutils to buildInputs, since it provides a