tools/perf/build: Split out feature check: 'libelf-mmap'
authorIngo Molnar <mingo@kernel.org>
Mon, 30 Sep 2013 13:02:28 +0000 (15:02 +0200)
committerIngo Molnar <mingo@kernel.org>
Wed, 9 Oct 2013 06:48:37 +0000 (08:48 +0200)
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/n/tip-9fxnxjcmrgbSvipxlwsdQ8fg@git.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
tools/perf/config/Makefile
tools/perf/config/feature-checks/Makefile
tools/perf/config/feature-checks/test-libelf-mmap.c [new file with mode: 0644]

index 8a27de27f7c236195a60e8aeeb79ed7fc5116644..bf1f021d24671fcca8bda1d016f3e2f9ca09f588 100644 (file)
@@ -111,6 +111,7 @@ FEATURE_TESTS =                             \
        libelf                          \
        glibc                           \
        dwarf                           \
+       libelf-mmap                     \
        libnuma
 
 $(foreach test,$(FEATURE_TESTS),$(call feature_check,$(test),$(test)))
@@ -202,7 +203,7 @@ ifndef NO_LIBELF
   CFLAGS += -DHAVE_LIBELF_SUPPORT
   FLAGS_LIBELF=$(CFLAGS) $(LDFLAGS) $(EXTLIBS)
 
-  ifeq ($(call try-cc,$(SOURCE_ELF_MMAP),$(FLAGS_LIBELF),-DHAVE_LIBELF_MMAP_SUPPORT),y)
+  ifeq ($(feature-libelf-mmap), 1)
     CFLAGS += -DHAVE_LIBELF_MMAP_SUPPORT
   endif
 
@@ -227,8 +228,7 @@ endif # NO_LIBELF
 
 ifndef NO_LIBELF
   CFLAGS += -DHAVE_LIBELF_SUPPORT
-  FLAGS_LIBELF=$(CFLAGS) $(LDFLAGS) $(EXTLIBS)
-  ifeq ($(call try-cc,$(SOURCE_ELF_MMAP),$(FLAGS_LIBELF),-DHAVE_LIBELF_MMAP_SUPPORT),y)
+  ifeq ($(feature-libelf-mmap), 1)
     CFLAGS += -DHAVE_LIBELF_MMAP_SUPPORT
   endif # try-cc
 endif # NO_LIBELF
index 566a71dd61683328574c4d559a3f5bfdb450647b..bf96e34509f46dec38428a8ae4dabae63fd8d583 100644 (file)
@@ -9,6 +9,7 @@ FILES=                                  \
        test-libelf                     \
        test-glibc                      \
        test-dwarf                      \
+       test-libelf-mmap                \
        test-libnuma
 
 CC := $(CC) -MD
@@ -46,6 +47,9 @@ test-glibc:
 test-dwarf:
        $(BUILD) -ldw
 
+test-libelf-mmap:
+       $(BUILD) -lelf
+
 test-libnuma:
        $(BUILD) -lnuma
 
diff --git a/tools/perf/config/feature-checks/test-libelf-mmap.c b/tools/perf/config/feature-checks/test-libelf-mmap.c
new file mode 100644 (file)
index 0000000..1c64815
--- /dev/null
@@ -0,0 +1,7 @@
+#include <libelf.h>
+#
+int main(void)
+{
+       Elf *elf = elf_begin(0, ELF_C_READ_MMAP, 0);
+       return (long)elf;
+}