# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools PYTHON_COMPAT=( python3_{10..12} ) DISTUTILS_SINGLE_IMPL=1 DISTUTILS_EXT=1 inherit distutils-r1 prefix DESCRIPTION="Tensors and Dynamic neural networks in Python" HOMEPAGE="https://pytorch.org/" SRC_URI="https://github.com/pytorch/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="BSD" SLOT="0" KEYWORDS="~amd64" RESTRICT="test" REQUIRED_USE=${PYTHON_REQUIRED_USE} RDEPEND=" ${PYTHON_DEPS} ~sci-libs/caffe2-${PV}[${PYTHON_SINGLE_USEDEP}] $(python_gen_cond_dep ' dev-python/typing-extensions[${PYTHON_USEDEP}] dev-python/sympy[${PYTHON_USEDEP}] ') " DEPEND="${RDEPEND} $(python_gen_cond_dep ' dev-python/pyyaml[${PYTHON_USEDEP}] ') " PATCHES=( "${FILESDIR}"/${PN}-2.5.0-dontbuildagain.patch "${FILESDIR}"/pytorch-1.9.0-Change-library-directory-according-to-CMake-build.patch "${FILESDIR}"/${PN}-2.4.0-global-dlopen.patch "${FILESDIR}"/pytorch-2.5.0-torch_shm_manager.patch "${FILESDIR}"/${PN}-2.5.0-setup.patch "${FILESDIR}"/${PN}-2.2.1-emptyso.patch ) src_prepare() { # Set build dir for pytorch's setup sed -i \ -e "/BUILD_DIR/s|build|/var/lib/caffe2/|" \ tools/setup_helpers/env.py \ || die distutils-r1_src_prepare hprefixify tools/setup_helpers/env.py } python_compile() { PYTORCH_BUILD_VERSION=${PV} \ PYTORCH_BUILD_NUMBER=0 \ USE_SYSTEM_LIBS=ON \ CMAKE_BUILD_DIR="${BUILD_DIR}" \ distutils-r1_python_compile } python_install() { USE_SYSTEM_LIBS=ON distutils-r1_python_install }