diff --git a/make/ldgen.mk b/make/ldgen.mk index 25cd23790..3c2dea127 100644 --- a/make/ldgen.mk +++ b/make/ldgen.mk @@ -17,8 +17,7 @@ $(2): $(1) $(LDGEN_FRAGMENT_FILES) $(SDKCONFIG) $(LDGEN_SECTIONS_INFO_FILES) --kconfig $(IDF_PATH)/Kconfig \ --env "COMPONENT_KCONFIGS=$(COMPONENT_KCONFIGS)" \ --env "COMPONENT_KCONFIGS_PROJBUILD=$(COMPONENT_KCONFIGS_PROJBUILD)" \ - --env "IDF_CMAKE=n" \ - --env "IDF_TARGET=$(IDF_TARGET)" + --env "IDF_CMAKE=n" endef define ldgen_create_commands diff --git a/tools/cmake/kconfig.cmake b/tools/cmake/kconfig.cmake index cb2a5c3ca..2b3dbcb8b 100644 --- a/tools/cmake/kconfig.cmake +++ b/tools/cmake/kconfig.cmake @@ -61,13 +61,14 @@ function(kconfig_process_config) add_custom_target(menuconfig ${menuconfig_depends} # create any missing config file, with defaults if necessary - COMMAND ${confgen_basecommand} --output config ${SDKCONFIG} + COMMAND ${confgen_basecommand} --env "IDF_TARGET=${IDF_TARGET}" --output config ${SDKCONFIG} COMMAND ${CMAKE_COMMAND} -E env "COMPONENT_KCONFIGS=${kconfigs}" "COMPONENT_KCONFIGS_PROJBUILD=${kconfigs_projbuild}" "IDF_CMAKE=y" "KCONFIG_CONFIG=${SDKCONFIG}" - ${MCONF} ${ROOT_KCONFIG} + "IDF_TARGET=${IDF_TARGET}" + ${CMAKE_BINARY_DIR}/${MCONF} ${ROOT_KCONFIG} VERBATIM USES_TERMINAL) @@ -157,6 +158,7 @@ if(NOT MCONF) BUILD_BYPRODUCTS ${MCONF} INSTALL_COMMAND "" EXCLUDE_FROM_ALL 1 + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} # Put built files on top level build directory ) file(GLOB mconf_srcfiles ${IDF_PATH}/tools/kconfig/*.c)