commit:     c92b3342d9a7cd0d2c90f81244a02f23b249db46
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Fri May 21 23:12:34 2021 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Wed Jul 21 21:57:28 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c92b3342

media-libs/openexr: bump to 3.0.5

Improves slotting, so that openexr-2 and openexr-3
can be installed in parallel.
Drop multilib support. Only multilib-aware consumer was
media-libs/opencv. Using multilib would require it on
dev-libs/imath as well which is not possible.

Closes: https://bugs.gentoo.org/788286
Bug: https://bugs.gentoo.org/788310
Bug: https://bugs.gentoo.org/801373
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 media-libs/openexr/Manifest                        |   1 +
 ...5-0001-changes-needed-for-proper-slotting.patch | 119 +++++++++++
 ...0002-add-version-to-binaries-for-slotting.patch | 229 +++++++++++++++++++++
 media-libs/openexr/openexr-3.0.5.ebuild            |  77 +++++++
 4 files changed, 426 insertions(+)

diff --git a/media-libs/openexr/Manifest b/media-libs/openexr/Manifest
index 7f2f02e9d3c..dac7103a63a 100644
--- a/media-libs/openexr/Manifest
+++ b/media-libs/openexr/Manifest
@@ -1,3 +1,4 @@
 DIST openexr-2.5.6.tar.gz 27540385 BLAKE2B 
eea64c6ae4500de31673f3127da6ac98272e85a2c93e2aed96494cc24c397edbce508f0721387be5bbabc4dde596dccf61212709173b7cebd4212dbfbd1e4b65
 SHA512 
8d4582a5f2adcd5eb1486cabe033f9ecaa0292000bf7fa484a94e1d9ec908678a5a903fc6a1beba22bcd9c7f06ac51236834f448ea8aaf4462a338de886f0412
 DIST openexr-2.5.7.tar.gz 27539574 BLAKE2B 
58fd81be52e13d2815b6aa8cea6793359379f5ebf866fd45b31ce30cf5f72aa4699625e7cec51189d62fe76f53418c3e0938f9b827d54ad18342e7aa67c8a3d2
 SHA512 
e44edfa2dcfff2fe372ed2ba07b39a472e549025978de178eff26be641767d22d1a3b543fb7672d9b7b2e9f4c308667f785829ed6d9032a2b42f2ffa0163de40
 DIST openexr-3.0.1.tar.gz 25059445 BLAKE2B 
76bce1ff830b5e32362bfaf91d39945add171c5c1f453968b2fa8ba41e0996064d3a104eb7759cea87477e96e8a52d548743c7d83f5c6131dd38aecdd47bd6dd
 SHA512 
e450c55d150e4c0a8a9147f78fe1c73ea9134976444f8c77c832d0671d4c3796f96fee74d23f26cdb9383e658a33d6d57c989e9207d1edfc8556ad688ff25a5b
+DIST openexr-3.0.5.tar.gz 25060148 BLAKE2B 
24b5601e27342eeff831219f75416797c30afb1ca28ae0a0692d97169297584da503d016c6dda80f63bd5bb9c9a31dc7f91d7713e6fc217a2760af2c662406f0
 SHA512 
7a0f83320ad5e1d8f8414b5175a64eef3c6b06a7ccd7d66d0aa21472ea22146e2617ff10c20e04203fc2a3326d8bac2d95023bec315badb03e6a006596b64595

diff --git 
a/media-libs/openexr/files/openexr-3.0.5-0001-changes-needed-for-proper-slotting.patch
 
