From 000732c3ff150b675b958fdbc3fcd87a9378897d Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Sun, 2 Dec 2012 00:46:42 +0000 Subject: [PATCH] [amd64] linux-tools: Enable optimisations and special-casing of x86_64 (Closes: #694759) This requires including another source file in the 'orig' tarball, so bump to the latest stable update. I don't think it has any fixes relevant to linux-tools. svn path=/dists/trunk/linux-tools/; revision=19565 --- debian/bin/genorig.py | 1 + debian/build/tools/perf/Makefile | 4 +- debian/changelog | 10 ++++ ...86-builds-with-ARCH-specified-on-the.patch | 55 +++++++++++++++++++ debian/patches/series | 1 + 5 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 debian/patches/perf-tools-Fix-x86-builds-with-ARCH-specified-on-the.patch diff --git a/debian/bin/genorig.py b/debian/bin/genorig.py index 246520940..18f7bdd01 100755 --- a/debian/bin/genorig.py +++ b/debian/bin/genorig.py @@ -144,6 +144,7 @@ class Main(object): 'arch/*/include/', 'arch/*/Makefile', 'arch/x86/lib/memcpy_64.S', + 'arch/x86/lib/memset_64.S', 'include/', 'lib/rbtree.c', 'scripts/', diff --git a/debian/build/tools/perf/Makefile b/debian/build/tools/perf/Makefile index c4e219d2b..9372be1a4 100644 --- a/debian/build/tools/perf/Makefile +++ b/debian/build/tools/perf/Makefile @@ -7,13 +7,13 @@ DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU) ifeq ($(DEB_HOST_ARCH_CPU),alpha) KERNEL_ARCH_PERF = alpha else ifeq ($(DEB_HOST_ARCH_CPU),amd64) - KERNEL_ARCH_PERF = x86 + KERNEL_ARCH_PERF = x86_64 else ifeq ($(DEB_HOST_ARCH_CPU),arm) KERNEL_ARCH_PERF = arm else ifeq ($(DEB_HOST_ARCH_CPU),hppa) KERNEL_ARCH_PERF = parisc else ifeq ($(DEB_HOST_ARCH_CPU),i386) - KERNEL_ARCH_PERF = x86 + KERNEL_ARCH_PERF = i386 else ifeq ($(DEB_HOST_ARCH_CPU),powerpc) KERNEL_ARCH_PERF = powerpc else ifeq ($(DEB_HOST_ARCH_CPU),powerpc64) diff --git a/debian/changelog b/debian/changelog index 6aeebb664..df072e986 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +linux-tools (3.6.8-1~experimental.1) UNRELEASED; urgency=low + + * New upstream stable update + + [ Ben Hutchings ] + * [amd64] linux-tools: Enable optimisations and special-casing of x86_64 + (Closes: #694759) + + -- Ben Hutchings Sun, 02 Dec 2012 00:33:22 +0000 + linux-tools (3.6-1~experimental.1) experimental; urgency=low * New upstream release (Closes: #690011) diff --git a/debian/patches/perf-tools-Fix-x86-builds-with-ARCH-specified-on-the.patch b/debian/patches/perf-tools-Fix-x86-builds-with-ARCH-specified-on-the.patch new file mode 100644 index 000000000..2f8a7943e --- /dev/null +++ b/debian/patches/perf-tools-Fix-x86-builds-with-ARCH-specified-on-the.patch @@ -0,0 +1,55 @@ +From: David Ahern +Date: Mon, 27 Aug 2012 13:05:54 -0600 +Subject: perf tools: Fix x86 builds with ARCH specified on the command line + +commit 09a2f16a916178489fc4bf439de668d81fda7616 upstream. + +e.g., compiling i386 on x86_64 using: +$ make -C tools/perf ARCH=i386 + +fails with: + + CC /tmp/pbuild/util/evsel.o +In file included from util/evsel.c:21:0: +util/perf_regs.h:5:23: fatal error: perf_regs.h: No such file or directory +compilation terminated. + +Adding V=1 you see that the include argument for the arch is +'-Iarch/i386/include' is wrong. It is supposed to be -Iarch/x86/include +per the redefinition of ARCH in the Makefile. + +According to the make manual, +http://www.gnu.org/software/make/manual/make.html#Override-Directive: + "If a variable has been set with a command argument (see Overriding + Variables), then ordinary assignments in the makefile are ignored. If + you want to set the variable in the makefile even though it was set + with a command argument, you can use an override directive ..." + +Make it so. + +Signed-off-by: David Ahern +Cc: Frederic Weisbecker +Cc: Ingo Molnar +Cc: Peter Zijlstra +Link: http://lkml.kernel.org/r/1346094354-74356-1-git-send-email-dsahern@gmail.com +Signed-off-by: Arnaldo Carvalho de Melo +[bwh: Adjust context for 3.6.8] +--- + tools/perf/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/tools/perf/Makefile ++++ b/tools/perf/Makefile +@@ -56,10 +56,10 @@ AR = $(CROSS_COMPILE)ar + + # Additional ARCH settings for x86 + ifeq ($(ARCH),i386) +- ARCH := x86 ++ override ARCH := x86 + endif + ifeq ($(ARCH),x86_64) +- ARCH := x86 ++ override ARCH := x86 + IS_X86_64 := 0 + ifeq (, $(findstring m32,$(EXTRA_CFLAGS))) + IS_X86_64 := $(shell echo __x86_64__ | ${CC} -E -x c - | tail -n 1) diff --git a/debian/patches/series b/debian/patches/series index 0c20d014a..f2693a5ab 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -2,3 +2,4 @@ modpost-symbol-prefix.patch tools-perf-version.patch tools-perf-install.patch perf-Fix-include-order-for-bison-flex-generated-C-fi.patch +perf-tools-Fix-x86-builds-with-ARCH-specified-on-the.patch