Project

General

Profile

Actions

Bug #118

open

Kconfig defines symbols with unmet dependencies

Added by Nico Huber almost 7 years ago. Updated over 6 years ago.

Status:
New
Priority:
Normal
Assignee:
Category:
build system
Target version:
-
Start date:
05/18/2017
Due date:
% Done:

0%

Estimated time:
Affected versions:
Needs backport to:
Affected hardware:
Affected OS:

Description

Our current Kconfig setup, with the custom KCONFIG_NEGATIVES option, does not only output =n/=0 for unset booleans and numbers but also outputs booleans and numbers with unmet dependencies (i.e. symbols that are not defined at all for a given .config).

This makes Kconfig less predictable. So I ask, do we want this "feature" in the long run? For boolean symbols, we already have the IS_ENABLED() macro. For numbers, I'd argue that they are mostly used in code that should be guarded (preferably in the Makefile.inc).

OTOH, if we'd keep the current Kconfig behaviour, it would save us some ugly #if IS_ENABLED() guards (e.g. when CONFIG_* numbers are used in headers or shared code files).

Actions

Also available in: Atom PDF