mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
sci-libs/magma: Remove last-rited pkg
Closes: https://bugs.gentoo.org/735476 Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
@@ -385,7 +385,6 @@ app-backup/genbackupdata
|
||||
app-i18n/pology
|
||||
app-text/pdf2djvu
|
||||
app-text/sgmltools-lite
|
||||
sci-libs/magma
|
||||
|
||||
# Michał Górny <mgorny@gentoo.org> (2020-09-09)
|
||||
# These packages (or package versions) still require Python 2.7.
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
DIST magma-1.4.0.tar.gz 3557459 BLAKE2B 610658835e09772f8a54cd851ca23f0123c45133faf7f7db0a9e62c690a0908f6769b7bf16ba955599503416d7ff1b979c7c9b7fa09b57f693a4da709bb483c6 SHA512 9857ac544cc1657ab7d2f6e8c9700facb7fa38278dbfbfeecc3656434de4bd5b96c268f1a98c9ffa823775aa64c315bd63e577b4d475e104311e09d3e5c3ca15
|
||||
DIST magma-1.4.1.tar.gz 3765589 BLAKE2B 9f382942e36492efb7a64d62bd62f704e54589aafcdc6d99d33cac1e49612014a139e01766539948f005d86b611c1bb772421635ccd66dd678549a662a410efa SHA512 d283b59b75ca35c8206c07eff97caf28f07ab598955c84a90d795d46905d879d0f1d7e6a2cb080dad74710255b28999e5ce9708e4f0f53a4adba50724fc5ef71
|
||||
@@ -1,124 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
FORTRAN_STANDARD="77 90"
|
||||
|
||||
inherit cuda eutils flag-o-matic fortran-2 multilib toolchain-funcs versionator python-any-r1
|
||||
|
||||
DESCRIPTION="Matrix Algebra on GPU and Multicore Architectures"
|
||||
HOMEPAGE="http://icl.cs.utk.edu/magma/"
|
||||
SRC_URI="http://icl.cs.utk.edu/projectsfiles/${PN}/downloads/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~amd64-linux"
|
||||
IUSE="fermi kepler static-libs test"
|
||||
|
||||
REQUIRED_USE="?? ( fermi kepler )"
|
||||
|
||||
RDEPEND="
|
||||
dev-util/nvidia-cuda-toolkit
|
||||
virtual/cblas
|
||||
virtual/lapack"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
test? ( ${PYTHON_DEPS} )"
|
||||
|
||||
# We have to have write acccess /dev/nvidia0 and /dev/nvidiactl and the portage
|
||||
# user is (usually) not in the video group
|
||||
RESTRICT="userpriv !test? ( test )"
|
||||
|
||||
pkg_setup() {
|
||||
fortran-2_pkg_setup
|
||||
use test && python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# distributed pc file not so useful so replace it
|
||||
cat <<-EOF > ${PN}.pc
|
||||
prefix=${EPREFIX}/usr
|
||||
libdir=\${prefix}/$(get_libdir)
|
||||
includedir=\${prefix}/include/${PN}
|
||||
Name: ${PN}
|
||||
Description: ${DESCRIPTION}
|
||||
Version: ${PV}
|
||||
URL: ${HOMEPAGE}
|
||||
Libs: -L\${libdir} -lmagma
|
||||
Libs.private: -lm -lpthread -ldl -lcublas -lcudart
|
||||
Cflags: -I\${includedir}
|
||||
Requires: cblas lapack
|
||||
EOF
|
||||
|
||||
if [[ $(tc-getCC) =~ gcc ]]; then
|
||||
local eopenmp=-fopenmp
|
||||
elif [[ $(tc-getCC) =~ icc ]]; then
|
||||
local eopenmp=-openmp
|
||||
else
|
||||
elog "Cannot detect compiler type so not setting openmp support"
|
||||
fi
|
||||
append-flags -fPIC ${eopenmp}
|
||||
append-ldflags -Wl,-soname,lib${PN}.so.1.4 ${eopenmp}
|
||||
|
||||
cuda_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
cat <<-EOF > make.inc
|
||||
ARCH = $(tc-getAR)
|
||||
ARCHFLAGS = cr
|
||||
RANLIB = $(tc-getRANLIB)
|
||||
NVCC = nvcc
|
||||
CC = $(tc-getCXX)
|
||||
FORT = $(tc-getFC)
|
||||
INC = -I"${EPREFIX}/opt/cuda/include" -DADD_ -DCUBLAS_GFORTRAN
|
||||
OPTS = ${CFLAGS} -fPIC
|
||||
FOPTS = ${FFLAGS} -fPIC -x f95-cpp-input
|
||||
F77OPTS = ${FFLAGS} -fPIC
|
||||
NVOPTS = -DADD_ -DUNIX ${NVCCFLAGS}
|
||||
LDOPTS = ${LDFLAGS}
|
||||
LOADER = $(tc-getFC)
|
||||
LIBBLAS = $($(tc-getPKG_CONFIG) --libs cblas)
|
||||
LIBLAPACK = $($(tc-getPKG_CONFIG) --libs lapack)
|
||||
CUDADIR = ${EPREFIX}/opt/cuda
|
||||
LIBCUDA = -L\$(CUDADIR)/$(get_libdir) -lcublas -lcudart
|
||||
LIB = -pthread -lm -ldl \$(LIBCUDA) \$(LIBBLAS) \$(LIBLAPACK) -lstdc++
|
||||
EOF
|
||||
if use kepler; then
|
||||
echo >> make.inc "GPU_TARGET = Kepler"
|
||||
elif use fermi; then
|
||||
echo >> make.inc "GPU_TARGET = Fermi"
|
||||
else # See http://icl.cs.utk.edu/magma/forum/viewtopic.php?f=2&t=227
|
||||
echo >> make.inc "GPU_TARGET = Tesla"
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake lib
|
||||
emake shared
|
||||
mv lib/lib${PN}.so{,.1.4} || die
|
||||
ln -sf lib${PN}.so.1.4 lib/lib${PN}.so.1 || die
|
||||
ln -sf lib${PN}.so.1.4 lib/lib${PN}.so || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake test lapacktest
|
||||
cd testing/lin || die
|
||||
# we need to access this while running the tests
|
||||
addwrite /dev/nvidiactl
|
||||
addwrite /dev/nvidia0
|
||||
LD_LIBRARY_PATH="${S}"/lib ${EPYTHON} lapack_testing.py || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dolib.so lib/lib*$(get_libname)*
|
||||
use static-libs && dolib.a lib/lib*.a
|
||||
insinto /usr/include/${PN}
|
||||
doins include/*.h
|
||||
insinto /usr/$(get_libdir)/pkgconfig
|
||||
doins ${PN}.pc
|
||||
dodoc README ReleaseNotes
|
||||
}
|
||||
@@ -1,124 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
FORTRAN_STANDARD="77 90"
|
||||
|
||||
inherit cuda eutils flag-o-matic fortran-2 multilib toolchain-funcs versionator python-any-r1
|
||||
|
||||
DESCRIPTION="Matrix Algebra on GPU and Multicore Architectures"
|
||||
HOMEPAGE="http://icl.cs.utk.edu/magma/"
|
||||
SRC_URI="http://icl.cs.utk.edu/projectsfiles/${PN}/downloads/${P}.tar.gz"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~amd64-linux"
|
||||
IUSE="fermi kepler static-libs test"
|
||||
|
||||
REQUIRED_USE="?? ( fermi kepler )"
|
||||
|
||||
RDEPEND="
|
||||
dev-util/nvidia-cuda-toolkit
|
||||
virtual/cblas
|
||||
virtual/lapack"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig
|
||||
test? ( ${PYTHON_DEPS} )"
|
||||
|
||||
# We have to have write acccess /dev/nvidia0 and /dev/nvidiactl and the portage
|
||||
# user is (usually) not in the video group
|
||||
RESTRICT="userpriv !test? ( test )"
|
||||
|
||||
pkg_setup() {
|
||||
fortran-2_pkg_setup
|
||||
use test && python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# distributed pc file not so useful so replace it
|
||||
cat <<-EOF > ${PN}.pc
|
||||
prefix=${EPREFIX}/usr
|
||||
libdir=\${prefix}/$(get_libdir)
|
||||
includedir=\${prefix}/include/${PN}
|
||||
Name: ${PN}
|
||||
Description: ${DESCRIPTION}
|
||||
Version: ${PV}
|
||||
URL: ${HOMEPAGE}
|
||||
Libs: -L\${libdir} -lmagma
|
||||
Libs.private: -lm -lpthread -ldl -lcublas -lcudart
|
||||
Cflags: -I\${includedir}
|
||||
Requires: cblas lapack
|
||||
EOF
|
||||
|
||||
if [[ $(tc-getCC) =~ gcc ]]; then
|
||||
local eopenmp=-fopenmp
|
||||
elif [[ $(tc-getCC) =~ icc ]]; then
|
||||
local eopenmp=-openmp
|
||||
else
|
||||
elog "Cannot detect compiler type so not setting openmp support"
|
||||
fi
|
||||
append-flags -fPIC ${eopenmp}
|
||||
append-ldflags -Wl,-soname,lib${PN}.so.1.4 ${eopenmp}
|
||||
|
||||
cuda_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
cat <<-EOF > make.inc
|
||||
ARCH = $(tc-getAR)
|
||||
ARCHFLAGS = cr
|
||||
RANLIB = $(tc-getRANLIB)
|
||||
NVCC = nvcc
|
||||
CC = $(tc-getCXX)
|
||||
FORT = $(tc-getFC)
|
||||
INC = -I"${EPREFIX}/opt/cuda/include" -DADD_ -DCUBLAS_GFORTRAN
|
||||
OPTS = ${CFLAGS} -fPIC
|
||||
FOPTS = ${FFLAGS} -fPIC -x f95-cpp-input
|
||||
F77OPTS = ${FFLAGS} -fPIC
|
||||
NVOPTS = -DADD_ -DUNIX ${NVCCFLAGS}
|
||||
LDOPTS = ${LDFLAGS}
|
||||
LOADER = $(tc-getFC)
|
||||
LIBBLAS = $($(tc-getPKG_CONFIG) --libs cblas)
|
||||
LIBLAPACK = $($(tc-getPKG_CONFIG) --libs lapack)
|
||||
CUDADIR = ${EPREFIX}/opt/cuda
|
||||
LIBCUDA = -L\$(CUDADIR)/$(get_libdir) -lcublas -lcudart
|
||||
LIB = -pthread -lm -ldl \$(LIBCUDA) \$(LIBBLAS) \$(LIBLAPACK) -lstdc++
|
||||
EOF
|
||||
if use kepler; then
|
||||
echo >> make.inc "GPU_TARGET = Kepler"
|
||||
elif use fermi; then
|
||||
echo >> make.inc "GPU_TARGET = Fermi"
|
||||
else # See http://icl.cs.utk.edu/magma/forum/viewtopic.php?f=2&t=227
|
||||
echo >> make.inc "GPU_TARGET = Tesla"
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake lib
|
||||
emake shared
|
||||
mv lib/lib${PN}.so{,.1.4} || die
|
||||
ln -sf lib${PN}.so.1.4 lib/lib${PN}.so.1 || die
|
||||
ln -sf lib${PN}.so.1.4 lib/lib${PN}.so || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake test lapacktest
|
||||
cd testing/lin || die
|
||||
# we need to access this while running the tests
|
||||
addwrite /dev/nvidiactl
|
||||
addwrite /dev/nvidia0
|
||||
LD_LIBRARY_PATH="${S}"/lib ${EPYTHON} lapack_testing.py || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dolib.so lib/lib*$(get_libname)*
|
||||
use static-libs && dolib.a lib/lib*.a
|
||||
insinto /usr/include/${PN}
|
||||
doins include/*.h
|
||||
insinto /usr/$(get_libdir)/pkgconfig
|
||||
doins ${PN}.pc
|
||||
dodoc README ReleaseNotes
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="project">
|
||||
<email>sci@gentoo.org</email>
|
||||
<name>Gentoo Science Project</name>
|
||||
</maintainer>
|
||||
<longdescription lang="en">
|
||||
The Matrix Algebra on GPU and Multicore Architectures
|
||||
project aims to develop a dense linear algebra library
|
||||
similar to LAPACK but for heterogeneous/hybrid architectures, starting
|
||||
with current "Multicore+GPU" systems.
|
||||
</longdescription>
|
||||
<use>
|
||||
<flag name="fermi">Compile for GPU NVIDIA Fermi family (2.x cards)</flag>
|
||||
<flag name="kepler">Compile for GPU NVIDIA Kepler family (GF 6xx cards)</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
Reference in New Issue
Block a user