Thread (20 messages) 20 messages, 4 authors, 2021-04-07

Re: [PATCH 07/13] kconfig: move conf_set_all_new_symbols() to conf.c

From: Masahiro Yamada <masahiroy@kernel.org>
Date: 2021-03-15 16:03:48
Also in: lkml

On Mon, Mar 15, 2021 at 7:07 PM Boris Kolpackov [off-list ref] wrote:
Masahiro Yamada [off-list ref] writes:
quoted
This function is only used in conf.c. Move it there together with the
randomize_choice_values() helper.

[...]
diff --git a/scripts/kconfig/lkc.h b/scripts/kconfig/lkc.h
index f946ab49ef50..d0d5acecb530 100644
--- a/scripts/kconfig/lkc.h
+++ b/scripts/kconfig/lkc.h
@@ -57,7 +57,6 @@ const char *zconf_curname(void);
 const char *conf_get_configname(void);
 void sym_set_change_count(int count);
 void sym_add_change_count(int count);
-bool conf_set_all_new_symbols(enum conf_def_mode mode);
 void set_all_choice_values(struct symbol *csym);
A number of people package kconfig as a library that is then used
in various projects outside of the Linux kernel. Removing this
function breaks the library ABI and potentially such project. For
example, I call conf_set_all_new_symbols() from my libbuild2-kconfig
build system module[1].

There is no such ABI in Kconfig.

I know you don't care much for such out-of-kernel usage, still, this
(and the previous commit) feels like superficial reshuffling of code
and perhaps it's worth not breaking things unless there is something
substantial to gain?

[1] https://github.com/build2/libbuild2-kconfig/blob/master/libbuild2-kconfig/libbuild2/kconfig/init.cxx#L938

confdata.c is linked to all flavors of Kconfig
(conf, mconf, gconf, and qconf).

conf_set_all_new_symbols() and randomize_choice_values()
are apparently only used by the text-base conf.
They need to go to the correct location.



-- 
Best Regards
Masahiro Yamada
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help