commit:     ce9798e81de7fea2bbe6dfc6d0645b80db649300
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 20 04:38:02 2020 +0000
Commit:     Benda XU <heroxbd <AT> gentoo <DOT> org>
CommitDate: Thu Feb 20 04:38:06 2020 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=ce9798e8

sci-libs/pytorch: add support for cuda.

Bug: https://github.com/gentoo/sci/pull/941
Package-Manager: Portage-2.3.88, Repoman-2.3.18
Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org>

 sci-libs/pytorch/files/pytorch-1.4.0-eigen.patch | 13 ----------
 sci-libs/pytorch/pytorch-1.4.0_p0.ebuild         | 33 ++++++------------------
 2 files changed, 8 insertions(+), 38 deletions(-)

diff --git a/sci-libs/pytorch/files/pytorch-1.4.0-eigen.patch 
b/sci-libs/pytorch/files/pytorch-1.4.0-eigen.patch
deleted file mode 100644
index 54ea3a5e0..000000000
--- a/sci-libs/pytorch/files/pytorch-1.4.0-eigen.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: pytorch-1.4.0/CMakeLists.txt
-===================================================================
---- pytorch-1.4.0.orig/CMakeLists.txt
-+++ pytorch-1.4.0/CMakeLists.txt
-@@ -173,7 +173,7 @@ option(USE_REDIS "Use Redis" OFF)
- option(USE_ROCKSDB "Use RocksDB" OFF)
- option(USE_SNPE "Use Qualcomm's SNPE library" OFF)
- option(USE_SYSTEM_EIGEN_INSTALL
--    "Use system Eigen instead of the one under third_party" OFF)
-+    "Use system Eigen instead of the one under third_party" ON)
- option(USE_TENSORRT "Using Nvidia TensorRT library" OFF)
- option(USE_ZMQ "Use ZMQ" OFF)
- option(USE_ZSTD "Use ZSTD" OFF)

diff --git a/sci-libs/pytorch/pytorch-1.4.0_p0.ebuild 
b/sci-libs/pytorch/pytorch-1.4.0_p0.ebuild
index 06ee528f2..90c7e9a9d 100644
--- a/sci-libs/pytorch/pytorch-1.4.0_p0.ebuild
+++ b/sci-libs/pytorch/pytorch-1.4.0_p0.ebuild
@@ -39,7 +39,7 @@ LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64"
 
-IUSE="asan atlas cuda doc eigen +fbgemm ffmpeg gflags glog +gloo leveldb lmdb 
mkl mkldnn mpi namedtensor +nnpack numa +numpy +observers +openblas opencl 
opencv +openmp +python +qnnpack redis static tbb test tools zeromq"
+IUSE="asan atlas cuda eigen +fbgemm ffmpeg gflags glog +gloo leveldb lmdb mkl 
mkldnn mpi namedtensor +nnpack numa +numpy +observers +openblas opencl opencv 
+openmp +python +qnnpack redis static tbb test tools zeromq"
 
 REQUIRED_USE="
        python? ( ${PYTHON_REQUIRED_USE} )
@@ -52,8 +52,8 @@ DEPEND="
        dev-python/pyyaml[${PYTHON_USEDEP}]
        virtual/python-typing[${PYTHON_USEDEP}]
        atlas? ( sci-libs/atlas )
-       cuda? ( dev-util/nvidia-cuda-toolkit:0= )
-       doc? ( dev-python/pytorch-sphinx-theme[${PYTHON_USEDEP}] )
+       cuda? ( dev-libs/cudnn
+               dev-cpp/eigen[cuda] )
        ffmpeg? ( virtual/ffmpeg )
        gflags? ( dev-cpp/gflags )
        glog? ( dev-cpp/glog )
@@ -70,13 +70,10 @@ DEPEND="
        )
        redis? ( dev-db/redis )
        zeromq? ( net-libs/zeromq )
-       eigen? ( dev-cpp/eigen
-                  cuda? ( dev-cpp/eigen[cuda] ) )
+       eigen? ( dev-cpp/eigen )
 "
 RDEPEND="${DEPEND}"
