The commit 8fe87a92f262 ("kbuild: always create directories of targets")
exposed an issue in the xtensa makefiles that results in the following
build error in a clean directory:
  scripts/Makefile.build:374: arch/xtensa/boot/boot-elf/boot.lds] Error 1
    arch/xtensa/boot/boot-elf/bootstrap.S:21: fatal error:
    opening dependency file arch/xtensa/boot/boot-elf/.bootstrap.o.d:
    No such file or directory

Intermediate targets in arch/xtensa/boot/boot-elf don't get into
'targets' and build directory is not created for them.
Add boot.lds and bootstrap.o to extra-y in subdirectories of
arch/xtensa/boot.

Cc: Masahiro Yamada <masahi...@kernel.org>
Signed-off-by: Max Filippov <jcmvb...@gmail.com>
---
Changes v1->v2:
- update boot-redboot/Makefile in the same manner as boot-elf/Makefile.

 arch/xtensa/boot/boot-elf/Makefile     | 1 +
 arch/xtensa/boot/boot-redboot/Makefile | 1 +
 2 files changed, 2 insertions(+)

diff --git a/arch/xtensa/boot/boot-elf/Makefile 
b/arch/xtensa/boot/boot-elf/Makefile
index 12ae1e91cb75..ad341c0fff15 100644
--- a/arch/xtensa/boot/boot-elf/Makefile
+++ b/arch/xtensa/boot/boot-elf/Makefile
@@ -15,6 +15,7 @@ export CPPFLAGS_boot.lds += -P -C
 export KBUILD_AFLAGS += -mtext-section-literals
 
 boot-y         := bootstrap.o
+extra-y                := boot.lds $(boot-y)
 
 OBJS           := $(addprefix $(obj)/,$(boot-y))
 
diff --git a/arch/xtensa/boot/boot-redboot/Makefile 
b/arch/xtensa/boot/boot-redboot/Makefile
index 8632473ad319..022a76a2282a 100644
--- a/arch/xtensa/boot/boot-redboot/Makefile
+++ b/arch/xtensa/boot/boot-redboot/Makefile
@@ -13,6 +13,7 @@ endif
 LD_ARGS        = -T $(srctree)/$(obj)/boot.ld
 
 boot-y := bootstrap.o
+extra-y        := $(boot-y)
 
 OBJS   := $(addprefix $(obj)/,$(boot-y))
 LIBS   := arch/xtensa/boot/lib/lib.a arch/xtensa/lib/lib.a
-- 
2.20.1

Reply via email to