[Question] What is the main function of sym_calc_value() under scripts/kconfig/symbol.c

From: å
Date: Wed Aug 28 2019 - 05:28:19 EST


When "make KCONFIG_ALLCONFIG= mytmp.config alldefconfig", I find sym_calc_value() under scripts/kconfig/symbol.c is called many times.

But I don't understand what does sym_calc_value() do.

make KCONFIG_ALLCONFIG= mytmp.config alldefconfig
-> scripts/kconfig/conf.c main()
-> switch case alldefconfig
-> conf_write()
-> sym_calc_value()
sym_calc_value() is also called in many other place.

Can you tell me the function of sym_calc_value() ?

main(): https://github.com/torvalds/linux/blob/9e8312f5e160ade069e131d54ab8652cf0e86e1a/scripts/kconfig/conf.c#L486

sym_calc_value(): https://github.com/torvalds/linux/blob/9e8312f5e160ade069e131d54ab8652cf0e86e1a/scripts/kconfig/symbol.c#L319

-- Csqshz