Commit fbb075c1 authored by Oliver Upton's avatar Oliver Upton

tools headers arm64: Fix references to top srcdir in Makefile

Aishwarya reports that KVM selftests for arm64 fail with the following
error:

 | make[4]: Entering directory '/tmp/kci/linux/tools/testing/selftests/kvm'
 | Makefile:270: warning: overriding recipe for target
 | '/tmp/kci/linux/build/kselftest/kvm/get-reg-list'
 | Makefile:265: warning: ignoring old recipe for target
 | '/tmp/kci/linux/build/kselftest/kvm/get-reg-list'
 | make -C ../../../../tools/arch/arm64/tools/
 | make[5]: Entering directory '/tmp/kci/linux/tools/arch/arm64/tools'
 | Makefile:10: ../tools/scripts/Makefile.include: No such file or directory
 | make[5]: *** No rule to make target '../tools/scripts/Makefile.include'.
 |  Stop.

It would appear that this only affects builds from the top-level
Makefile (e.g. make kselftest-all), as $(srctree) is set to ".". Work
around the issue by shadowing the kselftest naming scheme for the source
tree variable.
Reported-by: default avatarAishwarya TCV <aishwarya.tcv@arm.com>
Fixes: 0359c946 ("tools headers arm64: Update sysreg.h with kernel sources")
Link: https://lore.kernel.org/r/20231027005439.3142015-2-oliver.upton@linux.devSigned-off-by: default avatarOliver Upton <oliver.upton@linux.dev>
parent 54a9ea73
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
ifeq ($(srctree),) ifeq ($(top_srcdir),)
srctree := $(patsubst %/,%,$(dir $(CURDIR))) top_srcdir := $(patsubst %/,%,$(dir $(CURDIR)))
srctree := $(patsubst %/,%,$(dir $(srctree))) top_srcdir := $(patsubst %/,%,$(dir $(top_srcdir)))
srctree := $(patsubst %/,%,$(dir $(srctree))) top_srcdir := $(patsubst %/,%,$(dir $(top_srcdir)))
srctree := $(patsubst %/,%,$(dir $(srctree))) top_srcdir := $(patsubst %/,%,$(dir $(top_srcdir)))
endif endif
include $(srctree)/tools/scripts/Makefile.include include $(top_srcdir)/tools/scripts/Makefile.include
AWK ?= awk AWK ?= awk
MKDIR ?= mkdir MKDIR ?= mkdir
...@@ -19,10 +19,10 @@ else ...@@ -19,10 +19,10 @@ else
Q = @ Q = @
endif endif
arm64_tools_dir = $(srctree)/arch/arm64/tools arm64_tools_dir = $(top_srcdir)/arch/arm64/tools
arm64_sysreg_tbl = $(arm64_tools_dir)/sysreg arm64_sysreg_tbl = $(arm64_tools_dir)/sysreg
arm64_gen_sysreg = $(arm64_tools_dir)/gen-sysreg.awk arm64_gen_sysreg = $(arm64_tools_dir)/gen-sysreg.awk
arm64_generated_dir = $(srctree)/tools/arch/arm64/include/generated arm64_generated_dir = $(top_srcdir)/tools/arch/arm64/include/generated
arm64_sysreg_defs = $(arm64_generated_dir)/asm/sysreg-defs.h arm64_sysreg_defs = $(arm64_generated_dir)/asm/sysreg-defs.h
all: $(arm64_sysreg_defs) all: $(arm64_sysreg_defs)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment