commit:     be9679175b0485357bfacbbce49107226a9783ef
Author:     Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
AuthorDate: Mon Jan 24 18:18:59 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 07:53:29 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be967917

dev-libs/imath: bump to 3.1.4

Closes: https://bugs.gentoo.org/831954
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
Closes: https://github.com/gentoo/gentoo/pull/23951
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/imath/Manifest                            |   1 +
 ...ntoo-specific-changes-needed-for-slotting.patch | 129 +++++++++++++++++++++
 dev-libs/imath/imath-3.1.4.ebuild                  |  75 ++++++++++++
 3 files changed, 205 insertions(+)

diff --git a/dev-libs/imath/Manifest b/dev-libs/imath/Manifest
index 5c310d17c92d..435be67a7942 100644
--- a/dev-libs/imath/Manifest
+++ b/dev-libs/imath/Manifest
@@ -1 +1,2 @@
 DIST imath-3.1.3.tar.gz 570840 BLAKE2B 
b037c9bdee87f58c7a2be9dbda52c89c26eba25fe07342710578f9eef4b90a49b9d5dc5451702c960ae94427d7f748b79b81b7fc9ad350d2252e9e4bf6a1d6cc
 SHA512 
a11f5e736bc49098d735c7903f186c15b03efbec082a8cf2e6635546368035cec0d36c7ae64bfd01bd8eeffb2dd247b8dab19e440a3e1fe33008edacc1268f75
+DIST imath-3.1.4.tar.gz 572214 BLAKE2B 
6d67f542256e44f9ba6f30ae7d22a37dbf3cd1e49992fb8b0e2264d51d47e9c2297940b3a484e1f59bd8b251e8ef42d81ae88282d0769c111b3cd84cd0a9354e
 SHA512 
f9f7d8ec333e6383191543ee927dc40e870a6330225b01070bb93ad3d149c5e31bd5989d4dc52f3321490c1c5a7cab55582c6e42e34ab4ca5723170e7578e286

diff --git 
a/dev-libs/imath/files/imath-3.1.4-Gentoo-specific-changes-needed-for-slotting.patch
 
b/dev-libs/imath/files/imath-3.1.4-Gentoo-specific-changes-needed-for-slotting.patch
new file mode 100644
index 000000000000..9d384d1d0a7b
--- /dev/null
+++ 
b/dev-libs/imath/files/imath-3.1.4-Gentoo-specific-changes-needed-for-slotting.patch
@@ -0,0 +1,129 @@
+From ca68d34843ce4ef4b03d2b50d20f83329e3d0933 Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <[email protected]>
+Date: Tue, 25 Jan 2022 06:25:51 +0100
+Subject: [PATCH] [Gentoo specific] changes needed for slotting
+
+Patches some cases to set the path according to the install
+locations, which are different than upstream default to
+respect slotted installations.
+
+Signed-off-by: Bernd Waibel <[email protected]>
+--- a/config/CMakeLists.txt
++++ b/config/CMakeLists.txt
+@@ -60,7 +60,7 @@ include(CMakePackageConfigHelpers)
+ 
+ configure_package_config_file(ImathConfig.cmake.in
+   ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
+-  INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
++  INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${IMATH_OUTPUT_SUBDIR}
+ )
+ 
+ write_basic_package_version_file("${PROJECT_NAME}ConfigVersion.cmake"
+@@ -70,11 +70,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/${IMATH_OUTPUT_SUBDIR}
+ )
+ 
+ install(EXPORT ${PROJECT_NAME}
+-  DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
++  DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${IMATH_OUTPUT_SUBDIR}
+   FILE ${PROJECT_NAME}Targets.cmake
+   NAMESPACE ${PROJECT_NAME}::
+   EXPORT_LINK_INTERFACE_LIBRARIES
+--- a/config/Imath.pc.in
++++ b/config/Imath.pc.in
+@@ -5,7 +5,7 @@
+ 
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+-libdir=@libdir@
++libdir=@libdir@/@IMATH_OUTPUT_SUBDIR@
+ includedir=@includedir@
+ libsuffix=@LIB_SUFFIX_DASH@
+ Name: Imath
+@@ -14,4 +14,4 @@ Version: @IMATH_VERSION@
+ Requires:
+ Conflicts:
+ Libs: -L${libdir} -lImath${libsuffix}
+-Cflags: -I${includedir} -I${includedir}/Imath
++Cflags: -I${includedir} -I${includedir}/@IMATH_OUTPUT_SUBDIR@
+--- a/config/LibraryDefine.cmake
++++ b/config/LibraryDefine.cmake
+@@ -87,8 +87,8 @@ function(IMATH_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}/${IMATH_OUTPUT_SUBDIR}
++    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}
+     INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+     PUBLIC_HEADER
+       DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${IMATH_OUTPUT_SUBDIR}
+@@ -101,8 +101,8 @@ function(IMATH_DEFINE_LIBRARY libname)
+       install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir 
\"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_BINDIR}\" ${CMAKE_COMMAND} -E 
create_symlink ${verlibname} ${baselibname})")
+       install(CODE "message(STATUS \"Creating symlink 
${CMAKE_INSTALL_FULL_BINDIR}/${baselibname} -> ${verlibname}\")")
+     else()
+-      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(STATUS \"Creating symlink 
${CMAKE_INSTALL_FULL_LIBDIR}/${baselibname} -> ${verlibname}\")")
++      install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir 
\"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}\" 
${CMAKE_COMMAND} -E create_symlink ${verlibname} ${baselibname})")
++      install(CODE "message(STATUS \"Creating symlink 
${CMAKE_INSTALL_FULL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}/${baselibname} -> 
${verlibname}\")")
+     endif()
+     set(verlibname)
+     set(baselibname)
+--- a/src/python/PyImath.pc.in
++++ b/src/python/PyImath.pc.in
+@@ -13,4 +13,4 @@ Name: PyImath
+ Description: Python bindings for the Imath libraries
+ Version: @IMATH_VERSION@
+ Libs: -L${libdir} -lImath${libsuffix} 
-lPyImath@PYIMATH_LIB_PYTHONVER_ROOT@@Python_VERSION_MAJOR@_@Python_VERSION_MINOR@${libsuffix}
+-Cflags: -I${includedir} -I${includedir}/Imath
++Cflags: -I${includedir} -I${includedir}/@IMATH_OUTPUT_SUBDIR@
+--- a/src/python/PyImathNumpy/CMakeLists.txt
++++ b/src/python/PyImathNumpy/CMakeLists.txt
+@@ -48,5 +48,5 @@ if(TARGET Python3::Python AND
+     LIBRARY_OUTPUT_NAME "imathnumpy"
+     DEBUG_POSTFIX ""
+   )
+-  install(TARGETS imathnumpy_python3 DESTINATION 
${PyImath_Python3_SITEARCH_REL})
++  install(TARGETS imathnumpy_python3 DESTINATION 
${PyImath_Python3_SITEARCH_REL}/${IMATH_OUTPUT_SUBDIR})
+ endif()
+--- a/src/python/config/CMakeLists.txt
++++ b/src/python/config/CMakeLists.txt
+@@ -15,7 +15,7 @@ if(IMATH_INSTALL_PKG_CONFIG)
+   function(pyimath_pkg_config_help pcinfile)
+     set(prefix ${CMAKE_INSTALL_PREFIX})
+     set(exec_prefix "\${prefix}")
+-    set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
++    set(libdir 
"\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}")
+     set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
+     string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE)
+     set(LIB_SUFFIX_DASH 
${IMATH_LIB_SUFFIX}${CMAKE_${uppercase_CMAKE_BUILD_TYPE}_POSTFIX})
+--- a/src/python/config/ModuleDefine.cmake
++++ b/src/python/config/ModuleDefine.cmake
+@@ -54,8 +54,8 @@ function(PYIMATH_ADD_LIBRARY_PRIV 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}/${IMATH_OUTPUT_SUBDIR}
++    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}
+   )
+ endfunction()
+ 
+@@ -154,7 +154,7 @@ function(PYIMATH_DEFINE_MODULE modname)
+         LIBRARY_OUTPUT_NAME "${modname}"
+         DEBUG_POSTFIX ""
+       )
+-      install(TARGETS ${modname}_python3 DESTINATION 
${PyImath_Python3_SITEARCH_REL})
++      install(TARGETS ${modname}_python3 DESTINATION 
${PyImath_Python3_SITEARCH_REL}/${IMATH_OUTPUT_SUBDIR})
+     endif()
+   endif()
+ endfunction()
+-- 
+2.34.1
+

