commit: 9932484f31b23bd05e5fe52cfa37b9909907bd6e Author: Sv. Lockal <lockalsash <AT> gmail <DOT> com> AuthorDate: Sat Jul 5 21:23:41 2025 +0000 Commit: Alfredo Tupone <tupone <AT> gentoo <DOT> org> CommitDate: Sun Jul 6 08:50:52 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9932484f
sci-ml/torchvision: add rocm support and fix multilib issues Closes: https://bugs.gentoo.org/959589 Signed-off-by: Sv. Lockal <lockalsash <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/42891 Closes: https://github.com/gentoo/gentoo/pull/42891 Signed-off-by: Alfredo Tupone <tupone <AT> gentoo.org> sci-ml/torchvision/metadata.xml | 3 ++ ...21.0-r1.ebuild => torchvision-0.21.0-r2.ebuild} | 36 +++++++++++++++++----- 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/sci-ml/torchvision/metadata.xml b/sci-ml/torchvision/metadata.xml index c79707bc8e29..25b9e992eee0 100644 --- a/sci-ml/torchvision/metadata.xml +++ b/sci-ml/torchvision/metadata.xml @@ -5,6 +5,9 @@ <email>[email protected]</email> <name>Alfredo Tupone</name> </maintainer> + <use> + <flag name="rocm">Enable ROCm gpu computing support</flag> + </use> <upstream> <remote-id type="github">pytorch/vision</remote-id> </upstream> diff --git a/sci-ml/torchvision/torchvision-0.21.0-r1.ebuild b/sci-ml/torchvision/torchvision-0.21.0-r2.ebuild similarity index 73% rename from sci-ml/torchvision/torchvision-0.21.0-r1.ebuild rename to sci-ml/torchvision/torchvision-0.21.0-r2.ebuild index 85547e6cc670..220ff1706966 100644 --- a/sci-ml/torchvision/torchvision-0.21.0-r1.ebuild +++ b/sci-ml/torchvision/torchvision-0.21.0-r2.ebuild @@ -19,16 +19,20 @@ S="${WORKDIR}"/vision-${PV} LICENSE="BSD" SLOT="0" KEYWORDS="~amd64" -IUSE="cuda" +IUSE="cuda +ffmpeg +jpeg +png rocm +webp" + +REQUIRED_USE=" + ?? ( cuda rocm ) +" RDEPEND=" dev-python/numpy dev-python/pillow - media-libs/libjpeg-turbo:= - media-libs/libpng:= - media-libs/libwebp - media-video/ffmpeg - sci-ml/caffe2[cuda?] + jpeg? ( media-libs/libjpeg-turbo:= ) + png? ( media-libs/libpng:= ) + webp? ( media-libs/libwebp ) + ffmpeg? ( media-video/ffmpeg ) + sci-ml/caffe2[cuda?,rocm?] sci-ml/pytorch[${PYTHON_SINGLE_USEDEP}] " @@ -44,6 +48,10 @@ BDEPEND=" PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) src_prepare() { + # multilib fixes + sed "s/ffmpeg_root, \"lib\"/ffmpeg_root, \"$(get_libdir)\"/" \ + -i setup.py || die + use cuda && cuda_src_prepare distutils-r1_src_prepare } @@ -53,8 +61,20 @@ distutils_enable_tests pytest python_compile() { addpredict /dev/kfd - FORCE_CUDA=$(usex cuda 1 0) \ - NVCC_FLAGS="${NVCCFLAGS}" \ + export FORCE_CUDA=0 + if use cuda || use rocm ; then + export FORCE_CUDA=1 + fi + + export TORCHVISION_USE_PNG=$(usex png 1 0) + export TORCHVISION_USE_JPEG=$(usex jpeg 1 0) + export TORCHVISION_USE_WEBP=$(usex webp 1 0) + export TORCHVISION_USE_FFMPEG=$(usex ffmpeg 1 0) + + export TORCHVISION_USE_NVJPEG=$(usex cuda 1 0) + export TORCHVISION_USE_VIDEO_CODEC=$(usex cuda 1 0) + + NVCC_FLAGS="${NVCCFLAGS}" \ MAX_JOBS="$(makeopts_jobs)" \ distutils-r1_python_compile -j1 }
