You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

24 lines
751 B

cmake_minimum_required(VERSION 3.10)
project(ObjectLibrary)
include("../AutogenCoreTest.cmake")
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
# Object library a defined in a subdirectory
add_subdirectory(a)
# Object library b defined locally
include_directories(b)
add_library(b OBJECT b/classb.cpp)
target_compile_features(b PRIVATE ${QT_COMPILE_FEATURES})
# Executable with OBJECT library generator expressions
add_executable(someProgram main.cpp $<TARGET_OBJECTS:a> $<TARGET_OBJECTS:b>)
target_link_libraries(someProgram ${QT_LIBRARIES})
# Executable without its own AUTOMOC.
add_executable(someProgram2 main.cpp)
target_link_libraries(someProgram2 PRIVATE a b ${QT_LIBRARIES})
set_property(TARGET someProgram2 PROPERTY AUTOMOC OFF)