From 38ccf5f28badeecb3a99a20ad745341a222fa1d0 Mon Sep 17 00:00:00 2001 From: Shivani Tipnis Date: Tue, 2 Jul 2019 15:21:28 +0530 Subject: [PATCH] cmake: Fix cmakelists to add required private components Fixes: https://github.com/espressif/esp-idf/issues/3710 --- components/esp_common/CMakeLists.txt | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/components/esp_common/CMakeLists.txt b/components/esp_common/CMakeLists.txt index 1c3274dd09..069f02e5f1 100644 --- a/components/esp_common/CMakeLists.txt +++ b/components/esp_common/CMakeLists.txt @@ -27,4 +27,28 @@ else() -fno-stack-protector) set_property(TARGET ${COMPONENT_LIB} APPEND PROPERTY LINK_LIBRARIES "-Wl,--gc-sections") set_property(TARGET ${COMPONENT_LIB} APPEND PROPERTY INTERFACE_LINK_LIBRARIES "-Wl,--gc-sections") + set_property(TARGET ${COMPONENT_LIB} APPEND PROPERTY LINK_INTERFACE_MULTIPLICITY 4) + + # List of components needed for the error codes list + set(optional_reqs ulp + efuse + esp_http_client + esp_http_server + bootloader_support + nvs_flash + esp_wifi + app_update + lwip + spi_flash + wpa_supplicant + tcpip_adapter) + + idf_build_get_property(build_components BUILD_COMPONENTS) + foreach(req ${optional_reqs}) + if(req IN_LIST build_components) + idf_component_get_property(req_lib ${req} COMPONENT_LIB) + target_link_libraries(${COMPONENT_LIB} PRIVATE ${req_lib}) + endif() + endforeach() + endif()