2021-09-14 00:13:48 +02:00

24 lines
751 B
CMake

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)