Commit b11db658 authored by Namhyung Kim's avatar Namhyung Kim Committed by Arnaldo Carvalho de Melo

perf tools: Fix build error on ARCH=i386/x86_64/sparc64

He Kuang reported that current perf tools failed to build when ARCH
variable was given like above.

It was because the name is different that internal directory name.  I
can see that David's sparc64 build has same problem.

So fix it by applying the sed conversion script to the command line ARCH
variable also, and fixing the converted name there (i.e. i386/x86_64 ->
x86, sparc64 -> sparc).
Reported-by: default avatarHe Kuang <>
Signed-off-by: default avatarNamhyung Kim <>
Tested-by: default avatarHe Kuang <>
Acked: Jiri Olsa <>
Cc: David Ahern <>
Cc: He Kuang <>
Cc: Peter Zijlstra <>
[ Resolved conflict with 4861f87c "Make sparc64 arch point to sparc" ]
Signed-off-by: default avatarArnaldo Carvalho de Melo <>
parent 4aa5f4f7
ifndef ARCH
ARCH := $(shell uname -m 2>/dev/null || echo not)
uname_M := $(shell uname -m 2>/dev/null || echo not)
RAW_ARCH := $(shell echo $(uname_M) | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
ARCH := $(shell echo $(ARCH) | sed -e s/i.86/x86/ -e s/x86_64/x86/ \
-e s/sun4u/sparc/ -e s/sparc64/sparc/ \
-e s/arm.*/arm/ -e s/sa110/arm/ \
-e s/s390x/s390/ -e s/parisc64/parisc/ \
-e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
-e s/sh[234].*/sh/ -e s/aarch64.*/arm64/ \
-e s/tile.*/tile/ )
# Additional ARCH settings for x86
ifeq ($(RAW_ARCH),i386)
ARCH ?= x86
ifeq ($(RAW_ARCH),x86_64)
ARCH ?= x86
ifneq (, $(findstring m32,$(CFLAGS)))
RAW_ARCH := x86_32
ifeq ($(RAW_ARCH),sparc64)
ARCH ?= sparc
LP64 := $(shell echo __LP64__ | ${CC} ${CFLAGS} -E -x c - | tail -n 1)
ifeq ($(LP64), 1)
IS_64_BIT := 1
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment