Skip to content

Commit be40920

Browse files
mhiramatacmel
authored andcommitted
tools: Let O= makes handle a relative path with -C option
When I tried to compile tools/perf from the top directory with the -C option, the O= option didn't work correctly if I passed a relative path: $ make O=BUILD -C tools/perf/ make: Entering directory '/home/mhiramat/ksrc/linux/tools/perf' BUILD: Doing 'make -j8' parallel build ../scripts/Makefile.include:4: *** O=/home/mhiramat/ksrc/linux/tools/perf/BUILD does not exist. Stop. make: *** [Makefile:70: all] Error 2 make: Leaving directory '/home/mhiramat/ksrc/linux/tools/perf' The O= directory existence check failed because the check script ran in the build target directory instead of the directory where I ran the make command. To fix that, once change directory to $(PWD) and check O= directory, since the PWD is set to where the make command runs. Fixes: c883122 ("perf tools: Let O= makes handle relative paths") Reported-by: Randy Dunlap <[email protected]> Signed-off-by: Masami Hiramatsu <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: Geert Uytterhoeven <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Masahiro Yamada <[email protected]> Cc: Michal Marek <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Sasha Levin <[email protected]> Cc: Steven Rostedt (VMware) <[email protected]> Cc: [email protected] Link: http://lore.kernel.org/lkml/158351957799.3363.15269768530697526765.stgit@devnote2 Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
1 parent 441b62a commit be40920

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

tools/perf/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ endif
3535
# Only pass canonical directory names as the output directory:
3636
#
3737
ifneq ($(O),)
38-
FULL_O := $(shell readlink -f $(O) || echo $(O))
38+
FULL_O := $(shell cd $(PWD); readlink -f $(O) || echo $(O))
3939
endif
4040

4141
#

tools/scripts/Makefile.include

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# SPDX-License-Identifier: GPL-2.0
22
ifneq ($(O),)
33
ifeq ($(origin O), command line)
4-
dummy := $(if $(shell test -d $(O) || echo $(O)),$(error O=$(O) does not exist),)
5-
ABSOLUTE_O := $(shell cd $(O) ; pwd)
4+
dummy := $(if $(shell cd $(PWD); test -d $(O) || echo $(O)),$(error O=$(O) does not exist),)
5+
ABSOLUTE_O := $(shell cd $(PWD); cd $(O) ; pwd)
66
OUTPUT := $(ABSOLUTE_O)/$(if $(subdir),$(subdir)/)
77
COMMAND_O := O=$(ABSOLUTE_O)
88
ifeq ($(objtree),)

0 commit comments

Comments
 (0)