Merge pending changes from sid

svn path=/dists/trunk/linux-tools/; revision=22322
This commit is contained in:
Ben Hutchings 2015-01-31 23:09:41 +00:00
commit 9a55883a3a
7 changed files with 69 additions and 6 deletions

View File

@ -12,6 +12,9 @@ else ifeq ($(DEB_HOST_ARCH_CPU),amd64)
NO_LIBUNWIND=
else ifeq ($(DEB_HOST_ARCH_CPU),arm)
KERNEL_ARCH_PERF = arm
else ifeq ($(DEB_HOST_ARCH_CPU),arm64)
KERNEL_ARCH_PERF = arm64
NO_LIBUNWIND=
else ifeq ($(DEB_HOST_ARCH_CPU),hppa)
KERNEL_ARCH_PERF = parisc
else ifeq ($(DEB_HOST_ARCH_CPU),i386)
@ -35,9 +38,19 @@ else ifeq ($(DEB_HOST_ARCH_CPU),sparc64)
KERNEL_ARCH_PERF = sparc
endif
# - disable Gtk UI until it's more usable
# - Include version in all directory names
MAKE_PERF := $(MAKE) prefix=/usr perfexecdir=share/perf_$(VERSION)-core plugindir=/usr/lib/traceevent_$(VERSION)/plugins NO_GTK2=1 NO_PERL=1 V=1 HAVE_CPLUS_DEMANGLE=1 ARCH=$(KERNEL_ARCH_PERF) EXTRA_WARNINGS=-Wno-error NO_LIBUNWIND=$(NO_LIBUNWIND)
MAKE_PERF := $(MAKE) prefix=/usr V=1 ARCH=$(KERNEL_ARCH_PERF) EXTRA_WARNINGS=-Wno-error NO_LIBUNWIND=$(NO_LIBUNWIND)
# Disable Gtk UI until it's more usable
MAKE_PERF += NO_GTK2=1
# Include version in all directory names
MAKE_PERF += perfexecdir=share/perf_$(VERSION)-core plugindir=/usr/lib/traceevent_$(VERSION)/plugins
# perf can link against libbfd if available, but the result is
# undistributable as they are licenced under GPL v2 and v3+
# respectively. Override detection of libbfd and insist that
# cplus_demangle() can be found in libiberty (LGPL v2.1+).
MAKE_PERF += feature-libbfd=0 HAVE_CPLUS_DEMANGLE_SUPPORT=1
all:
ifdef KERNEL_ARCH_PERF
@ -47,6 +60,11 @@ ifdef KERNEL_ARCH_PERF
# run 'make install'.
+$(MAKE_PERF) -C $(top_srcdir)/tools/perf -f Makefile.perf O=$(CURDIR)/out all VERSION=$(VERSION) DESTDIR=dummy
+$(MAKE_PERF) -C $(top_srcdir)/tools/perf/Documentation O=$(CURDIR)/out man VERSION=$(VERSION)
# Check that perf didn't get linked against libbfd
type ldd
! ldd $(CURDIR)/out/perf | grep '\blibbfd'
# Check that it includes cplus_demangle from libiberty
grep cplus_demangle $(CURDIR)/out/perf
endif
install:

5
debian/changelog vendored
View File

