From ca060cf95da2f602f8c73aa0a558a835e38ae08e Mon Sep 17 00:00:00 2001 From: Alexander Vieth Date: Tue, 16 Jun 2026 13:09:41 +0200 Subject: [PATCH 1/2] Use manivault cmake project defaults --- ExampleAnalysis/CMakeLists.txt | 17 +++++------------ ExampleData/CMakeLists.txt | 20 ++++++-------------- ExampleDependencies/CMakeLists.txt | 19 ++++++------------- ExampleLoader/CMakeLists.txt | 17 +++++------------ ExampleTransformation/CMakeLists.txt | 17 +++++------------ ExampleView/CMakeLists.txt | 17 +++++------------ ExampleViewJS/CMakeLists.txt | 17 +++++------------ ExampleViewOpenGL/CMakeLists.txt | 17 +++++------------ ExampleWriter/CMakeLists.txt | 17 +++++------------ 9 files changed, 47 insertions(+), 111 deletions(-) diff --git a/ExampleAnalysis/CMakeLists.txt b/ExampleAnalysis/CMakeLists.txt index 9f443a4..b164938 100644 --- a/ExampleAnalysis/CMakeLists.txt +++ b/ExampleAnalysis/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleAnalysisPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # ----------------------------------------------------------------------------- # Dependencies @@ -27,6 +19,7 @@ endif() find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -67,10 +60,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE Common) # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleData/CMakeLists.txt b/ExampleData/CMakeLists.txt index 14eef19..4c00996 100644 --- a/ExampleData/CMakeLists.txt +++ b/ExampleData/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleDataPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # Include cmake tools include(GenerateExportHeader) @@ -30,6 +22,7 @@ include(GenerateExportHeader) find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -81,12 +74,11 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -set_target_properties(${PROJECT_NAME} PROPERTIES PUBLIC_HEADER "${PLUGIN_HEADERS}") - -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} + PUBLIC_HEADER "${PLUGIN_HEADERS}" +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleDependencies/CMakeLists.txt b/ExampleDependencies/CMakeLists.txt index 0e807ba..61b2980 100644 --- a/ExampleDependencies/CMakeLists.txt +++ b/ExampleDependencies/CMakeLists.txt @@ -12,16 +12,8 @@ PROJECT("ExampleDependenciesPlugin" LANGUAGES CXX C) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() - -include(cmake/get_cpm.cmake) +include(get_cpm.cmake) # ----------------------------------------------------------------------------- # Dependencies @@ -29,6 +21,7 @@ include(cmake/get_cpm.cmake) find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() CPMAddPackage( NAME highway @@ -93,10 +86,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleLoader/CMakeLists.txt b/ExampleLoader/CMakeLists.txt index 71a4837..4e42ac5 100644 --- a/ExampleLoader/CMakeLists.txt +++ b/ExampleLoader/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleLoaderPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # ----------------------------------------------------------------------------- # Dependencies @@ -27,6 +19,7 @@ endif() find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -64,10 +57,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleTransformation/CMakeLists.txt b/ExampleTransformation/CMakeLists.txt index 1062e48..2c248e2 100644 --- a/ExampleTransformation/CMakeLists.txt +++ b/ExampleTransformation/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleTransformationPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # ----------------------------------------------------------------------------- # Dependencies @@ -27,6 +19,7 @@ endif() find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -64,10 +57,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleView/CMakeLists.txt b/ExampleView/CMakeLists.txt index 1a73e9c..e8a3b38 100644 --- a/ExampleView/CMakeLists.txt +++ b/ExampleView/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleViewPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # ----------------------------------------------------------------------------- # Dependencies @@ -27,6 +19,7 @@ endif() find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -68,10 +61,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleViewJS/CMakeLists.txt b/ExampleViewJS/CMakeLists.txt index e2ce19b..9bcade2 100644 --- a/ExampleViewJS/CMakeLists.txt +++ b/ExampleViewJS/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleViewJSPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # ----------------------------------------------------------------------------- # Dependencies @@ -27,6 +19,7 @@ endif() find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -83,10 +76,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleViewOpenGL/CMakeLists.txt b/ExampleViewOpenGL/CMakeLists.txt index f6c5cca..4557570 100644 --- a/ExampleViewOpenGL/CMakeLists.txt +++ b/ExampleViewOpenGL/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleViewOpenGLPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # ----------------------------------------------------------------------------- # Dependencies @@ -27,6 +19,7 @@ endif() find_package(Qt6 COMPONENTS Widgets WebEngineWidgets OpenGL OpenGLWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -78,10 +71,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking diff --git a/ExampleWriter/CMakeLists.txt b/ExampleWriter/CMakeLists.txt index 95b7275..2e3c797 100644 --- a/ExampleWriter/CMakeLists.txt +++ b/ExampleWriter/CMakeLists.txt @@ -12,14 +12,6 @@ PROJECT("ExampleWriterPlugin" LANGUAGES CXX) # ----------------------------------------------------------------------------- set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOMOC ON) - -if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /DWIN32 /EHsc /MP /permissive- /Zc:__cplusplus") - set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") - set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") -endif() # ----------------------------------------------------------------------------- # Dependencies @@ -27,6 +19,7 @@ endif() find_package(Qt6 COMPONENTS Widgets WebEngineWidgets REQUIRED) find_package(ManiVault COMPONENTS Core PointData CONFIG QUIET) +mv_project_defaults() # ----------------------------------------------------------------------------- # Include Common directory @@ -64,10 +57,10 @@ target_include_directories(${PROJECT_NAME} PRIVATE "${ManiVault_INCLUDE_DIR}") # Request C++20 target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20) -# Enable unity build -if(MV_UNITY_BUILD) - set_target_properties(${PROJECT_NAME} PROPERTIES UNITY_BUILD ON) -endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + AUTOMOC ON + UNITY_BUILD ${MV_UNITY_BUILD} +) # ----------------------------------------------------------------------------- # Target library linking From 8aa4600f895f887e59836ccb683af61e1fc17e29 Mon Sep 17 00:00:00 2001 From: Alexander Vieth Date: Tue, 16 Jun 2026 13:14:34 +0200 Subject: [PATCH 2/2] Revert path change --- ExampleDependencies/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleDependencies/CMakeLists.txt b/ExampleDependencies/CMakeLists.txt index 61b2980..45ffb39 100644 --- a/ExampleDependencies/CMakeLists.txt +++ b/ExampleDependencies/CMakeLists.txt @@ -13,7 +13,7 @@ PROJECT("ExampleDependenciesPlugin" LANGUAGES CXX C) set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake) set(CMAKE_INCLUDE_CURRENT_DIR ON) -include(get_cpm.cmake) +include(cmake/get_cpm.cmake) # ----------------------------------------------------------------------------- # Dependencies