mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: Barebox List <barebox@lists.infradead.org>
Subject: [PATCH 07/10] MAKEALL: support Kconfig fragments
Date: Tue,  2 May 2023 09:39:22 +0200	[thread overview]
Message-ID: <20230502073925.266116-8-s.hauer@pengutronix.de> (raw)
In-Reply-To: <20230502073925.266116-1-s.hauer@pengutronix.de>

Add the ability to add kconfig fragments before building a defconfig.
The fragments can be added by either the -k option or by setting
the KCONFIG_ADD envrionment variable to a list of filenames.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 MAKEALL | 26 ++++++++++++++++++--------
 1 file changed, 18 insertions(+), 8 deletions(-)

diff --git a/MAKEALL b/MAKEALL
index 75f2f63a1d..3ea0087a29 100755
--- a/MAKEALL
+++ b/MAKEALL
@@ -43,13 +43,14 @@ usage() {
 	echo "CONFIG=./MAKEALL.cfg ./MAKEALL"
 	echo ""
 	echo "you can specify via env or option"
-	echo "env       option"
-	echo "ARCH      -a      arch"
-	echo "CONFIG    -c      config"
-	echo "JOBS      -j      jobs"
-	echo "BUILDDIR  -O      build dir"
-	echo "LOGDIR    -l      log dir"
-	echo "REGEX     -e      regex"
+	echo "env         option"
+	echo "ARCH        -a      arch"
+	echo "CONFIG      -c      config"
+	echo "JOBS        -j      jobs"
+	echo "BUILDDIR    -O      build dir"
+	echo "LOGDIR      -l      log dir"
+	echo "REGEX       -e      regex"
+	echo "KCONFIG_ADD -k      kconfig fragment"
 	echo ""
 }
 
@@ -91,6 +92,12 @@ do_build_target() {
 
 	MAKE="make -j${JOBS} ARCH=${arch} O=${BUILDDIR}"
 	${MAKE} ${target} 2>&1 > "${log_report}" | tee "${log_err}"
+	for i in ${KCONFIG_ADD}; do
+		./scripts/kconfig/merge_config.sh -m -O \
+			${BUILDDIR} ${BUILDDIR}/.config $i \
+			2>&1 > "${log_report}" | tee "${log_err}"
+	done
+	${MAKE} olddefconfig 2>&1 > "${log_report}" | tee "${log_err}"
 
 	check_pipe_status
 	configure_result="$?"
@@ -182,7 +189,7 @@ do_build_all() {
 	return $build_target
 }
 
-while getopts "hc:j:O:l:a:e:" Option
+while getopts "hc:j:O:l:a:e:k:" Option
 do
 case $Option in
 	a )
@@ -203,6 +210,9 @@ case $Option in
 	e )
 		REGEX=${OPTARG}
 		;;
+	k )
+		KCONFIG_ADD="${KCONFIG_ADD} ${OPTARG}"
+		;;
 	h )
 		usage
 		exit 0
-- 
2.39.2




  parent reply	other threads:[~2023-05-02  7:40 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-02  7:39 [PATCH 00/10] MAKEALL updates Sascha Hauer
2023-05-02  7:39 ` [PATCH 01/10] MAKEALL: Configure before setting up CROSS_COMPILE Sascha Hauer
2023-05-02  7:39 ` [PATCH 02/10] MAKEALL: Select arm64 toolchain for 64bit ARM configs Sascha Hauer
2023-05-02  7:39 ` [PATCH 03/10] MAKEALL: order configs alphabetically Sascha Hauer
2023-05-02  7:39 ` [PATCH 04/10] MAKEALL: Do not print sizes Sascha Hauer
2023-05-02  7:39 ` [PATCH 05/10] MAKEALL: Do not trap Sascha Hauer
2023-05-02  7:39 ` [PATCH 06/10] MAKEALL: fix printing number of compiled configs Sascha Hauer
2023-05-02  7:39 ` Sascha Hauer [this message]
2023-05-02  7:39 ` [PATCH 08/10] MAKEALL: rename variables Sascha Hauer
2023-05-02  7:39 ` [PATCH 09/10] MAKEALL: separate errors and warnings Sascha Hauer
2023-05-02  7:39 ` [PATCH 10/10] MAKEALL: allow multiple defconfigs as arguments Sascha Hauer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230502073925.266116-8-s.hauer@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox