examples playground

exclude when used as a submodule
This commit is contained in:
2026-01-06 20:59:50 +01:00
parent 0040196561
commit a5dff947d9
2 changed files with 54 additions and 51 deletions

View File

@@ -1,34 +1,36 @@
find_package(Qt6 REQUIRED COMPONENTS Widgets) find_package(Qt6 REQUIRED COMPONENTS Widgets)
file(GLOB SUBDIRS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/*") file(GLOB SUBDIRS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/*")
foreach(SUBDIR ${SUBDIRS}) if (PROJECT_IS_TOP_LEVEL)
if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}) foreach(SUBDIR ${SUBDIRS})
file(GLOB SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.h") if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR})
file(GLOB SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.h")
if(SOURCES) if(SOURCES)
add_executable(${SUBDIR} ${SOURCES}) add_executable(${SUBDIR} ${SOURCES})
target_include_directories(${SUBDIR} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR} ${PROJECT_BINARY_DIR}/) target_include_directories(${SUBDIR} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR} ${PROJECT_BINARY_DIR}/)
target_compile_definitions(${SUBDIR} target_compile_definitions(${SUBDIR}
PRIVATE PRIVATE
"QWT_MOC_INCLUDE" "QWT_MOC_INCLUDE"
)
set_target_properties(
${SUBDIR}
PROPERTIES
AUTOMOC ON
)
target_link_libraries(${SUBDIR} qwt Qt${QT_VERSION_MAJOR}::Widgets)
if(NOT QWT_BUILD_EXAMPLES)
set_target_properties(${SUBDIR} PROPERTIES
EXCLUDE_FROM_ALL TRUE
EXCLUDE_FROM_DEFAULT_BUILD TRUE # mainly for Visual Studio
) )
set_target_properties(
${SUBDIR}
PROPERTIES
AUTOMOC ON
)
target_link_libraries(${SUBDIR} qwt Qt${QT_VERSION_MAJOR}::Widgets)
if(NOT QWT_BUILD_EXAMPLES)
set_target_properties(${SUBDIR} PROPERTIES
EXCLUDE_FROM_ALL TRUE
EXCLUDE_FROM_DEFAULT_BUILD TRUE # mainly for Visual Studio
)
endif()
endif() endif()
endif() endif()
endif() endforeach()
endforeach() endif()

View File

@@ -1,33 +1,34 @@
file(GLOB SUBDIRS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/*") file(GLOB SUBDIRS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/*")
if (PROJECT_IS_TOP_LEVEL)
foreach(SUBDIR ${SUBDIRS})
if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR})
file(GLOB SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.h")
foreach(SUBDIR ${SUBDIRS}) if(SOURCES)
if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}) add_executable(${SUBDIR} ${SOURCES})
file(GLOB SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR}/*.h")
if(SOURCES) target_include_directories(${SUBDIR} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR} ${PROJECT_BINARY_DIR}/)
add_executable(${SUBDIR} ${SOURCES})
target_include_directories(${SUBDIR} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/${SUBDIR} ${PROJECT_BINARY_DIR}/) target_compile_definitions(${SUBDIR}
PRIVATE
target_compile_definitions(${SUBDIR} "QWT_MOC_INCLUDE"
PRIVATE
"QWT_MOC_INCLUDE"
)
set_target_properties(
${SUBDIR}
PROPERTIES
AUTOMOC ON
)
target_link_libraries(${SUBDIR} qwt)
if(NOT QWT_BUILD_PLAYGROUND)
set_target_properties(${SUBDIR} PROPERTIES
EXCLUDE_FROM_ALL TRUE
EXCLUDE_FROM_DEFAULT_BUILD TRUE # mainly for Visual Studio
) )
set_target_properties(
${SUBDIR}
PROPERTIES
AUTOMOC ON
)
target_link_libraries(${SUBDIR} qwt)
if(NOT QWT_BUILD_PLAYGROUND)
set_target_properties(${SUBDIR} PROPERTIES
EXCLUDE_FROM_ALL TRUE
EXCLUDE_FROM_DEFAULT_BUILD TRUE # mainly for Visual Studio
)
endif()
endif() endif()
endif() endif()
endif() endforeach()
endforeach() endif()