media-libs/assimp: add 6.0.2

Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/43084
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Paul Zander
2025-07-20 21:42:14 +02:00
committed by Sam James
parent 3d45cacc0f
commit 4c93e07b46
2 changed files with 129 additions and 0 deletions

View File

@@ -1 +1,2 @@
DIST assimp-5.4.3.tar.gz 53964510 BLAKE2B f08711881600d708ad523b2c36488c79a39463b5baa32261b674499582e0f4aa5fd4e8ade4bca0ceff93917f685f240b7dcee4d9140a65e3a9b888559a7b0433 SHA512 4738db84068d36face8caf61c0789178fdfc1310fa8e81ffb9b025e14183bde546b784d691c92438ab310a79ab7b75ab62ee0247d5f01e81ddf04fb94b7a9c0b
DIST assimp-6.0.2.tar.gz 152224946 BLAKE2B 96abf9c3bff6a2062186326eb75973f27a6de71a48954b0a3b2cf68ff5d7bf69ac4fc80a9330570f14c9c19509ad7312ca83b817f9eb75f2bff29cb320c39735 SHA512 dc9637b183a1ab4c87d3548b1cacf4278fc5d30ffa4ca35436f94723c20b916932791e8e2c2f0d2a63786078457e61a42fb7aac8462551172f7f5bd2582ad9a9

View File

@@ -0,0 +1,128 @@
# Copyright 1999-2025 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"
# SONAME -> ASSIMP_SOVERSION
SLOT="0/$(ver_cut 1)"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
IUSE="collada doc samples test"
RESTRICT="!test? ( test )"
RDEPEND="
sys-libs/zlib[minizip]
collada? ( media-libs/opencollada )
doc? ( app-text/doxygen )
samples? (
media-libs/freeglut
media-libs/libglvnd
)
test? (
dev-cpp/gtest
)
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/${PN}-5.2.5-gtest.patch"
"${FILESDIR}/${PN}-5.2.5-float-comparison.patch"
)
DOCS=( CodeConventions.md Readme.md )
src_prepare() {
sed -r \
-e "s#PROJECT\(Assimp VERSION [0-9]+\.[0-9]+\.[0-9]+\)#PROJECT(Assimp VERSION ${PV})#g" \
-i CMakeLists.txt || die
sed -r \
-e "s#EXPECT_EQ\(aiGetVersionPatch\(\), [0-9]+U \);#EXPECT_EQ(aiGetVersionPatch(), $(ver_cut 3)U );#g" \
-e "s#EXPECT_NE\( aiGetVersionRevision#EXPECT_EQ\( aiGetVersionRevision#g" \
-i test/unit/utVersion.cpp || die
sed \
-e "s# -g -O0 # #g" \
-i \
cmake-modules/Coveralls.cmake \
contrib/android-cmake/android.toolchain.cmake \
contrib/openddlparser/CMakeLists.txt \
CMakeLists.txt \
|| die
sed -r \
-e "s#(PROJECT_NUMBER *= \").*\"#\1v${PV}\"#g" \
-e "s#(GENERATE_XML *= )(YES|NO)#\1NO#g" \
-e "s#(GENERATE_HTML *= )(YES|NO)#\1YES#g" \
-i doc/Doxyfile.in || die
sed -r \
-e "s#AssimpDoc_Html(/AnimationOverview)#architecture\1#g" \
-e "s#AssimpDoc_Html(/dragonsplash)#images\1#g" \
-i doc/CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
# -DASSIMP_ASAN=yes # Enable AddressSanitizer.
-DASSIMP_BUILD_ASSIMP_TOOLS=yes # If the supplementary tools for Assimp are built in addition to the library.
-DASSIMP_BUILD_DOCS=$(usex doc) # Build documentation using Doxygen.
# -DASSIMP_BUILD_DRACO=no # If the Draco libraries are to be built. Primarily for glTF
# -DASSIMP_BUILD_NONFREE_C4D_IMPORTER=no # Build the C4D importer, which relies on the non-free Cineware SDK.
-DASSIMP_BUILD_SAMPLES=$(usex samples) # If the official samples are built as well (needs Glut).
-DASSIMP_BUILD_TESTS=$(usex test) # If the test suite for Assimp is built in addition to the library.
-DASSIMP_BUILD_USE_CCACHE=off
-DASSIMP_BUILD_ZLIB=no # Build your own zlib
-DASSIMP_COVERALLS=$(usex test) # Enable this to measure test coverage.
# breaks tests
# -DASSIMP_DOUBLE_PRECISION=no # Set to yes to enable double precision processing
# -DASSIMP_HUNTER_ENABLED=no # Enable Hunter package manager support
-DASSIMP_IGNORE_GIT_HASH=yes # Don't call git to get the hash.
-DASSIMP_INJECT_DEBUG_POSTFIX=no # Inject debug postfix in .a/.so/.dll lib names
# -DASSIMP_INSTALL=yes # Disable this if you want to use assimp as a submodule.
# -DASSIMP_LIBRARY_SUFFIX= # Suffix to append to library names
# -DASSIMP_NO_EXPORT=no # Disable Assimp's export functionality.
# -DASSIMP_OPT_BUILD_PACKAGES=no # Set to yes to generate CPack configuration files and packaging targets
-DASSIMP_RAPIDJSON_NO_MEMBER_ITERATOR=no # Suppress rapidjson warning on MSVC (NOTE: breaks android build)
# -DASSIMP_UBSAN=yes # Enable Undefined Behavior sanitizer.
-DASSIMP_WARNINGS_AS_ERRORS=no # Treat all warnings as errors.
# -DBUILD_SHARED_LIBS=yes # Build package with shared libraries.
-DASSIMP_BUILD_COLLADA_IMPORTER="$(usex collada)"
-DASSIMP_BUILD_COLLADA_EXPORTER="$(usex collada)"
)
if use doc; then
mycmakeargs+=(
-DHTML_OUTPUT="html"
)
fi
if use samples; then
mycmakeargs+=(
-DOpenGL_GL_PREFERENCE="GLVND"
)
fi
if use test; then
# adds the target headercheck which compiles every header file, default disabled because it adds many targets
mycmakeargs+=(
-DASSIMP_HEADERCHECK="$(usex test)"
)
fi
cmake_src_configure
}
src_test() {
local myctestargs=(
--repeat until-pass:100
)
cmake_src_test
}