drivers/eisa/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
From: Arnd Bergmann <arnd@arndb.de>
The devlist.h file is generated at build time but is not an object file,
so linking fails, at least in some configurations:
ld.lld-21: error: vmlinux.a(drivers/eisa/devlist.h): not an ELF file
Make this an extra-y instead of obj-y target in Kbuild.
Fixes: dd09eb0e2cc4 ("EISA: Increase length of device names")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/eisa/Makefile | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/eisa/Makefile b/drivers/eisa/Makefile
index f0d6cf7d1f32..562d8797e3b4 100644
--- a/drivers/eisa/Makefile
+++ b/drivers/eisa/Makefile
@@ -1,7 +1,8 @@
# SPDX-License-Identifier: GPL-2.0
# Makefile for the Linux device tree
-obj-$(CONFIG_EISA) += devlist.h eisa-bus.o
+obj-$(CONFIG_EISA) += eisa-bus.o
+extra-$(CONFIG_EISA) += devlist.h
obj-${CONFIG_EISA_PCI_EISA} += pci_eisa.o
# virtual_root.o should be the last EISA root device to initialize,
--
2.39.5
On Wed, Apr 23, 2025 at 06:27:50PM +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> The devlist.h file is generated at build time but is not an object file,
> so linking fails, at least in some configurations:
>
> ld.lld-21: error: vmlinux.a(drivers/eisa/devlist.h): not an ELF file
>
> Make this an extra-y instead of obj-y target in Kbuild.
>
> Fixes: dd09eb0e2cc4 ("EISA: Increase length of device names")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Thanks! I already sent this one:
https://lore.kernel.org/all/20250423023743.work.350-kees@kernel.org/
-Kees
> ---
> drivers/eisa/Makefile | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/eisa/Makefile b/drivers/eisa/Makefile
> index f0d6cf7d1f32..562d8797e3b4 100644
> --- a/drivers/eisa/Makefile
> +++ b/drivers/eisa/Makefile
> @@ -1,7 +1,8 @@
> # SPDX-License-Identifier: GPL-2.0
> # Makefile for the Linux device tree
>
> -obj-$(CONFIG_EISA) += devlist.h eisa-bus.o
> +obj-$(CONFIG_EISA) += eisa-bus.o
> +extra-$(CONFIG_EISA) += devlist.h
> obj-${CONFIG_EISA_PCI_EISA} += pci_eisa.o
>
> # virtual_root.o should be the last EISA root device to initialize,
> --
> 2.39.5
>
--
Kees Cook
© 2016 - 2025 Red Hat, Inc.