From: Nasser Afshin <afshin.nasser@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v3] merge_config.sh: merge also buildroot config files
Date: Thu, 25 Oct 2018 05:50:31 +0330 [thread overview]
Message-ID: <20181025022031.14043-1-afshin.nasser@gmail.com> (raw)
In-Reply-To: <20181025011343.29512-1-afshin.nasser@gmail.com>
From: Angelo Compagnucci <angelo.compagnucci@gmail.com>
This patch adds a way to merge buildroot config file programmatically.
It adds an option (-b, buildroot mode) to manage buildroot config files.
The buildroot mode changes the way the script looks for configurations
entries using the BR2_ prefix and modify the call to the make command
to be buildroot friendly.
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Signed-off-by: Nasser Afshin <afshin.nasser@gmail.com>
---
I forgot to apply the presented patch. Now it's applied.
support/kconfig/merge_config.sh | 9 ++++-
...18-fix-finding-redundant-config-mechanism.patch | 41 ++++++++++++++++++++++
support/kconfig/patches/series | 1 +
3 files changed, 50 insertions(+), 1 deletion(-)
create mode 100644 support/kconfig/patches/18-fix-finding-redundant-config-mechanism.patch
diff --git a/support/kconfig/merge_config.sh b/support/kconfig/merge_config.sh
index 67d1314476..f22198023c 100755
--- a/support/kconfig/merge_config.sh
+++ b/support/kconfig/merge_config.sh
@@ -29,6 +29,7 @@ trap clean_up HUP INT TERM
usage() {
echo "Usage: $0 [OPTIONS] [CONFIG [...]]"
echo " -h display this help text"
+ echo " -b buildroot mode (searches for BR2_ and uses a custom make command)"
echo " -m only merge the fragments, do not execute the make command"
echo " -n use allnoconfig instead of alldefconfig"
echo " -r list redundant entries when merging fragments"
@@ -39,6 +40,7 @@ RUNMAKE=true
ALLTARGET=alldefconfig
WARNREDUN=false
OUTPUT=.
+CONFIG_PREFIX=CONFIG_
while true; do
case $1 in
@@ -71,6 +73,11 @@ while true; do
shift 2
continue
;;
+ "-b")
+ CONFIG_PREFIX=BR2_
+ shift
+ continue
+ ;;
*)
break
;;
@@ -99,7 +106,7 @@ if [ ! -r "$INITFILE" ]; then
fi
MERGE_LIST=$*
-SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p"
+SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)[= ].*/\2/p"
TMP_FILE=$(mktemp ./.tmp.config.XXXXXXXXXX)
echo "Using $INITFILE as base"
diff --git a/support/kconfig/patches/18-fix-finding-redundant-config-mechanism.patch b/support/kconfig/patches/18-fix-finding-redundant-config-mechanism.patch
new file mode 100644
index 0000000000..eec92a5fad
--- /dev/null
+++ b/support/kconfig/patches/18-fix-finding-redundant-config-mechanism.patch
@@ -0,0 +1,41 @@
+Index: kconfig/merge_config.sh
+===================================================================
+--- kconfig.orig/merge_config.sh
++++ kconfig/merge_config.sh
+@@ -29,6 +29,7 @@ trap clean_up HUP INT TERM
+ usage() {
+ echo "Usage: $0 [OPTIONS] [CONFIG [...]]"
+ echo " -h display this help text"
++ echo " -b buildroot mode (searches for BR2_ and uses a custom make command)"
+ echo " -m only merge the fragments, do not execute the make command"
+ echo " -n use allnoconfig instead of alldefconfig"
+ echo " -r list redundant entries when merging fragments"
+@@ -39,6 +40,7 @@ RUNMAKE=true
+ ALLTARGET=alldefconfig
+ WARNREDUN=false
+ OUTPUT=.
++CONFIG_PREFIX=CONFIG_
+
+ while true; do
+ case $1 in
+@@ -71,6 +73,11 @@ while true; do
+ shift 2
+ continue
+ ;;
++ "-b")
++ CONFIG_PREFIX=BR2_
++ shift
++ continue
++ ;;
+ *)
+ break
+ ;;
+@@ -99,7 +106,7 @@ if [ ! -r "$INITFILE" ]; then
+ fi
+
+ MERGE_LIST=$*
+-SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p"
++SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)[= ].*/\2/p"
+ TMP_FILE=$(mktemp ./.tmp.config.XXXXXXXXXX)
+
+ echo "Using $INITFILE as base"
diff --git a/support/kconfig/patches/series b/support/kconfig/patches/series
index 36591e2189..5ebc2e0225 100644
--- a/support/kconfig/patches/series
+++ b/support/kconfig/patches/series
@@ -6,3 +6,4 @@
14-support-out-of-tree-config.patch
16-fix-space-to-de-select-options.patch
17-backport-kecho.patch
+18-fix-finding-redundant-config-mechanism.patch
--
2.15.0
next prev parent reply other threads:[~2018-10-25 2:20 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-19 22:58 [Buildroot] [PATCH] merge_config.sh: Fix finding redundant config mechanism Nasser
2018-10-20 14:56 ` Matthew Weber
2018-10-20 16:01 ` Arnout Vandecappelle
2018-10-21 17:27 ` Petr Vorel
2018-10-21 17:35 ` Matthew Weber
2018-10-21 17:46 ` Petr Vorel
2018-10-23 15:19 ` Nasser Afshin
2018-10-23 18:20 ` Arnout Vandecappelle
2018-10-24 19:15 ` Petr Vorel
2018-10-24 23:00 ` Nasser
2018-10-25 1:13 ` [Buildroot] [PATCH v2] merge_config.sh: merge also buildroot config files Nasser Afshin
2018-10-25 1:19 ` Nasser
2018-10-25 2:20 ` Nasser Afshin [this message]
2018-10-25 6:02 ` [Buildroot] Antwort: [PATCH v3] " Marcel Patzlaff
2018-10-25 7:43 ` [Buildroot] " Petr Vorel
2018-10-25 9:43 ` [Buildroot] Antwort: " Marcel Patzlaff
2018-10-25 21:43 ` Petr Vorel
2018-10-26 6:03 ` [Buildroot] Antwort: " Marcel Patzlaff
2018-10-26 23:05 ` Nasser
2018-10-27 4:46 ` Petr Vorel
2018-10-27 10:48 ` Nasser Afshin
2018-10-31 19:35 ` [Buildroot] " Petr Vorel
2018-10-31 20:38 ` Nasser
2018-10-31 20:56 ` Petr Vorel
2018-11-01 1:09 ` [Buildroot] [PATCH] merge_config.sh: Fix merging " Nasser Afshin
2018-11-01 3:51 ` yamada.masahiro at socionext.com
2018-11-01 5:49 ` Petr Vorel
2018-11-01 8:12 ` Nasser
2018-11-01 6:24 ` Petr Vorel
2018-11-01 10:55 ` Nasser
2018-11-01 12:05 ` Arnout Vandecappelle
2018-11-01 16:19 ` Petr Vorel
2018-11-02 2:12 ` Nasser
2018-11-02 7:55 ` yamada.masahiro at socionext.com
2018-11-02 10:05 ` Arnout Vandecappelle
2018-11-02 22:50 ` Petr Vorel
2018-11-03 21:32 ` Nasser
2018-11-05 8:23 ` yamada.masahiro at socionext.com
2018-11-05 8:35 ` Petr Vorel
2018-11-13 13:44 ` [Buildroot] [PATCH v3 0/3] Fix merging configuration fragments Nasser Afshin
2018-11-13 13:44 ` [Buildroot] [PATCH v3 1/3] merge_config.sh: Fix merging buildroot config files Nasser Afshin
2018-11-13 18:35 ` Petr Vorel
2018-11-14 7:16 ` Nasser Afshin
2018-11-13 13:44 ` [Buildroot] [PATCH v3 2/3] test-pkg: Use the correct config prefix when merging Nasser Afshin
2018-11-13 18:26 ` Petr Vorel
2018-11-13 13:44 ` [Buildroot] [PATCH v3 3/3] merge_config.sh: Avoid false positive matches from comment lines Nasser Afshin
2018-11-13 18:38 ` Petr Vorel
2018-11-14 7:18 ` [Buildroot] [PATCH v3 0/3] Fix merging configuration fragments Nasser Afshin
2018-11-01 13:23 ` [Buildroot] [PATCH] merge_config.sh: Fix merging buildroot config files Petr Vorel
2018-11-02 2:18 ` Nasser
2018-10-29 15:46 ` [Buildroot] Antwort: Re: Antwort: Re: [PATCH v3] merge_config.sh: merge also " Petr Vorel
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=20181025022031.14043-1-afshin.nasser@gmail.com \
--to=afshin.nasser@gmail.com \
--cc=buildroot@busybox.net \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.