aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/openimageio/portfile.cmake
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/openimageio/portfile.cmake
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/openimageio/portfile.cmake')
-rw-r--r--vcpkg/ports/openimageio/portfile.cmake124
1 files changed, 124 insertions, 0 deletions
diff --git a/vcpkg/ports/openimageio/portfile.cmake b/vcpkg/ports/openimageio/portfile.cmake
new file mode 100644
index 0000000..3e157a0
--- /dev/null
+++ b/vcpkg/ports/openimageio/portfile.cmake
@@ -0,0 +1,124 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO AcademySoftwareFoundation/OpenImageIO
+ REF "v${VERSION}"
+ SHA512 cee6ddfbd825022a45a46b041c894a18718a474a32da8715fe08f918c7387505e81f3220c0ad79d3ec160b9c224bdeafbbb8a2b67a47cd845dca492582607c22
+ HEAD_REF master
+ PATCHES
+ fix-dependencies.patch
+ fix-static-ffmpeg.patch
+ imath-version-guard.patch
+ fix-openimageio_include_dir.patch
+ fix-openexr-target-missing.patch
+)
+
+file(REMOVE_RECURSE "${SOURCE_PATH}/ext")
+
+file(REMOVE
+ "${SOURCE_PATH}/src/cmake/modules/FindFFmpeg.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindLibheif.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindLibRaw.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindLibsquish.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindOpenCV.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindOpenJPEG.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindWebP.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/Findfmt.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindTBB.cmake"
+ "${SOURCE_PATH}/src/cmake/modules/FindJXL.cmake"
+)
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ libraw USE_LIBRAW
+ opencolorio USE_OPENCOLORIO
+ ffmpeg USE_FFMPEG
+ freetype USE_FREETYPE
+ gif USE_GIF
+ jpegxl USE_JXL
+ opencv USE_OPENCV
+ openjpeg USE_OPENJPEG
+ webp USE_WEBP
+ libheif USE_LIBHEIF
+ pybind11 USE_PYTHON
+ tools OIIO_BUILD_TOOLS
+ viewer ENABLE_IV
+)
+
+if("pybind11" IN_LIST FEATURES)
+ vcpkg_get_vcpkg_installed_python(PYTHON3)
+ list(APPEND FEATURE_OPTIONS "-DPython3_EXECUTABLE=${PYTHON3}")
+endif()
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ -DBUILD_TESTING=OFF
+ -DOIIO_BUILD_TESTS=OFF
+ -DUSE_DCMTK=OFF
+ -DUSE_NUKE=OFF
+ -DUSE_OpenVDB=OFF
+ -DUSE_PTEX=OFF
+ -DUSE_TBB=OFF
+ -DLINKSTATIC=OFF # LINKSTATIC breaks library lookup
+ -DBUILD_MISSING_FMT=OFF
+ -DOIIO_INTERNALIZE_FMT=OFF # carry fmt's msvc utf8 usage requirements
+ -DBUILD_MISSING_ROBINMAP=OFF
+ -DBUILD_MISSING_DEPS=OFF
+ -DSTOP_ON_WARNING=OFF
+ -DVERBOSE=ON
+ -DBUILD_DOCS=OFF
+ -DINSTALL_DOCS=OFF
+ -DENABLE_INSTALL_testtex=OFF
+ "-DFMT_INCLUDES=${CURRENT_INSTALLED_DIR}/include"
+ "-DREQUIRED_DEPS=fmt;JPEG;PNG;Robinmap"
+ MAYBE_UNUSED_VARIABLES
+ ENABLE_INSTALL_testtex
+ ENABLE_IV
+ BUILD_MISSING_DEPS
+ BUILD_MISSING_FMT
+ BUILD_MISSING_ROBINMAP
+ REQUIRED_DEPS
+)
+
+vcpkg_cmake_install()
+
+vcpkg_copy_pdbs()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/OpenImageIO)
+
+if("tools" IN_LIST FEATURES)
+ vcpkg_copy_tools(
+ TOOL_NAMES iconvert idiff igrep iinfo maketx oiiotool
+ AUTO_CLEAN
+ )
+endif()
+
+if("viewer" IN_LIST FEATURES)
+ vcpkg_copy_tools(
+ TOOL_NAMES iv
+ AUTO_CLEAN
+ )
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/doc"
+ "${CURRENT_PACKAGES_DIR}/debug/include"
+ "${CURRENT_PACKAGES_DIR}/debug/share")
+
+vcpkg_fixup_pkgconfig()
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/OpenImageIO/export.h" "ifdef OIIO_STATIC_DEFINE" "if 1")
+endif()
+
+
+file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")
+file(READ "${SOURCE_PATH}/THIRD-PARTY.md" third_party)
+string(REGEX REPLACE
+ "^.*The remainder of this file"
+ "\n-------------------------------------------------------------------------\n\nThe remainder of this file"
+ third_party
+ "${third_party}"
+)
+file(APPEND "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" "${third_party}")