diff --git a/dev-libs/imath/imath-3.1.4.ebuild 
b/dev-libs/imath/imath-3.1.4.ebuild
new file mode 100644
index 000000000000..54eb940af84e
--- /dev/null
+++ b/dev-libs/imath/imath-3.1.4.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit cmake python-single-r1
+
+MY_PN="${PN^}"
+
+DESCRIPTION="Imath basic math package"
+HOMEPAGE="https://imath.readthedocs.io";
+SRC_URI="https://github.com/AcademySoftwareFoundation/${MY_PN}/archive/refs/tags/v${PV}.tar.gz
 -> ${P}.tar.gz"
+# re-keywording needed for (according to ilmbase keywords): ~x64-macos 
~x86-solaris
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 
~amd64-linux ~x86-linux"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="BSD"
+SLOT="3/29"
+IUSE="doc large-stack python static-libs test"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+# blocker due to file collision #803347
+RDEPEND="
+       !dev-libs/imath:0
+       sys-libs/zlib
+       python? (
+               ${PYTHON_DEPS}
+               $(python_gen_cond_dep '
+                       dev-libs/boost:=[python,${PYTHON_USEDEP}]
+                       dev-python/numpy[${PYTHON_USEDEP}]
+               ')
+       )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       virtual/pkgconfig
+       doc? ( $(python_gen_cond_dep 'dev-python/breathe[${PYTHON_USEDEP}]') )
+       python? ( ${PYTHON_DEPS} )
+"
+
+PATCHES=( "${FILESDIR}"/${P}-Gentoo-specific-changes-needed-for-slotting.patch 
)
+DOCS=( CHANGES.md CONTRIBUTORS.md README.md SECURITY.md 
docs/PortingGuide2-3.md )
+
+pkg_setup() {
+       use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+       local majorver=$(ver_cut 1)
+
+       local mycmakeargs=(
+               -DBUILD_SHARED_LIBS=$(usex !static-libs)
+               -DDOCS=$(usex doc)
+               -DIMATH_ENABLE_LARGE_STACK=$(usex large-stack)
+               -DIMATH_HALF_USE_LOOKUP_TABLE=ON
+               -DIMATH_INSTALL_PKG_CONFIG=ON
+               -DIMATH_OUTPUT_SUBDIR="${MY_PN}-${majorver}"
+               -DIMATH_USE_CLANG_TIDY=OFF
+               -DIMATH_USE_NOEXCEPT=ON
+       )
+       if use python; then
+               mycmakeargs+=(
+                       -DBoost_NO_BOOST_CMAKE=OFF
+                       -DPYTHON=ON
+                       -DPython3_EXECUTABLE="${PYTHON}"
+                       -DPython3_INCLUDE_DIR=$(python_get_includedir)
+                       -DPython3_LIBRARY=$(python_get_library_path)
+               )
+       fi
+
+       cmake_src_configure
+}

Reply via email to