Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/imath/files/, dev-libs/imath/
Date: Fri, 28 Jan 2022 07:54:01
Message-Id: 1643356409.be9679175b0485357bfacbbce49107226a9783ef.sam@gentoo
1 commit: be9679175b0485357bfacbbce49107226a9783ef
2 Author: Bernd Waibel <waebbl-gentoo <AT> posteo <DOT> net>
3 AuthorDate: Mon Jan 24 18:18:59 2022 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Fri Jan 28 07:53:29 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be967917
7
8 dev-libs/imath: bump to 3.1.4
9
10 Closes: https://bugs.gentoo.org/831954
11 Package-Manager: Portage-3.0.30, Repoman-3.0.3
12 Signed-off-by: Bernd Waibel <waebbl-gentoo <AT> posteo.net>
13 Closes: https://github.com/gentoo/gentoo/pull/23951
14 Signed-off-by: Sam James <sam <AT> gentoo.org>
15
16 dev-libs/imath/Manifest | 1 +
17 ...ntoo-specific-changes-needed-for-slotting.patch | 129 +++++++++++++++++++++
18 dev-libs/imath/imath-3.1.4.ebuild | 75 ++++++++++++
19 3 files changed, 205 insertions(+)
20
21 diff --git a/dev-libs/imath/Manifest b/dev-libs/imath/Manifest
22 index 5c310d17c92d..435be67a7942 100644
23 --- a/dev-libs/imath/Manifest
24 +++ b/dev-libs/imath/Manifest
25 @@ -1 +1,2 @@
26 DIST imath-3.1.3.tar.gz 570840 BLAKE2B b037c9bdee87f58c7a2be9dbda52c89c26eba25fe07342710578f9eef4b90a49b9d5dc5451702c960ae94427d7f748b79b81b7fc9ad350d2252e9e4bf6a1d6cc SHA512 a11f5e736bc49098d735c7903f186c15b03efbec082a8cf2e6635546368035cec0d36c7ae64bfd01bd8eeffb2dd247b8dab19e440a3e1fe33008edacc1268f75
27 +DIST imath-3.1.4.tar.gz 572214 BLAKE2B 6d67f542256e44f9ba6f30ae7d22a37dbf3cd1e49992fb8b0e2264d51d47e9c2297940b3a484e1f59bd8b251e8ef42d81ae88282d0769c111b3cd84cd0a9354e SHA512 f9f7d8ec333e6383191543ee927dc40e870a6330225b01070bb93ad3d149c5e31bd5989d4dc52f3321490c1c5a7cab55582c6e42e34ab4ca5723170e7578e286
28
29 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
30 new file mode 100644
31 index 000000000000..9d384d1d0a7b
32 --- /dev/null
33 +++ b/dev-libs/imath/files/imath-3.1.4-Gentoo-specific-changes-needed-for-slotting.patch
34 @@ -0,0 +1,129 @@
35 +From ca68d34843ce4ef4b03d2b50d20f83329e3d0933 Mon Sep 17 00:00:00 2001
36 +From: Bernd Waibel <waebbl-gentoo@××××××.net>
37 +Date: Tue, 25 Jan 2022 06:25:51 +0100
38 +Subject: [PATCH] [Gentoo specific] changes needed for slotting
39 +
40 +Patches some cases to set the path according to the install
41 +locations, which are different than upstream default to
42 +respect slotted installations.
43 +
44 +Signed-off-by: Bernd Waibel <waebbl-gentoo@××××××.net>
45 +--- a/config/CMakeLists.txt
46 ++++ b/config/CMakeLists.txt
47 +@@ -60,7 +60,7 @@ include(CMakePackageConfigHelpers)
48 +
49 + configure_package_config_file(ImathConfig.cmake.in
50 + ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
51 +- INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
52 ++ INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${IMATH_OUTPUT_SUBDIR}
53 + )
54 +
55 + write_basic_package_version_file("${PROJECT_NAME}ConfigVersion.cmake"
56 +@@ -70,11 +70,11 @@ write_basic_package_version_file("${PROJECT_NAME}ConfigVersion.cmake"
57 +
58 + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
59 + ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
60 +- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
61 ++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${IMATH_OUTPUT_SUBDIR}
62 + )
63 +
64 + install(EXPORT ${PROJECT_NAME}
65 +- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
66 ++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${IMATH_OUTPUT_SUBDIR}
67 + FILE ${PROJECT_NAME}Targets.cmake
68 + NAMESPACE ${PROJECT_NAME}::
69 + EXPORT_LINK_INTERFACE_LIBRARIES
70 +--- a/config/Imath.pc.in
71 ++++ b/config/Imath.pc.in
72 +@@ -5,7 +5,7 @@
73 +
74 + prefix=@prefix@
75 + exec_prefix=@exec_prefix@
76 +-libdir=@libdir@
77 ++libdir=@libdir@/@IMATH_OUTPUT_SUBDIR@
78 + includedir=@includedir@
79 + libsuffix=@LIB_SUFFIX_DASH@
80 + Name: Imath
81 +@@ -14,4 +14,4 @@ Version: @IMATH_VERSION@
82 + Requires:
83 + Conflicts:
84 + Libs: -L${libdir} -lImath${libsuffix}
85 +-Cflags: -I${includedir} -I${includedir}/Imath
86 ++Cflags: -I${includedir} -I${includedir}/@IMATH_OUTPUT_SUBDIR@
87 +--- a/config/LibraryDefine.cmake
88 ++++ b/config/LibraryDefine.cmake
89 +@@ -87,8 +87,8 @@ function(IMATH_DEFINE_LIBRARY libname)
90 + install(TARGETS ${libname}
91 + EXPORT ${PROJECT_NAME}
92 + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
93 +- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
94 +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
95 ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}
96 ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}
97 + INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
98 + PUBLIC_HEADER
99 + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${IMATH_OUTPUT_SUBDIR}
100 +@@ -101,8 +101,8 @@ function(IMATH_DEFINE_LIBRARY libname)
101 + install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir \"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_BINDIR}\" ${CMAKE_COMMAND} -E create_symlink ${verlibname} ${baselibname})")
102 + install(CODE "message(STATUS \"Creating symlink ${CMAKE_INSTALL_FULL_BINDIR}/${baselibname} -> ${verlibname}\")")
103 + else()
104 +- install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E chdir \"\$ENV\{DESTDIR\}${CMAKE_INSTALL_FULL_LIBDIR}\" ${CMAKE_COMMAND} -E create_symlink ${verlibname} ${baselibname})")
105 +- install(CODE "message(STATUS \"Creating symlink ${CMAKE_INSTALL_FULL_LIBDIR}/${baselibname} -> ${verlibname}\")")
106 ++ 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})")
107 ++ install(CODE "message(STATUS \"Creating symlink ${CMAKE_INSTALL_FULL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}/${baselibname} -> ${verlibname}\")")
108 + endif()
109 + set(verlibname)
110 + set(baselibname)
111 +--- a/src/python/PyImath.pc.in
112 ++++ b/src/python/PyImath.pc.in
113 +@@ -13,4 +13,4 @@ Name: PyImath
114 + Description: Python bindings for the Imath libraries
115 + Version: @IMATH_VERSION@
116 + Libs: -L${libdir} -lImath${libsuffix} -lPyImath@PYIMATH_LIB_PYTHONVER_ROOT@@Python_VERSION_MAJOR@_@Python_VERSION_MINOR@${libsuffix}
117 +-Cflags: -I${includedir} -I${includedir}/Imath
118 ++Cflags: -I${includedir} -I${includedir}/@IMATH_OUTPUT_SUBDIR@
119 +--- a/src/python/PyImathNumpy/CMakeLists.txt
120 ++++ b/src/python/PyImathNumpy/CMakeLists.txt
121 +@@ -48,5 +48,5 @@ if(TARGET Python3::Python AND
122 + LIBRARY_OUTPUT_NAME "imathnumpy"
123 + DEBUG_POSTFIX ""
124 + )
125 +- install(TARGETS imathnumpy_python3 DESTINATION ${PyImath_Python3_SITEARCH_REL})
126 ++ install(TARGETS imathnumpy_python3 DESTINATION ${PyImath_Python3_SITEARCH_REL}/${IMATH_OUTPUT_SUBDIR})
127 + endif()
128 +--- a/src/python/config/CMakeLists.txt
129 ++++ b/src/python/config/CMakeLists.txt
130 +@@ -15,7 +15,7 @@ if(IMATH_INSTALL_PKG_CONFIG)
131 + function(pyimath_pkg_config_help pcinfile)
132 + set(prefix ${CMAKE_INSTALL_PREFIX})
133 + set(exec_prefix "\${prefix}")
134 +- set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}")
135 ++ set(libdir "\${exec_prefix}/${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}")
136 + set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}")
137 + string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE)
138 + set(LIB_SUFFIX_DASH ${IMATH_LIB_SUFFIX}${CMAKE_${uppercase_CMAKE_BUILD_TYPE}_POSTFIX})
139 +--- a/src/python/config/ModuleDefine.cmake
140 ++++ b/src/python/config/ModuleDefine.cmake
141 +@@ -54,8 +54,8 @@ function(PYIMATH_ADD_LIBRARY_PRIV libname)
142 + install(TARGETS ${libname}
143 + EXPORT ${PROJECT_NAME}
144 + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
145 +- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
146 +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
147 ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}
148 ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/${IMATH_OUTPUT_SUBDIR}
149 + )
150 + endfunction()
151 +
152 +@@ -154,7 +154,7 @@ function(PYIMATH_DEFINE_MODULE modname)
153 + LIBRARY_OUTPUT_NAME "${modname}"
154 + DEBUG_POSTFIX ""
155 + )
156 +- install(TARGETS ${modname}_python3 DESTINATION ${PyImath_Python3_SITEARCH_REL})
157 ++ install(TARGETS ${modname}_python3 DESTINATION ${PyImath_Python3_SITEARCH_REL}/${IMATH_OUTPUT_SUBDIR})
158 + endif()
159 + endif()
160 + endfunction()
161 +--
162 +2.34.1
163 +
164
165 diff --git a/dev-libs/imath/imath-3.1.4.ebuild b/dev-libs/imath/imath-3.1.4.ebuild
166 new file mode 100644
167 index 000000000000..54eb940af84e
168 --- /dev/null
169 +++ b/dev-libs/imath/imath-3.1.4.ebuild
170 @@ -0,0 +1,75 @@
171 +# Copyright 1999-2022 Gentoo Authors
172 +# Distributed under the terms of the GNU General Public License v2
173 +
174 +EAPI=8
175 +
176 +PYTHON_COMPAT=( python3_{8..10} )
177 +
178 +inherit cmake python-single-r1
179 +
180 +MY_PN="${PN^}"
181 +
182 +DESCRIPTION="Imath basic math package"
183 +HOMEPAGE="https://imath.readthedocs.io"
184 +SRC_URI="https://github.com/AcademySoftwareFoundation/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
185 +# re-keywording needed for (according to ilmbase keywords): ~x64-macos ~x86-solaris
186 +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
187 +S="${WORKDIR}/${MY_PN}-${PV}"
188 +
189 +LICENSE="BSD"
190 +SLOT="3/29"
191 +IUSE="doc large-stack python static-libs test"
192 +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
193 +RESTRICT="!test? ( test )"
194 +
195 +# blocker due to file collision #803347
196 +RDEPEND="
197 + !dev-libs/imath:0
198 + sys-libs/zlib
199 + python? (
200 + ${PYTHON_DEPS}
201 + $(python_gen_cond_dep '
202 + dev-libs/boost:=[python,${PYTHON_USEDEP}]
203 + dev-python/numpy[${PYTHON_USEDEP}]
204 + ')
205 + )
206 +"
207 +DEPEND="${RDEPEND}"
208 +BDEPEND="
209 + virtual/pkgconfig
210 + doc? ( $(python_gen_cond_dep 'dev-python/breathe[${PYTHON_USEDEP}]') )
211 + python? ( ${PYTHON_DEPS} )
212 +"
213 +
214 +PATCHES=( "${FILESDIR}"/${P}-Gentoo-specific-changes-needed-for-slotting.patch )
215 +DOCS=( CHANGES.md CONTRIBUTORS.md README.md SECURITY.md docs/PortingGuide2-3.md )
216 +
217 +pkg_setup() {
218 + use python && python-single-r1_pkg_setup
219 +}
220 +
221 +src_configure() {
222 + local majorver=$(ver_cut 1)
223 +
224 + local mycmakeargs=(
225 + -DBUILD_SHARED_LIBS=$(usex !static-libs)
226 + -DDOCS=$(usex doc)
227 + -DIMATH_ENABLE_LARGE_STACK=$(usex large-stack)
228 + -DIMATH_HALF_USE_LOOKUP_TABLE=ON
229 + -DIMATH_INSTALL_PKG_CONFIG=ON
230 + -DIMATH_OUTPUT_SUBDIR="${MY_PN}-${majorver}"
231 + -DIMATH_USE_CLANG_TIDY=OFF
232 + -DIMATH_USE_NOEXCEPT=ON
233 + )
234 + if use python; then
235 + mycmakeargs+=(
236 + -DBoost_NO_BOOST_CMAKE=OFF
237 + -DPYTHON=ON
238 + -DPython3_EXECUTABLE="${PYTHON}"
239 + -DPython3_INCLUDE_DIR=$(python_get_includedir)
240 + -DPython3_LIBRARY=$(python_get_library_path)
241 + )
242 + fi
243 +
244 + cmake_src_configure
245 +}