[tip:perf/core] perf build: Fix feature-dump checks, we need to test all features

From: tip-bot for Jiri Olsa
Date: Wed Feb 03 2016 - 05:16:31 EST


Commit-ID: 76c4aaec41b76afb7f914aaf6080f21ab331b0c6
Gitweb: http://git.kernel.org/tip/76c4aaec41b76afb7f914aaf6080f21ab331b0c6
Author: Jiri Olsa <jolsa@xxxxxxxxxx>
AuthorDate: Thu, 28 Jan 2016 16:13:24 -0300
Committer: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
CommitDate: Thu, 28 Jan 2016 19:04:19 -0300

perf build: Fix feature-dump checks, we need to test all features

I see problem with test-all case speedup, because it does not
comprise checks for 32bits compilations, fix it.

The problem could be noticed by calling:

make -C tools/perf feature-dump

That would end up misdetecting the feature-compile-x32, that, building
using 'gcc -mx32' needs stub headers not present in a fedora 23 devel
machine and thus fail to compile, but ended up appearing as detected,
i.e. present in tools/perf/FEATURE-DUMP as 'feature-compile-x32=1'.

With this fix it correctly appears as 'feature-compile-x32=0' and if we
uninstall the libc devel files for 32 bits (glibc-devel.i686), then the
relevant variable is flipped from 'feature-compile-32=1' to
'feature-compile-32=0'.

The same things happened for bionic and libbabeltrace, that were
misdetected because the are no tested in test-all.c

Reported-and-Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Wang Nan <wangnan0@xxxxxxxxxx>
Link: http://lkml.kernel.org/n/tip-u0sjaddf1r9m8icpd98ry7fz@xxxxxxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/build/Makefile.feature | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/tools/build/Makefile.feature b/tools/build/Makefile.feature
index 674c47d..7bff2ea 100644
--- a/tools/build/Makefile.feature
+++ b/tools/build/Makefile.feature
@@ -119,6 +119,14 @@ ifeq ($(feature-all), 1)
# test-all.c passed - just set all the core feature flags to 1:
#
$(foreach feat,$(FEATURE_TESTS),$(call feature_set,$(feat)))
+ #
+ # test-all.c does not comprise these tests, so we need to
+ # for this case to get features proper values
+ #
+ $(call feature_check,compile-32)
+ $(call feature_check,compile-x32)
+ $(call feature_check,bionic)
+ $(call feature_check,libbabeltrace)
else
$(foreach feat,$(FEATURE_TESTS),$(call feature_check,$(feat)))
endif