feat: SG-42131 - Migrate to OpenImageIO 3.x and build it with OpenColorIO#1087
Conversation
|
Thank you @mcoliver! I added the |
|
Hi @mcoliver, You will need to add the following to oiio.cmake to fix the issue with OpenJPEG: |
There was a problem hiding this comment.
Pull request overview
Updates the project’s OIIO integration to the v3 series and enables OpenColorIO support in the OIIO dependency build.
Changes:
- Updated OIIO C++ integration for v3 namespace/API changes (notably
read_imageand error namespace). - Enabled OCIO support in the OIIO external dependency build and wired in the OCIO dependency target.
- Bumped the pinned OIIO version and download hash in default dependency settings.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| src/lib/image/IOoiio/IOoiio.cpp | Adjusts OIIO namespace usage and updates read_image call for OIIO v3 API. |
| cmake/dependencies/oiio.cmake | Enables OCIO in OIIO build configuration and adds OCIO to dependency list. |
| cmake/dependencies/ocio.cmake | Tweaks OCIO install behavior for external packages. |
| cmake/defaults/CYCOMMON.cmake | Updates pinned OIIO version and associated download hash. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Hi @mcoliver, do you have time to fix the issues in the CI? Depending on the platforms, OIIO can not find OCIO or OPENJPEG_VERSION. |
|
Hi @mcoliver, The download hash is wrong and You will probably need to add the following to oiio.cmake to fix the issue with OpenJPEG: LIST(APPEND _configure_options "-DOPENJPEG_VERSION=${RV_DEPS_OPENJPEG_VERSION}") |
Bump OIIO from 2 to 3 as 2 is deprecated Signed-off-by: Michael Oliver <mcoliver@gmail.com>
UTF8 is the modern standard and should be used for msvc builds Signed-off-by: Michael Oliver <mcoliver@gmail.com>
defa0a9
into
AcademySoftwareFoundation:main
OIIO development has moved to v3. Also adding ocio support with oiio.
Linked issues
fixes #893
Summarize your change.
Upgrade OIIO to v3 and build with OCIO
Describe the reason for the change.
OIIO v2 is considered obsolete: https://github.com/AcademySoftwareFoundation/OpenImageIO/releases/tag/v2.5.19.1
Note that this is a patch release for the obsolete 2.5 branch that merely repairs its ability to build under new versions of some dependencies. You need not upgrade if you are not encountering build problems. Except for legacy constraints, everybody should currently be using OIIO 3.0 and testing the beta for 3.1 which will become the new supported branch very soon.Describe what you have tested and on which operating system.
built locally and tested on macos for 2024 and 2025. Need the Academy's CICD to build for other configs
Add a list of changes, and note any that might need special attention during the review.
It appears OIIO implementation is pretty minimal so I think we should be good but testing on other distros to validate would be appreciated.
If possible, provide screenshots.