aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlessandro Barbieri <lssndrbarbieri@gmail.com>2022-05-26 22:08:17 +0200
committerAlessandro Barbieri <lssndrbarbieri@gmail.com>2022-05-26 23:20:42 +0200
commit8721ad7bbae80c503542be6896c9ecb997bdf578 (patch)
treee0b2b992976434aa802be69953107d63fd6ed0eb /sci-libs
parentsys-cluster/usort: fix fpermissive (diff)
downloadguru-8721ad7bbae80c503542be6896c9ecb997bdf578.tar.gz
guru-8721ad7bbae80c503542be6896c9ecb997bdf578.tar.bz2
guru-8721ad7bbae80c503542be6896c9ecb997bdf578.zip
sci-libs/superlu_dist: unbundle colamd
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/superlu_dist/Manifest3
-rw-r--r--sci-libs/superlu_dist/files/superlu_dist-8.0.0_p20220526-system-colamd.patch27
-rw-r--r--sci-libs/superlu_dist/superlu_dist-7.2.0.ebuild79
-rw-r--r--sci-libs/superlu_dist/superlu_dist-8.0.0_p20220526.ebuild (renamed from sci-libs/superlu_dist/superlu_dist-8.0.0.ebuild)14
4 files changed, 39 insertions, 84 deletions
diff --git a/sci-libs/superlu_dist/Manifest b/sci-libs/superlu_dist/Manifest
index 9d18fdf53..5cbefaa65 100644
--- a/sci-libs/superlu_dist/Manifest
+++ b/sci-libs/superlu_dist/Manifest
@@ -1,2 +1 @@
-DIST superlu_dist-7.2.0.tar.gz 2187572 BLAKE2B 93e848e7146022030d8d55fef74b090d6998553d5114b136c38fc95873941f5fe20a2a3f7af30cf4465fac4306da41dc41f27614397f77f9e08b57f8705c9312 SHA512 89d2480e2c200e4588171b24ce21c9f1556c3ba917a561bdb6ac89e88c73ea982ba133ffddba632494098b68d8ad59ca28ec215f2cb92da12c518e87a2e1d5f7
-DIST superlu_dist-8.0.0.tar.gz 2291245 BLAKE2B 059b737d9286fa43a5eee0f6b2719571c07f8176dce2055846646a37fedeff39816e673271f76fcedff739b766404aa3f74ce9bb02b7a51be043c449de578848 SHA512 c4e4df9b077bc24f587121c05c60a9521f9afe2f1a15acb2e1ea17b34df33c155a423f89c520c43f7953889a8ae90d8e358f95e99e901d3097e9df6a992c482e
+DIST superlu_dist-8.0.0_p20220526.tar.gz 2293227 BLAKE2B 5c73d68a1d9812063614fb503a99c5f1e141d7c4340c1b484e5c24b818c47a6ffc2073140fc585e11b3d5b342d0baa6299ebeface03e2d1eb30245043d214751 SHA512 ac5f03b7f2500f306277dabda9e1aea457b55f2d41b72b969fa4e3a986ebb6abb65f87a3678d6cc103faa8f8e720aaac2b79d9db150288bfe1385abe2b61d8ce
diff --git a/sci-libs/superlu_dist/files/superlu_dist-8.0.0_p20220526-system-colamd.patch b/sci-libs/superlu_dist/files/superlu_dist-8.0.0_p20220526-system-colamd.patch
new file mode 100644
index 000000000..8b1689dfc
--- /dev/null
+++ b/sci-libs/superlu_dist/files/superlu_dist-8.0.0_p20220526-system-colamd.patch
@@ -0,0 +1,27 @@
+--- /var/tmp/portage/sci-libs/superlu_dist-8.0.0_p20220526/work/superlu_dist-df1dbf3afd7876644ff5d0613dfa7b9d32af79de/SRC/CMakeLists.txt
++++ superlu_dist-df1dbf3afd7876644ff5d0613dfa7b9d32af79de/SRC/CMakeLists.txt
+@@ -7,7 +7,6 @@
+ superlu_enum_consts.h
+ supermatrix.h
+ util_dist.h
+- colamd.h
+ gpu_api_utils.h
+ gpu_wrapper.h
+ ${CMAKE_CURRENT_BINARY_DIR}/superlu_dist_config.h
+@@ -40,7 +39,6 @@
+ xerr_dist.c
+ smach_dist.c
+ dmach_dist.c
+- colamd.c
+ superlu_dist_version.c
+ comm_tree.c
+ superlu_grid3d.c ## 3D code
+@@ -291,7 +289,7 @@
+ endif()
+
+ set(superlu_dist_libs ${MPI_C_LIBRARIES} ${MPI_CXX_LIBRARIES} ${BLAS_LIB} ${LAPACK_LIB}
+- ${PARMETIS_LIB} ${COMBBLAS_LIB} ${CUDA_LIB} ${HIP_LIB})
++ ${PARMETIS_LIB} ${COMBBLAS_LIB} ${CUDA_LIB} ${HIP_LIB} -lcolamd)
+ if (NOT MSVC)
+ list(APPEND superlu_dist_libs m)
+ endif ()
diff --git a/sci-libs/superlu_dist/superlu_dist-7.2.0.ebuild b/sci-libs/superlu_dist/superlu_dist-7.2.0.ebuild
deleted file mode 100644
index c3a3fcf1f..000000000
--- a/sci-libs/superlu_dist/superlu_dist-7.2.0.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DOCS_BUILDER="doxygen"
-DOCS_CONFIG_NAME="DoxyConfig"
-FORTRAN_NEEDED="fortran"
-
-inherit cmake docs fortran-2
-
-DESCRIPTION="MPI distributed sparse LU factorization library"
-HOMEPAGE="
- https://portal.nersc.gov/project/sparse/superlu/
- https://github.com/xiaoyeli/superlu_dist
-"
-SRC_URI="https://github.com/xiaoyeli/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="combblas +complex-precision +double-precision examples lapack fortran metis single-precision test"
-# TODO: cuda
-
-RDEPEND="
- virtual/blas
- virtual/mpi
-
- combblas? ( sci-libs/CombBLAS )
- lapack? ( virtual/lapack )
- metis? ( sci-libs/parmetis )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-RESTRICT="!test? ( test )"
-
-src_prepare() {
- rm -r CBLAS || die
- cmake_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- -Denable_openmp=ON
- -DBUILD_SHARED_LIBS=ON
- -DBUILD_STATIC_LIBS=OFF
- -DTPL_ENABLE_CUDALIB=OFF
- -DTPL_ENABLE_INTERNAL_BLASLIB=OFF
-
- -Denable_complex16=$(usex complex-precision)
- -Denable_double=$(usex double-precision)
- -Denable_examples=$(usex examples ON OFF)
- -Denable_single=$(usex single-precision)
- -Denable_tests=$(usex test ON OFF)
- -DTPL_ENABLE_COMBBLASLIB=$(usex combblas)
- -DTPL_ENABLE_LAPACKLIB=$(usex lapack)
- -DTPL_ENABLE_PARMETISLIB=$(usex metis)
- -DXSDK_ENABLE_Fortran=$(usex fortran)
- )
- if use combblas; then
- mycmakeargs+=(
- -DTPL_COMBBLAS_LIBRARIES="${EPREFIX}/usr/$(get_libdir)/libCombBLAS.so"
- -DTPL_COMBBLAS_INCLUDE_DIRS="${EPREFIX}/usr/include/CombBLAS/"
- )
- fi
- if use metis; then
- mycmakeargs+=(
- -DTPL_PARMETIS_LIBRARIES="${EPREFIX}/usr/$(get_libdir)/libparmetis.so"
- -DTPL_PARMETIS_INCLUDE_DIRS="${EPREFIX}/usr/include"
- )
- fi
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
- default
-}
diff --git a/sci-libs/superlu_dist/superlu_dist-8.0.0.ebuild b/sci-libs/superlu_dist/superlu_dist-8.0.0_p20220526.ebuild
index 77b3ebd75..7c67699d0 100644
--- a/sci-libs/superlu_dist/superlu_dist-8.0.0.ebuild
+++ b/sci-libs/superlu_dist/superlu_dist-8.0.0_p20220526.ebuild
@@ -3,6 +3,7 @@
EAPI=8
+COMMIT="df1dbf3afd7876644ff5d0613dfa7b9d32af79de"
DOCS_BUILDER="doxygen"
DOCS_CONFIG_NAME="DoxyConfig"
FORTRAN_NEEDED="fortran"
@@ -14,7 +15,8 @@ HOMEPAGE="
https://portal.nersc.gov/project/sparse/superlu/
https://github.com/xiaoyeli/superlu_dist
"
-SRC_URI="https://github.com/xiaoyeli/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/xiaoyeli/${PN}/archive/${COMMIT}.tar.gz -> ${PF}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
LICENSE="BSD"
SLOT="0"
@@ -23,6 +25,7 @@ IUSE="combblas +complex-precision +double-precision examples hip lapack fortran
# TODO: cuda
RDEPEND="
+ sci-libs/colamd
virtual/blas
virtual/mpi
@@ -38,10 +41,12 @@ RDEPEND="
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
+PATCHES=( "${FILESDIR}/${P}-system-colamd.patch" )
RESTRICT="!test? ( test )"
src_prepare() {
rm -r CBLAS || die
+ rm SRC/colamd.{c,h} || die
cmake_src_prepare
}
@@ -80,6 +85,9 @@ src_configure() {
}
src_compile() {
- cmake_src_compile
- default
+ if use fortran ; then
+ MAKEOPTS="-j1" cmake_src_compile
+ else
+ cmake_src_compile
+ fi
}