aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/opencolorio
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/opencolorio
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/opencolorio')
-rw-r--r--vcpkg/ports/opencolorio/dependencies.diff114
-rw-r--r--vcpkg/ports/opencolorio/glew-no-glu.diff13
-rw-r--r--vcpkg/ports/opencolorio/portfile.cmake76
-rw-r--r--vcpkg/ports/opencolorio/pystring.diff156
-rw-r--r--vcpkg/ports/opencolorio/vcpkg.json47
5 files changed, 406 insertions, 0 deletions
diff --git a/vcpkg/ports/opencolorio/dependencies.diff b/vcpkg/ports/opencolorio/dependencies.diff
new file mode 100644
index 0000000..71cd56f
--- /dev/null
+++ b/vcpkg/ports/opencolorio/dependencies.diff
@@ -0,0 +1,114 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3feba7e..b4c2d47 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -518,7 +518,7 @@ install(
+ FILE ${OCIO_TARGETS_EXPORT_NAME}
+ )
+
+-if (NOT BUILD_SHARED_LIBS)
++if (0)
+ # Install custom macros used in the find modules.
+ install(FILES
+ ${CMAKE_CURRENT_LIST_DIR}/share/cmake/macros/VersionUtils.cmake
+diff --git a/share/cmake/modules/FindExtPackages.cmake b/share/cmake/modules/FindExtPackages.cmake
+index aa2550a..3c968f7 100644
+--- a/share/cmake/modules/FindExtPackages.cmake
++++ b/share/cmake/modules/FindExtPackages.cmake
+@@ -55,6 +55,7 @@ message(STATUS "Checking for mandatory dependencies...")
+ # expat
+ # https://github.com/libexpat/libexpat
+ ocio_handle_dependency( expat REQUIRED ALLOW_INSTALL
++ CONFIG
+ MIN_VERSION 2.4.1
+ RECOMMENDED_VERSION 2.5.0
+ RECOMMENDED_VERSION_REASON "CVE fixes and fix issue with symbol leakage when built as a static library")
+@@ -62,6 +63,7 @@ ocio_handle_dependency( expat REQUIRED ALLOW_INSTALL
+ # yaml-cpp
+ # https://github.com/jbeder/yaml-cpp
+ ocio_handle_dependency( yaml-cpp REQUIRED ALLOW_INSTALL
++ CONFIG
+ MIN_VERSION 0.6.3
+ RECOMMENDED_VERSION 0.7.0
+ RECOMMENDED_VERSION_REASON "Latest version tested with OCIO")
+@@ -69,13 +71,13 @@ ocio_handle_dependency( yaml-cpp REQUIRED ALLOW_INSTALL
+ # pystring
+ # https://github.com/imageworks/pystring
+ ocio_handle_dependency( pystring REQUIRED ALLOW_INSTALL
+- MIN_VERSION 1.1.3
+- RECOMMENDED_VERSION 1.1.3
++ CONFIG
+ RECOMMENDED_VERSION_REASON "Latest version tested with OCIO")
+
+ # Imath (>=3.1)
+ # https://github.com/AcademySoftwareFoundation/Imath
+ ocio_handle_dependency( Imath REQUIRED ALLOW_INSTALL
++ CONFIG
+ MIN_VERSION 3.1.1
+ RECOMMENDED_VERSION 3.1.12
+ RECOMMENDED_VERSION_REASON "Latest version tested with OCIO")
+@@ -111,7 +113,8 @@ ocio_handle_dependency( ZLIB REQUIRED ALLOW_INSTALL
+ # minizip-ng
+ # https://github.com/zlib-ng/minizip-ng
+ ocio_handle_dependency( minizip-ng REQUIRED ALLOW_INSTALL
+- MIN_VERSION 3.0.6
++ CONFIG
++ MIN_VERSION 4
+ RECOMMENDED_VERSION 3.0.7
+ RECOMMENDED_VERSION_REASON "Latest version tested with OCIO")
+
+@@ -132,8 +135,7 @@ if(OCIO_BUILD_APPS)
+ # lcms2
+ # https://github.com/mm2/Little-CMS
+ ocio_handle_dependency( lcms2 REQUIRED ALLOW_INSTALL
+- MIN_VERSION 2.2
+- RECOMMENDED_VERSION 2.2
++ CONFIG
+ RECOMMENDED_VERSION_REASON "Latest version tested with OCIO")
+ endif()
+
+@@ -259,6 +261,7 @@ if(OCIO_BUILD_APPS)
+ ###############################################################################
+ # Calling find_package in CONFIG mode using PREFER_CONFIG option.
+ ocio_handle_dependency( OpenEXR PREFER_CONFIG ALLOW_INSTALL
++ CONFIG
+ MIN_VERSION ${OpenEXR_MININUM_VERSION}
+ RECOMMENDED_VERSION 3.1.5
+ RECOMMENDED_VERSION_REASON "Latest version tested with OCIO"
+diff --git a/src/cmake/Config.cmake.in b/src/cmake/Config.cmake.in
+index 4e2367b..fc0e483 100644
+--- a/src/cmake/Config.cmake.in
++++ b/src/cmake/Config.cmake.in
+@@ -23,19 +23,19 @@ if (NOT @BUILD_SHARED_LIBS@) # NOT @BUILD_SHARED_LIBS@
+ ########################
+
+ if (NOT TARGET expat::expat)
+- find_dependency(expat @expat_VERSION@)
++ find_dependency(expat @expat_VERSION@ CONFIG)
+ endif()
+
+ if (NOT TARGET Imath::Imath)
+- find_dependency(Imath @Imath_VERSION@)
++ find_dependency(Imath @Imath_VERSION@ CONFIG)
+ endif()
+
+ if (NOT TARGET pystring::pystring)
+- find_dependency(pystring @pystring_VERSION@)
++ find_dependency(pystring @pystring_VERSION@ CONFIG)
+ endif()
+
+ if (NOT TARGET yaml-cpp::yaml-cpp)
+- find_dependency(yaml-cpp @yaml-cpp_VERSION@)
++ find_dependency(yaml-cpp @yaml-cpp_VERSION@ CONFIG)
+ if (TARGET yaml-cpp AND NOT TARGET yaml-cpp::yaml-cpp)
+ add_library(yaml-cpp::yaml-cpp ALIAS yaml-cpp)
+ endif()
+@@ -54,7 +54,7 @@ if (NOT @BUILD_SHARED_LIBS@) # NOT @BUILD_SHARED_LIBS@
+ endif()
+
+ if (NOT TARGET MINIZIP::minizip-ng)
+- find_dependency(minizip-ng @minizip-ng_VERSION@)
++ find_dependency(minizip-ng @minizip-ng_VERSION@ CONFIG)
+ endif()
+
+ # Remove OCIO custom find module path.
diff --git a/vcpkg/ports/opencolorio/glew-no-glu.diff b/vcpkg/ports/opencolorio/glew-no-glu.diff
new file mode 100644
index 0000000..4b82558
--- /dev/null
+++ b/vcpkg/ports/opencolorio/glew-no-glu.diff
@@ -0,0 +1,13 @@
+diff --git a/src/libutils/oglapphelpers/glsl.cpp b/src/libutils/oglapphelpers/glsl.cpp
+index 0154eff..6ad4356 100644
+--- a/src/libutils/oglapphelpers/glsl.cpp
++++ b/src/libutils/oglapphelpers/glsl.cpp
+@@ -41,7 +41,7 @@ bool GetGLError(std::string & error)
+ // Unfortunately no gluErrorString equivalent on Mac.
+ error = "OpenGL Error";
+ #else
+- error = (const char*)gluErrorString(glErr);
++ error = "OpenGL Error";
+ #endif
+ return true;
+ }
diff --git a/vcpkg/ports/opencolorio/portfile.cmake b/vcpkg/ports/opencolorio/portfile.cmake
new file mode 100644
index 0000000..fe36924
--- /dev/null
+++ b/vcpkg/ports/opencolorio/portfile.cmake
@@ -0,0 +1,76 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO AcademySoftwareFoundation/OpenColorIO
+ REF "v${VERSION}"
+ SHA512 d626007d7a7ae26f4cf2fa8e5675963af9127f500f824548ccc4e659ddb2cd275b988822b4f66e0170971426dc330d106e281cdae63a5bd141b9aadaa874a746
+ HEAD_REF master
+ PATCHES
+ dependencies.diff
+ glew-no-glu.diff
+ pystring.diff
+)
+file(GLOB modules "${SOURCE_PATH}/share/cmake/modules/Find*.cmake")
+list(REMOVE_ITEM modules "${SOURCE_PATH}/share/cmake/modules/FindExtPackages.cmake")
+file(REMOVE_RECURSE "${SOURCE_PATH}/share/cmake/modules/install" ${modules})
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ tools OCIO_BUILD_APPS
+ tools VCPKG_LOCK_FIND_PACKAGE_OpenGL
+)
+
+if(NOT VCPKG_TARGET_ARCHITECTURE MATCHES "^arm")
+ list(APPEND FEATURE_OPTIONS -DOCIO_USE_SSE2NEON=OFF)
+endif()
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DOCIO_BUILD_DOCS:BOOL=OFF
+ -DOCIO_BUILD_GPU_TESTS:BOOL=OFF
+ -DOCIO_BUILD_JAVA:BOOL=OFF
+ -DOCIO_BUILD_NUKE:BOOL=OFF
+ -DOCIO_BUILD_OPENFX:BOOL=OFF
+ -DOCIO_BUILD_PYTHON:BOOL=OFF
+ -DOCIO_BUILD_TESTS:BOOL=OFF
+ -DOCIO_INSTALL_EXT_PACKAGES=NONE
+ -DCMAKE_DISABLE_FIND_PACKAGE_GLUT=ON
+ -DCMAKE_DISABLE_FIND_PACKAGE_OpenImageIO=ON
+ ${FEATURE_OPTIONS}
+ MAYBE_UNUSED_VARIABLES
+ # only used for OCIO_BUILD_APPS
+ CMAKE_DISABLE_FIND_PACKAGE_GLUT
+ CMAKE_DISABLE_FIND_PACKAGE_OpenImageIO
+ VCPKG_LOCK_FIND_PACKAGE_OpenGL
+
+)
+
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/OpenColorIO")
+vcpkg_fixup_pkgconfig()
+
+set(dll_import 0)
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
+ set(dll_import 1)
+endif()
+vcpkg_replace_string(
+ "${CURRENT_PACKAGES_DIR}/include/OpenColorIO/OpenColorABI.h"
+ "ifndef OpenColorIO_SKIP_IMPORTS"
+ "if ${dll_import}"
+)
+
+if(OCIO_BUILD_APPS)
+ vcpkg_copy_tools(
+ TOOL_NAMES ocioarchive ociobakelut ociocheck ociochecklut ocioconvert ociocpuinfo ociolutimage ociomakeclf ocioperf ociowrite
+ AUTO_CLEAN
+ )
+endif()
+
+file(REMOVE_RECURSE
+ "${CURRENT_PACKAGES_DIR}/debug/include"
+ "${CURRENT_PACKAGES_DIR}/debug/share"
+ "${CURRENT_PACKAGES_DIR}/share/ocio"
+)
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/opencolorio/pystring.diff b/vcpkg/ports/opencolorio/pystring.diff
new file mode 100644
index 0000000..ac43f45
--- /dev/null
+++ b/vcpkg/ports/opencolorio/pystring.diff
@@ -0,0 +1,156 @@
+diff --git a/src/OpenColorIO/Config.cpp b/src/OpenColorIO/Config.cpp
+index a4cf7c5..db52ddb 100644
+--- a/src/OpenColorIO/Config.cpp
++++ b/src/OpenColorIO/Config.cpp
+@@ -12,7 +12,7 @@
+ #include <regex>
+ #include <functional>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/ConfigUtils.cpp b/src/OpenColorIO/ConfigUtils.cpp
+index 0b45b04..0868b01 100644
+--- a/src/OpenColorIO/ConfigUtils.cpp
++++ b/src/OpenColorIO/ConfigUtils.cpp
+@@ -1,7 +1,7 @@
+ // SPDX-License-Identifier: BSD-3-Clause
+ // Copyright Contributors to the OpenColorIO Project.
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include "ConfigUtils.h"
+ #include "MathUtils.h"
+diff --git a/src/OpenColorIO/Context.cpp b/src/OpenColorIO/Context.cpp
+index 3a1294b..02f0e3e 100644
+--- a/src/OpenColorIO/Context.cpp
++++ b/src/OpenColorIO/Context.cpp
+@@ -7,7 +7,7 @@
+ #include <sstream>
+ #include <string>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/OCIOYaml.cpp b/src/OpenColorIO/OCIOYaml.cpp
+index b1cee18..c7d530b 100644
+--- a/src/OpenColorIO/OCIOYaml.cpp
++++ b/src/OpenColorIO/OCIOYaml.cpp
+@@ -4,7 +4,7 @@
+ #include <cstring>
+ #include <unordered_set>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/OCIOZArchive.cpp b/src/OpenColorIO/OCIOZArchive.cpp
+index 982fce6..43cb147 100644
+--- a/src/OpenColorIO/OCIOZArchive.cpp
++++ b/src/OpenColorIO/OCIOZArchive.cpp
+@@ -8,7 +8,7 @@
+ #include <set>
+ #include <limits>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/Op.cpp b/src/OpenColorIO/Op.cpp
+index 81dfe98..125910d 100755
+--- a/src/OpenColorIO/Op.cpp
++++ b/src/OpenColorIO/Op.cpp
+@@ -4,7 +4,7 @@
+ #include <cstring>
+ #include <sstream>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/PathUtils.cpp b/src/OpenColorIO/PathUtils.cpp
+index 3a68d36..ea6c036 100644
+--- a/src/OpenColorIO/PathUtils.cpp
++++ b/src/OpenColorIO/PathUtils.cpp
+@@ -5,7 +5,7 @@
+ #include <iostream>
+ #include <map>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp
+index c9ada57..e440819 100644
+--- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp
++++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp
+@@ -6,7 +6,7 @@
+ #include <fstream>
+ #include <sstream>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/fileformats/FileFormatDiscreet1DL.cpp b/src/OpenColorIO/fileformats/FileFormatDiscreet1DL.cpp
+index 6a76d96..63613dc 100755
+--- a/src/OpenColorIO/fileformats/FileFormatDiscreet1DL.cpp
++++ b/src/OpenColorIO/fileformats/FileFormatDiscreet1DL.cpp
+@@ -8,7 +8,7 @@
+ #include <sstream>
+ #include <iostream>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/fileformats/FileFormatICC.cpp b/src/OpenColorIO/fileformats/FileFormatICC.cpp
+index 4768101..16cc9ec 100755
+--- a/src/OpenColorIO/fileformats/FileFormatICC.cpp
++++ b/src/OpenColorIO/fileformats/FileFormatICC.cpp
+@@ -5,7 +5,7 @@
+ #include <sstream>
+ #include <fstream>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/fileformats/FileFormatIridasLook.cpp b/src/OpenColorIO/fileformats/FileFormatIridasLook.cpp
+index 0ba209a..c7ec254 100755
+--- a/src/OpenColorIO/fileformats/FileFormatIridasLook.cpp
++++ b/src/OpenColorIO/fileformats/FileFormatIridasLook.cpp
+@@ -5,7 +5,7 @@
+ #include <cstring>
+ #include <iterator>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
+diff --git a/src/OpenColorIO/transforms/FileTransform.cpp b/src/OpenColorIO/transforms/FileTransform.cpp
+index 33da5f3..7609dda 100755
+--- a/src/OpenColorIO/transforms/FileTransform.cpp
++++ b/src/OpenColorIO/transforms/FileTransform.cpp
+@@ -9,7 +9,7 @@
+ #include <iostream>
+ #include <iterator>
+
+-#include <pystring.h>
++#include <pystring/pystring.h>
+
+ #include <OpenColorIO/OpenColorIO.h>
+
diff --git a/vcpkg/ports/opencolorio/vcpkg.json b/vcpkg/ports/opencolorio/vcpkg.json
new file mode 100644
index 0000000..e77dc06
--- /dev/null
+++ b/vcpkg/ports/opencolorio/vcpkg.json
@@ -0,0 +1,47 @@
+{
+ "name": "opencolorio",
+ "version-semver": "2.4.2",
+ "description": "OpenColorIO (OCIO) is a complete color management solution geared towards motion picture production with an emphasis on visual effects and computer animation. OCIO provides a straightforward and consistent user experience across all supporting applications while allowing for sophisticated back-end configuration options suitable for high-end production usage. OCIO is compatible with the Academy Color Encoding Specification (ACES) and is LUT-format agnostic, supporting many popular formats.",
+ "homepage": "https://opencolorio.org/",
+ "license": "BSD-3-Clause",
+ "supports": "!uwp",
+ "dependencies": [
+ "expat",
+ "imath",
+ {
+ "name": "minizip-ng",
+ "default-features": false,
+ "features": [
+ "zlib"
+ ]
+ },
+ "pystring",
+ {
+ "name": "sse2neon",
+ "platform": "arm"
+ },
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ },
+ "yaml-cpp"
+ ],
+ "features": {
+ "tools": {
+ "description": "Installs tools",
+ "dependencies": [
+ {
+ "name": "glew",
+ "platform": "!ios & !osx"
+ },
+ "lcms",
+ "openexr",
+ "opengl"
+ ]
+ }
+ }
+}