]> granicus.if.org Git - esp-idf/commitdiff
cmake: Set COMPONENT_PATH during early expansion of dependencies
authorAngus Gratton <angus@espressif.com>
Tue, 19 Mar 2019 23:42:29 +0000 (10:42 +1100)
committerAngus Gratton <gus@projectgus.com>
Tue, 19 Mar 2019 23:45:45 +0000 (10:45 +1100)
Works around bug where components/soc/CMakeLists.txt was testing "EXISTS
${COMPONENT_PATH}/${SOC_NAME}" and this test could pass during early
expansion if COMPONENT_PATH was empty and a directory /esp32 exists
on Windows.

Closes https://github.com/espressif/esp-idf/issues/3195

tools/cmake/scripts/expand_requirements.cmake

index 5886e632017fcfc06e583ad36bc91bb2491c6c87..26234853dd08e8d8d40150d4bb06e0efef7da711 100644 (file)
@@ -92,9 +92,9 @@ function(expand_component_requirements component)
     endif()
     set_property(GLOBAL APPEND PROPERTY SEEN_COMPONENTS ${component})
 
-    find_component_path("${component}" "${ALL_COMPONENTS}" "${ALL_COMPONENT_PATHS}" component_path)
-    debug("Expanding dependencies of ${component} @ ${component_path}")
-    if(NOT component_path)
+    find_component_path("${component}" "${ALL_COMPONENTS}" "${ALL_COMPONENT_PATHS}" COMPONENT_PATH)
+    debug("Expanding dependencies of ${component} @ ${COMPONENT_PATH}")
+    if(NOT COMPONENT_PATH)
         set_property(GLOBAL APPEND PROPERTY COMPONENTS_NOT_FOUND ${component})
         return()
     endif()
@@ -104,7 +104,7 @@ function(expand_component_requirements component)
     unset(COMPONENT_REQUIRES)
     unset(COMPONENT_PRIV_REQUIRES)
     set(COMPONENT ${component})
-    include(${component_path}/CMakeLists.txt)
+    include(${COMPONENT_PATH}/CMakeLists.txt)
 
     get_property(requires GLOBAL PROPERTY "${component}_REQUIRES")
     get_property(requires_priv GLOBAL PROPERTY "${component}_PRIV_REQUIRES")
@@ -124,7 +124,7 @@ function(expand_component_requirements component)
     endif()
 
     # Now append this component to the full list (after its dependencies)
-    set_property(GLOBAL APPEND PROPERTY BUILD_COMPONENT_PATHS ${component_path})
+    set_property(GLOBAL APPEND PROPERTY BUILD_COMPONENT_PATHS ${COMPONENT_PATH})
     set_property(GLOBAL APPEND PROPERTY BUILD_COMPONENTS ${component})
 endfunction()