Kbuild has supported external modules for quite some time now, but
unfortunately it doesn't support Kconfig for external modules. This
significantly restricts the flexibility of using external modules. For
example, we can't define Kconfig dependencies to conditionally include
external modules based on a given SoC or Architecture.
To support Kconfig for external modules, we can hook in an external
Kconfig into the base Kconfig so that the external Kconfig gets looped
into kbuild.
This patch defines the new build variable KCONFIG_EXT_PREFIX which can
be used to point kbuild to the directory that includes a file named
Kconfig.ext. Just like all Kconfigs, the path needs to be relative to
KERNEL_SRC. That applies to all Kconfigs that Kconfig.ext sources.
Additionally, since the kconfig parser doesn't support conditional
statements, we need to add a Kconfig.ext placeholder for when
KCONFIG_EXT_PREFIX isn't defined.
Bug: 210148006
Signed-off-by: Will McVicker <willmcvicker@google.com>
Change-Id: I84790211b6c87b50bd20208d5b0f7bf228ce694b