From: Angus Gratton Date: Thu, 17 May 2018 04:23:49 +0000 (+0800) Subject: mconf: Don't print a recommendation to use 'make' if CMake build system is in use X-Git-Tag: v3.1-rc2~9^2~19^2~10 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=61aff5162caaa32d8fbcb5be48f51e6352f87287;p=esp-idf mconf: Don't print a recommendation to use 'make' if CMake build system is in use Also add some cmake dependencies to rebuild mconf if its source files change. --- diff --git a/tools/cmake/kconfig.cmake b/tools/cmake/kconfig.cmake index f20002e1a5..7d1f513049 100644 --- a/tools/cmake/kconfig.cmake +++ b/tools/cmake/kconfig.cmake @@ -38,7 +38,7 @@ if(NOT MCONF) # set(MCONF kconfig_bin/mconf) - externalproject_add(mconf + Externalproject_Add(mconf SOURCE_DIR ${IDF_PATH}/tools/kconfig CONFIGURE_COMMAND "" BINARY_DIR "kconfig_bin" @@ -47,7 +47,16 @@ if(NOT MCONF) INSTALL_COMMAND "" EXCLUDE_FROM_ALL 1 ) + + file(GLOB mconf_srcfiles ${IDF_PATH}/tools/kconfig/*.c) + ExternalProject_Add_StepDependencies(mconf build + ${mconf_srcfiles} + ${IDF_PATH}/tools/kconfig/Makefile + ${CMAKE_CURRENT_LIST_FILE}) + unset(mconf_srcfiles) + set(menuconfig_depends DEPENDS mconf) + endif() # Find all Kconfig files for all components diff --git a/tools/kconfig/mconf.c b/tools/kconfig/mconf.c index 315ce2c7cb..75fe116357 100644 --- a/tools/kconfig/mconf.c +++ b/tools/kconfig/mconf.c @@ -980,11 +980,17 @@ static int handle_exit(void) } /* fall through */ case -1: - if (!silent) + if (!silent) { + const char *is_cmake = getenv("IDF_CMAKE"); + const char *build_msg; + if (is_cmake && is_cmake[0] == 'y') + build_msg = _("Ready to use CMake (or 'idf.py build') to build the project."); + else + build_msg = _("Execute 'make' to start the build or try 'make help'."); printf(_("\n\n" - "*** End of the configuration.\n" - "*** Execute 'make' to start the build or try 'make help'." - "\n\n")); + "*** End of the configuration.\n" + "*** %s\n\n"), build_msg); + } res = 0; break; default: