summaryrefslogtreecommitdiff
path: root/media-libs/assimp
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/assimp')
-rw-r--r--media-libs/assimp/Manifest6
-rw-r--r--media-libs/assimp/assimp-5.2.2.ebuild59
-rw-r--r--media-libs/assimp/files/assimp-5.2.2-disable-failing-tests.patch52
-rw-r--r--media-libs/assimp/files/assimp-5.2.2-fix-usage-of-incompatible-minizip-data-structure.patch24
-rw-r--r--media-libs/assimp/metadata.xml9
5 files changed, 148 insertions, 2 deletions
diff --git a/media-libs/assimp/Manifest b/media-libs/assimp/Manifest
index 326f3554fc8a..001c58e87528 100644
--- a/media-libs/assimp/Manifest
+++ b/media-libs/assimp/Manifest
@@ -6,7 +6,11 @@ AUX assimp-5.0.1-fix-aiGetLegalStringTest.patch 2919 BLAKE2B 4c5111f11b4d0de92c1
AUX assimp-5.0.1-fix-unittests.patch 1062 BLAKE2B 3e1e2a236f5f4fc9aa901001a526261569513b221082480bcb366e208489b00df33f7da38245293a17e8aac846ca715a86d10c1a7362137c4afd30f63782fdb0 SHA512 66f52cc5f809eb6987e1c6298730ae6bf89e1d0fb1c7665834448494121f79c1602277ac6eabb69a302171cf1048b54560ade3bc00a8e1adb4fe464bdb71d9de
AUX assimp-5.0.1-projectversion.patch 686 BLAKE2B 0b521adc80aaa2350a8225c40a2e1a918831e7fbbd3c9e46cb654c94c370d95ac5622f3c95ab161debeee92234548778de494640f88e4d8131f0bf91b76b07c9 SHA512 981d62f20448cc47c732dd4c0bd24ad43c2bb02a9a765ea1da12e834cd50a1675bdbed94d37d1f60c011ba237327be953db89ec1d509dcfeaf30ed480eb9217f
AUX assimp-5.0.1-versiontest.patch 779 BLAKE2B 7d48c4070917589808a04ba370a682a4b96bf7cb116befee9c8c110fafc17878b7cf8729d6321968670ecedb763a93c237ade4af9f1194e6850b34d4dd6a3be3 SHA512 1b29ba91ecd6d4650e1f44ac7dbbd14e508b85adef78c4396d820567fdabf98d9098ea8f3e2be7368ffeb42b220fe4749d459dfb38edc99be2f09b4aefcb80c3
+AUX assimp-5.2.2-disable-failing-tests.patch 1889 BLAKE2B 7f1f72ca6851dbe07d2493ee81a3c18e7118658b76ad5a41f31626cf0099b8bc7bb2fec83ef64c7ab6feb4fe01994cf106440d7a284d5af66b06b2a5ccb086d9 SHA512 128e420ae01246f46deab243bf09e4a0012935e34d5273792c22538bc9353641203450388c19aa5a7670d0f1a3a40e1d4e31a550711f64c8e2d4d0b0e6b3fba2
+AUX assimp-5.2.2-fix-usage-of-incompatible-minizip-data-structure.patch 855 BLAKE2B a6f526719d65b8aeb3c8ec1333973bd273589f7a1bb03a6838331740fd1961d63d121bf07636918dd221ba9af3a32a600c3fed3f0dd3135c7e37655d5bfa1fba SHA512 2103864934bd4a3469b419536da4604839b3b1a1b412612dd5a631f578d7c54538e7c97ca612e28425e5f1dd0ce71c11117165f1cbcb5f3604113ae4be259734
DIST assimp-5.0.1.tar.gz 46607553 BLAKE2B 7f8cdf2bc602398fbdb675094d135e955716deb8f6469a4b68f7a8c735ecaa3120ee023c5c1f95c5a79c0606ed9a3cb3491c5011e2b409da523b56cd193ebb60 SHA512 51b704ffea778638b9e228578650f62691c56ee1a90337f8bbbee37e807455466d818234be24852334e5806260e5690932c9bd8e00f055c5c26782e0636538f0
+DIST assimp-5.2.2.tar.gz 49600909 BLAKE2B f5f8b5fc43a44c59c95ac3a1f2ce861a5198851ca910ec7688a818550aa0cde787901f7a7beb9f90f7fe731e18f3c31c7350d3b3070f7437153ff9d041f6ffdf SHA512 7f11f3e53bdcd43a81be49ce2ad90d97769ae1c3c6157f57e8a0b2b41c72f394ad1afcdc5f5fa6fbfa1a44233fed4b9a578d5548ec5b9aae2113ef88c2ec843a
DIST assimp-docs-5.0.1.pdf 315941 BLAKE2B 06b2d3a68b6f70fd2ca3daee6cbcd79da255ec8ba00383077b775a1e032ab9675b5f70f2c5e9c1a6f51a4c65b482dfd7bce6c8be3c0288d6f6a653feaa7dfd84 SHA512 f37b8eb8d3a3c6198a91f03fd712a911990aa2d5f50e5039d54349dd673e5270e11ff55aa430f7c3ccbb142cb3b9530684157c25d8a533861b6de34064ab339e
EBUILD assimp-5.0.1.ebuild 1483 BLAKE2B a0342beeb4a2c258836d8109714887b965c938c8c9503d30a5e7421a0c12a5de7fb7e87a7c75d3770328471aa0308e2461080063c8584a72c7fe8e947b87a6f9 SHA512 f5dd6f5610cb896a25288f9924cd8a52dd0f386934e7c43dec8f8af59ce7d44b21f3a04ded400f2de6679fb83a499b941037dfee9047e526e85a8065b2547b1b
-MISC metadata.xml 363 BLAKE2B 3d1b813f2b4c63179eaa6519fabd01f7ed2f2155fcf23286188199edde3f11804be4925334924ef53e2187ced0b76fa930145fa64f6c9eb256e6f5af19b7c881 SHA512 6e1c56b215a9f8df4f1c49ce754ce113f242d5ef7f933b4995002b4b63ca9441c0649e91b299c6e0a007e54acc6653a8b609681a6e3347747171d91cea3416c2
+EBUILD assimp-5.2.2.ebuild 1172 BLAKE2B 598eb79aa6d39bbd8f55904949da69cb662811ac4f8012e57c3218c5f870bd671298b747241458484d7a30abb5491c55072e111b65d2b07140655a1290062170 SHA512 c684e1b2de17bd8769e01afae68a20bbd360e166ec58206783077229a3a8f9e57ba9c0d94cc010168a4452b6a1c19a07d40a15d5ad1cd0ea8df7443bae62357c
+MISC metadata.xml 602 BLAKE2B 37acfeee427b496401cc52d6f424ac33db0d84ebe3052f5d062e52ed0785751f5f693918bbe3388b657329f63b8936c37b7111e88912b376f0db0686320c2b47 SHA512 97813527a76719e99b97c81be7b11b38f5fd31e880a14519973bfa1e32ff08b8010c95ce1e872c2975a446ac567fb69ee2600920b87ead4d17b6584fda29a38a
diff --git a/media-libs/assimp/assimp-5.2.2.ebuild b/media-libs/assimp/assimp-5.2.2.ebuild
new file mode 100644
index 000000000000..d2628095f7fb
--- /dev/null
+++ b/media-libs/assimp/assimp-5.2.2.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Importer library to import assets from 3D files"
+HOMEPAGE="https://github.com/assimp/assimp"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="samples test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/boost:=
+ sys-libs/zlib[minizip]
+ samples? (
+ media-libs/freeglut
+ virtual/opengl
+ x11-libs/libX11
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-usage-of-incompatible-minizip-data-structure.patch
+ "${FILESDIR}"/${P}-disable-failing-tests.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DASSIMP_ASAN=OFF
+ -DASSIMP_BUILD_DOCS=OFF
+ -DASSIMP_BUILD_SAMPLES=$(usex samples)
+ -DASSIMP_BUILD_TESTS=$(usex test)
+ -DASSIMP_ERROR_MAX=ON
+ -DASSIMP_INJECT_DEBUG_POSTFIX=OFF
+ -DASSIMP_IGNORE_GIT_HASH=ON
+ -DASSIMP_UBSAN=OFF
+ )
+
+ if use samples; then
+ mycmakeargs+=( -DOpenGL_GL_PREFERENCE="GLVND" )
+ fi
+
+ cmake_src_configure
+}
+
+src_test() {
+ "${BUILD_DIR}/bin/unit" || die
+}
diff --git a/media-libs/assimp/files/assimp-5.2.2-disable-failing-tests.patch b/media-libs/assimp/files/assimp-5.2.2-disable-failing-tests.patch
new file mode 100644
index 000000000000..3c423ac5107a
--- /dev/null
+++ b/media-libs/assimp/files/assimp-5.2.2-disable-failing-tests.patch
@@ -0,0 +1,52 @@
+From 8bff102329461e88a879472672b584585c6fbd7e Mon Sep 17 00:00:00 2001
+From: Bernd Waibel <waebbl-gentoo@posteo.net>
+Date: Fri, 11 Mar 2022 11:24:13 +0100
+Subject: [PATCH] disable failing tests
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+--- a/test/unit/AssimpAPITest_aiMatrix4x4.cpp
++++ b/test/unit/AssimpAPITest_aiMatrix4x4.cpp
+@@ -249,11 +249,3 @@ TEST_F(AssimpAPITest_aiMatrix4x4, aiMatrix4ScalingTest) {
+ aiMatrix4Scaling(&result_c, &scaling);
+ EXPECT_EQ(result_cpp, result_c);
+ }
+-
+-TEST_F(AssimpAPITest_aiMatrix4x4, aiMatrix4FromToTest) {
+- // Use predetermined vectors to prevent running into division by zero.
+- const auto from = aiVector3D(1,2,1).Normalize(), to = aiVector3D(-1,1,1).Normalize();
+- aiMatrix4x4::FromToMatrix(from, to, result_cpp);
+- aiMatrix4FromTo(&result_c, &from, &to);
+- EXPECT_EQ(result_cpp, result_c);
+-}
+--- a/test/unit/AssimpAPITest_aiQuaternion.cpp
++++ b/test/unit/AssimpAPITest_aiQuaternion.cpp
+@@ -84,13 +84,6 @@ TEST_F(AssimpAPITest_aiQuaternion, aiQuaternionFromAxisAngleTest) {
+ EXPECT_EQ(result_cpp, result_c);
+ }
+
+-TEST_F(AssimpAPITest_aiQuaternion, aiQuaternionFromNormalizedQuaternionTest) {
+- const auto qvec3 = random_unit_vec3();
+- result_cpp = aiQuaternion(qvec3);
+- aiQuaternionFromNormalizedQuaternion(&result_c, &qvec3);
+- EXPECT_EQ(result_cpp, result_c);
+-}
+-
+ TEST_F(AssimpAPITest_aiQuaternion, aiQuaternionAreEqualTest) {
+ result_c = result_cpp = random_quat();
+ EXPECT_EQ(result_cpp == result_c,
+--- a/test/unit/utVersion.cpp
++++ b/test/unit/utVersion.cpp
+@@ -68,10 +68,6 @@ TEST_F( utVersion, aiGetCompileFlagsTest ) {
+ EXPECT_NE( aiGetCompileFlags(), 0U );
+ }
+
+-TEST_F( utVersion, aiGetVersionRevisionTest ) {
+- EXPECT_NE( aiGetVersionRevision(), 0U );
+-}
+-
+ TEST_F( utVersion, aiGetBranchNameTest ) {
+ EXPECT_NE( nullptr, aiGetBranchName() );
+ }
+--
+2.35.1
+
diff --git a/media-libs/assimp/files/assimp-5.2.2-fix-usage-of-incompatible-minizip-data-structure.patch b/media-libs/assimp/files/assimp-5.2.2-fix-usage-of-incompatible-minizip-data-structure.patch
new file mode 100644
index 000000000000..6d48161646ef
--- /dev/null
+++ b/media-libs/assimp/files/assimp-5.2.2-fix-usage-of-incompatible-minizip-data-structure.patch
@@ -0,0 +1,24 @@
+From https://github.com/assimp/assimp/issues/4334#issue-1097591121
+From: Brecht Sanders (@brechtsanders)
+Date: Fri, 11 Mar 2022 10:01:15 +0100
+Subject: [PATCH] fix usage of incompatible minizip data structure
+
+Suggested-by: Brecht Sanders (@brechtsanders)
+Bug: https://github.com/assimp/assimp/issues/4334
+
+Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
+--- a/code/Common/ZipArchiveIOSystem.cpp
++++ b/code/Common/ZipArchiveIOSystem.cpp
+@@ -196,7 +196,9 @@ zlib_filefunc_def IOSystem2Unzip::get(IOSystem *pIOHandler) {
+ zlib_filefunc_def mapping;
+
+ mapping.zopen_file = (open_file_func)open;
++#ifdef ZOPENDISK64
+ mapping.zopendisk_file = (opendisk_file_func)opendisk;
++#endif
+ mapping.zread_file = (read_file_func)read;
+ mapping.zwrite_file = (write_file_func)write;
+ mapping.ztell_file = (tell_file_func)tell;
+--
+2.35.1
+
diff --git a/media-libs/assimp/metadata.xml b/media-libs/assimp/metadata.xml
index 31a4d44a05c1..5525e184d20e 100644
--- a/media-libs/assimp/metadata.xml
+++ b/media-libs/assimp/metadata.xml
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>waebbl-gentoo@posteo.net</email>
+ <name>Bernd Waibel</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Gentoo Proxy Maintainers</name>
+ </maintainer>
<use>
<flag name="samples">Build viewer library</flag>
</use>