From 5009fd2436300383a50b3d23b80cdccd20c9d262 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Thu, 15 May 2025 23:18:06 +0200 Subject: [PATCH] Makefile: include defconfigs in sub-directories in list-defconfigs Currently, list-defconfigs only lists the defconfigs that live live in the top-level configs/ directory. For the in-tree defconfigs this is indeed the case, but it is possible to manage the configs in a br2-external tree with sub-directories. A few examples: - for a given board, a first defconfig is the full system, and a second is the rescue system; - for a given board, two defconfigs implement an A/B feature set; - a set of configurations targetting various famillies of systems each running on different hardware, sorted per familly. Extend list-defconfigs to look for and report defconfigs in sub-directories of the top-level configs/. Signed-off-by: Yann E. MORIN Signed-off-by: Arnout Vandecappelle --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 411e1de515..c0a41cabd5 100644 --- a/Makefile +++ b/Makefile @@ -1218,7 +1218,7 @@ help: # $(2): br2-external name, empty for bundled define list-defconfigs @first=true; \ - for defconfig in $(1)/configs/*_defconfig; do \ + for defconfig in $$(find $(1)/configs -name '*_defconfig' |sort); do \ [ -f "$${defconfig}" ] || continue; \ if $${first}; then \ if [ "$(2)" ]; then \ @@ -1228,7 +1228,7 @@ define list-defconfigs fi; \ first=false; \ fi; \ - defconfig="$${defconfig##*/}"; \ + defconfig="$${defconfig#$(1)/configs/}"; \ printf " %-35s - Build for %s\n" "$${defconfig}" "$${defconfig%_defconfig}"; \ done; \ $${first} || printf "\n"