Re: [PATCH v3 1/7] kbuild: support generated asm-headers in subdirectories
From: Nathan Chancellor
Date: Wed Jul 22 2026 - 13:37:02 EST
On Wed, Jul 22, 2026 at 09:53:27AM +0200, Thomas Weißschuh wrote:
> Extend the asm-header stub generation to also handle subdirectories.
> An upcoming vdso/ header refactoring requires this.
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>
> ---
> scripts/Makefile.asm-headers | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/scripts/Makefile.asm-headers b/scripts/Makefile.asm-headers
> index 8a4856e74180..772b53ffdeb4 100644
> --- a/scripts/Makefile.asm-headers
> +++ b/scripts/Makefile.asm-headers
> @@ -48,14 +48,13 @@ syscall-y := $(addprefix $(obj)/, $(syscall-y))
> generated-y := $(addprefix $(obj)/, $(generated-y))
>
> # Remove stale wrappers when the corresponding files are removed from generic-y
> -old-headers := $(wildcard $(obj)/*.h)
> +old-headers := $(shell test -d $(obj) && find $(obj) -name *.h)
> unwanted := $(filter-out $(generic-y) $(generated-y) $(syscall-y),$(old-headers))
>
> -quiet_cmd_wrap = WRAP $@
> - cmd_wrap = echo "\#include <asm-generic/$*.h>" > $@
> +filechk_wrap = echo "\#include <asm-generic/$*.h>"
>
> quiet_cmd_remove = REMOVE $(unwanted)
> - cmd_remove = rm -f $(unwanted)
> + cmd_remove = rm -f $(unwanted); find $(obj) -type -d -empty -delete
There appears to be a stray '-' in the find command ('-type -d' instead
of '-type d').
>
> quiet_cmd_syshdr = SYSHDR $@
> cmd_syshdr = $(CONFIG_SHELL) $(syshdr) \
> @@ -74,8 +73,8 @@ all: $(generic-y) $(syscall-y)
> $(if $(unwanted),$(call cmd,remove))
> @:
>
> -$(obj)/%.h: $(srctree)/$(generic)/%.h
> - $(call cmd,wrap)
> +$(obj)/%.h: $(srctree)/$(generic)/%.h FORCE
> + $(call filechk,wrap)
>
> $(obj)/unistd_%.h: $(syscalltbl) $(syshdr) FORCE
> $(call if_changed,syshdr)
>
> --
> 2.55.0
--
Cheers,
Nathan