diff options
| author | Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> | 2021-09-10 12:05:50 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-09-09 21:05:50 -0700 |
| commit | d3d8dad4b47a649974c0f301485196be1511c05c (patch) | |
| tree | f668eaba9300950f6292c0b44f8ffa9f1edab36d | |
| parent | d251db7f968b8c53823e07c980dbc99649aaf345 (diff) | |
| download | vcpkg-d3d8dad4b47a649974c0f301485196be1511c05c.tar.gz vcpkg-d3d8dad4b47a649974c0f301485196be1511c05c.zip | |
[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
| -rw-r--r-- | ports/openimageio/fix-dependencies.patch | 75 | ||||
| -rw-r--r-- | ports/openimageio/portfile.cmake | 4 | ||||
| -rw-r--r-- | ports/openimageio/vcpkg-cmake-wrapper.cmake | 2 | ||||
| -rw-r--r-- | ports/openimageio/vcpkg.json | 2 | ||||
| -rw-r--r-- | versions/baseline.json | 2 | ||||
| -rw-r--r-- | versions/o-/openimageio.json | 5 |
6 files changed, 87 insertions, 3 deletions
diff --git a/ports/openimageio/fix-dependencies.patch b/ports/openimageio/fix-dependencies.patch new file mode 100644 index 000000000..81b95ff9c --- /dev/null +++ b/ports/openimageio/fix-dependencies.patch @@ -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) diff --git a/ports/openimageio/portfile.cmake b/ports/openimageio/portfile.cmake index 496ec5c43..cd4ce9c52 100644 --- a/ports/openimageio/portfile.cmake +++ b/ports/openimageio/portfile.cmake @@ -15,6 +15,7 @@ vcpkg_from_github( fix-config-cmake.patch fix_static_build.patch disable-test.patch + fix-dependencies.patch ) file(REMOVE_RECURSE "${SOURCE_PATH}/ext") @@ -84,7 +85,8 @@ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/doc" "${CURRENT_PACKAGES_DIR}/debug/share") 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 file(INSTALL "${SOURCE_PATH}/LICENSE.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/ports/openimageio/vcpkg-cmake-wrapper.cmake b/ports/openimageio/vcpkg-cmake-wrapper.cmake index 688c83f3c..597630576 100644 --- a/ports/openimageio/vcpkg-cmake-wrapper.cmake +++ b/ports/openimageio/vcpkg-cmake-wrapper.cmake @@ -1,5 +1,5 @@ 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}) diff --git a/ports/openimageio/vcpkg.json b/ports/openimageio/vcpkg.json index 78ab842b9..cb30bf6f8 100644 --- a/ports/openimageio/vcpkg.json +++ b/ports/openimageio/vcpkg.json @@ -1,6 +1,7 @@ { "name": "openimageio", "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.", "homepage": "https://github.com/OpenImageIO/oiio", "dependencies": [ @@ -21,6 +22,7 @@ "libheif", "libjpeg-turbo", "libpng", + "libsquish", "openexr", "robin-map", "tiff", diff --git a/versions/baseline.json b/versions/baseline.json index 598acc447..ac2efba1c 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -4714,7 +4714,7 @@ }, "openimageio": { "baseline": "2.3.7.2", - "port-version": 0 + "port-version": 1 }, "openjpeg": { "baseline": "2.3.1", diff --git a/versions/o-/openimageio.json b/versions/o-/openimageio.json index e68d13dda..1ebf88c90 100644 --- a/versions/o-/openimageio.json +++ b/versions/o-/openimageio.json @@ -1,6 +1,11 @@ { "versions": [ { + "git-tree": "799ea36f0486224257ecfea149b429d81e74a879", + "version": "2.3.7.2", + "port-version": 1 + }, + { "git-tree": "6da138c7530d19649391636a660a06aac51db135", "version": "2.3.7.2", "port-version": 0 |
