pineapple/externals/vcpkg/ports/openimageio/fix-dependencies.patch
2022-07-23 03:01:36 +02:00

69 lines
2.7 KiB
Diff
Executable file

diff --git a/src/cmake/Config.cmake.in b/src/cmake/Config.cmake.in
index b690864..fb45388 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 REQUIRED)
+ find_dependency(libheif CONFIG REQUIRED)
+ find_dependency(unofficial-libsquish CONFIG REQUIRED)
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 631035a..9f4d096 100644
--- a/src/cmake/externalpackages.cmake
+++ b/src/cmake/externalpackages.cmake
@@ -148,7 +148,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)
@@ -200,7 +200,8 @@ if (ENABLE_FIELD3D)
endif ()
# 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)
@@ -307,7 +308,8 @@ endmacro()
option (USE_EMBEDDED_LIBSQUISH
"Force use of embedded Libsquish, even if external is found" OFF)
if (NOT USE_EMBEDDED_LIBSQUISH)
- checked_find_package (Libsquish)
+ checked_find_package (unofficial-libsquish PREFER_CONFIG)
+ set(libsquish_FOUND 1)
endif ()
diff --git a/src/ico.imageio/CMakeLists.txt b/src/ico.imageio/CMakeLists.txt
index d290625..cff954c 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
-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)