[PATCH v1 1/5] kconfig: allow defconfigs to live in board directory

Simon Glass sjg at chromium.org
Tue Dec 28 09:33:07 CET 2021


Hi Troy,

On Fri, 17 Dec 2021 at 16:02, Troy Kisky <troy.kisky at boundarydevices.com> wrote:
>
> This will reduce the size of the configs directory, and
> make it more clear which board directory uses the defconfig
> file.
>
> Signed-off-by: Troy Kisky <troy.kisky at boundarydevices.com>
> ---
>  scripts/kconfig/Makefile | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)

Reviewed-by: Simon Glass <sjg at chromium.org>

>
> diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
> index 12e525ee31f..307262e00de 100644
> --- a/scripts/kconfig/Makefile
> +++ b/scripts/kconfig/Makefile
> @@ -92,8 +92,15 @@ else
>  endif
>  endif
>
> +%_defconfig: SHELL:=/bin/bash
>  %_defconfig: $(obj)/conf
> -       $(Q)$< $(silent) --defconfig=arch/$(SRCARCH)/configs/$@ $(Kconfig)
> +       $(Q)readarray -d '' names < <(find $(srctree)/configs $(srctree)/board -type f -name $@ -print0); \
> +       if (test $${#names[*]} -eq 1); then \
> +               $< $(silent) --defconfig="$${names[0]}" $(Kconfig); \
> +       else \
> +               echo "$@" not found or ambiguous error; \
> +               echo "$${names[@]}"; exit 1; \
> +       fi
>
>  # Added for U-Boot (backward compatibility)
>  %_config: %_defconfig
> --
> 2.32.0
>

How could this ever match more than one file?

Regards,
Simon


More information about the U-Boot mailing list