@@ -28,6 +28,7 @@ include(GenerateExportHeader)
2828include (FeatureSummary)
2929include (GNUInstallDirs)
3030include (GetGitRevisionDescription)
31+ include (CMakeDependentOption)
3132
3233set (CMAKE_CXX_SCAN_FOR_MODULES OFF )
3334set (CMAKE_CXX_EXTENSIONS OFF )
@@ -36,13 +37,35 @@ set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
3637set (CMAKE_POSITION_INDEPENDENT_CODE ON )
3738set (CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR} /runtime" )
3839
39- option (QUITE_BUILD_PROBES "Decides if the probes should be build" ON )
40+ option (QUITE_BUILD_PROBE_QT "Decides if the probes should be build" ON )
41+ option (QUITE_BUILD_TEST_API "Decides if the testing API should be build" ON )
42+ cmake_dependent_option(
43+ QUITE_BUILD_PYTHON_TEST_API
44+ "Decides if the python testing API should be build"
45+ ON
46+ QUITE_BUILD_TEST_API
47+ OFF
48+ )
49+ option (
50+ QUITE_BUILD_REMOTE_MANAGER
51+ "Decides if the remote manager should be build"
52+ ON
53+ )
54+
55+ add_feature_info(QtProbe QUITE_BUILD_PROBE_QT "Build probeqt" )
56+ add_feature_info(TestingApi QUITE_BUILD_TEST_API "Build testing API" )
4057add_feature_info(
41- Studio
42- QUITE_BUILD_STUDIO
43- "The studio provides a way to interactively explore the objects in the app. "
58+ TestingPythonApi
59+ QUITE_BUILD_PYTHON_TEST_API
60+ "Build testing API "
4461)
45- add_feature_info(Testing BUILD_TESTING "Build all tests." )
62+ add_feature_info(
63+ RemoteManager
64+ QUITE_BUILD_REMOTE_MANAGER
65+ "Build remote manager"
66+ )
67+
68+ add_feature_info(Testing BUILD_TESTING "Build all tests" )
4669add_feature_info(
4770 SharedLibraries
4871 BUILD_SHARED_LIBS
@@ -56,55 +79,61 @@ message(STATUS "git_branch: ${git_branch}")
5679find_package (Sanitizers REQUIRED)
5780### NOTE: Set CPM_USE_LOCAL_PACKAGES or CPM_LOCAL_PACKAGES_ONLY to true if you want to use system packages or a package manager like vcpkg.
5881include (get_cpm)
59- set (BOOST_VERSION "1.88 .0" )
82+ set (BOOST_VERSION "1.89 .0" )
6083list (APPEND BOOST_INCLUDE_LIBRARIES asio process)
6184cpmaddpackage(
6285 NAME Boost
6386 VERSION "${BOOST_VERSION} "
6487 URL https://github.com/boostorg/boost/releases/download/boost-${BOOST_VERSION} /boost-${BOOST_VERSION} -cmake.tar.xz
65- URL_HASH SHA256=f48b48390380cfb94a629872346e3a81370dc498896f16019ade727ab72eb1ec
88+ URL_HASH SHA256=67acec02d0d118b5de9eb441f5fb707b3a1cdd884be00ca24b9a73c995511f74
6689 EXCLUDE_FROM_ALL ON
6790 SYSTEM ON
6891 FIND_PACKAGE_ARGUMENTS "CONFIG"
6992 OPTIONS "BOOST_ENABLE_CMAKE ON" "BOOST_PROCESS_USE_STD_FS ON" "BOOST_SKIP_INSTALL_RULES ${CMAKE_SKIP_INSTALL_RULES} "
7093)
7194cpmaddpackage("gh:fmtlib/fmt#11.2.0" )
72- cpmaddpackage("gh:odygrd/quill@10.0.1 " )
95+ cpmaddpackage("gh:odygrd/quill@10.1.0 " )
7396cpmaddpackage(URI
"gh:skypjack/[email protected] " NAME "EnTT" FIND_PACKAGE_ARGUMENTS
"CONFIG" )
74- cpmaddpackage(URI
"gh:CLIUtils/[email protected] " OPTIONS "CLI11_PRECOMPILED ON" )
75- cpmaddpackage(URI "gh:NVIDIA/stdexec#0d0a15c669cbd2571248536a7e70524d8b7071aa" NAME "stdexec" VERSION 0.11 FIND_PACKAGE_ARGUMENTS "CONFIG" OPTIONS "STDEXEC_BUILD_TESTS OFF" "STDEXEC_BUILD_EXAMPLES OFF" "STDEXEC_ENABLE_ASIO ON"
97+ cpmaddpackage(URI "gh:NVIDIA/stdexec#daf12bcc46438f88b3c78212363f7b6531338780" NAME "stdexec" VERSION 0.11 FIND_PACKAGE_ARGUMENTS "CONFIG" OPTIONS "STDEXEC_BUILD_TESTS OFF" "STDEXEC_BUILD_EXAMPLES OFF" "STDEXEC_ENABLE_ASIO ON"
7698)
7799cpmaddpackage(URI
"gh:Tradias/[email protected] " FIND_PACKAGE_ARGUMENTS
"CONFIG" VERSION 3.4.0)
78100cpmaddpackage(URI
"gh:nlohmann/[email protected] " FIND_PACKAGE_ARGUMENTS
"CONFIG" NAME "nlohmann_json" )
79101cpmaddpackage(URI "gh:nothings/stb#f0569113c93ad095470c54bf34a17b36646bbbb5" NAME Stb
80102)
103+ find_package (gRPC CONFIG REQUIRED)
81104set (Stb_INCLUDE_DIR "$<BUILD_INTERFACE:${Stb_SOURCE_DIR} >" )
82- cpmaddpackage(URI
"gh:pybind/[email protected] " FIND_PACKAGE_ARGUMENTS
"CONFIG" VERSION 3.0.0)
105+ if (QUITE_BUILD_REMOTE_MANAGER OR BUILD_TESTING)
106+ cpmaddpackage(URI
"gh:CLIUtils/[email protected] " OPTIONS "CLI11_PRECOMPILED ON" )
107+ endif ()
83108if (BUILD_TESTING)
84109 cpmaddpackage("gh:vector-of-bool/cmrc#952ffddba731fc110bd50409e8d2b8a06abbd237"
85110 )
86- cpmaddpackage(
"gh:catchorg/[email protected] " )
87111 cpmaddpackage(
"gh:boost-ext/[email protected] " )
88112endif ()
89113
90- find_package (
91- Qt6
92- REQUIRED
93- COMPONENTS Core Gui Qml Quick Widgets
94- REQUIRED
95- )
96- find_package (gRPC CONFIG REQUIRED)
114+ if (QUITE_BUILD_PROBE_QT)
115+ find_package (
116+ Qt6
117+ REQUIRED
118+ COMPONENTS Core Gui Qml Quick Widgets
119+ REQUIRED
120+ )
121+ endif ()
122+ add_subdirectory (libs)
97123if (BUILD_TESTING)
98- list (APPEND CMAKE_MODULE_PATH "${Catch2_SOURCE_DIR} /extras" )
99- include (Catch)
124+ add_subdirectory (simple_tester)
100125endif ()
101126
102- add_subdirectory (libs)
103- add_subdirectory (python)
104- add_subdirectory (remote-manager)
127+ if (QUITE_BUILD_PYTHON_TEST_API)
128+ cpmaddpackage(URI
"gh:pybind/[email protected] " FIND_PACKAGE_ARGUMENTS
"CONFIG" VERSION 3.0.0)
129+ add_subdirectory (python)
130+ endif ()
131+
132+ if (QUITE_BUILD_REMOTE_MANAGER)
133+ add_subdirectory (remote-manager)
134+ endif ()
105135if (BUILD_TESTING)
106- add_subdirectory (integration_test)
107- add_subdirectory (test )
136+ add_subdirectory (example)
108137endif ()
109138
110139feature_summary(WHAT ENABLED_FEATURES DISABLED_FEATURES DESCRIPTION "Features:" )
0 commit comments