From 93c62cc2814511cc87c4ebeb43cfa0efe8c71461 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Fri, 16 Jan 2026 16:10:00 -0500 Subject: [PATCH 1/3] xo-gc: + CollectorTypeRegistry for streamlined init --- include/xo/subsys/Subsystem.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/xo/subsys/Subsystem.hpp b/include/xo/subsys/Subsystem.hpp index 3cc6012a..07a96377 100644 --- a/include/xo/subsys/Subsystem.hpp +++ b/include/xo/subsys/Subsystem.hpp @@ -130,8 +130,8 @@ namespace xo { public: SubsystemImpl() = default; SubsystemImpl(bool require_flag, - std::string_view subsys_name, - std::function init_fn) + std::string_view subsys_name, + std::function init_fn) : require_flag_{require_flag}, subsys_name_{subsys_name}, init_fn_{init_fn} {} From e0a2319bca58b303adcf9e8fc59f6ed8abc39621 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Fri, 27 Feb 2026 19:38:53 +1100 Subject: [PATCH 2/3] xo-cmake: setup to make share target available via cmake install --- cmake/subsysConfig.cmake.in | 1 + 1 file changed, 1 insertion(+) diff --git a/cmake/subsysConfig.cmake.in b/cmake/subsysConfig.cmake.in index 9c15f36a..eb9a3b16 100644 --- a/cmake/subsysConfig.cmake.in +++ b/cmake/subsysConfig.cmake.in @@ -1,4 +1,5 @@ @PACKAGE_INIT@ include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Share.cmake") check_required_components("@PROJECT_NAME@") From 52edc7458ca44fd40442952746d1fe64f8449e55 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Sun, 31 May 2026 09:50:13 -0400 Subject: [PATCH 3/3] build: update cmake bootstrap macros for in-tree builds Once these are done for all xo-foo satellites, should be able to complete cmake build without first installing xo-cmake. --- cmake/xo-bootstrap-macros.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cmake/xo-bootstrap-macros.cmake b/cmake/xo-bootstrap-macros.cmake index aba31169..592272c0 100644 --- a/cmake/xo-bootstrap-macros.cmake +++ b/cmake/xo-bootstrap-macros.cmake @@ -19,7 +19,13 @@ endif() message(STATUS "XO_CMAKE_CONFIG_EXECUTABLE=${XO_CMAKE_CONFIG_EXECUTABLE}") -if (NOT XO_SUBMODULE_BUILD) +if (XO_SUBMODULE_BUILD) + if (("${CMAKE_MODULE_PATH}" STREQUAL "") OR ("${CMAKE_MODULE_PATH}" STREQUAL prefix)) + # local version of xo-cmake macros + set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/xo-cmake/cmake") + message(STATUS "CMAKE_MODULE_PATH=${CMAKE_MODULE_PATH}") + endif() +else() if (("${CMAKE_MODULE_PATH}" STREQUAL "") OR ("${CMAKE_MODULE_PATH}" STREQUAL prefix)) # default to typical install location for xo-project-macros execute_process(COMMAND ${XO_CMAKE_CONFIG_EXECUTABLE} --cmake-module-path OUTPUT_VARIABLE CMAKE_MODULE_PATH)