Skip to content

Align dependency packages with Houdini 21 - #273

Open
gripeyes wants to merge 1 commit into
OpenMoonRay:mainfrom
gripeyes:chore/macos-dependency-refresh
Open

Align dependency packages with Houdini 21#273
gripeyes wants to merge 1 commit into
OpenMoonRay:mainfrom
gripeyes:chore/macos-dependency-refresh

Conversation

@gripeyes

@gripeyes gripeyes commented Aug 29, 2026

Copy link
Copy Markdown

Compatibility:

build

Issues/Tickets:

My original (a bit broader) commit, it has also been related to when I was implementing color management into moonray through OCIO & the OCIO update was a necessity, so I've tried to align the required compatible dependency stack. Qt update was causing gui issues, but it's not a necessary update for solaris/hydra.

Release notes comment:

Aligned the bundled macOS dependency packages with Houdini 21-era build requirements.

Comments for the reviewer:

This PR extracts the macOS dependency-toolchain updates from historical commit a2216e1 that are still missing from current upstream main.

Updated packages:

  • Boost 1.78.0 → 1.85.0
  • OpenSubdiv 3.5.0 → 3.6.0
  • OpenEXR 2.5.7 → 3.3.2
  • Added standalone Imath 3.1.12 for OpenEXR 3
  • oneTBB 2020 U3 → 2022.1.0
  • OpenVDB 9.1.0 → 12.0.1
  • OpenColorIO 2.0.2 → 2.4.1
  • OpenImageIO 2.3.20.0 → 2.5.18.0

Required build adjustments are included:

  • OpenEXR 3 now uses the standalone Imath package.
  • oneTBB uses its newer CMake build and installation flow.
  • OpenImageDenoise removes bundled versioned TBB libraries before installation so they cannot replace the separately built oneTBB.
  • OpenImageIO is configured against the refreshed Imath, OpenEXR, OpenColorIO, and oneTBB packages.
  • Existing upstream CMake 4 compatibility handling and download verification are preserved.

This is intentionally limited to the bundled macOS dependency stack. It does not change:

  • Qt or MoonRay GUI configuration
  • Houdini installation paths
  • Houdini or macOS presets
  • Python version or path handling
  • Setup scripts
  • Submodule revisions
  • hdMoonRay, SDR, MoonRay, or Moonshine USD source
  • Unrelated macOS fixes

The packages are aligned with the versions needed by the Houdini 21-era toolchain, but the PR does not introduce a direct dependency on a particular Houdini installation.

Look or scene setup change:

No expected look or scene setup changes.

Special notes for production:

The macOS third-party dependencies must be rebuilt after this change. Existing dependency installations should not be mixed with the refreshed dependency stack.

Attention/Reviewers:

AI Assisted Development:

Assisted-by: OpenAI Codex / GPT-5.6

Checklist:

  • Documentation has been updated.
  • Includes new unit tests.
  • Includes new RATS tests.

No documentation, unit-test, or RATS changes are included because this PR is limited to the macOS dependency build definition.

Signed-off-by: Jakub Svoboda <132791205+rolledhand@users.noreply.github.com>
@gripeyes

Copy link
Copy Markdown
Author

Mentioning this PR since they go hand-in-hand (TBB version & macOS)
#274

@gripeyes gripeyes changed the title Updated the bundled dependency stack for compatibility with Houdini 21-era build requirements Align dependency packages with Houdini 21 Aug 29, 2026
@gripeyes

Copy link
Copy Markdown
Author

In human words, I was bumping up my h20.5 massive PR into h21 algined dependencies. The build suceeded simply said. TBB update can be skipped in correlation w/ the atmoic/GPU PR. Haven't tried building it yet with the latest hdmoonray & CMake update. AI gen review on this PR:

Compatibility note: CMake configuration and generation succeed on AppleClang arm64, but a full third-party and MoonRay rebuild has not been completed.

oneTBB 2022.1 removes legacy APIs still referenced by current MoonRay sources, notably tbb/task_scheduler_init.h. OpenMoonRay/moonray#37 addresses the isolated tbb::atomic use in MetalGPUAccelerator, but it does not migrate all remaining legacy TBB APIs.

I have intentionally left the oneTBB update in this PR for review as part of the Houdini 21-era dependency alignment. If maintainers prefer this PR to remain immediately buildable without additional TBB migration work, I can restore TBB to 2020_U3 while retaining the other dependency updates.

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