Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions ports/openimageio/CONTROL
Original file line number Diff line number Diff line change
@@ -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
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we now depend on python2? The feature pybind11 implies that it builds the python bindings. Further, it seems inappropriate to build bindings for a sunsetted version of the python interpreter.


Feature: libraw
Build-Depends: libraw
Expand Down Expand Up @@ -46,4 +45,4 @@ Build-Depends: pybind11
Description: Enable Python bindings support for openimageio

Feature: tools
Description: Build openimageio tools
Description: Build openimageio tools
24 changes: 12 additions & 12 deletions ports/openimageio/fix-config-cmake.patch
Original file line number Diff line number Diff line change
@@ -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@")
88 changes: 62 additions & 26 deletions ports/openimageio/fix-dependency.patch
Original file line number Diff line number Diff line change
@@ -1,16 +1,51 @@
From fe4bbb62f7e8e5f95bd3ffb3abb568d481e317c9 Mon Sep 17 00:00:00 2001
From: Bruk Tedla <biruk.tedla93@gmail.com>
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")
Expand All @@ -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)
Expand All @@ -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)
Expand All @@ -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)
Expand All @@ -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
Expand All @@ -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

26 changes: 13 additions & 13 deletions ports/openimageio/fix-dependfmt.patch
Original file line number Diff line number Diff line change
@@ -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})
26 changes: 13 additions & 13 deletions ports/openimageio/fix-tools-path.patch
Original file line number Diff line number Diff line change
@@ -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 ()
17 changes: 17 additions & 0 deletions ports/openimageio/fix-webp-cmake.patch
Original file line number Diff line number Diff line change
@@ -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")
26 changes: 13 additions & 13 deletions ports/openimageio/fix_static_build.patch
Original file line number Diff line number Diff line change
@@ -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 ()
6 changes: 3 additions & 3 deletions ports/openimageio/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
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
fix_static_build.patch
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")
Expand Down