Enable Unity Builds unconditionally

Projects using KDDW won't need to modify KDDW, so there's no impact
on incremental builds
This commit is contained in:
Sergio Martins
2020-12-15 11:13:41 +00:00
parent bfeac02a45
commit cf232dda34
3 changed files with 11 additions and 3 deletions

View File

@@ -82,6 +82,12 @@ include(FeatureSummary)
option(${PROJECT_NAME}_QT6 "Build against Qt 6" OFF)
option(${PROJECT_NAME}_DEVELOPER_MODE "Developer Mode" OFF)
option(${PROJECT_NAME}_PYTHON_BINDINGS "Build python bindings" OFF)
if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16.0")
option(${PROJECT_NAME}_UNITY_BUILD "Build with CMake's UNITY_BUILD" ON)
endif()
if(${PROJECT_NAME}_PYTHON_BINDINGS AND (CMAKE_BUILD_TYPE MATCHES "^[Dd]eb" OR ${PROJECT_NAME}_STATIC))
message(FATAL_ERROR "** Python Bindings are disabled in debug or static builds.")
endif()
@@ -225,3 +231,8 @@ endif()
if(${PROJECT_NAME}_DOCS)
add_subdirectory(docs) # needs to go last, in case there are build source files
endif()
if (${PROJECT_NAME}_UNITY_BUILD)
set_target_properties(kddockwidgets PROPERTIES UNITY_BUILD ON)
set_target_properties(kddockwidgets_multisplitter PROPERTIES UNITY_BUILD ON)
endif()

View File

@@ -242,7 +242,6 @@ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/KDDockWidgetsConfig.cmake"
if(${PROJECT_NAME}_DEVELOPER_MODE)
# Under developer mode since kddw might be a sub-folder of a project setting a different value for QT_DISABLE_DEPRECATED_BEFORE
target_compile_definitions(kddockwidgets PRIVATE QT_DISABLE_DEPRECATED_BEFORE=0x060000)
set_target_properties(kddockwidgets PROPERTIES UNITY_BUILD ON)
if (NOT ${PROJECT_NAME}_QTQUICK) # TODO: We can support it
add_executable(kddockwidgets_linter layoutlinter_main.cpp)

View File

@@ -73,8 +73,6 @@ if(${PROJECT_NAME}_DEVELOPER_MODE)
# Under developer mode since kddw might be a sub-folder of a project setting a different value for QT_DISABLE_DEPRECATED_BEFORE
target_compile_definitions(kddockwidgets_multisplitter PRIVATE QT_DISABLE_DEPRECATED_BEFORE=0x060000)
set_target_properties(kddockwidgets_multisplitter PROPERTIES UNITY_BUILD ON)
if(${PROJECT_NAME}_TESTS AND NOT ${PROJECT_NAME}_QTQUICK)
add_subdirectory(tests)
endif()