perf: remove binutils patch by wrapper

starting with linux 4.12 our patch no longer applied. In order to
avoid having to maintain patches for different linux kernels it is
easier to use a wrapper instead.
This commit is contained in:
Jörg Thalheim 2017-07-23 15:16:11 +01:00
parent 11f8524b12
commit 887570883e
2 changed files with 7 additions and 16 deletions

View file

@ -1,12 +0,0 @@
diff -ru -x '*~' linux-4.9.31-orig/tools/perf/util/annotate.c linux-4.9.31/tools/perf/util/annotate.c
--- linux-4.9.31-orig/tools/perf/util/annotate.c 2017-06-07 12:08:04.000000000 +0200
+++ linux-4.9.31/tools/perf/util/annotate.c 2017-06-12 13:10:08.811079574 +0200
@@ -1350,7 +1350,7 @@
"%s %s%s --start-address=0x%016" PRIx64
" --stop-address=0x%016" PRIx64
" -l -d %s %s -C %s 2>/dev/null|grep -v %s|expand",
- objdump_path ? objdump_path : "objdump",
+ objdump_path ? objdump_path : OBJDUMP_PATH,
disassembler_style ? "-M " : "",
disassembler_style ? disassembler_style : "",
map__rip_2objdump(map, sym->start),

View file

@ -1,4 +1,4 @@
{ lib, stdenv, kernel, elfutils, python, perl, newt, slang, asciidoc, xmlto
{ lib, stdenv, kernel, elfutils, python, perl, newt, slang, asciidoc, xmlto, makeWrapper
, docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkgconfig, libunwind, binutils
, libiberty, libaudit
, zlib, withGtk ? false, gtk2 ? null }:
@ -13,8 +13,6 @@ stdenv.mkDerivation {
inherit (kernel) src;
patches = kernel.patches ++ [ ./perf-binutils-path.patch ];
preConfigure = ''
cd tools/perf
sed -i s,/usr/include/elfutils,$elfutils/include/elfutils, Makefile
@ -26,7 +24,7 @@ stdenv.mkDerivation {
# perf refers both to newt and slang
# binutils is required for libbfd.
nativeBuildInputs = [ asciidoc xmlto docbook_xsl docbook_xml_dtd_45 libxslt
flex bison libiberty libaudit ];
flex bison libiberty libaudit makeWrapper ];
buildInputs = [ elfutils python perl newt slang pkgconfig libunwind binutils zlib ] ++
stdenv.lib.optional withGtk gtk2;
@ -45,6 +43,11 @@ stdenv.mkDerivation {
installFlags = "install install-man ASCIIDOC8=1";
preFixup = ''
wrapProgram $out/bin/perf \
--prefix PATH : "${binutils}/bin"
'';
crossAttrs = {
/* I don't want cross-python or cross-perl -
I don't know if cross-python even works */