Skip to content

usd-exchange: Add version 3.0.0 - #2644

Draft
luhenry wants to merge 3 commits into
mainfrom
usd-exchange
Draft

luhenry wants to merge 3 commits into
mainfrom
usd-exchange

Conversation

@luhenry

@luhenry luhenry commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

Compiles the usdex_core/usdex_rtx C++ libraries and pybind11 bindings, plus the OpenUSD 26.08 runtime (with MaterialX and oneTBB) the wheel bundles. Upstream publishes no riscv64 wheel.

Mirrors upstream's repo_man build (tools/repoman/cmake_build.py, install_usdex.py, py_package.py) and its whl test suite (tools/pyproject/pytest.sh).

Differs from upstream

  • OpenUSD v26.08 built with build_usd.py — NVIDIA's packman OpenUSD/MaterialX/oneTBB packages have no riscv64 flavor.
  • oneTBB 2021.12.0 (build_usd.py's pin) instead of packman's 2021.13.0.
  • PXR_PY_UNDEFINED_DYNAMIC_LOOKUP=ON, so no libpython dependency, as in our usd-core.
  • No .pyi stubs — upstream's stubgen runs through internal repo_man tooling.

Matrix: cp310-cp313 — upstream's requires-python is <3.14.

Testing

  • C++ doctest suite not built — it links libpython, which the manylinux image lacks.

License: Wheel bundles OpenUSD (TOST-1.0), MaterialX and oneTBB (Apache-2.0), with upstream's own notice files.

Patches

  • 0001-Support-riscv64-in-pxr-base-arch.patch — Upstream-Status: To upstream, same patch as usd-core 26.8. Without it OpenUSD's pxr/base/arch stops every translation unit with #error "Unsupported architecture". riscv64-only.

luhenry added a commit that referenced this pull request Oct 2, 2026
@github-actions

github-actions Bot commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://riseproject-dev.github.io/python-wheels/pr-preview/pr-2644/

Built to branch gh-pages at 2026-10-03 04:37 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

MaterialX 1.39.5's exported MaterialXConfig.cmake calls
find_dependency(X11 REQUIRED COMPONENTS Xt) on every non-Apple Unix,
regardless of MATERIALX_BUILD_RENDER, so OpenUSD's find_package(MaterialX)
fails to configure in the manylinux_2_39_riscv64 image, which has no X11
development packages.
OpenUSD 26.08 moved the default PXR_PYTHON_INSTALL_DIR from lib/python to
lib/pythonX.Y/site-packages, so the pxr staging step (which mirrors upstream
install_usdex.py and reads <usd>/lib/python/pxr) found no modules and exited
on the first one: "pxr.Ar has no _ar binding". Pin the legacy layout of
upstream's packman OpenUSD, as build-usd-core.yml already does.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant