]> granicus.if.org Git - esp-idf/commitdiff
cmake: generate sections info for all static libs as in make
authorRenz Christian Bagaporo <renz@espressif.com>
Tue, 27 Nov 2018 05:26:15 +0000 (13:26 +0800)
committerRenz Christian Bagaporo <renz@espressif.com>
Wed, 28 Nov 2018 06:24:21 +0000 (14:24 +0800)
tools/cmake/components.cmake
tools/cmake/ldgen.cmake

index cec044358904e5bff2779749ca12c910d72fe07d..82d0fbcaaa4affa5bf2d79b7591cf1f63d2b5703 100644 (file)
@@ -62,6 +62,8 @@ function(register_component)
         set(include_type PUBLIC)
 
         set_property(TARGET ${COMPONENT_TARGET} PROPERTY OUTPUT_NAME ${COMPONENT_NAME})
+
+        ldgen_generate_sections_info(${COMPONENT_TARGET})
     else()
         add_library(${COMPONENT_TARGET} INTERFACE) # header-only component
         set(include_type INTERFACE)
index b69ff3bfbb7652049e28f069c4a0d014b6c12f39..4dc405436e588bbd22766d08a789e87af4f2b5fb 100644 (file)
@@ -22,7 +22,12 @@ function(ldgen_add_fragment_files target fragment_files)
     endforeach()
 
     set_property(TARGET ldgen APPEND PROPERTY FRAGMENT_FILES ${fragment_files_full_path})
+endfunction()
 
+# ldgen_generate_sections_info
+#
+# Generate sections info for specified target to be used in linker script generation
+function(ldgen_generate_sections_info target)
     get_filename_component(target_sections_info ${CMAKE_CURRENT_BINARY_DIR}/${target}.sections_info ABSOLUTE)
 
     add_custom_command(