From 908060ea6d0ba17dc28e693dcbb43db8f0e18948 Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Mon, 16 Feb 2026 17:23:12 -0500 Subject: [PATCH] xo-procedure2 xo-cmake: drop unnecessary output-cpp-dir cmdline arg --- xo-cmake/cmake/xo_macros/xo_cxx.cmake | 30 ++++++++++++++------------- xo-procedure2/CMakeLists.txt | 6 ------ 2 files changed, 16 insertions(+), 20 deletions(-) diff --git a/xo-cmake/cmake/xo_macros/xo_cxx.cmake b/xo-cmake/cmake/xo_macros/xo_cxx.cmake index fbce80bd..11d3560e 100644 --- a/xo-cmake/cmake/xo_macros/xo_cxx.cmake +++ b/xo-cmake/cmake/xo_macros/xo_cxx.cmake @@ -1699,10 +1699,6 @@ function(xo_add_genfacet) if(NOT DEFINED GF_OUTPUT_IMPL_SUBDIR) message(FATAL_ERROR "xo_add_genfacet: OUTPUT_IMPL_SUBDIR is required") endif() - if(NOT DEFINED GF_OUTPUT_CPP_DIR) - message(FATAL_ERROR "xo_add_genfacet: OUTPUT_CPP_DIR is required") - endif() - find_program(GENFACET_EXECUTABLE NAMES genfacet HINTS ${CMAKE_SOURCE_DIR}/xo-facet/codegen DOC "path to xo genfacet code generator" @@ -1714,8 +1710,13 @@ function(xo_add_genfacet) ${GF_OUTPUT_HPP_DIR}/${GF_OUTPUT_IMPL_SUBDIR}/A${GF_FACET}.hpp ${GF_OUTPUT_HPP_DIR}/${GF_OUTPUT_IMPL_SUBDIR}/I${GF_FACET}_Any.hpp ${GF_OUTPUT_HPP_DIR}/${GF_OUTPUT_IMPL_SUBDIR}/I${GF_FACET}_Xfer.hpp - ${GF_OUTPUT_HPP_DIR}/${GF_OUTPUT_IMPL_SUBDIR}/R${GF_FACET}.hpp - ${GF_OUTPUT_CPP_DIR}/I${GF_FACET}_Any.cpp) + ${GF_OUTPUT_HPP_DIR}/${GF_OUTPUT_IMPL_SUBDIR}/R${GF_FACET}.hpp) + + set(_output_cpp_args "") + if(DEFINED GF_OUTPUT_CPP_DIR) + list(APPEND generatedFiles ${GF_OUTPUT_CPP_DIR}/I${GF_FACET}_Any.cpp) + set(_output_cpp_args --output-cpp ${GF_OUTPUT_CPP_DIR}) + endif() #message(STATUS "generatedFiles=${generatedFiles}") @@ -1726,7 +1727,7 @@ function(xo_add_genfacet) --input ${GF_INPUT} --output-hpp ${GF_OUTPUT_HPP_DIR} --output-impl-hpp ${GF_OUTPUT_IMPL_SUBDIR} - --output-cpp ${GF_OUTPUT_CPP_DIR} + ${_output_cpp_args} DEPENDS ${GF_INPUT} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMENT "Generating facet source files from ${GF_INPUT}" @@ -1775,10 +1776,6 @@ function(xo_add_genfacetimpl) if(NOT DEFINED GF_OUTPUT_IMPL_SUBDIR) message(FATAL_ERROR "xo_add_genfacetimpl: OUTPUT_IMPL_SUBDIR is required") endif() - if(NOT DEFINED GF_OUTPUT_CPP_DIR) - message(FATAL_ERROR "xo_add_genfacetimpl: OUTPUT_CPP_DIR is required") - endif() - if(NOT DEFINED GF_FACET_DIR) if (NOT DEFINED GF_FACET_PKG) message(FATAL_ERROR "xo_add_genfacetimpl: FACET_PKG or FACET_DIR required") @@ -1795,8 +1792,13 @@ function(xo_add_genfacetimpl) message(STATUS "GENFACET_EXECUTABLE=${GENFACET_EXECUTABLE}") set(generatedFiles - ${GF_OUTPUT_HPP_DIR}/${GF_OUTPUT_IMPL_SUBDIR}/I${GF_FACET}_D${GF_REPR}.hpp - ${GF_OUTPUT_CPP_DIR}/I${GF_FACET}_D${GF_REPR}.cpp) + ${GF_OUTPUT_HPP_DIR}/${GF_OUTPUT_IMPL_SUBDIR}/I${GF_FACET}_D${GF_REPR}.hpp) + + set(_output_cpp_args "") + if(DEFINED GF_OUTPUT_CPP_DIR) + list(APPEND generatedFiles ${GF_OUTPUT_CPP_DIR}/I${GF_FACET}_D${GF_REPR}.cpp) + set(_output_cpp_args --output-cpp ${GF_OUTPUT_CPP_DIR}) + endif() # Build the genfacet command. # But careful: can't have the same generated files in two different rules, @@ -1808,7 +1810,7 @@ function(xo_add_genfacetimpl) --facet-dir ${GF_FACET_DIR} --output-hpp ${GF_OUTPUT_HPP_DIR} --output-impl-hpp ${GF_OUTPUT_IMPL_SUBDIR} - --output-cpp ${GF_OUTPUT_CPP_DIR} + ${_output_cpp_args} DEPENDS ${GF_INPUT} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} COMMENT "Generating facet source files from ${GF_INPUT}" diff --git a/xo-procedure2/CMakeLists.txt b/xo-procedure2/CMakeLists.txt index a6fd4d21..1eced319 100644 --- a/xo-procedure2/CMakeLists.txt +++ b/xo-procedure2/CMakeLists.txt @@ -27,7 +27,6 @@ xo_add_genfacet( INPUT idl/Procedure.json5 OUTPUT_HPP_DIR include/xo/procedure2 OUTPUT_IMPL_SUBDIR detail - OUTPUT_CPP_DIR src/procedure2 ) # note: manual target; generated code committed to git @@ -37,7 +36,6 @@ xo_add_genfacet( INPUT idl/RuntimeContext.json5 OUTPUT_HPP_DIR include/xo/procedure2 OUTPUT_IMPL_SUBDIR detail - OUTPUT_CPP_DIR src/procedure2 ) # ---------------------------------------------------------------- @@ -50,7 +48,6 @@ xo_add_genfacetimpl( INPUT idl/IRuntimeContext_DSimpleRcx.json5 OUTPUT_HPP_DIR include/xo/procedure2 OUTPUT_IMPL_SUBDIR detail - OUTPUT_CPP_DIR src/procedure2 ) # ---------------------------------------------------------------- @@ -64,7 +61,6 @@ xo_add_genfacetimpl( INPUT idl/IProcedure_DPrimitive_gco_2_gco_gco.json5 OUTPUT_HPP_DIR include/xo/procedure2 OUTPUT_IMPL_SUBDIR detail - OUTPUT_CPP_DIR src/procedure2 ) # note: manual target; generated code committed to git @@ -76,7 +72,6 @@ xo_add_genfacetimpl( INPUT idl/IGCObject_DPrimitive_gco_2_gco_gco.json5 OUTPUT_HPP_DIR include/xo/procedure2 OUTPUT_IMPL_SUBDIR detail - OUTPUT_CPP_DIR src/procedure2 ) # note: manual target; generated code committed to git @@ -88,7 +83,6 @@ xo_add_genfacetimpl( INPUT idl/IPrintable_DPrimitive_gco_2_gco_gco.json5 OUTPUT_HPP_DIR include/xo/procedure2 OUTPUT_IMPL_SUBDIR detail - OUTPUT_CPP_DIR src/procedure2 ) xo_add_genfacet_all(xo-procedure2-genfacet-all)