summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2019-04-21 19:18:12 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2019-04-21 20:21:40 +0200
commit3aaca40c1636ae63b4fbe4fa04108f22607ae261 (patch)
tree477deab9650dd1e3b836c89a19a0374f52bd8377 /media-libs
parentdev-qt/qtgui: Drop 5.12.3 (r0) (diff)
downloadgentoo-3aaca40c1636ae63b4fbe4fa04108f22607ae261.tar.gz
gentoo-3aaca40c1636ae63b4fbe4fa04108f22607ae261.tar.bz2
gentoo-3aaca40c1636ae63b4fbe4fa04108f22607ae261.zip
media-libs/openimageio: Fix configure with openexr-2.3.0
Thanks-to: Alexander Miller <alex.miller@gmx.de> Closes: https://bugs.gentoo.org/683126 Package-Manager: Portage-2.3.64, Repoman-2.3.12 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/openimageio/files/openimageio-1.7.17-openexr-2.3.0.patch51
-rw-r--r--media-libs/openimageio/openimageio-1.7.17.ebuild1
2 files changed, 52 insertions, 0 deletions
diff --git a/media-libs/openimageio/files/openimageio-1.7.17-openexr-2.3.0.patch b/media-libs/openimageio/files/openimageio-1.7.17-openexr-2.3.0.patch
new file mode 100644
index 000000000000..e4bd3562adc2
--- /dev/null
+++ b/media-libs/openimageio/files/openimageio-1.7.17-openexr-2.3.0.patch
@@ -0,0 +1,51 @@
+Use PkgConfig to find OpenEXR. Otherwise, the code fails
+when OpenEXR/OpenEXRConfig.h is a multilib wrapper.
+Changes taken from openimageio-1.8.17.
+
+--- openimageio-1.7.17/src/cmake/modules/FindOpenEXR.cmake
++++ openimageio-1.7.17/src/cmake/modules/FindOpenEXR.cmake
+@@ -27,6 +27,13 @@
+ set (ILMBASE_PTHREADS ${CMAKE_THREAD_LIBS_INIT})
+ endif ()
+
++# Attempt to find OpenEXR with pkgconfig
++find_package(PkgConfig)
++if (PKG_CONFIG_FOUND)
++ pkg_check_modules(_ILMBASE QUIET IlmBase)
++ pkg_check_modules(_OPENEXR QUIET OpenEXR>=2.0.0)
++endif (PKG_CONFIG_FOUND)
++
+ # List of likely places to find the headers -- note priority override of
+ # OPENEXR_CUSTOM_INCLUDE_DIR and ${OPENEXR_HOME}/include.
+ # ILMBASE is needed in case ilmbase an openexr are installed in separate
+@@ -35,6 +42,8 @@
+ ${OPENEXR_CUSTOM_INCLUDE_DIR}
+ ${OPENEXR_HOME}/include
+ ${ILMBASE_HOME}/include
++ ${_ILMBASE_INCLUDEDIR}
++ ${_OPENEXR_INCLUDEDIR}
+ /usr/local/include
+ /usr/include
+ /usr/include/${CMAKE_LIBRARY_ARCHITECTURE}
+@@ -53,7 +62,11 @@
+ find_path (OPENEXR_INCLUDE_PATH OpenEXR/OpenEXRConfig.h)
+
+ # Try to figure out version number
+-if (EXISTS "${OPENEXR_INCLUDE_PATH}/OpenEXR/ImfMultiPartInputFile.h")
++if (DEFINED _OPENEXR_VERSION AND NOT "${_OPENEXR_VERSION}" STREQUAL "")
++ set (OPENEXR_VERSION "${_OPENEXR_VERSION}")
++ string (REGEX REPLACE "([0-9]+)\\.[0-9]+" "\\1" OPENEXR_VERSION_MAJOR "${_OPENEXR_VERSION}")
++ string (REGEX REPLACE "[0-9]+\\.([0-9]+)" "\\1" OPENEXR_VERSION_MINOR "${_OPENEXR_VERSION}")
++elseif (EXISTS "${OPENEXR_INCLUDE_PATH}/OpenEXR/ImfMultiPartInputFile.h")
+ # Must be at least 2.0
+ file(STRINGS "${OPENEXR_INCLUDE_PATH}/OpenEXR/OpenEXRConfig.h" TMP REGEX "^#define OPENEXR_VERSION_STRING .*$")
+ string (REGEX MATCHALL "[0-9]+[.0-9]+" OPENEXR_VERSION ${TMP})
+@@ -90,6 +103,8 @@
+ ${GENERIC_LIBRARY_PATHS}
+ ${OPENEXR_INCLUDE_PATH}/../lib
+ ${ILMBASE_INCLUDE_PATH}/../lib
++ ${_ILMBASE_LIBDIR}
++ ${_OPENEXR_LIBDIR}
+ /usr/local/lib
+ /usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
+ /usr/lib
diff --git a/media-libs/openimageio/openimageio-1.7.17.ebuild b/media-libs/openimageio/openimageio-1.7.17.ebuild
index 0b3a2d7fe5ff..2e5bb080fb59 100644
--- a/media-libs/openimageio/openimageio-1.7.17.ebuild
+++ b/media-libs/openimageio/openimageio-1.7.17.ebuild
@@ -61,6 +61,7 @@ DEPEND="${RDEPEND}
PATCHES=(
"${FILESDIR}/${P}-use-gnuinstalldirs.patch"
"${FILESDIR}/${P}-make-python-and-boost-detection-more-generic.patch"
+ "${FILESDIR}/${P}-openexr-2.3.0.patch" # bug 683126
)
DOCS=( CHANGES.md CREDITS.md README.md src/doc/${PN}.pdf )