diff --git a/debian/build/tools/perf/Makefile b/debian/build/tools/perf/Makefile index afe052627..aedb06d31 100644 --- a/debian/build/tools/perf/Makefile +++ b/debian/build/tools/perf/Makefile @@ -37,7 +37,13 @@ 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 perfexecdir=share/perf_$(VERSION)-core plugindir=/usr/lib/traceevent_$(VERSION)/plugins NO_GTK2=1 NO_PERL=1 V=1 ARCH=$(KERNEL_ARCH_PERF) EXTRA_WARNINGS=-Wno-error NO_LIBUNWIND=$(NO_LIBUNWIND) + +# 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 +53,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: diff --git a/debian/changelog b/debian/changelog index 14025d861..694e43f4e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +linux-tools (3.16-3) UNRELEASED; urgency=low + + * 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 + + -- Ben Hutchings Sat, 27 Sep 2014 02:39:21 +0100 + linux-tools (3.16-2) unstable; urgency=medium * linux-kbuild: Change the type headers used for devicetable-offsets.c diff --git a/debian/templates/control.source.in b/debian/templates/control.source.in index 77d72482f..d58c87956 100644 --- a/debian/templates/control.source.in +++ b/debian/templates/control.source.in @@ -6,7 +6,7 @@ Uploaders: Bastian Blank , Ben Hutchings 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 i386 powerpc ppc64 ppc64el], libperl-dev, libunwind8-dev [amd64 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/