b/media-libs/openexr/files/openexr-3.0.5-0001-changes-needed-for-proper-slotting.patch
new file mode 100644
index 00000000000..30991f423b0
--- /dev/null
+++ 
b/media-libs/openexr/files/openexr-3.0.5-0001-changes-needed-for-proper-slotting.patch
@@ -0,0 +1,119 @@
+From: Bernd Waibel <[email protected]>
+Date: Fri, 2 Jul 2021 17:46:33 +0200
+Subject: [PATCH] changes needed for proper slotting
+
+Signed-off-by: Bernd Waibel <[email protected]>
+---
+ cmake/CMakeLists.txt             | 8 ++++----
+ cmake/LibraryDefine.cmake        | 8 ++++----
+ cmake/OpenEXR.pc.in              | 4 ++--
+ cmake/OpenEXRLibraryDefine.cmake | 8 ++++----
+ 4 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
+index 2014d27..7dfb2f2 100644
+--- a/cmake/CMakeLists.txt
++++ b/cmake/CMakeLists.txt
+@@ -200,7 +200,7 @@ if(OPENEXR_INSTALL_PKG_CONFIG)
+         DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
+     )
+   endfunction()
+-  openexr_pkg_config_help(OpenEXR.pc.in)
++  openexr_pkg_config_help(OpenEXR-${OpenEXR_VERSION_MAJOR}.pc.in)
+ else()
+   message(STATUS "-- pkg-config generation disabled")
+ endif()
+@@ -220,7 +220,7 @@ include(CMakePackageConfigHelpers)
+ if(OPENEXR_INSTALL)
+ configure_package_config_file(${PROJECT_NAME}Config.cmake.in
+   ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
+-  INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
++  INSTALL_DESTINATION 
${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${OpenEXR_VERSION_MAJOR}
+ )
+ write_basic_package_version_file("${PROJECT_NAME}ConfigVersion.cmake"
+   VERSION ${PROJECT_VERSION}
+@@ -229,11 +229,11 @@ 
write_basic_package_version_file("${PROJECT_NAME}ConfigVersion.cmake"
+ 
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
+               ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
+-  DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
++  DESTINATION 
${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${OpenEXR_VERSION_MAJOR}
+ )
+ 
+ install(EXPORT ${PROJECT_NAME}
+-  DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
++  DESTINATION 
${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}-${OpenEXR_VERSION_MAJOR}
+   FILE ${PROJECT_NAME}Targets.cmake
+   NAMESPACE ${PROJECT_NAME}::
+   EXPORT_LINK_INTERFACE_LIBRARIES
+diff --git a/cmake/LibraryDefine.cmake b/cmake/LibraryDefine.cmake
+index aa5bb46..2767420 100644
+--- a/cmake/LibraryDefine.cmake
++++ b/cmake/LibraryDefine.cmake
+@@ -79,8 +79,8 @@ function(OPENEXR_DEFINE_LIBRARY libname)
+     install(TARGETS ${libname}
+       EXPORT ${PROJECT_NAME}
+       RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+-      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+-      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${OPENEXR_OUTPUT_SUBDIR}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/${OPENEXR_OUTPUT_SUBDIR}
+       INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+       PUBLIC_HEADER
+         DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENEXR_OUTPUT_SUBDIR}
+@@ -90,8 +90,8 @@ function(OPENEXR_DEFINE_LIBRARY libname)
+     string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE)
+     set(verlibname 
${CMAKE_SHARED_LIBRARY_PREFIX}${libname}${OPENEXR_LIB_SUFFIX}${CMAKE_${uppercase_CMAKE_BUILD_TYPE}_POSTFIX}${CMAKE_SHARED_LIBRARY_SUFFIX})
+     set(baselibname 
${CMAKE_SHARED_LIBRARY_PREFIX}${libname}${CMAKE_${uppercase_CMAKE_BUILD_TYPE}_POSTFIX}${CMAKE_SHARED_LIBRARY_SUFFIX})
+-    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir 
\"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_LIBDIR}\" ${CMAKE_COMMAND} -E 
create_symlink ${verlibname} ${baselibname})")
+-    install(CODE "message(\"-- Creating symlink in 
${CMAKE_INSTALL_FULL_LIBDIR} ${baselibname} -> ${verlibname}\")")
++    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir 
\"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_LIBDIR}/${OPENEXR_OUTPUT_SUBDIR}\" 
${CMAKE_COMMAND} -E create_symlink ${verlibname} ${baselibname})")
++    install(CODE "message(\"-- Creating symlink in 
${CMAKE_INSTALL_FULL_LIBDIR}/${OPENEXR_OUTPUT_SUBDIR} ${baselibname} -> 
${verlibname}\")")
+     set(verlibname)
+     set(baselibname)
+   endif()
+diff --git a/cmake/OpenEXR.pc.in b/cmake/OpenEXR.pc.in
+index 7d9bb7c..c7e1dd6 100644
+--- a/cmake/OpenEXR.pc.in
++++ b/cmake/OpenEXR.pc.in
+@@ -5,9 +5,9 @@
+ 
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+-libdir=@libdir@
++libdir=@libdir@/@OPENEXR_OUTPUT_SUBDIR@
+ includedir=@includedir@
+-OpenEXR_includedir=@includedir@/OpenEXR
++OpenEXR_includedir=@includedir@/@OPENEXR_OUTPUT_SUBDIR@
+ libsuffix=@LIB_SUFFIX_DASH@
+ 
+ Name: OpenEXR
+diff --git a/cmake/OpenEXRLibraryDefine.cmake 
b/cmake/OpenEXRLibraryDefine.cmake
+index 8022e2e..9f919c8 100644
+--- a/cmake/OpenEXRLibraryDefine.cmake
++++ b/cmake/OpenEXRLibraryDefine.cmake
+@@ -54,8 +54,8 @@ function(OPENEXR_DEFINE_LIBRARY libname)
+     install(TARGETS ${libname}
+       EXPORT ${PROJECT_NAME}
+       RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+-      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+-      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
++      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${OPENEXR_OUTPUT_SUBDIR}
++      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/${OPENEXR_OUTPUT_SUBDIR}
+       INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+       PUBLIC_HEADER
+         DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${OPENEXR_OUTPUT_SUBDIR}
+@@ -65,8 +65,8 @@ function(OPENEXR_DEFINE_LIBRARY libname)
+     string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE)
+     set(verlibname 
${CMAKE_SHARED_LIBRARY_PREFIX}${libname}${OPENEXR_LIB_SUFFIX}${CMAKE_${uppercase_CMAKE_BUILD_TYPE}_POSTFIX}${CMAKE_SHARED_LIBRARY_SUFFIX})
+     set(baselibname 
${CMAKE_SHARED_LIBRARY_PREFIX}${libname}${CMAKE_${uppercase_CMAKE_BUILD_TYPE}_POSTFIX}${CMAKE_SHARED_LIBRARY_SUFFIX})
+-    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir 
\"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_LIBDIR}\" ${CMAKE_COMMAND} -E 
create_symlink ${verlibname} ${baselibname})")
+-    install(CODE "message(\"-- Creating symlink in ${CMAKE_INSTALL_FULL_DIR} 
${baselibname} -> ${verlibname}\")")
++    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir 
\"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_LIBDIR}/${OPENEXR_OUTPUT_SUBDIR}\" 
${CMAKE_COMMAND} -E create_symlink ${verlibname} ${baselibname})")
++    install(CODE "message(\"-- Creating symlink in 
${CMAKE_INSTALL_FULL_DIR}/${OPENEXR_OUTPUT_SUBDIR} ${baselibname} -> 
${verlibname}\")")
+     set(verlibname)
+     set(baselibname)
+   endif()
+-- 
+2.32.0
+

