All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RESEND] perf: Remove hardcoded include paths for elfutils
@ 2010-11-16 22:16 Robert Morell
  2010-11-17  2:11 ` Masami Hiramatsu
  2010-11-21 13:43 ` [tip:perf/core] perf tools: " tip-bot for Robert Morell
  0 siblings, 2 replies; 4+ messages in thread
From: Robert Morell @ 2010-11-16 22:16 UTC (permalink / raw)
  To: Peter Zijlstra, Paul Mackerras, Ingo Molnar,
	Arnaldo Carvalho de Melo, Masami Hiramatsu
  Cc: linux-kernel, Robert Morell

This change removes the use of hardcoded absolute
"/usr/include/elfutils" paths from the perf build.  The problem with
hardcoded paths is that it prevents them from being overridden by
$prefix or by -I in CFLAGS (e.g., for cross-compiling purposes).

Instead, just include the "elfutils/" subdirectory as a relative path
when files are needed from that directory.

Tested by building perf:
- Cross-compiled for ARM on x86_64
- Built natively on x86_64
- Built on x86_64 with /usr/include/elfutils moved to another location
  and manually included in CFLAGS

Signed-off-by: Robert Morell <rmorell@nvidia.com>
---
 tools/perf/Makefile            |    4 ++--
 tools/perf/feature-tests.mak   |    4 ++--
 tools/perf/util/probe-finder.h |    6 +++---
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index d1db0f6..74b684d 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -507,7 +507,7 @@ PERFLIBS = $(LIB_FILE)
 -include config.mak
 
 ifndef NO_DWARF
-FLAGS_DWARF=$(ALL_CFLAGS) -I/usr/include/elfutils -ldw -lelf $(ALL_LDFLAGS) $(EXTLIBS)
+FLAGS_DWARF=$(ALL_CFLAGS) -ldw -lelf $(ALL_LDFLAGS) $(EXTLIBS)
 ifneq ($(call try-cc,$(SOURCE_DWARF),$(FLAGS_DWARF)),y)
 	msg := $(warning No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev);
 	NO_DWARF := 1
@@ -554,7 +554,7 @@ ifndef NO_DWARF
 ifeq ($(origin PERF_HAVE_DWARF_REGS), undefined)
 	msg := $(warning DWARF register mappings have not been defined for architecture $(ARCH), DWARF support disabled);
 else
-	BASIC_CFLAGS += -I/usr/include/elfutils -DDWARF_SUPPORT
+	BASIC_CFLAGS += -DDWARF_SUPPORT
 	EXTLIBS += -lelf -ldw
 	LIB_OBJS += $(OUTPUT)util/probe-finder.o
 endif # PERF_HAVE_DWARF_REGS
diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
index b253db6..b041ca6 100644
--- a/tools/perf/feature-tests.mak
+++ b/tools/perf/feature-tests.mak
@@ -9,8 +9,8 @@ endef
 ifndef NO_DWARF
 define SOURCE_DWARF
 #include <dwarf.h>
-#include <libdw.h>
-#include <version.h>
+#include <elfutils/libdw.h>
+#include <elfutils/version.h>
 #ifndef _ELFUTILS_PREREQ
 #error
 #endif
diff --git a/tools/perf/util/probe-finder.h b/tools/perf/util/probe-finder.h
index bba69d4..beaefc3 100644
--- a/tools/perf/util/probe-finder.h
+++ b/tools/perf/util/probe-finder.h
@@ -34,9 +34,9 @@ extern int find_available_vars_at(int fd, struct perf_probe_event *pev,
 				  bool externs);
 
 #include <dwarf.h>
-#include <libdw.h>
-#include <libdwfl.h>
-#include <version.h>
+#include <elfutils/libdw.h>
+#include <elfutils/libdwfl.h>
+#include <elfutils/version.h>
 
 struct probe_finder {
 	struct perf_probe_event	*pev;		/* Target probe event */
-- 
1.7.2.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH RESEND] perf: Remove hardcoded include paths for elfutils
  2010-11-16 22:16 [PATCH RESEND] perf: Remove hardcoded include paths for elfutils Robert Morell
