小编Lui*_*uso的帖子

CMake 的 FetchContent 与 Makefile 构建的依赖项

我当前的项目需要一个使用 Makefile 构建的库。我想在项目编译期间编译这个库;此功能是 FetchContent 的主要卖点,它与 CMake 依赖项配合得很好。尽管如此,我无法让它与 Makefile 一起使用,也找不到有关如何执行此操作的示例。

FetchContent_Declare(
    make_lib
    URL http://url/library_code.tar.gz 
    BUILD_COMMAND ${CMAKE_COMMAND} -E env make -j 8
    BUILD_IN_SOURCE true  
    BINARY_DIR ""
)

FetchContent_GetProperties(make_lib)
if (NOT make_lib_POPULATED)
    FetchContent_Populate(make_lib)

    # here I would like to declare imported libraries:
    add_library(make_lib::libA STATIC IMPORTED GLOBAL)
    target_include_directories(make_lib::libA INTERFACE ${make_lib_SOURCE_DIR}/include)
    set_property(TARGET make_lib::libA   PROPERTY IMPORTED_LOCATION <path to "to be built" lib>)

endif()
Run Code Online (Sandbox Code Playgroud)
  • “编译时”执行是否可能make
  • 如果可以的话,可以并行吗?
  • 是否可以使用依赖编译库声明导入的目标?

cmake external-dependencies

3
推荐指数
1
解决办法
6601
查看次数

标签 统计

cmake ×1

external-dependencies ×1