Re: [PATCH] tools: perf: Avoid error message when building with no python installed

Jiri Olsa
2015-07-27T18:36:07Z

On Mon, Jul 27, 2015 at 04:50:55PM +0100, Pawel Moll wrote:
> When run on a system without a python interpreter installed, the makefile
> probing python will try to execute
>
> /bin/sh -c 'command -v -config [...]'
>
> instead of
>
> /bin/sh -c 'command -v python-config [...]'
>
> resulting in the following error message:
>
> sh: 1: command: Illegal option -c
>
> Although harmless, the message can be quite confusing and hard to track.
>
> Signed-off-by: Pawel Moll <pawel.moll@arm.com>
> ---
> tools/perf/config/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
> index 094ddae..b4a9c29 100644
> --- a/tools/perf/config/Makefile
> +++ b/tools/perf/config/Makefile
> @@ -150,7 +150,7 @@ ifndef NO_LIBPYTHON
> PYTHON2 := $(if $(call get-executable,python2),python2,python)
> override PYTHON := $(call get-executable-or-default,PYTHON,$(PYTHON2))
> PYTHON2_CONFIG := \
> - $(if $(call get-executable,$(PYTHON)-config),$(PYTHON)-config,python-config)
> + $(if $(PYTHON),$(if $(call get-executable,$(PYTHON)-config),$(PYTHON)-config,python-config))
> override PYTHON_CONFIG := \
> $(call get-executable-or-default,PYTHON_CONFIG,$(PYTHON2_CONFIG))

haven't tried, but seems like we want to add also the else part
to get default into PYTHON_CONFIG?

it fails anyway later either way, but seems like the 'python-config'
was the default case that was meant to fail later

jirka

---
diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
index f04f92093e37..7cf71a4d3a1f 100644
--- a/tools/perf/config/Makefile
+++ b/tools/perf/config/Makefile
@@ -150,7 +150,7 @@ ifndef NO_LIBPYTHON
PYTHON2 := $(if $(call get-executable,python2),python2,python)
override PYTHON := $(call get-executable-or-default,PYTHON,$(PYTHON2))
PYTHON2_CONFIG := \
- $(if $(PYTHON),$(if $(call get-executable,$(PYTHON)-config),$(PYTHON)-config,python-config))
+ $(if $(PYTHON),$(if $(call get-executable,$(PYTHON)-config),$(PYTHON)-config,python-config),python-config)
override PYTHON_CONFIG := \
$(call get-executable-or-default,PYTHON_CONFIG,$(PYTHON2_CONFIG))