From 27466c0777dbe5d5ba5db4b4c07e7bbbb79a9272 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Thu, 26 Feb 2026 13:02:58 +1100 Subject: [PATCH 1/3] xo-facet: genfacet wrapper script (play nice w/ nix) --- CMakeLists.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d8ad41a..ee21aa6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -35,13 +35,24 @@ xo_export_cmake_config(${PROJECT_NAME} ${PROJECT_VERSION} ${PROJECT_NAME}Targets # ---------------------------------------------------------------- -# Install the generator script +# Install the generator script: install( PROGRAMS codegen/genfacet DESTINATION share/xo-facet/codegen COMPONENT codegen ) +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/genfacet-bin +"#!/bin/bash +exec \"${CMAKE_INSTALL_FULL_DATADIR}/xo-facet/codegen/genfacet\" \"\$@\" +") + +install( + PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/genfacet-bin + DESTINATION bin + RENAME genfacet +) + # Install all .j2 template files install( DIRECTORY codegen/ From a6915edfe289f39650a3d205d9db458ce8912b59 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Fri, 27 Feb 2026 11:32:26 +1100 Subject: [PATCH 2/3] xo-facet: in _Any.cpp template --- codegen/iface_facet_any.cpp.j2 | 1 + 1 file changed, 1 insertion(+) diff --git a/codegen/iface_facet_any.cpp.j2 b/codegen/iface_facet_any.cpp.j2 index 6ad2d07..0c8d000 100644 --- a/codegen/iface_facet_any.cpp.j2 +++ b/codegen/iface_facet_any.cpp.j2 @@ -4,6 +4,7 @@ #include "{{impl_hpp_subdir}}/{{iface_facet_any_hpp_fname}}" #include +#include namespace {{facet_ns1}} { namespace {{facet_ns2}} { From 896891c17f6aa89bc268e3e81c4d284dde662bc2 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Fri, 27 Feb 2026 19:38:53 +1100 Subject: [PATCH 3/3] xo-cmake: setup to make share target available via cmake install --- cmake/xo_facetConfig.cmake.in | 1 + 1 file changed, 1 insertion(+) diff --git a/cmake/xo_facetConfig.cmake.in b/cmake/xo_facetConfig.cmake.in index 2348394..d4ded16 100644 --- a/cmake/xo_facetConfig.cmake.in +++ b/cmake/xo_facetConfig.cmake.in @@ -5,4 +5,5 @@ include(CMakeFindDependencyMacro) find_dependency(xo_arena) find_dependency(xo_reflectutil) include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Share.cmake") check_required_components("@PROJECT_NAME@")