Issue with "kbuild: create a list of all built DTB files"

Florian Fainelli florian.fainelli at broadcom.com
Tue Apr 16 10:22:23 PDT 2024


Hi Masahiro,

Sorry about the late report, commit 
24507871c3c6ae4f6b460b016da7ff434cd34149 ("kbuild: create a list of all 
built DTB files") is breaking the build when we are doing a rsync of the 
Linux sources into a build directory, which is how buildroot works when 
doing a source directory override.

This does not happen when doing a build from the git directory 
containing the sources, and I cannot find a missing $(obj) reference, so 
I am left wondering what I am missing here. The build error looks like this:

cat: arch/arm64/boot/dts/actions/dtbs-list: No such file or directory
host-make[3]: *** [scripts/Makefile.build:423: 
arch/arm64/boot/dts/dtbs-list] Error 1
host-make[3]: *** Deleting file 'arch/arm64/boot/dts/dtbs-list'
host-make[2]: *** [Makefile:1394: dtbs] Error 2
host-make[2]: *** Waiting for unfinished jobs....

running with verbose, we can see the rule not generating an empty file 
at all:

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=scripts/dtc
/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=scripts
/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts need-dtbslist=1
/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=scripts/genksyms \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/actions \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/allwinner \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/altera \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/amazon \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/tools kapi
/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/amd \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/amlogic \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/apm \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/apple \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/arm \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/bitmain \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/broadcom \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/cavium \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/exynos \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/freescale \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/hisilicon \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/intel \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/lg \
need-builtin= \
need-modorder= \

# GEN     arch/arm64/include/generated/asm/cpucap-defs.h
   mkdir -p arch/arm64/include/generated/asm/; awk -f 
arch/arm64/tools/gen-cpucaps.awk arch/arm64/tools/cpucaps > 
arch/arm64/include/generated/asm/cpucap-defs.h
/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/marvell \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/mediatek \
need-builtin= \
need-modorder= \

# GEN     arch/arm64/include/generated/asm/sysreg-defs.h
   mkdir -p arch/arm64/include/generated/asm/; awk -f 
arch/arm64/tools/gen-sysreg.awk arch/arm64/tools/sysreg > 
arch/arm64/include/generated/asm/sysreg-defs.h
/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/microchip \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/broadcom/bcmbca \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/nuvoton \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/broadcom/northstar2 \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/exynos/google \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/nvidia \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/broadcom/stingray \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/qcom \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/realtek \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/renesas \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/rockchip \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/socionext \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/sprd \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/st \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/synaptics \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/tesla \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/ti \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/toshiba \
need-builtin= \
need-modorder= \

/home/fainelli/work/buildroot/output/arm64/host/bin/host-make -f 
./scripts/Makefile.build obj=arch/arm64/boot/dts/xilinx \
need-builtin= \
need-modorder= \

# cmd_gen_order arch/arm64/boot/dts/dtbs-list
   {   cat arch/arm64/boot/dts/actions/dtbs-list;   cat 
arch/arm64/boot/dts/allwinner/dtbs-list;   cat 
arch/arm64/boot/dts/altera/dtbs-list;   cat 
arch/arm64/boot/dts/amazon/dtbs-list;   cat 
arch/arm64/boot/dts/amd/dtbs-list;   cat 
arch/arm64/boot/dts/amlogic/dtbs-list;   cat 
arch/arm64/boot/dts/apm/dtbs-list;   cat 
arch/arm64/boot/dts/apple/dtbs-list;   cat 
arch/arm64/boot/dts/arm/dtbs-list;   cat 
arch/arm64/boot/dts/bitmain/dtbs-list;   cat 
arch/arm64/boot/dts/broadcom/dtbs-list;   cat 
arch/arm64/boot/dts/cavium/dtbs-list;   cat 
arch/arm64/boot/dts/exynos/dtbs-list;   cat 
arch/arm64/boot/dts/freescale/dtbs-list;   cat 
arch/arm64/boot/dts/hisilicon/dtbs-list;   cat 
arch/arm64/boot/dts/intel/dtbs-list;   cat 
arch/arm64/boot/dts/lg/dtbs-list;   cat 
arch/arm64/boot/dts/marvell/dtbs-list;   cat 
arch/arm64/boot/dts/mediatek/dtbs-list;   cat 
arch/arm64/boot/dts/microchip/dtbs-list;   cat 
arch/arm64/boot/dts/nuvoton/dtbs-list;   cat 
arch/arm64/boot/dts/nvidia/dtbs-list;   cat 
arch/arm64/boot/dts/qcom/dtbs-list;   cat 
arch/arm64/boot/dts/realtek/dtbs-list;   cat 
arch/arm64/boot/dts/renesas/dtbs-list;   cat 
arch/arm64/boot/dts/rockchip/dtbs-list;   cat 
arch/arm64/boot/dts/socionext/dtbs-list;   cat 
arch/arm64/boot/dts/sprd/dtbs-list;   cat 
arch/arm64/boot/dts/st/dtbs-list;   cat 
arch/arm64/boot/dts/synaptics/dtbs-list;   cat 
arch/arm64/boot/dts/tesla/dtbs-list;   cat 
arch/arm64/boot/dts/ti/dtbs-list;   cat 
arch/arm64/boot/dts/toshiba/dtbs-list;   cat 
arch/arm64/boot/dts/xilinx/dtbs-list; :; } > arch/arm64/boot/dts/dtbs-list
cat: arch/arm64/boot/dts/actions/dtbs-list: No such file or directory
host-make[3]: *** [scripts/Makefile.build:423: 
arch/arm64/boot/dts/dtbs-list] Error 1
host-make[3]: *** Deleting file 'arch/arm64/boot/dts/dtbs-list'
host-make[2]: *** [Makefile:1394: dtbs] Error 2
host-make[2]: *** Waiting for unfinished jobs....
make[1]: *** [package/pkg-generic.mk:293: 
/home/fainelli/work/buildroot/output/arm64/build/linux-custom/.stamp_built] 
Error 2
make: *** [Makefile:27: _all] Error 2

Buildroot builds its own GNU Make version 4.4.1.

Any clues what might be going on? My defconfig is such that only 
CONFIG_ARCH_BRCMSTB is enabled, and there are essentially no .dtbs file 
that will be generated.

Thanks!
-- 
Florian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4221 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20240416/b72a9538/attachment-0001.p7s>


More information about the linux-arm-kernel mailing list