sci-libs/acml: Remove from tree

This commit is contained in:
David Seifert
2017-04-17 09:47:53 +02:00
parent 50ed74e288
commit e45a06f3e6
6 changed files with 0 additions and 258 deletions
-5
View File
@@ -143,11 +143,6 @@ dev-perl/File-DirWalk
# experimental features and accept a more unstable release.
>=www-client/chromium-59
# David Seifert <soap@gentoo.org> (19 Mar 2017)
# EOL'd upstream, fetch restricted, digests missing
# Masked for removal in 30 days. Bug #612746.
sci-libs/acml
# Kent Fredric <kentnl@gentoo.org> (18 Mar 2017)
# ExtUtils::MakeMaker 7.18+ Block
# Masked until strictly needed to avoid accidental conflicts later
-6
View File
@@ -1,6 +0,0 @@
DIST acml-4-1-0-gfortran-32bit.tgz 18258099 SHA256 52580576c3a425635eccb19fc5df38c3139fbc44fd669799bc8ffd0e2d82ccc7
DIST acml-4-1-0-gfortran-64bit-int64.tgz 29351223 SHA256 825ae742df873cf6d41fbaaecff08941badb2b43a7021ba6c8af7abc75a6d14d
DIST acml-4-1-0-gfortran-64bit.tgz 29995624 SHA256 50f64687b86556123538e1f2bd4c185ff1d018501a5a5834ec8acf7487c817c4
DIST acml-4-1-0-ifort-32bit.tgz 18797527 SHA256 5dfa768c12e96d2d25678e85cf2e0eea3bd427ddd94f417bcad09abe25369375
DIST acml-4-1-0-ifort-64bit-int64.tgz 36135363 SHA256 3da0ded50ab25e44f531ac58b469344fed0f6af4ae70aa58b1286cf8de9731a4
DIST acml-4-1-0-ifort-64bit.tgz 36577689 SHA256 b5b60425fccb624e3baf48f5d51ae68ccdc3e9852a4a50661bb3e45a6f25be40
-199
View File
@@ -1,199 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils fortran-2 multilib toolchain-funcs versionator
MY_P=${PN}-$(replace_all_version_separators -)
DESCRIPTION="AMD Core Math Library for x86 and amd64 CPUs"
HOMEPAGE="http://developer.amd.com/acml.jsp"
SRC_URI="
amd64? (
ifc? ( ${MY_P}-ifort-64bit.tgz
int64? ( ${MY_P}-ifort-64bit-int64.tgz ) )
gfortran? ( ${MY_P}-gfortran-64bit.tgz
int64? ( ${MY_P}-gfortran-64bit-int64.tgz ) )
!ifc? (
!gfortran? ( ${MY_P}-gfortran-64bit.tgz
int64? ( ${MY_P}-gfortran-64bit-int64.tgz ) ) ) )
x86? (
ifc? ( ${MY_P}-ifort-32bit.tgz )
gfortran? ( ${MY_P}-gfortran-32bit.tgz )
!ifc? ( !gfortran? ( ${MY_P}-gfortran-32bit.tgz ) ) )"
SLOT="0"
LICENSE="ACML"
KEYWORDS="-* ~amd64 ~x86"
IUSE="doc examples gfortran ifc int64 openmp test"
RESTRICT="strip fetch"
CDEPEND="
ifc? ( dev-lang/ifc )
gfortran? ( =sys-devel/gcc-4.2* )
!gfortran? ( !ifc? ( =sys-devel/gcc-4.2* ) )"
DEPEND="
app-eselect/eselect-blas
app-eselect/eselect-lapack
test? ( ${CDEPEND} )"
RDEPEND="${CDEPEND}
app-eselect/eselect-blas
app-eselect/eselect-lapack
doc? ( app-doc/blas-docs app-doc/lapack-docs )"
S="${WORKDIR}"
pkg_nofetch() {
einfo "Please download the ACML from:"
einfo "${HOMEPAGE}"
einfo "and place it in ${DISTDIR}."
einfo "The previous versions could be found at"
einfo "http://developer.amd.com/acmlarchive.jsp"
einfo "SRC=${A} $SRC_URI"
}
get_fcomp() {
case $(tc-getFC) in
*gfortran* )
FCOMP="gfortran" ;;
ifort )
FCOMP="ifc" ;;
* )
FCOMP=$(tc-getFC) ;;
esac
}
pkg_setup() {
if use test; then
# work around incomplete fortran eclass
if use gfortran &&
[[ $(tc-getFC) =~ gfortran ]] &&
[[ $(gcc-version) != 4.2 ]]
then
eerror "You need gfortran-4.2 to test acml"
eerror "Please use gcc-config to switch gcc version 4.2"
die "gfortran check failed"
fi
fi
if use openmp; then
tc-has-openmp || die "Please ensure your compiler has openmp support"
FORTRAN_NEED_OPENMP=1
fi
fortran-2_pkg_setup
get_fcomp
# construct default profile dprof from default ddir
local ddir=gfortran
use ifc && ddir=ifort
use x86 && ddir=${ddir}32 || ddir=${ddir}64
use openmp && ddir=${ddir}_mp
use int64 && ddir=${ddir}_int64
ACML_DEFAULT_DIR=${ddir}
}
src_unpack() {
unpack ${A}
unpack ./contents-acml-*.tgz
use openmp || rm -rf *_mp*
}
src_test() {
# only testing with current chosen compiler
for fdir in ${ACML_DEFAULT_DIR/_mp}*; do
einfo "Testing acml in ${fdir}"
for d in . acml_mv; do
cd "${S}"/${fdir}/examples/${d}
emake \
ACMLDIR="${S}"/${fdir} \
F77=$(tc-getFC) \
CC="$(tc-getCC)" \
CPLUSPLUS="$(tc-getCXX)"
emake clean
done
done
}
make_acml_profile_name() {
local fort=${1%%[[:digit:]]*}
local opt=${1#*[0-9][0-9]}
echo ${PN}-${fort}${opt/mp/openmp} | tr '_' '-'
}
src_install() {
# respect acml default install dir (and FHS)
local instdir=/opt/${PN}${PV}
dodir ${instdir}
for lib in */lib; do
local fdir=${lib%/*}
# install acml
use examples || rm -rf "${S}"/${fdir}/examples
cp -pPR "${S}"/${fdir} "${D}"${instdir} || die "copy ${fdir} failed"
# install profiles
local prof=$(make_acml_profile_name ${fdir})
local acmldir=${instdir}/${fdir}
local acmllibs="-lacml"
local libname=${acmldir}/lib/libacml
local extlibs
local extflags
[[ ${fdir} =~ int64 ]] && extflags="${extflags} -fdefault-integer-8"
[[ ${fdir} =~ gfortran ]] && extlibs="${extlibs} -lgfortran"
if [[ ${fdir} =~ _mp ]]; then
[[ ${fdir} =~ ifort ]] && extlibs="${extlibs} -lguide"
extlibs="${extlibs} -lpthread"
extflags="${extflags} -fopenmp"
acmllibs="-lacml_mp"
libname=${libname}_mp
fi
use amd64 && acmllibs="${acmllibs} -lacml_mv"
for x in blas lapack; do
# pkgconfig files
sed -e "s:@LIBDIR@:$(get_libdir):" \
-e "s:@PV@:${PV}:" \
-e "s:@ACMLDIR@:${acmldir}:g" \
-e "s:@ACMLLIBS@:${acmllibs}:g" \
-e "s:@EXTLIBS@:${extlibs}:g" \
-e "s:@EXTFLAGS@:${extflags}:g" \
"${FILESDIR}"/${x}.pc.in > ${x}.pc \
|| die "sed ${x}.pc failed"
insinto ${acmldir}/lib
doins ${x}.pc
# eselect files
cat > eselect.${prof}.${x} <<-EOF
${libname}.so /usr/@LIBDIR@/lib${x}.so.0
${libname}.so /usr/@LIBDIR@/lib${x}.so
${libname}.a /usr/@LIBDIR@/lib${x}.a
${acmldir}/lib/${x}.pc /usr/@LIBDIR@/pkgconfig/${x}.pc
EOF
eselect ${x} add $(get_libdir) eselect.${prof}.${x} ${prof}
done
done
echo "LDPATH=${instdir}/${ACML_DEFAULT_DIR}/lib" > 35acml
doenvd "${S}"/35acml
use doc || rm -rf "${S}"/Doc/acml.pdf "${S}"/Doc/html
cp -pPR "${S}"/Doc "${D}"${instdir} || die "copy doc failed"
}
pkg_postinst() {
local dprof="$(make_acml_profile_name ${ACML_DEFAULT_DIR})"
for x in blas lapack; do
local cprof=$(eselect ${x} show | cut -d' ' -f2)
if [[ ${cprof} == ${dprof} || -z ${cprof} ]]; then
# work around eselect bug #189942
local configfile="${ROOT}"/etc/env.d/${x}/$(get_libdir)/config
[[ -e ${configfile} ]] && rm -f ${configfile}
eselect ${x} set ${dprof}
elog "${x} has been eselected to ${dprof}"
else
elog "Current eselected ${x} implementation is ${cprof}"
elog "To use you have one of ${PN}, issue (as root):"
elog "\t eselect ${x} set <profile>"
fi
done
}
-11
View File
@@ -1,11 +0,0 @@
prefix=@ACMLDIR@
exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/include
Name: blas
Description: ACML implementations of the Basic Linear Algebra Subroutines
Version: @PV@
URL: http://developer.amd.com/acml.jsp
Libs: -Wl,--no-as-needed -L${libdir} @ACMLLIBS@ @EXTLIBS@
Cflags: @EXTFLAGS@
-11
View File
@@ -1,11 +0,0 @@
prefix=@ACMLDIR@
exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/include
Name: lapack
Description: ACML implementation of the F77 Linear Algebra PACKage
Version: @PV@
URL: http://developer.amd.com/acml.jsp
Libs: -Wl,--no-as-needed -L${libdir} @ACMLLIBS@ @EXTLIBS@
Cflags: @EXTFLAGS@
-26
View File
@@ -1,26 +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 AMD(R) Core Math Library provides an implementation of the "Basic
Linear Algebra Subprograms" (BLAS) and the "Linear Algebra PACKage"
(LAPACK) as well as a set of "Fast Fourier Transformation" (FFT)
routines, all highly optimized for AMD(R) x86 and amd64 CPUs.
</longdescription>
<longdescription lang="de">
Die AMD(R) Core Math Library ist ein Ersatz für die "Basic Linear
Algebra Subprograms" (BLAS) und das "Linear Algebra PACKage" (LAPACK).
Außerdem enthält sie Routinen zur "Fast Fourier Tranformation" (FFT).
Alle Routinen sind hoch optimiert für AMD(R) x86 und amd64 CPUs.
</longdescription>
<use>
<flag name="gfortran">Fetch and install acml compiled with GNU gfortran</flag>
<flag name="ifc">Fetch and install acml compiled with Intel Fortran Compiler
(<pkg>dev-lang/ifc</pkg>)</flag>
<flag name="int64">Install the 64 bits integer library</flag>
</use>
</pkgmetadata>