diff --git 
a/media-libs/openexr/files/openexr-3.0.5-0002-add-version-to-binaries-for-slotting.patch
 
b/media-libs/openexr/files/openexr-3.0.5-0002-add-version-to-binaries-for-slotting.patch
new file mode 100644
index 00000000000..d6c6b532c87
--- /dev/null
+++ 
b/media-libs/openexr/files/openexr-3.0.5-0002-add-version-to-binaries-for-slotting.patch
@@ -0,0 +1,229 @@
+From: Bernd Waibel <[email protected]>
+Date: Sat, 22 May 2021 17:04:12 +0200
+Subject: [PATCH] add version to binaries for slotting
+
+Signed-off-by: Bernd Waibel <[email protected]>
+---
+ src/bin/exr2aces/CMakeLists.txt       | 10 +++++-----
+ src/bin/exrenvmap/CMakeLists.txt      | 10 +++++-----
+ src/bin/exrheader/CMakeLists.txt      | 10 +++++-----
+ src/bin/exrmakepreview/CMakeLists.txt | 10 +++++-----
+ src/bin/exrmaketiled/CMakeLists.txt   | 10 +++++-----
+ src/bin/exrmultipart/CMakeLists.txt   | 10 +++++-----
+ src/bin/exrmultiview/CMakeLists.txt   | 10 +++++-----
+ src/bin/exrstdattr/CMakeLists.txt     | 10 +++++-----
+ 8 files changed, 40 insertions(+), 40 deletions(-)
+
+diff --git a/src/bin/exr2aces/CMakeLists.txt b/src/bin/exr2aces/CMakeLists.txt
+index 72c4e1c..ede5973 100644
+--- a/src/bin/exr2aces/CMakeLists.txt
++++ b/src/bin/exr2aces/CMakeLists.txt
+@@ -1,14 +1,14 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors to the OpenEXR Project.
+ 
+-add_executable(exr2aces main.cpp)
+-target_link_libraries(exr2aces OpenEXR::OpenEXR)
+-set_target_properties(exr2aces PROPERTIES
++add_executable(exr2aces-${OpenEXR_VERSION_MAJOR} main.cpp)
++target_link_libraries(exr2aces-${OpenEXR_VERSION_MAJOR} OpenEXR::OpenEXR)
++set_target_properties(exr2aces-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exr2aces DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exr2aces-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exr2aces PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exr2aces-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+diff --git a/src/bin/exrenvmap/CMakeLists.txt 
b/src/bin/exrenvmap/CMakeLists.txt
+index bbd26c0..cbe8401 100644
+--- a/src/bin/exrenvmap/CMakeLists.txt
++++ b/src/bin/exrenvmap/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors to the OpenEXR Project.
+ 
+-add_executable( exrenvmap
++add_executable( exrenvmap-${OpenEXR_VERSION_MAJOR}
+   makeLatLongMap.cpp
+   readInputImage.cpp
+   resizeImage.cpp
+@@ -11,13 +11,13 @@ add_executable( exrenvmap
+   EnvmapImage.cpp
+ )
+ 
+-target_link_libraries(exrenvmap OpenEXR::OpenEXR)
+-set_target_properties(exrenvmap PROPERTIES
++target_link_libraries(exrenvmap-${OpenEXR_VERSION_MAJOR} OpenEXR::OpenEXR)
++set_target_properties(exrenvmap-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exrenvmap DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exrenvmap-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exrenvmap PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exrenvmap-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+diff --git a/src/bin/exrheader/CMakeLists.txt 
b/src/bin/exrheader/CMakeLists.txt
+index c427445..b8b0e9a 100644
+--- a/src/bin/exrheader/CMakeLists.txt
++++ b/src/bin/exrheader/CMakeLists.txt
+@@ -1,14 +1,14 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors to the OpenEXR Project.
+ 
+-add_executable(exrheader main.cpp)
+-target_link_libraries(exrheader OpenEXR::OpenEXR)
+-set_target_properties(exrheader PROPERTIES
++add_executable(exrheader-${OpenEXR_VERSION_MAJOR} main.cpp)
++target_link_libraries(exrheader-${OpenEXR_VERSION_MAJOR} OpenEXR::OpenEXR)
++set_target_properties(exrheader-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exrheader DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exrheader-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exrheader PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exrheader-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+diff --git a/src/bin/exrmakepreview/CMakeLists.txt 
b/src/bin/exrmakepreview/CMakeLists.txt
+index bb8b548..03c0687 100644
+--- a/src/bin/exrmakepreview/CMakeLists.txt
++++ b/src/bin/exrmakepreview/CMakeLists.txt
+@@ -1,17 +1,17 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors to the OpenEXR Project.
+ 
+-add_executable(exrmakepreview
++add_executable(exrmakepreview-${OpenEXR_VERSION_MAJOR}
+   main.cpp
+   makePreview.cpp
+ )
+-target_link_libraries(exrmakepreview OpenEXR::OpenEXR)
+-set_target_properties(exrmakepreview PROPERTIES
++target_link_libraries(exrmakepreview-${OpenEXR_VERSION_MAJOR} 
OpenEXR::OpenEXR)
++set_target_properties(exrmakepreview-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exrmakepreview DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exrmakepreview-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exrmakepreview PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exrmakepreview-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+diff --git a/src/bin/exrmaketiled/CMakeLists.txt 
b/src/bin/exrmaketiled/CMakeLists.txt
+index 6c8dfa5..7116b54 100644
+--- a/src/bin/exrmaketiled/CMakeLists.txt
++++ b/src/bin/exrmaketiled/CMakeLists.txt
+@@ -1,18 +1,18 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors (c) to the OpenEXR Project.
+ 
+-add_executable(exrmaketiled 
++add_executable(exrmaketiled-${OpenEXR_VERSION_MAJOR}
+   makeTiled.cpp
+   main.cpp
+   Image.cpp
+ )
+-target_link_libraries(exrmaketiled OpenEXR::OpenEXR)
+-set_target_properties(exrmaketiled PROPERTIES
++target_link_libraries(exrmaketiled-${OpenEXR_VERSION_MAJOR} OpenEXR::OpenEXR)
++set_target_properties(exrmaketiled-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exrmaketiled DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exrmaketiled-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exrmaketiled PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exrmaketiled-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+diff --git a/src/bin/exrmultipart/CMakeLists.txt 
b/src/bin/exrmultipart/CMakeLists.txt
+index 7f8fc1b..dad8c8d 100644
+--- a/src/bin/exrmultipart/CMakeLists.txt
++++ b/src/bin/exrmultipart/CMakeLists.txt
+@@ -1,14 +1,14 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors to the OpenEXR Project.
+ 
+-add_executable(exrmultipart exrmultipart.cpp)
+-target_link_libraries(exrmultipart OpenEXR::OpenEXR)
+-set_target_properties(exrmultipart PROPERTIES
++add_executable(exrmultipart-${OpenEXR_VERSION_MAJOR} exrmultipart.cpp)
++target_link_libraries(exrmultipart-${OpenEXR_VERSION_MAJOR} OpenEXR::OpenEXR)
++set_target_properties(exrmultipart-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exrmultipart DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exrmultipart-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exrmultipart PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exrmultipart-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+diff --git a/src/bin/exrmultiview/CMakeLists.txt 
b/src/bin/exrmultiview/CMakeLists.txt
+index bbac3a6..eba48c1 100644
+--- a/src/bin/exrmultiview/CMakeLists.txt
++++ b/src/bin/exrmultiview/CMakeLists.txt
+@@ -1,18 +1,18 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors to the OpenEXR Project.
+ 
+-add_executable(exrmultiview
++add_executable(exrmultiview-${OpenEXR_VERSION_MAJOR}
+   makeMultiView.cpp
+   main.cpp
+   Image.cpp
+ )
+-target_link_libraries(exrmultiview OpenEXR::OpenEXR)
+-set_target_properties(exrmultiview PROPERTIES
++target_link_libraries(exrmultiview-${OpenEXR_VERSION_MAJOR} OpenEXR::OpenEXR)
++set_target_properties(exrmultiview-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exrmultiview DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exrmultiview-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exrmultiview PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exrmultiview-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+diff --git a/src/bin/exrstdattr/CMakeLists.txt 
b/src/bin/exrstdattr/CMakeLists.txt
+index 79205fc..35ac580 100644
+--- a/src/bin/exrstdattr/CMakeLists.txt
++++ b/src/bin/exrstdattr/CMakeLists.txt
+@@ -1,14 +1,14 @@
+ # SPDX-License-Identifier: BSD-3-Clause
+ # Copyright (c) Contributors to the OpenEXR Project.
+ 
+-add_executable(exrstdattr main.cpp)
+-target_link_libraries(exrstdattr OpenEXR::OpenEXR)
+-set_target_properties(exrstdattr PROPERTIES
++add_executable(exrstdattr-${OpenEXR_VERSION_MAJOR} main.cpp)
++target_link_libraries(exrstdattr-${OpenEXR_VERSION_MAJOR} OpenEXR::OpenEXR)
++set_target_properties(exrstdattr-${OpenEXR_VERSION_MAJOR} PROPERTIES
+   RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+ )
+ if(OPENEXR_INSTALL_TOOLS)
+-  install(TARGETS exrstdattr DESTINATION ${CMAKE_INSTALL_BINDIR})
++  install(TARGETS exrstdattr-${OpenEXR_VERSION_MAJOR} DESTINATION 
${CMAKE_INSTALL_BINDIR})
+ endif()
+ if(WIN32 AND BUILD_SHARED_LIBS)
+-  target_compile_definitions(exrstdattr PRIVATE OPENEXR_DLL)
++  target_compile_definitions(exrstdattr-${OpenEXR_VERSION_MAJOR} PRIVATE 
OPENEXR_DLL)
+ endif()
+-- 
+2.31.1
+

diff --git a/media-libs/openexr/openexr-3.0.5.ebuild 
b/media-libs/openexr/openexr-3.0.5.ebuild
new file mode 100644
index 00000000000..242e04c9541
--- /dev/null
+++ b/media-libs/openexr/openexr-3.0.5.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake flag-o-matic toolchain-funcs
+
+MY_PN=OpenEXR
+MY_PV=$(ver_cut 1)
+MY_P=${MY_PN}-${MY_PV}
+
+DESCRIPTION="ILM's OpenEXR high dynamic-range image file format libraries"
+HOMEPAGE="https://www.openexr.com/";
+SRC_URI="https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="3/29" # based on SONAME
+# imath needs keywording: arm{,64}, hppa, ia64, ppc{,64}, sparc, x64-macos, 
x86-solaris
+KEYWORDS="~amd64 ~ia64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
+IUSE="cpu_flags_x86_avx doc examples large-stack static-libs utils test 
threads"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       ~dev-libs/imath-${PV}:=
+       sys-libs/zlib
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-0001-changes-needed-for-proper-slotting.patch
+       "${FILESDIR}"/${P}-0002-add-version-to-binaries-for-slotting.patch
+)
+
+DOCS=( CHANGES.md GOVERNANCE.md PATENTS README.md SECURITY.md 
docs/SymbolVisibility.md )
+
+src_prepare() {
+       # Fix path for testsuite
+       sed -e "s:/var/tmp/:${T}:" \
+               -i "${S}"/src/test/${MY_PN}{,Fuzz,Util}Test/tmpDir.h || die 
"failed to set temp path for tests"
+
+       cmake_src_prepare
+
+       mv "${S}"/cmake/${MY_PN}.pc.in "${S}"/cmake/${MY_P}.pc.in || die
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_SHARED_LIBS=$(usex !static-libs)
+               -DBUILD_TESTING=$(usex test)
+               -DOPENEXR_BUILD_UTILS=$(usex utils)
+               -DOPENEXR_ENABLE_LARGE_STACK=$(usex large-stack)
+               -DOPENEXR_ENABLE_THREADING=$(usex threads)
+               -DOPENEXR_INSTALL_EXAMPLES=$(usex examples)
+               -DOPENEXR_INSTALL_PKG_CONFIG=ON
+               -DOPENEXR_INSTALL_TOOLS=$(usex utils)
+               -DOPENEXR_OUTPUT_SUBDIR="${MY_P}"
+               -DOPENEXR_USE_CLANG_TIDY=OFF            # don't look for 
clang-tidy
+       )
+
+       use test && mycmakeargs+=( -DOPENEXR_RUN_FUZZ_TESTS=ON )
+
+       cmake_src_configure
+}
+
+src_install() {
+       if use doc; then
+               DOCS+=( docs/*.pdf )
+       fi
+       use examples && docompress -x /usr/share/doc/${PF}/examples
+       cmake_src_install
+
+       cat > "${T}"/99${PN}3 <<-EOF || die
+       LDPATH=/usr/$(get_libdir)/${MY_P}
+       EOF
+       doenvd "${T}"/99${PN}3
+}

Reply via email to