将库添加到CMake macOS捆绑包

l2osamch  于 8个月前  发布在  Mac
关注(0)|答案(1)|浏览(103)

我如何将一个库添加到macos包中,使它最终也在包中?该图书馆是该项目的一部分,该项目有两个目标:库和 Bootstrap 可执行文件。如果我将 Bootstrap 可执行文件设置为Macos Bundle,则应用程序包会构建并正常工作,但库不会放入包中。我如何才能做到这一点?

cig3rfwq

cig3rfwq1#

请参见fixup_bundle。它提取所需的依赖项。不仅是自我定义的目标,而且是外部依赖。

set(CPACK_GENERATOR "DragNDrop")
set(CPACK_MONOLITHIC_INSTALL TRUE)

set(FB_APP "\${CMAKE_INSTALL_PREFIX}/myapp.app")
set(FB_DIRS ${CMAKE_BINARY_DIR}/lib ${CMAKE_PREFIX_PATH}/lib ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})

install(CODE "
    include(BundleUtilities)
    fixup_bundle(\"${FB_APP}\" \"\" \"${FB_DIRS}\")
")

include(CPack)

相关问题