Skip to content

Commit

Permalink
media-libs/opencolorio: add 2.3.2
Browse files Browse the repository at this point in the history
Re-disable tests because upstream can't get around fixing this

Bug: AcademySoftwareFoundation/OpenColorIO#1784
Bug: AcademySoftwareFoundation/OpenColorIO#1361
Closes: https://bugs.gentoo.org/912190
Closes: https://bugs.gentoo.org/836378
Closes: https://bugs.gentoo.org/835496
Closes: https://bugs.gentoo.org/795459
Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
  • Loading branch information
negril committed Mar 11, 2024
1 parent e1d90e0 commit 58ac846
Show file tree
Hide file tree
Showing 2 changed files with 176 additions and 0 deletions.
1 change: 1 addition & 0 deletions media-libs/opencolorio/Manifest
@@ -1,3 +1,4 @@
DIST opencolorio-2.1.3.tar.gz 11024701 BLAKE2B bcd1eb6a74260f451e49ef40e729bfc4c354ab255d96c261fbf865c586f285fe876ed54b05276f3b6b25ece4fd261672fe1dd519041ffad77d7c78efc8cf161d SHA512 b26fcfa3ea12ab6e4b019a13ce79ebcfd215c674acb348f2d9f85f749b2a5beccd395ed1cc9954e4b3cb83a160b24a8d7d81994ac1d9ea8cfe074b81d6b8a061
DIST opencolorio-2.2.1.tar.gz 11336775 BLAKE2B b463d6a0a7e7fec0a890fa8a0cd06ed269f925c5986dfb82eb53728a09d884c89e6c4dfe112706ce27351d4440909ff9680387028d1dc887e7d866b30c39c54f SHA512 d5f3a4b5bd661af7336c015d07e0feccb286464a08239a3c259a97217001161e7571f5137475fc2f4d1b9af6381bbfa03c0b60f41de282f114307961b8d84fc9
DIST opencolorio-2.3.0.tar.gz 11406998 BLAKE2B 0e62e43de076a712f68b68b91c9908bc9050316e3500e0924fafb08a3356ce361953f49dfd1eb022eeada11e499653833a48a22a4ba593504617c1c61b16d488 SHA512 cdf20ca6c85b1d70244d8532d010344f1cf85be6a116d831e83ea04d7c47a961049691e6a241e9a7f632d864df57a4bccb68084e27187ec8a05f1fdf344824d7
DIST opencolorio-2.3.2.tar.gz 11443450 BLAKE2B 2573d2f229ba0349574d83883cd6534853164dc6a5866b203b65d4c0acbc54fc0aaf6ff4ecbec5506c6adafe48d57fb80a8b47c45b7b16e0c4ac94f5fbaffea3 SHA512 4c7547960623b058398a86d9c8335d31f2354a1ee7ba58fbc2d1ace698132b99e8f823c9b443a77545721da076569228f502f1f3f4deba44659571c6d12db133
175 changes: 175 additions & 0 deletions media-libs/opencolorio/opencolorio-2.3.2.ebuild
@@ -0,0 +1,175 @@
# 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 virtualx

DESCRIPTION="Color management framework for visual effects and animation"
HOMEPAGE="https://opencolorio.org https://github.com/AcademySoftwareFoundation/OpenColorIO"
SRC_URI="https://github.com/AcademySoftwareFoundation/OpenColorIO/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/OpenColorIO-${PV}"

LICENSE="BSD"
SLOT="0/$(ver_cut 1-2)"
# minizip-ng: ~arm ~arm64 ~ppc64 ~riscv
# osl: ~riscv
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
CPU_USE=(
x86_{avx,avx2,avx512f,f16c,sse2,sse3,sse4_1,sse4_2,ssse3}
# requires https://github.com/DLTcollab/sse2neon
# arm_neon
)
IUSE="apps ${CPU_USE[*]/#/cpu_flags_} doc opengl python test"
# TODO: drop opengl? It does nothing without building either the apps or the testsuite
REQUIRED_USE="
apps? ( opengl )
doc? ( python )
python? ( ${PYTHON_REQUIRED_USE} )
test? ( opengl )
"

