cmake: kconfig: pass GENERATED_DTS_BOARD_CONF on to kconfig
Make kconfigfunctions.py agnostic to where GENERATED_DTS_BOARD_CONF is
located.
We don't want to encode the path of GENERATED_DTS_BOARD_CONF into more
places than necessary. Also, re-using GENERATED_DTS_BOARD_CONF makes
it easier to change where generated_dts_board.conf is located.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
diff --git a/cmake/kconfig.cmake b/cmake/kconfig.cmake
index ad62a6f..a4a0849 100644
--- a/cmake/kconfig.cmake
+++ b/cmake/kconfig.cmake
@@ -31,6 +31,7 @@
set(ENV{SOC_DIR} ${SOC_DIR})
set(ENV{PROJECT_BINARY_DIR} ${PROJECT_BINARY_DIR})
set(ENV{ARCH_DIR} ${ARCH_DIR})
+set(ENV{GENERATED_DTS_BOARD_CONF} ${GENERATED_DTS_BOARD_CONF})
add_custom_target(
menuconfig
@@ -45,6 +46,7 @@
PROJECT_BINARY_DIR=$ENV{PROJECT_BINARY_DIR}
ZEPHYR_TOOLCHAIN_VARIANT=${ZEPHYR_TOOLCHAIN_VARIANT}
ARCH_DIR=$ENV{ARCH_DIR}
+ GENERATED_DTS_BOARD_CONF=$ENV{GENERATED_DTS_BOARD_CONF}
${PYTHON_EXECUTABLE} ${ZEPHYR_BASE}/scripts/kconfig/menuconfig.py ${KCONFIG_ROOT}
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/kconfig
USES_TERMINAL
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index 6a29112..1254b0c 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -147,6 +147,7 @@
SOC_DIR=soc/
SRCARCH=x86
PROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ GENERATED_DTS_BOARD_CONF=not_applicable
KCONFIG_TURBO_MODE=${KCONFIG_TURBO_MODE}
KCONFIG_DOC_MODE=1
${PYTHON_EXECUTABLE} scripts/genrest.py Kconfig ${RST_OUT}/doc/reference/kconfig/
diff --git a/scripts/kconfig/kconfigfunctions.py b/scripts/kconfig/kconfigfunctions.py
index 57d515a..c21d56d 100644
--- a/scripts/kconfig/kconfigfunctions.py
+++ b/scripts/kconfig/kconfigfunctions.py
@@ -11,16 +11,12 @@
doc_mode = os.environ.get('KCONFIG_DOC_MODE') == "1"
-# The env var 'PROJECT_BINARY_DIR' must be set
-bin_dir = os.environ['PROJECT_BINARY_DIR']
-
-conf_file = os.path.join(
- bin_dir, 'include', 'generated', 'generated_dts_board.conf'
-)
+# The env var 'GENERATED_DTS_BOARD_CONF' must be set
+GENERATED_DTS_BOARD_CONF = os.environ['GENERATED_DTS_BOARD_CONF']
dt_defines = {}
-if (not doc_mode) and os.path.isfile(conf_file):
- with open(conf_file, 'r', encoding='utf-8') as fd:
+if (not doc_mode) and os.path.isfile(GENERATED_DTS_BOARD_CONF):
+ with open(GENERATED_DTS_BOARD_CONF, 'r', encoding='utf-8') as fd:
for line in fd:
if '=' in line:
define, val = line.split('=')