From 495000e6fe8e90084c9eb622c7a054958ddf9be2 Mon Sep 17 00:00:00 2001 From: Jakub Svoboda <132791205+rolledhand@users.noreply.github.com> Date: Sun, 31 May 2026 20:05:23 +0200 Subject: [PATCH] Houdini 20.5: update USD build comments for Python 3.11 Signed-off-by: Jakub Svoboda <132791205+rolledhand@users.noreply.github.com> --- CMakeLists.txt | 3 +-- lib/geometry/usd/CMakeLists.txt | 12 ++++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index eddff22..cd28b49 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,7 +50,7 @@ if(ABI_SET_VERSION) endif() if (NOT DEFINED BOOST_PYTHON_COMPONENT_NAME) - # may need to be, e.g. python36, python39 + # may need to be, e.g. python36, python311 set(BOOST_PYTHON_COMPONENT_NAME python) endif() @@ -175,4 +175,3 @@ install( DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${PROJECT_VERSION} ) - diff --git a/lib/geometry/usd/CMakeLists.txt b/lib/geometry/usd/CMakeLists.txt index 76bfd84..889c64a 100644 --- a/lib/geometry/usd/CMakeLists.txt +++ b/lib/geometry/usd/CMakeLists.txt @@ -32,6 +32,18 @@ target_include_directories(${component} $ ) +# Dirty compatibility workaround: +# Houdini 20.5 ships USD 24.03 headers that fail to compile under +# Xcode 26 / AppleClang 21 because pxr/usd/sdf/childrenProxy.h contains an +# invalid _ValueProxy::operator= path that calls SdfChildrenProxy::_Set(), +# which does not exist. This target directly compiles Houdini USD geometry +# headers, so keep the workaround target-local and remove it when the +# Houdini/USD/toolchain combination compiles normally. +target_include_directories(${component} + BEFORE PUBLIC + $ +) + target_compile_definitions(${component} PUBLIC # Need std::unary_functions