RDEPEND="
dev-cpp/pystring
>=dev-cpp/yaml-cpp-0.7.0:=
dev-libs/expat
>=dev-libs/imath-3.1.5:=
sys-libs/minizip-ng
sys-libs/zlib
apps? (
media-libs/lcms:2
>=media-libs/openexr-3.1.5:=
)
opengl? (
media-libs/freeglut
media-libs/glew:=
media-libs/libglvnd
)
python? (
${PYTHON_DEPS}
$(python_gen_cond_dep 'dev-python/pybind11[${PYTHON_USEDEP}]')
)
"
DEPEND="${RDEPEND}"
# TODO: OSL tests would need OIIO, leading to a circular dependency. If OIIO
# isn't found this test will be skipped (automagic if found?)
BDEPEND="
virtual/pkgconfig
doc? (
app-text/doxygen
$(python_gen_cond_dep '
dev-python/breathe[${PYTHON_USEDEP}]
dev-python/recommonmark[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-press-theme[${PYTHON_USEDEP}]
dev-python/sphinx-tabs[${PYTHON_USEDEP}]
dev-python/testresources[${PYTHON_USEDEP}]
')
)
opengl? (
media-libs/freeglut
media-libs/glew:=
media-libs/libglvnd
)
"
# test? (
# >=media-libs/openimageio-2.2.14
# >=media-libs/osl-1.11
# )
# "

# Restricting tests, bugs #439790 and #447908
# compares floating point numbers for bit equality
# compares floating point number string representations for equality
# https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/1361 Apr 4, 2021
# https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/1784 Apr 3, 2023
RESTRICT="test" #"!test? ( test )"

PATCHES=(
"${FILESDIR}/${PN}-2.2.1-adjust-python-installation.patch"
)

pkg_setup() {
use python && python-single-r1_pkg_setup
}

src_prepare() {
cmake_src_prepare

# Avoid automagic test dependency on OSL, bug #833933
# Can cause problems during e.g. OpenEXR unsplitting migration
cmake_run_in tests cmake_comment_add_subdirectory osl
}

src_configure() {
# Missing features:
# - Truelight and Nuke are not in portage for now, so their support are disabled
# - Java bindings was not tested, so disabled
# Notes:
# - OpenImageIO or OpenEXR (default) is required for building ociodisplay and
# ocioconvert (USE opengl)
# - OpenGL, GLUT and GLEW is required for building ociodisplay (USE opengl)
local mycmakeargs=(
"-DOCIO_BUILD_APPS=$(usex apps)"
"-DOCIO_BUILD_DOCS=$(usex doc)"
"-DOCIO_BUILD_FROZEN_DOCS=$(usex doc)"
"-DOCIO_BUILD_GPU_TESTS=$(usex test)"
"-DOCIO_BUILD_JAVA=OFF"
"-DOCIO_BUILD_PYTHON=$(usex python)"
"-DOCIO_BUILD_TESTS=$(usex test)"
"-DOCIO_INSTALL_EXT_PACKAGES=NONE"
# allow the user to tell OCIO to display more information when searching and building the dependencies.
# "-DOCIO_VERBOSE=YES"

"-DOCIO_USE_SIMD=ON"
)

if use amd64 || use x86 ; then
mycmakeargs+=(
"-DOCIO_USE_SSE2=$(usex cpu_flags_x86_sse2)"
"-DOCIO_USE_SSE3=$(usex cpu_flags_x86_sse3)"
"-DOCIO_USE_SSSE3=$(usex cpu_flags_x86_ssse3)"
"-DOCIO_USE_SSE4=$(usex cpu_flags_x86_sse4_1)"
"-DOCIO_USE_SSE42=$(usex cpu_flags_x86_sse4_2)"
"-DOCIO_USE_AVX=$(usex cpu_flags_x86_avx)"
"-DOCIO_USE_AVX2=$(usex cpu_flags_x86_avx2)"
"-DOCIO_USE_AVX512=$(usex cpu_flags_x86_avx512f)"
"-DOCIO_USE_F16C=$(usex cpu_flags_x86_f16c)"
)
fi

# requires https://github.com/DLTcollab/sse2neon
# if use arm || use arm64 ; then
# mycmakeargs+=(
# "-DOCIO_USE_SSE2NEON=$(usex cpu_flags_arm_neon)"
# )
# fi

use python && mycmakeargs+=(
"-DOCIO_PYTHON_VERSION=${EPYTHON/python/}"
"-DPython_EXECUTABLE=${PYTHON}"
"-DPYTHON_VARIANT_PATH=$(python_get_sitedir)"
)

cmake_src_configure
}

src_test() {
local myctestargs=(
-j1
)
virtx cmake_src_test
}

src_install() {
cmake_src_install

if use doc; then
# there are already files in ${ED}/usr/share/doc/${PF}
mv "${ED}/usr/share/doc/OpenColorIO/"* "${ED}/usr/share/doc/${PF}" || die
rmdir "${ED}/usr/share/doc/OpenColorIO" || die
fi
}

0 comments on commit 58ac846

Please sign in to comment.