-BDEPEND="
-       doc? ( app-doc/doxygen )
-"
+BDEPEND=""
 
 DEPEND="
        test? ( dev-python/pytest[${PYTHON_USEDEP}] )
@@ -91,7 +88,6 @@ DEPEND="
 
 PATCHES=(
        "${FILESDIR}"/${PN}-1.2.0-setup.patch
-       "${FILESDIR}"/${PN}-1.4.0-eigen.patch
        "${FILESDIR}"/${PN}-1.4.0-sleef.patch
        "${FILESDIR}"/${PN}-1.4.0-skip-tests.patch
        "${FILESDIR}"/0002-Don-t-build-libtorch-again-for-PyTorch-1.4.0.patch
@@ -155,13 +151,13 @@ src_configure() {
                -DTORCH_INSTALL_LIB_DIR=$(get_libdir)
                -DBUILD_BINARY=$(usex tools ON OFF)
                -DBUILD_CUSTOM_PROTOBUF=OFF
-               -DBUILD_DOCS=$(usex doc ON OFF)
                -DBUILD_PYTHON=$(usex python ON OFF)
                -DBUILD_SHARED_LIBS=$(usex static OFF ON)
                -DBUILD_TEST=$(usex test ON OFF)
                -DUSE_ASAN=$(usex asan ON OFF)
                -DUSE_CUDA=$(usex cuda ON OFF)
                -DUSE_NCCL=$(usex cuda ON OFF)
+               -DUSE_SYSTEM_NCCL=OFF
                -DUSE_ROCM=OFF
                -DUSE_FBGEMM=$(usex fbgemm ON OFF)
                -DUSE_FFMPEG=$(usex ffmpeg ON OFF)
@@ -173,7 +169,6 @@ src_configure() {
                -DCAFFE2_USE_MKL=$(usex mkl ON OFF)
                -DUSE_MKLDNN=$(usex mkldnn ON OFF)
                -DUSE_MKLDNN_CBLAS=OFF
-               -DUSE_NCCL=OFF
                -DUSE_NNPACK=$(usex nnpack ON OFF)
                -DUSE_NUMPY=$(usex numpy ON OFF)
                -DUSE_NUMA=$(usex numa ON OFF)
@@ -189,9 +184,9 @@ src_configure() {
                -DUSE_ZMQ=$(usex zeromq ON OFF)
                -DUSE_MPI=$(usex mpi ON OFF)
                -DUSE_GLOO=$(usex gloo ON OFF)
+               -DUSE_SYSTEM_EIGEN_INSTALL=ON
                -DBUILD_NAMEDTENSOR=$(usex namedtensor ON OFF)
                -DBLAS=${blas}
-               -DBUILDING_SYSTEM_WIDE=ON # to remove insecure DT_RUNPATH header
        )
 
        cmake-utils_src_configure
@@ -212,19 +207,9 @@ src_compile() {
 src_install() {
        cmake-utils_src_install
 
-       local multilib_failing_files=(
-               libc10.so
-               libtbb.so
-               libcaffe2_observers.so
-               libshm.so
-               libcaffe2_detectron_ops.so
-       )
-
        local LIB=$(get_libdir)
        if [[ ${LIB} != lib ]]; then
-               for file in ${multilib_failing_files[@]}; do
-                       mv -fv "${ED}/usr/lib/$file" "${ED}/usr/${LIB}"
-               done
+               mv -fv "${ED}"/usr/lib/*.so "${ED}"/usr/${LIB}/ || die
        fi
 
        rm -rfv "${ED}/torch"
@@ -245,8 +230,6 @@ src_install() {
        rm -fv "${ED}/usr/lib64/libtbb.so"
        rm -rfv "${ED}/usr/lib64/cmake"
 
-       rm -rfv "${ED}/usr/share/doc/mkldnn"
-
        if use python; then
                install_shm_manager() {
                        
TORCH_BIN_DIR="${ED}/usr/lib64/${EPYTHON}/site-packages/torch/bin"

Reply via email to