Skip to content

Commit

Permalink
Midlife update to VFX 2024 build containers
Browse files Browse the repository at this point in the history
- blosc moved to base1
- rework Conan packages to use CMakeToolChain, conandata.yml
- Conan packages mostly install to lib64 instead of lib (partial AcademySoftwareFoundation#120)
- libdeflate in base image for OpenEXR
- oiio build container (AcademySoftwareFoundation#173)
- Conan packages preserve DSO symlinks when installed (AcademySoftwareFoundation#194)
- Conan packages don't overwrite each other's installed license files
- Break circular dependency between OCIO and OIIO by compiling OCIO utils without OIIO (AcademySoftwareFoundation#54)
- OpenEXR and Imath built as Conan packages only
- MaterialX 1.38.10 (was 1.38.8)
- Imath 3.1.11 (was 3.1.10)
- OpenEXR 3.2.4 (was 3.2.2)
- OpenImageIO 2.5.12.0 (was 2.5.8.0)
- OpenShadingLanguage 1.13.10.0 (was 1.13.6.1)
- OpenTimelineIO 0.17.0 (was 0.15)
- Conan 1.63 (was 1.62)
- CMake 3.27.9 (was 3.27.8)
- Clang 16.0.6 (was 16.0.4), 17.0.6 (was 17.0.1)
- pybind11 2.12.0 (was 2.11.1)
- Python 3.11.9 (was 3.11.8)
- USD 24.05 (was 23.11)

In more details:

ci-oiio/Dockerfile
ci-oiio/README.md
ci-oiio/image.yaml

Dedicated build container for OpenImageIO

packages/common/Dockerfile

Possibly due to a Conan update, llvm was no longer getting
GCC_INSTALL_PREFIX when building as a Conan package, so it wouldn't
find the internal / C++ headers from gcc-toolkit. Now it does.

Also make sure to pass command line options to `conan create` before
the recipe path and package spec.

packages/conan/recipes/...

- use conandata.yml to download, verify SHA256 hashes and apply patches for
all Conan packages
- add some missing SPDR headers (work in progress)
- modernize recipes based on conan center index, use CMakeToolchain

packages/vfx1/Dockerfile

Build OCIO first and OIIO second and break circular dependency by not using OIIO for OCIO utilities

packages/vfx2/Dockerfile

blosc is now built as a Conan package, part of the `base1` package group.

scripts/common/install_yumpackages.sh

Add libdeflate dev package for OpenEXR

scripts/vfx/build_ocio.sh

Break circular dependency with OIIO

scripts/vfx/build_osl.sh

Update download URL to ASWF GitHub org

Signed-off-by: Jean-Francois Panisset <[email protected]>
  • Loading branch information
jfpanisset committed Jul 1, 2024
1 parent 8fde41a commit 34d2dbe
Show file tree
Hide file tree
Showing 142 changed files with 3,251 additions and 1,149 deletions.
41 changes: 41 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,46 @@

All notable changes to this project will be documented in this file.

## 2024-06-30

- blosc moved to base1
- rework Conan packages to use CMakeToolChain, conandata.yml
- Conan packages mostly install to lib64 instead of lib (partial #120)
- libdeflate in base image for OpenEXR
- oiio build container (#173)
- Conan packages preserve DSO symlinks when installed (#194)
- Conan packages don't overwrite each other's installed license files
- Break circular dependency between OCIO and OIIO by compiling OCIO utils without OIIO (#54)
- OpenEXR and Imath built as Conan packages only
- MaterialX 1.38.10 (was 1.38.8)
- Imath 3.1.11 (was 3.1.10)
- OpenEXR 3.2.4 (was 3.2.2)
- OpenImageIO 2.5.12.0 (was 2.5.8.0)
- OpenShadingLanguage 1.13.10.0 (was 1.13.6.1)
- OpenTimelineIO 0.17.0 (was 0.15)
- Conan 1.63 (was 1.62)
- CMake 3.27.9 (was 3.27.8)
- Clang 16.0.6 (was 16.0.4), 17.0.6 (was 17.0.1)
- pybind11 2.12.0 (was 2.11.1)
- Python 3.11.9 (was 3.11.8)
- USD 24.05 (was 23.11)

### New CI Images

* `aswf/ci-common:4-clang16.1`, `aswf/ci-common:4-clang17.1` : A base Rocky 8.9 image with GCC 11.2.1 (DTS 11), Clang 16.0/17.0 and CUDA 12.3.
* `aswf/ci-base:2024.1`
* `aswf/ci-baseqt:2024.1`
* `aswf/ci-opencue:2024.1`
* `aswf/ci-openexr:2024.1`
* `aswf/ci-ocio:2024.1`
* `aswf/ci-oiio:2024.1`
* `aswf/ci-otio:2024.1`
* `aswf/ci-materialx:2024.1`
* `aswf/ci-usd:2024.1`
* `aswf/ci-osl:2024-clang16.1`,`aswf/ci-osl:2024-clang17.1`
* `aswf/ci-openvdb:2024-clang16.1`, `aswf/ci-openvdb:2024-clang17.1`
* `aswf/ci-vfxall:2024-clang16.1`, `aswf/ci-vfxall:2024-clang17.1`

## 2024-02-19

* New ci-common-v4 for VFX Platform 2024 based on:
Expand All @@ -10,6 +50,7 @@ All notable changes to this project will be documented in this file.
* Clang 16.0.4 / 17.0.1
* Conan 1.58.0 (from 1.47.0)
* CUDA 12.3.0 (from 11.8.0)
* OptiX 8.0 (in addition to 7.x)
* gcc-toolset 11 / gcc 11.2.1 (unchanged)
* glibc 2.28 (unchanged)
* libstdc++11 new ABI
Expand Down
5 changes: 5 additions & 0 deletions ci-base/Dockerfile

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 10 additions & 4 deletions ci-base/README.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions ci-base/image.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: "Base CI Docker Image"
description: |
Contains: Python, TBB, Boost and other base libraries
packages:
- blosc
- boost
- cmake
- cppunit
Expand Down
15 changes: 15 additions & 0 deletions ci-baseqt/Dockerfile

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 21 additions & 3 deletions ci-baseqt/README.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions ci-baseqt/image.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,15 @@ title: "Base with Qt and PySide CI Docker Image"
description: |
Contains: Python, TBB, Boost, Qt, PySide and other base libraries
packages:
- blosc
- boost
- cmake
- cppunit
- glew
- glfw
- gtest
- log4cplus
- pybind11
- python
- tbb
- qt
Expand Down
Loading

0 comments on commit 34d2dbe

Please sign in to comment.