[PATCH 01/16] tools build: Check basic headers for test-compile feature checker

From: Arnaldo Carvalho de Melo
Date: Fri Jan 29 2016 - 16:27:01 EST


See http://www.infradead.org/rpr.html

From: Wang Nan <wangnan0@xxxxxxxxxx>

An i386 binary can be linked correctly even without correct headers.
Which causes problem. For exmaple:

$ mv /tmp/oxygen_root/usr/include/gnu/stubs-32.h{,.bak}
$ make tools/perf
Auto-detecting system features:
... dwarf: [ on ]
[SNIP]
GEN common-cmds.h
CC perf-read-vdso32
In file included from /tmp/oxygen_root/usr/include/features.h:388:0,
from /tmp/oxygen_root/usr/include/stdio.h:27,
from perf-read-vdso.c:1:
/tmp/oxygen_root/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory
# include <gnu/stubs-32.h>
^
compilation terminated.
...

In this patch we checks not only compiler and linker, but also basic
headers in test-compile test case, make it fail on a platform
lacking correct headers.

Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Li Zefan <lizefan@xxxxxxxxxx>
Link: http://lkml.kernel.org/r/1453893742-20603-1-git-send-email-wangnan0@xxxxxxxxxx
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
---
tools/build/feature/test-compile.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/tools/build/feature/test-compile.c b/tools/build/feature/test-compile.c
index 31dbf45bf99c..c54e6551ae4c 100644
--- a/tools/build/feature/test-compile.c
+++ b/tools/build/feature/test-compile.c
@@ -1,4 +1,6 @@
+#include <stdio.h>
int main(void)
{
+ printf("Hello World!\n");
return 0;
}
--
2.5.0