diff --git a/ports/openimageio/CONTROL b/ports/openimageio/CONTROL index 94973a0a775b57..b2464f05ae43be 100644 --- a/ports/openimageio/CONTROL +++ b/ports/openimageio/CONTROL @@ -1,9 +1,8 @@ Source: openimageio -Version: 2.1.16.0 -Port-Version: 4 +Version: 2.2.7.0 Homepage: https://github.com/OpenImageIO/oiio Description: A library for reading and writing images, and a bunch of related classes, utilities, and application -Build-Depends: libjpeg-turbo, tiff, libpng, libheif, openexr, boost-thread, boost-smart-ptr, boost-foreach, boost-regex, boost-type-traits, boost-static-assert, boost-unordered, boost-config, boost-algorithm, boost-filesystem, boost-system, boost-thread, boost-asio, boost-random, robin-map, boost-stacktrace, fmt +Build-Depends: libjpeg-turbo, tiff, libpng, libheif, openexr, boost-thread, boost-smart-ptr, boost-foreach, boost-regex, boost-type-traits, boost-static-assert, boost-unordered, boost-config, boost-algorithm, boost-filesystem, boost-system, boost-thread, boost-asio, boost-random, robin-map, boost-stacktrace, fmt, python2 Feature: libraw Build-Depends: libraw @@ -46,4 +45,4 @@ Build-Depends: pybind11 Description: Enable Python bindings support for openimageio Feature: tools -Description: Build openimageio tools \ No newline at end of file +Description: Build openimageio tools diff --git a/ports/openimageio/fix-config-cmake.patch b/ports/openimageio/fix-config-cmake.patch index e943d1c1eb19bb..866fe7a47ad65b 100644 --- a/ports/openimageio/fix-config-cmake.patch +++ b/ports/openimageio/fix-config-cmake.patch @@ -1,12 +1,12 @@ -diff --git a/src/cmake/Config.cmake.in b/src/cmake/Config.cmake.in -index c578a1b..298362a 100644 ---- a/src/cmake/Config.cmake.in -+++ b/src/cmake/Config.cmake.in -@@ -14,6 +14,6 @@ set (@PROJECT_NAME@_PLUGIN_SEARCH_PATH "@PLUGIN_SEARCH_PATH_NATIVE@") - #...logic to determine installedPrefix from the own location... - #set (@PROJECT_NAME@_CONFIG_DIR "${installedPrefix}/@CONFIG_INSTALL_DIR@") - --include ("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake") -+include("${CMAKE_CURRENT_LIST_DIR}/OpenImageIOTargets.cmake") - - check_required_components ("@PROJECT_NAME@") +diff --git a/src/cmake/Config.cmake.in b/src/cmake/Config.cmake.in +index c578a1b..298362a 100644 +--- a/src/cmake/Config.cmake.in ++++ b/src/cmake/Config.cmake.in +@@ -14,6 +14,6 @@ set (@PROJECT_NAME@_PLUGIN_SEARCH_PATH "@PLUGIN_SEARCH_PATH_NATIVE@") + #...logic to determine installedPrefix from the own location... + #set (@PROJECT_NAME@_CONFIG_DIR "${installedPrefix}/@CONFIG_INSTALL_DIR@") + +-include ("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake") ++include("${CMAKE_CURRENT_LIST_DIR}/OpenImageIOTargets.cmake") + + check_required_components ("@PROJECT_NAME@") diff --git a/ports/openimageio/fix-dependency.patch b/ports/openimageio/fix-dependency.patch index 3dc3a16d01d625..4404a89d88a789 100644 --- a/ports/openimageio/fix-dependency.patch +++ b/ports/openimageio/fix-dependency.patch @@ -1,16 +1,51 @@ +From fe4bbb62f7e8e5f95bd3ffb3abb568d481e317c9 Mon Sep 17 00:00:00 2001 +From: Bruk Tedla +Date: Sat, 10 Oct 2020 15:04:06 +0300 +Subject: [PATCH] fix-dependency + +--- + src/cmake/externalpackages.cmake | 41 ++++++++++++++++++++++---------- + src/raw.imageio/CMakeLists.txt | 2 +- + 2 files changed, 30 insertions(+), 13 deletions(-) + diff --git a/src/cmake/externalpackages.cmake b/src/cmake/externalpackages.cmake -index 2f4f7ce..16035df 100644 +index 03d521d..8180b80 100644 --- a/src/cmake/externalpackages.cmake +++ b/src/cmake/externalpackages.cmake -@@ -169,10 +169,17 @@ checked_find_package (PNG REQUIRED) - checked_find_package (TIFF 3.0 REQUIRED) +@@ -32,11 +32,12 @@ option (BUILD_MISSING_DEPS "Try to download and build any missing dependencies" + + ########################################################################### + # Boost setup ++if (MSVC) ++ # Disable automatic linking using pragma comment(lib,...) of boost libraries upon including of a header ++ add_definitions (-DBOOST_ALL_NO_LIB=1) ++endif () + if (LINKSTATIC) +- set (Boost_USE_STATIC_LIBS ON) +- if (MSVC) +- add_definitions (-DBOOST_ALL_NO_LIB=1) +- endif () ++ set (Boost_USE_STATIC_LIBS ON) + else () + if (MSVC) + add_definitions (-DBOOST_ALL_DYN_LINK=1) +@@ -80,17 +81,24 @@ link_directories ("${Boost_LIBRARY_DIRS}") + # that we will not complete the build if they are not found. + + checked_find_package (ZLIB REQUIRED) # Needed by several packages +-checked_find_package (TIFF 3.0 REQUIRED ++checked_find_package (TIFF 3.9 REQUIRED + RECOMMEND_MIN 4.0 + RECOMMEND_MIN_REASON "to support >4GB files") # IlmBase & OpenEXR +find_package (Threads) +if (CMAKE_USE_PTHREADS_INIT) + set (ILMBASE_PTHREADS ${CMAKE_THREAD_LIBS_INIT}) +endif () - checked_find_package (OpenEXR 2.0 REQUIRED) + checked_find_package (OpenEXR 2.0 REQUIRED + RECOMMEND_MIN 2.2 + RECOMMEND_MIN_REASON "for DWA compression") # We use Imath so commonly, may as well include it everywhere. -include_directories ("${OPENEXR_INCLUDES}" "${ILMBASE_INCLUDES}" - "${ILMBASE_INCLUDES}/OpenEXR") @@ -22,7 +57,17 @@ index 2f4f7ce..16035df 100644 if (CMAKE_COMPILER_IS_CLANG AND OPENEXR_VERSION VERSION_LESS 2.3) # clang C++ >= 11 doesn't like 'register' keyword in old exr headers add_compile_options (-Wno-deprecated-register) -@@ -217,7 +224,7 @@ checked_find_package (HDF5 +@@ -117,6 +125,9 @@ if (USE_EXTERNAL_PUGIXML) + DEFINITIONS -DUSE_EXTERNAL_PUGIXML=1) + endif() + ++# From pythonutils.cmake ++include(pythonutils) ++find_python() + + + ########################################################################### +@@ -137,7 +148,7 @@ checked_find_package (HDF5 ISDEPOF Field3D) checked_find_package (OpenColorIO DEFINITIONS -DUSE_OCIO=1 -DUSE_OPENCOLORIO=1) @@ -31,20 +76,21 @@ index 2f4f7ce..16035df 100644 DEFINITIONS -DUSE_OPENCV=1) # Intel TBB -@@ -226,19 +233,23 @@ checked_find_package (TBB 2017 +@@ -147,7 +158,7 @@ checked_find_package (TBB 2017 ISDEPOF OpenVDB) checked_find_package (DCMTK 3.6.1) # For DICOM images -checked_find_package (FFmpeg 2.6) -+checked_find_package (FFMPEG) ++checked_find_package (FFmpeg) checked_find_package (Field3D DEPS HDF5 DEFINITIONS -DUSE_FIELD3D=1) - checked_find_package (GIF 4) - checked_find_package (Libheif 1.3) # For HEIF/HEIC format - checked_find_package (LibRaw) --checked_find_package (OpenJpeg) -+checked_find_package (OpenJPEG CONFIG) +@@ -159,12 +170,16 @@ checked_find_package (LibRaw + PRINT LibRaw_r_LIBRARIES + RECOMMEND_MIN 0.18 + RECOMMEND_MIN_REASON "for ACES support") +-checked_find_package (OpenJpeg 2.0) ++checked_find_package (OpenJpeg CONFIG) checked_find_package (OpenVDB 5.0 DEPS TBB DEFINITIONS -DUSE_OPENVDB=1) @@ -59,7 +105,7 @@ index 2f4f7ce..16035df 100644 option (USE_R3DSDK "Enable R3DSDK (RED camera) support" OFF) checked_find_package (R3DSDK) # RED camera -@@ -254,7 +265,9 @@ if (OPENGL_FOUND) +@@ -180,7 +195,9 @@ if (OPENGL_FOUND) list (APPEND qt5_modules OpenGL) endif () option (USE_QT "Use Qt if found" ON) @@ -69,19 +115,6 @@ index 2f4f7ce..16035df 100644 if (USE_QT AND NOT Qt5_FOUND AND APPLE) message (STATUS " If you think you installed qt5 with Homebrew and it still doesn't work,") message (STATUS " try: export PATH=/usr/local/opt/qt5/bin:$PATH") -diff --git a/src/jpeg2000.imageio/CMakeLists.txt b/src/jpeg2000.imageio/CMakeLists.txt -index 7bc6adb..0ac8937 100644 ---- a/src/jpeg2000.imageio/CMakeLists.txt -+++ b/src/jpeg2000.imageio/CMakeLists.txt -@@ -3,7 +3,7 @@ - # https://github.com/OpenImageIO/oiio/blob/master/LICENSE.md - - if (OPENJPEG_FOUND) -- if (${OPENJPEG_VERSION} VERSION_LESS 2.0) -+ if (0) - # Old OpenJpeg 1.5. Remove this eventually. - # - # For reasons I don't understand, OpenJPEG 1.5 fails imageinout_test diff --git a/src/raw.imageio/CMakeLists.txt b/src/raw.imageio/CMakeLists.txt index 81a0ff5..23326a0 100644 --- a/src/raw.imageio/CMakeLists.txt @@ -95,3 +128,6 @@ index 81a0ff5..23326a0 100644 DEFINITIONS "-DUSE_LIBRAW=1") else () message (WARNING "Raw plugin will not be built") +-- +2.27.0.windows.1 + diff --git a/ports/openimageio/fix-dependfmt.patch b/ports/openimageio/fix-dependfmt.patch index f0791f85ed1751..08a8b4a2f1e80a 100644 --- a/ports/openimageio/fix-dependfmt.patch +++ b/ports/openimageio/fix-dependfmt.patch @@ -1,13 +1,13 @@ -diff --git a/src/cmake/externalpackages.cmake b/src/cmake/externalpackages.cmake -index 4f1dfaf..1a17d1e 100644 ---- a/src/cmake/externalpackages.cmake -+++ b/src/cmake/externalpackages.cmake -@@ -385,5 +385,7 @@ macro (find_or_download_fmt) - checked_find_package (fmt REQUIRED) - endmacro() - --find_or_download_fmt() -+find_package(fmt CONFIG REQUIRED) -+get_property(FMT_INCLUDES TARGET fmt::fmt PROPERTY INTERFACE_INCLUDE_DIRECTORIES) -+checked_find_package (fmt CONFIG REQUIRED) - include_directories (${FMT_INCLUDES}) +diff --git a/src/cmake/externalpackages.cmake b/src/cmake/externalpackages.cmake +index 1240f22..b7772e1 100644 +--- a/src/cmake/externalpackages.cmake ++++ b/src/cmake/externalpackages.cmake +@@ -387,5 +387,7 @@ macro (find_or_download_fmt) + checked_find_package (fmt REQUIRED) + endmacro() + +-find_or_download_fmt() ++find_package(fmt CONFIG REQUIRED) ++get_property(FMT_INCLUDES TARGET fmt::fmt PROPERTY INTERFACE_INCLUDE_DIRECTORIES) ++checked_find_package (fmt CONFIG REQUIRED) + include_directories (${FMT_INCLUDES}) diff --git a/ports/openimageio/fix-tools-path.patch b/ports/openimageio/fix-tools-path.patch index b7bf3753bd10f7..7aa0dfdffd4a92 100644 --- a/ports/openimageio/fix-tools-path.patch +++ b/ports/openimageio/fix-tools-path.patch @@ -1,13 +1,13 @@ -diff --git a/src/cmake/oiio_macros.cmake b/src/cmake/oiio_macros.cmake -index 9e54f67..d9c9437 100644 ---- a/src/cmake/oiio_macros.cmake -+++ b/src/cmake/oiio_macros.cmake -@@ -142,7 +142,7 @@ macro (fancy_add_executable) - target_link_libraries (${_target_NAME} PRIVATE ${_target_LINK_LIBRARIES}) - endif () - set_target_properties (${_target_NAME} PROPERTIES FOLDER "Tools") -- install_targets (${_target_NAME}) -+ install(TARGETS ${_target_NAME} RUNTIME DESTINATION tools/openimageio) - else () - message (STATUS "${ColorRed}Disabling ${_target_NAME} ${ColorReset}") - endif () +diff --git a/src/cmake/oiio_macros.cmake b/src/cmake/oiio_macros.cmake +index 623eefa..8705e96 100644 +--- a/src/cmake/oiio_macros.cmake ++++ b/src/cmake/oiio_macros.cmake +@@ -127,7 +127,7 @@ macro (fancy_add_executable) + target_link_libraries (${_target_NAME} PRIVATE ${_target_LINK_LIBRARIES}) + endif () + set_target_properties (${_target_NAME} PROPERTIES FOLDER "Tools") +- install_targets (${_target_NAME}) ++ install(TARGETS ${_target_NAME} RUNTIME DESTINATION tools/openimageio) + else () + message (STATUS "${ColorRed}Disabling ${_target_NAME} ${ColorReset}") + endif () diff --git a/ports/openimageio/fix-webp-cmake.patch b/ports/openimageio/fix-webp-cmake.patch new file mode 100644 index 00000000000000..3d30abfd9b7273 --- /dev/null +++ b/ports/openimageio/fix-webp-cmake.patch @@ -0,0 +1,17 @@ +diff --git a/src/webp.imageio/CMakeLists.txt b/src/webp.imageio/CMakeLists.txt +index 9e01bd7..f9bce69 100644 +--- a/src/webp.imageio/CMakeLists.txt ++++ b/src/webp.imageio/CMakeLists.txt +@@ -2,9 +2,10 @@ + # SPDX-License-Identifier: BSD-3-Clause + # https://github.com/OpenImageIO/oiio/blob/master/LICENSE.md + +-if (Webp_FOUND) ++if (WEBP_FOUND) + add_oiio_plugin (webpinput.cpp webpoutput.cpp +- LINK_LIBRARIES Webp::Webp ++ INCLUDE_DIRS ${WEBP_INCLUDE_DIR} ++ LINK_LIBRARIES ${WEBP_LIBRARY} + DEFINITIONS "-DUSE_WEBP=1") + else () + message (STATUS "WebP plugin will not be built") diff --git a/ports/openimageio/fix_static_build.patch b/ports/openimageio/fix_static_build.patch index a5ebb467a5d521..c4eb09e1f920eb 100644 --- a/ports/openimageio/fix_static_build.patch +++ b/ports/openimageio/fix_static_build.patch @@ -1,13 +1,13 @@ -diff --git a/src/cmake/compiler.cmake b/src/cmake/compiler.cmake -index 1468be3..ed4167a 100644 ---- a/src/cmake/compiler.cmake -+++ b/src/cmake/compiler.cmake -@@ -482,7 +482,7 @@ set (EXTRA_DSO_LINK_ARGS "" CACHE STRING "Extra command line definitions when bu - # - option (BUILD_SHARED_LIBS "Build shared libraries (set to OFF to build static libs)" ON) - if (NOT BUILD_SHARED_LIBS) -- add_definitions (-D${PROJ_NAME}_STATIC_DEFINE=1) -+ add_definitions (-DOIIO_STATIC_DEFINE=1) - endif () - - +diff --git a/src/cmake/compiler.cmake b/src/cmake/compiler.cmake +index 12a8e81..15fe688 100644 +--- a/src/cmake/compiler.cmake ++++ b/src/cmake/compiler.cmake +@@ -505,7 +505,7 @@ endif () + # + option (BUILD_SHARED_LIBS "Build shared libraries (set to OFF to build static libs)" ON) + if (NOT BUILD_SHARED_LIBS) +- add_definitions (-D${PROJ_NAME}_STATIC_DEFINE=1) ++ add_definitions (-DOIIO_STATIC_DEFINE=1) + endif () + + diff --git a/ports/openimageio/portfile.cmake b/ports/openimageio/portfile.cmake index 9b640c6f8f3a3a..0410599e0b07af 100644 --- a/ports/openimageio/portfile.cmake +++ b/ports/openimageio/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OpenImageIO/oiio - REF e028a5264bd229e128b37a4362f7eb9c73ea82cc #2.1.16.0 - SHA512 be5741e139c3c1d2fe62d6706833e9b158b6b00e1a57d141626f28cd3653f63e587b76de676b6b45d1a2330a0e71ebb2f1d00c108b68509cc418b6026424cfda + REF 5bb655ecbd828d40aa95a2a61527d8ad2253c6e9 #2.2.7.0 + SHA512 6b81df38b5c82fb07be47a684ec3d0eb533bbc51dd4dda1a2a43d99c4fed0b2c61f373abf3a52431be20843b0d83ec2dd35535ec276974bc56809405e7dab427 HEAD_REF master PATCHES fix-dependency.patch @@ -10,7 +10,7 @@ vcpkg_from_github( fix-tools-path.patch fix-config-cmake.patch fix-dependfmt.patch - fix-libheif.patch # Remove this patch on the next update + fix-webp-cmake.patch ) file(REMOVE_RECURSE "${SOURCE_PATH}/ext")