Skip to content

Commit

Permalink
kconfig: rename silentoldconfig to syncconfig
Browse files Browse the repository at this point in the history
As commit cedd55d ("kconfig: Remove silentoldconfig from help
and docs; fix kconfig/conf's help") mentioned, 'silentoldconfig' is a
historical misnomer.  That commit removed it from help and docs since
it is an internal interface.  If so, it should be allowed to rename
it to something more intuitive.  'syncconfig' is the one I came up
with because it updates the .config if necessary, then synchronize
include/generated/autoconf.h and include/config/* with it.

You should not manually invoke 'silentoldcofig'.  Display warning if
used in case existing scripts are doing wrong.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Ulf Magnusson <ulfalizer@gmail.com>
  • Loading branch information
masahir0y committed Mar 25, 2018
1 parent 81d2bc2 commit 911a91c
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 16 deletions.
2 changes: 1 addition & 1 deletion Documentation/kbuild/kconfig.txt
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ Examples:
15% of tristates will be set to 'y', 15% to 'm', 70% to 'n'

______________________________________________________________________
Environment variables for 'silentoldconfig'
Environment variables for 'syncconfig'

KCONFIG_NOSILENTUPDATE
--------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion Documentation/networking/i40e.txt
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Enabling the driver
The driver is enabled via the standard kernel configuration system,
using the make command:

Make oldconfig/silentoldconfig/menuconfig/etc.
make config/oldconfig/menuconfig/etc.

The driver is located in the menu structure at:

Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -588,7 +588,7 @@ $(KCONFIG_CONFIG) include/config/auto.conf.cmd: ;
# include/generated/ and include/config/. Update them if .config is newer than
# include/config/auto.conf (which mirrors .config).
include/config/%.conf: $(KCONFIG_CONFIG) include/config/auto.conf.cmd
$(Q)$(MAKE) -f $(srctree)/Makefile silentoldconfig
$(Q)$(MAKE) -f $(srctree)/Makefile syncconfig
else
# external modules needs include/generated/autoconf.h and include/config/auto.conf
# but do not care if they are up-to-date. Use auto.conf to trigger the test
Expand Down
13 changes: 10 additions & 3 deletions scripts/kconfig/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# Kernel configuration targets
# These targets are used from top-level makefile

PHONY += xconfig gconfig menuconfig config silentoldconfig update-po-config \
PHONY += xconfig gconfig menuconfig config syncconfig update-po-config \
localmodconfig localyesconfig

ifdef KBUILD_KCONFIG
Expand Down Expand Up @@ -36,7 +36,7 @@ nconfig: $(obj)/nconf

# This has become an internal implementation detail and is now deprecated
# for external use.
silentoldconfig: $(obj)/conf
syncconfig: $(obj)/conf
$(Q)mkdir -p include/config include/generated
$(Q)test -e include/generated/autoksyms.h || \
touch include/generated/autoksyms.h
Expand Down Expand Up @@ -88,7 +88,7 @@ PHONY += $(simple-targets)
$(simple-targets): $(obj)/conf
$< $(silent) --$@ $(Kconfig)

PHONY += oldnoconfig savedefconfig defconfig
PHONY += oldnoconfig silentoldconfig savedefconfig defconfig

# oldnoconfig is an alias of olddefconfig, because people already are dependent
# on its behavior (sets new symbols to their default value but not 'n') with the
Expand All @@ -97,6 +97,13 @@ oldnoconfig: olddefconfig
@echo " WARNING: \"oldnoconfig\" target will be removed after Linux 4.19"
@echo " Please use \"olddefconfig\" instead, which is an alias."

# We do not expect manual invokcation of "silentoldcofig" (or "syncconfig").
silentoldconfig: syncconfig
@echo " WARNING: \"silentoldconfig\" has been renamed to \"syncconfig\""
@echo " and is now an internal implementation detail."
@echo " What you want is probably \"oldconfig\"."
@echo " \"silentoldconfig\" will be removed after Linux 4.19"

savedefconfig: $(obj)/conf
$< $(silent) --$@=defconfig $(Kconfig)

Expand Down
20 changes: 10 additions & 10 deletions scripts/kconfig/conf.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ static void check_conf(struct menu *menu);

enum input_mode {
oldaskconfig,
silentoldconfig,
syncconfig,
oldconfig,
allnoconfig,
allyesconfig,
Expand Down Expand Up @@ -100,7 +100,7 @@ static int conf_askvalue(struct symbol *sym, const char *def)

switch (input_mode) {
case oldconfig:
case silentoldconfig:
case syncconfig:
if (sym_has_value(sym)) {
printf("%s\n", def);
return 0;
Expand Down Expand Up @@ -293,7 +293,7 @@ static int conf_choice(struct menu *menu)
printf("[1-%d?]: ", cnt);
switch (input_mode) {
case oldconfig:
case silentoldconfig:
case syncconfig:
if (!is_new) {
cnt = def;
printf("%d\n", cnt);
Expand Down Expand Up @@ -441,7 +441,7 @@ static void check_conf(struct menu *menu)
static struct option long_opts[] = {
{"oldaskconfig", no_argument, NULL, oldaskconfig},
{"oldconfig", no_argument, NULL, oldconfig},
{"silentoldconfig", no_argument, NULL, silentoldconfig},
{"syncconfig", no_argument, NULL, syncconfig},
{"defconfig", optional_argument, NULL, defconfig},
{"savedefconfig", required_argument, NULL, savedefconfig},
{"allnoconfig", no_argument, NULL, allnoconfig},
Expand All @@ -468,8 +468,8 @@ static void conf_usage(const char *progname)
printf(" --listnewconfig List new options\n");
printf(" --oldaskconfig Start a new configuration using a line-oriented program\n");
printf(" --oldconfig Update a configuration using a provided .config as base\n");
printf(" --silentoldconfig Similar to oldconfig but generates configuration in\n"
" include/{generated/,config/} (oldconfig used to be more verbose)\n");
printf(" --syncconfig Similar to oldconfig but generates configuration in\n"
" include/{generated/,config/}\n");
printf(" --olddefconfig Same as oldconfig but sets new symbols to their default value\n");
printf(" --oldnoconfig An alias of olddefconfig\n");
printf(" --defconfig <file> New config with default defined in <file>\n");
Expand Down Expand Up @@ -501,7 +501,7 @@ int main(int ac, char **av)
}
input_mode = (enum input_mode)opt;
switch (opt) {
case silentoldconfig:
case syncconfig:
sync_kconfig = 1;
break;
case defconfig:
Expand Down Expand Up @@ -583,7 +583,7 @@ int main(int ac, char **av)
}
break;
case savedefconfig:
case silentoldconfig:
case syncconfig:
case oldaskconfig:
case oldconfig:
case listnewconfig:
Expand Down Expand Up @@ -667,7 +667,7 @@ int main(int ac, char **av)
/* fall through */
case oldconfig:
case listnewconfig:
case silentoldconfig:
case syncconfig:
/* Update until a loop caused no more changes */
do {
conf_cnt = 0;
Expand All @@ -680,7 +680,7 @@ int main(int ac, char **av)
}

if (sync_kconfig) {
/* silentoldconfig is used during the build so we shall update autoconf.
/* syncconfig is used during the build so we shall update autoconf.
* All other commands are only used to generate a config.
*/
if (conf_get_changed() && conf_write(NULL)) {
Expand Down

0 comments on commit 911a91c

Please sign in to comment.