diff options
author | Sergey Ryazanov <ryazanov.s.a@gmail.com> | 2017-04-20 05:10:45 +0300 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2017-04-26 11:34:41 +0200 |
commit | 5bf98b1acc3b6b178f8954c5075a58e1e6a99d6a (patch) | |
tree | 4c477c0b6dd2b436025e4cb31eead9f7066cb617 /include | |
parent | 8f43ba8c489caa978b368decf0d66f70374389fd (diff) | |
download | upstream-5bf98b1acc3b6b178f8954c5075a58e1e6a99d6a.tar.gz upstream-5bf98b1acc3b6b178f8954c5075a58e1e6a99d6a.tar.bz2 upstream-5bf98b1acc3b6b178f8954c5075a58e1e6a99d6a.zip |
build: fix symlinked .config handling
When running "make menuconfig" with symlinked .config (e.g. to
env/.config) it renames symlink to .config.old, creates new .config file
and writes updated configuration here.
This breaks the desired workflow when changes in the configuration could
be checked using "scripts/env diff" and commited with
"scripts/env save". Since the env/.config file is not updated.
Fix this issue by exporting KCONFIG_OVERWRITECONFIG=1, which forces
mconf to overwrite the .config content, instead of renaming it and
creating a new file. This variable is set only if .config is a symlink,
otherwise the variable is not exported and the old behaviour is
preserved.
Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/toplevel.mk | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/toplevel.mk b/include/toplevel.mk index ceafffb3a7..4b63e8ab47 100644 --- a/include/toplevel.mk +++ b/include/toplevel.mk @@ -129,7 +129,7 @@ menuconfig: scripts/config/mconf prepare-tmpinfo FORCE if [ \! -e .config -a -e $(HOME)/.openwrt/defconfig ]; then \ cp $(HOME)/.openwrt/defconfig .config; \ fi - $< Config.in + [ -L .config ] && export KCONFIG_OVERWRITECONFIG=1; $< Config.in prepare_kernel_conf: .config FORCE |