From d3aa6285a888b8d50a209a4a2991de54fba713ee Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Mon, 16 Feb 2026 17:15:02 -0500 Subject: [PATCH] xo-procedure2 xo-cmake: move OUTPUT_CPP_DIR to idl/*.json5 --- codegen/genfacet | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/codegen/genfacet b/codegen/genfacet index 8edadc1..062683b 100755 --- a/codegen/genfacet +++ b/codegen/genfacet @@ -458,7 +458,7 @@ def main(): # --output-impl-hpp: putting this in .json5, will be able to drop this. parser.add_argument('--output-impl-hpp', required=True, help='.hpp detail subdir') parser.add_argument('--output-hpp', required=True, help='.hpp output directory') - parser.add_argument('--output-cpp', required=True, help='.cpp output directory') + parser.add_argument('--output-cpp', required=False, help='.cpp output directory') args = parser.parse_args() @@ -473,7 +473,12 @@ def main(): output_impl_hpp_dir = Path(args.output_hpp) / output_impl_hpp_subdir output_impl_hpp_dir.mkdir(parents=False, exist_ok=True) - output_cpp_dir = Path(args.output_cpp) + if 'output_cpp_dir' in idl: + output_cpp_dir = Path(idl['output_cpp_dir']) + elif args.output_cpp: + output_cpp_dir = Path(args.output_cpp) + else: + parser.error("--output-cpp required when .json5 lacks output_cpp_dir") output_cpp_dir.mkdir(parents=False, exist_ok=True) # setup jinja2