@ 2010-11-17  2:11 ` Masami Hiramatsu
  2010-11-19 18:44   ` Arnaldo Carvalho de Melo
  2010-11-21 13:43 ` [tip:perf/core] perf tools: " tip-bot for Robert Morell
  1 sibling, 1 reply; 4+ messages in thread
From: Masami Hiramatsu @ 2010-11-17  2:11 UTC (permalink / raw)
  To: Robert Morell
  Cc: Peter Zijlstra, Paul Mackerras, Ingo Molnar,
	Arnaldo Carvalho de Melo, linux-kernel

(2010/11/17 7:16), Robert Morell wrote:
> This change removes the use of hardcoded absolute
> "/usr/include/elfutils" paths from the perf build.  The problem with
> hardcoded paths is that it prevents them from being overridden by
> $prefix or by -I in CFLAGS (e.g., for cross-compiling purposes).
> 
> Instead, just include the "elfutils/" subdirectory as a relative path
> when files are needed from that directory.

Looks good to me, Thanks!

> 
> Tested by building perf:
> - Cross-compiled for ARM on x86_64
> - Built natively on x86_64
> - Built on x86_64 with /usr/include/elfutils moved to another location
>   and manually included in CFLAGS
> 
> Signed-off-by: Robert Morell <rmorell@nvidia.com>

Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>

> ---
>  tools/perf/Makefile            |    4 ++--
>  tools/perf/feature-tests.mak   |    4 ++--
>  tools/perf/util/probe-finder.h |    6 +++---
>  3 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> index d1db0f6..74b684d 100644
> --- a/tools/perf/Makefile
> +++ b/tools/perf/Makefile
> @@ -507,7 +507,7 @@ PERFLIBS = $(LIB_FILE)
>  -include config.mak
>  
>  ifndef NO_DWARF
> -FLAGS_DWARF=$(ALL_CFLAGS) -I/usr/include/elfutils -ldw -lelf $(ALL_LDFLAGS) $(EXTLIBS)
> +FLAGS_DWARF=$(ALL_CFLAGS) -ldw -lelf $(ALL_LDFLAGS) $(EXTLIBS)
>  ifneq ($(call try-cc,$(SOURCE_DWARF),$(FLAGS_DWARF)),y)
>  	msg := $(warning No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev);
>  	NO_DWARF := 1
> @@ -554,7 +554,7 @@ ifndef NO_DWARF
>  ifeq ($(origin PERF_HAVE_DWARF_REGS), undefined)
>  	msg := $(warning DWARF register mappings have not been defined for architecture $(ARCH), DWARF support disabled);
>  else
> -	BASIC_CFLAGS += -I/usr/include/elfutils -DDWARF_SUPPORT
> +	BASIC_CFLAGS += -DDWARF_SUPPORT
>  	EXTLIBS += -lelf -ldw
>  	LIB_OBJS += $(OUTPUT)util/probe-finder.o
>  endif # PERF_HAVE_DWARF_REGS
> diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
> index b253db6..b041ca6 100644
> --- a/tools/perf/feature-tests.mak
> +++ b/tools/perf/feature-tests.mak
> @@ -9,8 +9,8 @@ endef
>  ifndef NO_DWARF
>  define SOURCE_DWARF
>  #include <dwarf.h>
> -#include <libdw.h>
> -#include <version.h>
> +#include <elfutils/libdw.h>
> +#include <elfutils/version.h>
>  #ifndef _ELFUTILS_PREREQ
>  #error
>  #endif
> diff --git a/tools/perf/util/probe-finder.h b/tools/perf/util/probe-finder.h
> index bba69d4..beaefc3 100644
> --- a/tools/perf/util/probe-finder.h
> +++ b/tools/perf/util/probe-finder.h
> @@ -34,9 +34,9 @@ extern int find_available_vars_at(int fd, struct perf_probe_event *pev,
>  				  bool externs);
>  
>  #include <dwarf.h>
> -#include <libdw.h>
> -#include <libdwfl.h>
> -#include <version.h>
> +#include <elfutils/libdw.h>
> +#include <elfutils/libdwfl.h>
> +#include <elfutils/version.h>
>  
>  struct probe_finder {
>  	struct perf_probe_event	*pev;		/* Target probe event */


-- 
Masami HIRAMATSU
2nd Dept. Linux Technology Center
Hitachi, Ltd., Systems Development Laboratory
E-mail: masami.hiramatsu.pt@hitachi.com

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH RESEND] perf: Remove hardcoded include paths for elfutils
  2010-11-17  2:11 ` Masami Hiramatsu
@ 2010-11-19 18:44   ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 4+ messages in thread
From: Arnaldo Carvalho de Melo @ 2010-11-19 18:44 UTC (permalink / raw)
  To: Robert Morell
  Cc: Masami Hiramatsu, Peter Zijlstra, Paul Mackerras, Ingo Molnar,
	linux-kernel

Em Wed, Nov 17, 2010 at 11:11:15AM +0900, Masami Hiramatsu escreveu:
> (2010/11/17 7:16), Robert Morell wrote:
> > This change removes the use of hardcoded absolute
> > "/usr/include/elfutils" paths from the perf build.  The problem with
> > hardcoded paths is that it prevents them from being overridden by
> > $prefix or by -I in CFLAGS (e.g., for cross-compiling purposes).
> > 
> > Instead, just include the "elfutils/" subdirectory as a relative path
> > when files are needed from that directory.
> 
> Looks good to me, Thanks!
> 
> > 
> > Tested by building perf:
> > - Cross-compiled for ARM on x86_64
> > - Built natively on x86_64
> > - Built on x86_64 with /usr/include/elfutils moved to another location
> >   and manually included in CFLAGS
> > 
> > Signed-off-by: Robert Morell <rmorell@nvidia.com>
> 
> Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>

