kconfig: support multiple DTS bindings directories

Some confluence of recent changes resulted in builds with
application-specific bindings being unable to find bindings present in
the system directory.  Add quotes and splits as necessary to propagate
multiple directories through the system.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
This commit is contained in:
Peter A. Bigot 2019-09-14 11:21:14 -05:00 committed by Kumar Gala
commit 372a4fe5be
2 changed files with 4 additions and 4 deletions

View file

@ -40,7 +40,7 @@ set(ENV{CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR})
set(ENV{ARCH_DIR} ${ARCH_DIR})
set(ENV{GENERATED_DTS_BOARD_CONF} ${GENERATED_DTS_BOARD_CONF})
set(ENV{DTS_POST_CPP} ${DTS_POST_CPP})
set(ENV{DTS_ROOT_BINDINGS} ${DTS_ROOT_BINDINGS})
set(ENV{DTS_ROOT_BINDINGS} "${DTS_ROOT_BINDINGS}")
# Allow out-of-tree users to add their own Kconfig python frontend
# targets by appending targets to the CMake list

View file

@ -20,11 +20,11 @@ doc_mode = os.environ.get('KCONFIG_DOC_MODE') == "1"
dt_defines = {}
if not doc_mode:
DTS_POST_CPP = os.environ["DTS_POST_CPP"]
BINDINGS_DIR = os.environ.get("DTS_ROOT_BINDINGS")
BINDINGS_DIRS = os.environ.get("DTS_ROOT_BINDINGS")
# if a board port doesn't use DTS than these might not be set
if os.path.isfile(DTS_POST_CPP) and BINDINGS_DIR is not None:
edt = edtlib.EDT(DTS_POST_CPP, [BINDINGS_DIR])
if os.path.isfile(DTS_POST_CPP) and BINDINGS_DIRS is not None:
edt = edtlib.EDT(DTS_POST_CPP, BINDINGS_DIRS.split(";"))
else:
edt = None