1file(GLOB public_headers ${LLDB_SOURCE_DIR}/include/lldb/API/*.h) 2file(GLOB root_public_headers ${LLDB_SOURCE_DIR}/include/lldb/lldb-*.h) 3file(GLOB root_private_headers ${LLDB_SOURCE_DIR}/include/lldb/lldb-private*.h) 4list(REMOVE_ITEM root_public_headers ${root_private_headers}) 5foreach(header 6 ${public_headers} 7 ${root_public_headers} 8 ${LLDB_SOURCE_DIR}/include/lldb/Utility/SharingPtr.h) 9 get_filename_component(basename ${header} NAME) 10 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/FrameworkHeaders/${basename} 11 DEPENDS ${header} 12 COMMAND ${CMAKE_COMMAND} -E copy ${header} ${CMAKE_CURRENT_BINARY_DIR}/FrameworkHeaders/${basename}) 13 list(APPEND framework_headers ${CMAKE_CURRENT_BINARY_DIR}/FrameworkHeaders/${basename}) 14endforeach() 15 16add_custom_target(lldb-framework-headers DEPENDS ${framework_headers}) 17 18add_custom_command(TARGET lldb-framework POST_BUILD 19 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_BINARY_DIR}/FrameworkHeaders $<TARGET_FILE_DIR:liblldb>/Headers 20 COMMAND ${LLDB_SOURCE_DIR}/scripts/framework-header-fix.sh $<TARGET_FILE_DIR:liblldb>/Headers ${LLDB_VERSION} 21) 22 23if (NOT IOS) 24 if (NOT LLDB_BUILT_STANDALONE) 25 add_dependencies(lldb-framework clang-headers) 26 endif() 27 add_custom_command(TARGET lldb-framework POST_BUILD 28 COMMAND ${CMAKE_COMMAND} -E create_symlink Versions/Current/Headers ${LLDB_FRAMEWORK_DIR}/LLDB.framework/Headers 29 COMMAND ${CMAKE_COMMAND} -E create_symlink ${LLDB_FRAMEWORK_VERSION} ${LLDB_FRAMEWORK_DIR}/LLDB.framework/Versions/Current 30 COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH} $<TARGET_FILE_DIR:liblldb>/Resources/Clang 31 ) 32endif() 33 34add_dependencies(lldb-framework 35 lldb-framework-headers 36 lldb-suite) 37 38add_custom_target(install-lldb-framework) 39add_custom_target(install-lldb-framework-stripped) 40