
On Sun, Dec 04, 2022 at 10:14:15AM -0500, Tom Rini wrote:
Now that all symbols have been migrated to Kconfig, or are part of the CFG namespace we do not need a complex check for unmigrated CONFIG symbols. Any instance of #define (or #undef) or a CONFIG value is wrong, so cause CI to fail.
This test is not as strict as possible yet as we have more symbols that were not previously caught to deal with.
Signed-off-by: Tom Rini trini@konsulko.com
At this point in the series, I want to make a few comments.
First, before applying, there are some recent other series I'll be taking, such as the one to convert keymile platforms, which makes some of the patches here irrelevant.
Second, and as implied by the last few patches in this series, the regex pattern here finds more symbols, some of which we can ignore. For example, the final form of this test will just ignore arch/*/dts/ as CONFIG symbols defined there are coming in from Linux and not our concern. And include/linux/kconfig.h defines CONFIG_IS_ENABLED, etc, so also valid defines. But there's a lot of oddball defines out there, which I intend to deal with. Starting with symbols which do NOT follow the pattern of '#defineSPACECONFIG_...' just because there's only a few of them, and dealing with those manually makes scripting something in the form of "for every symbol, is there a non-define usage of it" should get rid of many of them, as unused code. The hopefully follow up to that is usage in code that should be removed anyhow as it's never enabled (and not something like an RTC driver that should be enabled for sandbox as it's otherwise up to date).
Third, this is still a big milestone. Everything in the big list of symbols has been handled and tooling is in place to catch re-introductions. I want to thank everyone for their hard work getting us here.