summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Zander <negril.nx+gentoo@gmail.com>2024-06-03 15:31:48 +0200
committerSam James <sam@gentoo.org>2024-06-04 08:12:38 +0100
commitc9b351c2b953289709c6cd8c1d74596266794b71 (patch)
treef2986757efdedbfdb50a1f340f537172684ad9fb /media-gfx
parentdev-libs/imath: drop 3.1.6, 3.1.9 (diff)
downloadgentoo-c9b351c2b953289709c6cd8c1d74596266794b71.tar.gz
gentoo-c9b351c2b953289709c6cd8c1d74596266794b71.tar.bz2
gentoo-c9b351c2b953289709c6cd8c1d74596266794b71.zip
media-gfx/alembic: add 1.8.6-r1 to fix python build
Failed due to missing export and potentially linking to wrong boost::python lib caused by imath. Closes: https://bugs.gentoo.org/929611 Closes: https://bugs.gentoo.org/926810 Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/alembic/alembic-1.8.6-r1.ebuild70
-rw-r--r--media-gfx/alembic/files/alembic-1.8.6-py312.patch75
2 files changed, 145 insertions, 0 deletions
diff --git a/media-gfx/alembic/alembic-1.8.6-r1.ebuild b/media-gfx/alembic/alembic-1.8.6-r1.ebuild
new file mode 100644
index 000000000000..0d0e90f2f38a
--- /dev/null
+++ b/media-gfx/alembic/alembic-1.8.6-r1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit cmake python-single-r1
+
+DESCRIPTION="Open framework for storing and sharing scene data"
+HOMEPAGE="https://www.alembic.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="examples hdf5 python test"
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ examples? ( python )
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-libs/imath-3.1.11-r1:=
+ python? ( dev-libs/imath:=[python,${PYTHON_SINGLE_USEDEP}] )
+ hdf5? (
+ >=sci-libs/hdf5-1.10.2:=[zlib(+)]
+ >=sys-libs/zlib-1.2.11-r1
+ )
+ python? ( $(python_gen_cond_dep 'dev-libs/boost[python,${PYTHON_USEDEP}]') )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.8.5-set-correct-libdir.patch"
+ "${FILESDIR}/${PN}-1.8.6-py312.patch"
+
+)
+
+DOCS=( ACKNOWLEDGEMENTS.txt FEEDBACK.txt NEWS.txt README.txt )
+
+src_configure() {
+ local mycmakeargs=(
+ -DALEMBIC_BUILD_LIBS=ON
+ -DALEMBIC_DEBUG_WARNINGS_AS_ERRORS=OFF
+ -DALEMBIC_SHARED_LIBS=ON
+ # currently does nothing but require doxygen
+ -DDOCS_PATH=OFF
+ -DUSE_ARNOLD=OFF
+ -DUSE_BINARIES=ON
+ -DUSE_EXAMPLES=$(usex examples)
+ -DUSE_HDF5=$(usex hdf5)
+ -DUSE_MAYA=OFF
+ -DUSE_PRMAN=OFF
+ -DUSE_PYALEMBIC=$(usex python)
+ -DUSE_TESTS=$(usex test)
+ )
+
+ use python && mycmakeargs+=( -DPython3_EXECUTABLE=${PYTHON} )
+
+ cmake_src_configure
+}
+
+# some tests may fail if run in parallel mode
+# see https://github.com/alembic/alembic/issues/401
+src_test() {
+ cmake_src_test -j1
+}
diff --git a/media-gfx/alembic/files/alembic-1.8.6-py312.patch b/media-gfx/alembic/files/alembic-1.8.6-py312.patch
new file mode 100644
index 000000000000..863388be22a9
--- /dev/null
+++ b/media-gfx/alembic/files/alembic-1.8.6-py312.patch
@@ -0,0 +1,75 @@
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+tests: use assertEqual instead of assertEquals
+tests: use assertRaises instead of failUnlessRaises
+
+diff --git a/python/PyAlembic/Tests/testCollections.py b/python/PyAlembic/Tests/testCollections.py
+index ab48a54..1745582 100644
+--- a/python/PyAlembic/Tests/testCollections.py
++++ b/python/PyAlembic/Tests/testCollections.py
+@@ -67,14 +67,14 @@ class CollectionTest(unittest.TestCase):
+ prop = group.getSchema().createCollection("prop")
+ prop.setValue(strVec)
+
+- self.assertEquals(group.getSchema().getNumCollections(), 1)
++ self.assertEqual(group.getSchema().getNumCollections(), 1)
+
+ # TODO passing in time sampling here causes a segfault, most likely because
+ # of how createCollection currently takes an Argument &, see #274
+ cool = group.getSchema().createCollection("cool", md)
+ cool.setTimeSampling(ts)
+
+- self.assertEquals(
++ self.assertEqual(
+ group.getSchema().getCollection(1).getMetaData().get("coupe"),
+ "de ville" )
+
+diff --git a/python/PyAlembic/Tests/testCurves.py b/python/PyAlembic/Tests/testCurves.py
+index dba9e1c..956625a 100644
+--- a/python/PyAlembic/Tests/testCurves.py
++++ b/python/PyAlembic/Tests/testCurves.py
+@@ -59,7 +59,7 @@ class CurvesTest(unittest.TestCase):
+ widthSamp, uvSamp )
+
+ knots = curvesSamp.getKnots()
+- self.assertEquals(len(knots), 0)
++ self.assertEqual(len(knots), 0)
+
+ newKnots = FloatArray(4)
+ for ii in range(4):
+diff --git a/python/PyAlembic/Tests/testTypes.py b/python/PyAlembic/Tests/testTypes.py
+index bad9577..f0e8d26 100644
+--- a/python/PyAlembic/Tests/testTypes.py
++++ b/python/PyAlembic/Tests/testTypes.py
+@@ -60,7 +60,7 @@ class TypesTest(unittest.TestCase):
+ self.assertIsNotNone(POD.kUnknownPOD)
+
+ # If a new POD type is added, this will throw an exception
+- self.assertEquals(POD.kNumPlainOldDataTypes, 14)
++ self.assertEqual(POD.kNumPlainOldDataTypes, 14)
+
+ def testDataTypeWrapper(self):
+ # Default Constructor
+diff --git a/maya/Tests/AbcExport_dupRoots_test.py b/maya/Tests/AbcExport_dupRoots_test.py
+index d532c10..f864281 100644
+--- a/maya/Tests/AbcExport_dupRoots_test.py
++++ b/maya/Tests/AbcExport_dupRoots_test.py
+@@ -48,7 +48,7 @@ class AbcExport_dupRootsTest(unittest.TestCase):
+ MayaCmds.group(n='group1')
+ MayaCmds.duplicate()
+
+- self.failUnlessRaises(RuntimeError, MayaCmds.AbcExport,
++ self.assertRaises(RuntimeError, MayaCmds.AbcExport,
+ j='-root group1|cube -root group2|cube -f dupRoots.abc')
+
+ # the abc file shouldn't exist
+diff --git a/python/PyAlembic/Tests/testPropExcept.py b/python/PyAlembic/Tests/testPropExcept.py
+index e1a1dff..2ddf40d 100644
+--- a/python/PyAlembic/Tests/testPropExcept.py
++++ b/python/PyAlembic/Tests/testPropExcept.py
+@@ -70,5 +70,5 @@ class PropExceptTest(unittest.TestCase):
+ p = props.getProperty("myprop")
+ self.assertEqual(p.getName(), "myprop")
+
+- self.failUnlessRaises(KeyError, props.getProperty, "notfound")
++ self.assertRaises(KeyError, props.getProperty, "notfound")
+ self.assertRaises(IndexError, props.getProperty, 99)