Thanks, applied,

- Arnaldo

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [tip:perf/core] perf tools: Remove hardcoded include paths for elfutils
  2010-11-16 22:16 [PATCH RESEND] perf: Remove hardcoded include paths for elfutils Robert Morell
  2010-11-17  2:11 ` Masami Hiramatsu
@ 2010-11-21 13:43 ` tip-bot for Robert Morell
  1 sibling, 0 replies; 4+ messages in thread
From: tip-bot for Robert Morell @ 2010-11-21 13:43 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: acme, linux-kernel, paulus, hpa, mingo, a.p.zijlstra,
	masami.hiramatsu.pt, tglx, rmorell, mingo

Commit-ID:  a71123977eb3c72dd5a8bac723b13faf9cdd2828
Gitweb:     http://git.kernel.org/tip/a71123977eb3c72dd5a8bac723b13faf9cdd2828
Author:     Robert Morell <rmorell@nvidia.com>
AuthorDate: Tue, 16 Nov 2010 14:16:33 -0800
Committer:  Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Fri, 19 Nov 2010 16:38:04 -0200

perf tools: Remove hardcoded include paths for elfutils

This change removes the use of hardcoded absolute "/usr/include/elfutils" paths
from the perf build.  The problem with hardcoded paths is that it prevents them
from being overridden by $prefix or by -I in CFLAGS (e.g., for cross-compiling
purposes).

Instead, just include the "elfutils/" subdirectory as a relative path when
files are needed from that directory.

Tested by building perf:
- Cross-compiled for ARM on x86_64
- Built natively on x86_64
- Built on x86_64 with /usr/include/elfutils moved to another location
  and manually included in CFLAGS

Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
LKML-Reference: <1289945793-31441-1-git-send-email-rmorell@nvidia.com>
Signed-off-by: Robert Morell <rmorell@nvidia.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/Makefile            |    4 ++--
 tools/perf/feature-tests.mak   |    4 ++--
 tools/perf/util/probe-finder.h |    6 +++---
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index d1db0f6..74b684d 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -507,7 +507,7 @@ PERFLIBS = $(LIB_FILE)
 -include config.mak
 
 ifndef NO_DWARF
-FLAGS_DWARF=$(ALL_CFLAGS) -I/usr/include/elfutils -ldw -lelf $(ALL_LDFLAGS) $(EXTLIBS)
+FLAGS_DWARF=$(ALL_CFLAGS) -ldw -lelf $(ALL_LDFLAGS) $(EXTLIBS)
 ifneq ($(call try-cc,$(SOURCE_DWARF),$(FLAGS_DWARF)),y)
 	msg := $(warning No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev);
 	NO_DWARF := 1
@@ -554,7 +554,7 @@ ifndef NO_DWARF
 ifeq ($(origin PERF_HAVE_DWARF_REGS), undefined)
 	msg := $(warning DWARF register mappings have not been defined for architecture $(ARCH), DWARF support disabled);
 else
-	BASIC_CFLAGS += -I/usr/include/elfutils -DDWARF_SUPPORT
+	BASIC_CFLAGS += -DDWARF_SUPPORT
 	EXTLIBS += -lelf -ldw
 	LIB_OBJS += $(OUTPUT)util/probe-finder.o
 endif # PERF_HAVE_DWARF_REGS
diff --git a/tools/perf/feature-tests.mak b/tools/perf/feature-tests.mak
index b253db6..b041ca6 100644
--- a/tools/perf/feature-tests.mak
+++ b/tools/perf/feature-tests.mak
@@ -9,8 +9,8 @@ endef
 ifndef NO_DWARF
 define SOURCE_DWARF
 #include <dwarf.h>
-#include <libdw.h>
-#include <version.h>
+#include <elfutils/libdw.h>
+#include <elfutils/version.h>
 #ifndef _ELFUTILS_PREREQ
 #error
 #endif
diff --git a/tools/perf/util/probe-finder.h b/tools/perf/util/probe-finder.h
index bba69d4..beaefc3 100644
--- a/tools/perf/util/probe-finder.h
+++ b/tools/perf/util/probe-finder.h
@@ -34,9 +34,9 @@ extern int find_available_vars_at(int fd, struct perf_probe_event *pev,
 				  bool externs);
 
 #include <dwarf.h>
-#include <libdw.h>
-#include <libdwfl.h>
-#include <version.h>
+#include <elfutils/libdw.h>
+#include <elfutils/libdwfl.h>
+#include <elfutils/version.h>
 
 struct probe_finder {
 	struct perf_probe_event	*pev;		/* Target probe event */

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-11-21 13:43 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-11-16 22:16 [PATCH RESEND] perf: Remove hardcoded include paths for elfutils Robert Morell
2010-11-17  2:11 ` Masami Hiramatsu
2010-11-19 18:44   ` Arnaldo Carvalho de Melo
2010-11-21 13:43 ` [tip:perf/core] perf tools: " tip-bot for Robert Morell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.