CMake append objects from different CMakeLists.txt into one library

后端 未结 2 1233
無奈伤痛
無奈伤痛 2021-01-15 01:44

I would like to create a single library from objects from multiple sub-directories, each one containing their own CMakeLists.txt with OBJECT library trick to have multiple t

2条回答
  •  我在风中等你
    2021-01-15 02:38

    I just collect objects from all places using set with PARENT_SCOPE.

    root CMakeLists.txt:

    set(OBJECTS)
    
    add_subdirectory(lib1)
    add_subdirectory(lib2)
    
    add_library(lib STATIC ${OBJECTS})
    

    CMakeLists.txt in subdirectories:

    add_subdirectory(lib11)
    
    add_library(${PROJECT_NAME} OBJECT src1.c)
    list(APPEND OBJECTS $)
    set(OBJECTS ${OBJECTS} PARENT_SCOPE)
    

提交回复
热议问题