Re: [PATCH] perf: Let O= makes handle relative paths

Steven Rostedt
2012-08-13T14:23:07Z

On Mon, 2012-08-13 at 15:24 +0200, Borislav Petkov wrote:

> So wouldn't it make sense to call this ABSOLUTE_O or so then?

That's just because you're russian, and are promoting Vodka! ;-)

Done...

----------

When I did a compile of perf using a relative path for the output
directory, the build failed when it tried to compile libtraceevent. This
is because it continues to use the same relative path when the new
working directory is in a different path.

SUBDIR ../lib/traceevent/
/bin/sh: line 0: cd: ../../../nobackup/perf/: No such file or directory
Makefile:74: *** output directory "../../../nobackup/perf/" does not exist. Stop.
make: *** [../../../nobackup/perf///libtraceevent.a] Error 2

Make the path used an absolute path when building perf with O=.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>

diff --git a/tools/scripts/Makefile.include b/tools/scripts/Makefile.include
index bde8521..e90e1b4 100644
--- a/tools/scripts/Makefile.include
+++ b/tools/scripts/Makefile.include
@@ -1,6 +1,7 @@
ifeq ("$(origin O)", "command line")
- OUTPUT := $(O)/
- COMMAND_O := O=$(O)
+ ABSOLUTE_O := $(shell cd $(O) ; pwd)
+ OUTPUT := $(ABSOLUTE_O)/
+ COMMAND_O := O=$(ABSOLUTE_O)
endif

ifneq ($(OUTPUT),)