mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-01-19 08:43:33 +08:00
[openimageio] Fix find and use dependencies (#19916)
* [openimageio] Fix find and use dependencies * version * Restore FindOpenEXR.cmake * version * Update ports/openimageio/portfile.cmake * Update versions/o-/openimageio.json * Re-make patch * version * Update versions/o-/openimageio.json * Update ports/openimageio/portfile.cmake * version
This commit is contained in:
parent
d251db7f96
commit
d3d8dad4b4
75
ports/openimageio/fix-dependencies.patch
Normal file
75
ports/openimageio/fix-dependencies.patch
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
diff --git a/src/cmake/Config.cmake.in b/src/cmake/Config.cmake.in
|
||||||
|
index 740da06..1a326f7 100644
|
||||||
|
--- a/src/cmake/Config.cmake.in
|
||||||
|
+++ b/src/cmake/Config.cmake.in
|
||||||
|
@@ -11,6 +11,9 @@ elseif (@OpenEXR_VERSION@ VERSION_GREATER_EQUAL 2.4 AND @FOUND_OPENEXR_WITH_CONF
|
||||||
|
HINTS @IlmBase_DIR@ @OpenEXR_DIR@)
|
||||||
|
find_dependency(OpenEXR @OpenEXR_VERSION@
|
||||||
|
HINTS @OpenEXR_DIR@)
|
||||||
|
+ find_dependency(libpng CONFIG)
|
||||||
|
+ find_dependency(libheif CONFIG)
|
||||||
|
+ find_dependency(Libsquish)
|
||||||
|
find_dependency(ZLIB @ZLIB_VERSION@) # Because OpenEXR doesn't do it
|
||||||
|
find_dependency(Threads) # Because OpenEXR doesn't do it
|
||||||
|
endif ()
|
||||||
|
diff --git a/src/cmake/externalpackages.cmake b/src/cmake/externalpackages.cmake
|
||||||
|
index 21e18b5..badee4b 100644
|
||||||
|
--- a/src/cmake/externalpackages.cmake
|
||||||
|
+++ b/src/cmake/externalpackages.cmake
|
||||||
|
@@ -151,7 +151,7 @@ find_python()
|
||||||
|
# Dependencies for optional formats and features. If these are not found,
|
||||||
|
# we will continue building, but the related functionality will be disabled.
|
||||||
|
|
||||||
|
-checked_find_package (PNG)
|
||||||
|
+checked_find_package (png PREFER_CONFIG)
|
||||||
|
|
||||||
|
checked_find_package (BZip2) # Used by ffmpeg and freetype
|
||||||
|
if (NOT BZIP2_FOUND)
|
||||||
|
@@ -185,7 +185,8 @@ checked_find_package (GIF
|
||||||
|
RECOMMEND_MIN_REASON "for stability and thread safety")
|
||||||
|
|
||||||
|
# For HEIF/HEIC/AVIF formats
|
||||||
|
-checked_find_package (Libheif VERSION_MIN 1.3
|
||||||
|
+checked_find_package (libheif VERSION_MIN 1.3
|
||||||
|
+ PREFER_CONFIG
|
||||||
|
RECOMMEND_MIN 1.7
|
||||||
|
RECOMMEND_MIN_REASON "for AVIF support")
|
||||||
|
if (APPLE AND LIBHEIF_VERSION VERSION_GREATER_EQUAL 1.10 AND LIBHEIF_VERSION VERSION_LESS 1.11)
|
||||||
|
diff --git a/src/heif.imageio/CMakeLists.txt b/src/heif.imageio/CMakeLists.txt
|
||||||
|
index fed8001..15e87ae 100644
|
||||||
|
--- a/src/heif.imageio/CMakeLists.txt
|
||||||
|
+++ b/src/heif.imageio/CMakeLists.txt
|
||||||
|
@@ -2,9 +2,9 @@
|
||||||
|
# SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
# https://github.com/OpenImageIO/oiio/blob/master/LICENSE.md
|
||||||
|
|
||||||
|
-if (Libheif_FOUND)
|
||||||
|
+if (libheif_FOUND)
|
||||||
|
add_oiio_plugin (heifinput.cpp heifoutput.cpp
|
||||||
|
- LINK_LIBRARIES Libheif::Libheif
|
||||||
|
+ LINK_LIBRARIES heif
|
||||||
|
DEFINITIONS "-DUSE_HEIF=1")
|
||||||
|
else ()
|
||||||
|
message (WARNING "heif plugin will not be built")
|
||||||
|
diff --git a/src/ico.imageio/CMakeLists.txt b/src/ico.imageio/CMakeLists.txt
|
||||||
|
index 9ba76ac..13db4ac 100644
|
||||||
|
--- a/src/ico.imageio/CMakeLists.txt
|
||||||
|
+++ b/src/ico.imageio/CMakeLists.txt
|
||||||
|
@@ -2,9 +2,15 @@
|
||||||
|
# SPDX-License-Identifier: BSD-3-Clause
|
||||||
|
# https://github.com/OpenImageIO/oiio/blob/master/LICENSE.md
|
||||||
|
|
||||||
|
-if (TARGET PNG::PNG)
|
||||||
|
+if (libpng_FOUND)
|
||||||
|
+ if (TARGET png_static)
|
||||||
|
+ set(PNG_TARGET png_static)
|
||||||
|
+ elseif (TARGET png)
|
||||||
|
+ set(PNG_TARGET png)
|
||||||
|
+ endif()
|
||||||
|
+
|
||||||
|
add_oiio_plugin (icoinput.cpp icooutput.cpp
|
||||||
|
- LINK_LIBRARIES PNG::PNG ZLIB::ZLIB)
|
||||||
|
+ LINK_LIBRARIES ${PNG_TARGET} ZLIB::ZLIB)
|
||||||
|
else ()
|
||||||
|
message (WARNING "libpng not found, so ICO support will not work")
|
||||||
|
set (format_plugin_definitions ${format_plugin_definitions} DISABLE_ICO=1 PARENT_SCOPE)
|
@ -15,6 +15,7 @@ vcpkg_from_github(
|
|||||||
fix-config-cmake.patch
|
fix-config-cmake.patch
|
||||||
fix_static_build.patch
|
fix_static_build.patch
|
||||||
disable-test.patch
|
disable-test.patch
|
||||||
|
fix-dependencies.patch
|
||||||
)
|
)
|
||||||
|
|
||||||
file(REMOVE_RECURSE "${SOURCE_PATH}/ext")
|
file(REMOVE_RECURSE "${SOURCE_PATH}/ext")
|
||||||
@ -84,7 +85,8 @@ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/doc"
|
|||||||
"${CURRENT_PACKAGES_DIR}/debug/share")
|
"${CURRENT_PACKAGES_DIR}/debug/share")
|
||||||
|
|
||||||
file(COPY "${SOURCE_PATH}/src/cmake/modules/FindOpenImageIO.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/OpenImageIO")
|
file(COPY "${SOURCE_PATH}/src/cmake/modules/FindOpenImageIO.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/OpenImageIO")
|
||||||
file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/OpenImageIO")
|
file(COPY "${SOURCE_PATH}/src/cmake/modules/FindLibsquish.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
|
||||||
|
file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/openimageio")
|
||||||
|
|
||||||
# Handle copyright
|
# Handle copyright
|
||||||
file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
set(OPENIMAGEIO_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
|
set(OPENIMAGEIO_PREV_MODULE_PATH ${CMAKE_MODULE_PATH})
|
||||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/../OpenImageIO")
|
||||||
|
|
||||||
_find_package(${ARGS})
|
_find_package(${ARGS})
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "openimageio",
|
"name": "openimageio",
|
||||||
"version": "2.3.7.2",
|
"version": "2.3.7.2",
|
||||||
|
"port-version": 1,
|
||||||
"description": "A library for reading and writing images, and a bunch of related classes, utilities, and application.",
|
"description": "A library for reading and writing images, and a bunch of related classes, utilities, and application.",
|
||||||
"homepage": "https://github.com/OpenImageIO/oiio",
|
"homepage": "https://github.com/OpenImageIO/oiio",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
@ -21,6 +22,7 @@
|
|||||||
"libheif",
|
"libheif",
|
||||||
"libjpeg-turbo",
|
"libjpeg-turbo",
|
||||||
"libpng",
|
"libpng",
|
||||||
|
"libsquish",
|
||||||
"openexr",
|
"openexr",
|
||||||
"robin-map",
|
"robin-map",
|
||||||
"tiff",
|
"tiff",
|
||||||
|
@ -4714,7 +4714,7 @@
|
|||||||
},
|
},
|
||||||
"openimageio": {
|
"openimageio": {
|
||||||
"baseline": "2.3.7.2",
|
"baseline": "2.3.7.2",
|
||||||
"port-version": 0
|
"port-version": 1
|
||||||
},
|
},
|
||||||
"openjpeg": {
|
"openjpeg": {
|
||||||
"baseline": "2.3.1",
|
"baseline": "2.3.1",
|
||||||
|
@ -1,5 +1,10 @@
|
|||||||
{
|
{
|
||||||
"versions": [
|
"versions": [
|
||||||
|
{
|
||||||
|
"git-tree": "799ea36f0486224257ecfea149b429d81e74a879",
|
||||||
|
"version": "2.3.7.2",
|
||||||
|
"port-version": 1
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"git-tree": "6da138c7530d19649391636a660a06aac51db135",
|
"git-tree": "6da138c7530d19649391636a660a06aac51db135",
|
||||||
"version": "2.3.7.2",
|
"version": "2.3.7.2",
|
||||||
|
Loading…
Reference in New Issue
Block a user