@ -1,6 +1,11 @@
linux-tools (3.18.5-1~exp1) UNRELEASED; urgency=medium
* New upstream release
* linux-tools: Fix build configuration to avoid linking perf with libbfd
(Closes: #763002)
* linux-tools: Add a check that perf is not linked with libbfd
* [arm64] Enable building linux-tools, thanks to Steve Capper
(Closes: #771340)
-- Ben Hutchings <ben@decadent.org.uk> Sat, 31 Jan 2015 15:57:02 +0100

View File

@ -0,0 +1,39 @@
From: Mark Salter <msalter@redhat.com>
Date: Fri, 25 Jul 2014 18:02:46 -0400
Subject: perf tools: Fix arm64 build error
Origin: https://git.kernel.org/linus/7d885749b6de2c9a1168d566e2380207b9177108
I'm seeing the following build error on arm64:
In file included from util/event.c:3:0:
util/event.h:95:17: error: 'PERF_REGS_MAX' undeclared here (not in a function)
u64 cache_regs[PERF_REGS_MAX];
^
This patch adds a PERF_REGS_MAX definition for arm64.
Signed-off-by: Mark Salter <msalter@redhat.com>
Acked-by: Jean Pihet <jean.pihet@linaro.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jean Pihet <jean.pihet@linaro.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1406325766-8085-1-git-send-email-msalter@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/arch/arm64/include/perf_regs.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/perf/arch/arm64/include/perf_regs.h b/tools/perf/arch/arm64/include/perf_regs.h
index e9441b9..1d3f39c 100644
--- a/tools/perf/arch/arm64/include/perf_regs.h
+++ b/tools/perf/arch/arm64/include/perf_regs.h
@@ -6,6 +6,8 @@
#include <asm/perf_regs.h>
#define PERF_REGS_MASK ((1ULL << PERF_REG_ARM64_MAX) - 1)
+#define PERF_REGS_MAX PERF_REG_ARM64_MAX
+
#define PERF_REG_IP PERF_REG_ARM64_PC
#define PERF_REG_SP PERF_REG_ARM64_SP

View File

@ -4,3 +4,4 @@ tools-perf-install.patch
usbip-document-tcp-wrappers.patch
kbuild-fix-recordmcount-dependency.patch
usbip-include-uninstalled-linux-usbip-h.patch
perf-tools-fix-arm64-build-error.patch

2
debian/rules.real vendored
View File

@ -9,7 +9,7 @@ DEB_BUILD_ARCH := $(shell dpkg-architecture -qDEB_BUILD_ARCH)
VERSION_DEBIAN_FULL := $(shell dpkg-parsechangelog | sed -ne 's,^Version: *\(.*\)$$,\1,p')
binary-arch: install-kbuild install-usbip
ifneq ($(filter alpha amd64 armel armhf hppa i386 powerpc ppc64 ppc64el s390 s390x sh4 sparc sparc64,$(DEB_BUILD_ARCH)),)
ifneq ($(filter alpha amd64 arm64 armel armhf hppa i386 powerpc ppc64 ppc64el s390 s390x sh4 sparc sparc64,$(DEB_BUILD_ARCH)),)
binary-arch: install-tools
endif

View File

@ -7,7 +7,7 @@ Description: Kbuild infrastructure for Linux @version@
Package: linux-tools-@version@
Section: devel
Architecture: alpha amd64 armel armhf hppa i386 powerpc ppc64 ppc64el s390 s390x sh4 sparc sparc64
Architecture: alpha amd64 arm64 armel armhf hppa i386 powerpc ppc64 ppc64el s390 s390x sh4 sparc sparc64
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, ${python:Depends}
Recommends: linux-base (>= 3.4~)
Suggests: linux-doc-@version@

View File

@ -6,7 +6,7 @@ Uploaders: Bastian Blank <waldi@debian.org>, Ben Hutchings <ben@decadent.org.uk>
Standards-Version: 3.9.4
Build-Depends:
debhelper (>> 7), python,
asciidoc, bison, flex, libaudit-dev, libdw-dev, libelf-dev, libiberty-dev | binutils-dev (<< 2.23.91.20131123-1), libnewt-dev, libnuma-dev [amd64 i386 powerpc ppc64 ppc64el], libperl-dev, libunwind8-dev [amd64 i386], python-dev, xmlto,
asciidoc, bison, flex, libaudit-dev, libc-bin, libdw-dev, libelf-dev, libiberty-dev | binutils-dev (<< 2.23.91.20131123-1), libnewt-dev, libnuma-dev [amd64 arm64 i386 powerpc ppc64 ppc64el], libperl-dev, libunwind8-dev [amd64 arm64 i386], python-dev, xmlto,
autoconf, automake, libtool, libglib2.0-dev, libudev-dev, libwrap0-dev
Vcs-Svn: svn://svn.debian.org/svn/kernel/dists/trunk/linux-tools/
Vcs-Browser: http://anonscm.debian.org/viewvc/kernel/dists/trunk/linux-tools/