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.ki...@boundarydevices.com>
---
 scripts/kconfig/Makefile | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

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

Reply via email to