From: "Sebastien Fabbro" <bicatali@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/sci:master commit in: sci-libs/atlas/
Date: Thu, 23 May 2013 05:13:57 +0000 (UTC) [thread overview]
Message-ID: <1369250431.4d8b1e647052cc50f0dfc4c65a3ca55c96f5bdc7.bicatali@gentoo> (raw)
commit: 4d8b1e647052cc50f0dfc4c65a3ca55c96f5bdc7
Author: Sébastien Fabbro <bicatali <AT> gentoo <DOT> org>
AuthorDate: Wed May 22 19:20:31 2013 +0000
Commit: Sebastien Fabbro <bicatali <AT> gentoo <DOT> org>
CommitDate: Wed May 22 19:20:31 2013 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=4d8b1e64
Cleanup
Package-Manager: portage-2.2.01.21938-prefix
---
sci-libs/atlas/ChangeLog | 4 +
sci-libs/atlas/atlas-3.10.1.ebuild | 281 ------------------------------------
sci-libs/atlas/metadata.xml | 12 +-
3 files changed, 10 insertions(+), 287 deletions(-)
diff --git a/sci-libs/atlas/ChangeLog b/sci-libs/atlas/ChangeLog
index c010571..0ac8999 100644
--- a/sci-libs/atlas/ChangeLog
+++ b/sci-libs/atlas/ChangeLog
@@ -2,6 +2,10 @@
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 22 May 2013; Sébastien Fabbro <bicatali@gentoo.org> -atlas-3.10.1.ebuild,
+ metadata.xml:
+ Cleanup
+
25 Feb 2013; Sébastien Fabbro <bicatali@gentoo.org> atlas-3.10.1-r1.ebuild:
sci-libs/atlas: Switched threads libraries to Libs.private in pkg-config files
diff --git a/sci-libs/atlas/atlas-3.10.1.ebuild b/sci-libs/atlas/atlas-3.10.1.ebuild
deleted file mode 100644
index d9da19e..0000000
--- a/sci-libs/atlas/atlas-3.10.1.ebuild
+++ /dev/null
@@ -1,281 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=5
-
-FORTRAN_NEEDED=fortran
-inherit eutils toolchain-funcs fortran-2 versionator alternatives-2 multilib
-
-LAPACKP=lapack-3.4.2.tgz
-
-DESCRIPTION="Automatically Tuned Linear Algebra Software"
-HOMEPAGE="http://math-atlas.sourceforge.net/"
-SRC_URI="mirror://sourceforge/math-atlas/${PN}${PV}.tar.bz2
- fortran? ( lapack? ( http://www.netlib.org/lapack/${LAPACKP} ) )"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="fortran doc generic lapack static-libs threads"
-
-RDEPEND=""
-DEPEND="${RDEPEND}
- !prefix? ( sys-power/cpufrequtils )"
-
-S="${WORKDIR}/ATLAS"
-
-pkg_setup() {
- if [[ -n $(type -P cpufreq-info) ]]; then
- [[ -z $(cpufreq-info -d) ]] && return
- local ncpu=$(LANG=C cpufreq-info | grep -c "analyzing CPU")
- local cpu=0
- while [[ ${cpu} -lt ${ncpu} ]]; do
- if ! $(LANG=C cpufreq-info -p -c ${cpu} | grep -q performance); then
- ewarn "CPU $cpu is not set to performance"
- ewarn "Run cpufreq-set -r -g performance as root"
- die "${PN} needs all cpu set to performance"
- fi
- cpu=$((cpu + 1))
- done
- else
- ewarn "Please make sure to disable CPU throttling completely"
- ewarn "during the compile of ${PN}. Otherwise, all ${PN}"
- ewarn "generated timings will be completely random and the"
- ewarn "performance of the resulting libraries will be degraded"
- ewarn "considerably."
- fi
- use fortran && fortran-2_pkg_setup
-}
-
-src_prepare() {
- epatch "${FILESDIR}"/${PN}-3.10.0-x32-support.patch
-}
-
-src_configure() {
- # hack needed to trick the flaky gcc detection
- local mycc="$(type -P $(tc-getCC))"
- [[ ${mycc} == *gcc* ]] && mycc=gcc
- atlas_configure() {
- local myconf=(
- --prefix="${ED}/usr"
- --libdir="${ED}/usr/$(get_libdir)"
- --incdir="${ED}/usr/include"
- --cc="$(tc-getCC)"
- "-D c -DWALL"
- "-C acg '${mycc}'"
- "-F acg '${CFLAGS}'"
- "-Ss pmake '\$(MAKE) ${MAKEOPTS}'"
- )
-
- # OpenMP shown to decreased performance over POSIX threads
- # (at least in 3.9.x, see atlas-dev mailing list)
- if use threads; then
- if use generic; then # 2 threads is most generic
- myconf+=( "-t 2" "-Si omp 0" )
- else
- myconf+=( "-t -1" "-Si omp 0" )
- fi
- else
- myconf+=( "-t 0" "-Si omp 0" )
- fi
-
- if use amd64 || use ppc64 || use sparc; then
- if [ ${ABI} = amd64 ] || [ ${ABI} = ppc64 ] || [ ${ABI} = sparc64 ] ; then
- myconf+=( "-b 64" )
- elif [ ${ABI} = x86 ] || [ ${ABI} = ppc ] || [ ${ABI} = sparc32 ] ; then
- myconf+=( "-b 32" )
- elif [ ${ABI} = x32 ] ; then
- myconf+=( "-b 48" )
- else
- myconf+=( "-b 64" )
- fi
- elif use ppc || use x86; then
- myconf+=( "-b 32" )
- elif use ia64; then
- myconf+=( "-b 64" )
- fi
- if use fortran; then
- myconf+=(
- "-C if '$(type -P $(tc-getFC))'"
- "-F if '${FFLAGS}'"
- )
- if use lapack; then
- myconf+=(
- "-Si latune 1"
- "--with-netlib-lapack-tarfile=${DISTDIR}/${LAPACKP}"
- )
- else
- myconf+=( "-Si latune 0" )
- fi
- else
- myconf+=( "-Si latune 0" "--nof77" )
- fi
- # generic stuff found by make make xprint_enums in atlas build dir
- # basically assuming sse2+sse1 and 2 threads max
- use generic && use x86 && myconf+=( "-V 384 -A 13")
- use generic && use amd64 && myconf+=( "-V 384 -A 24")
-
- local confdir="${S}_${1}"; shift
- myconf+=( $@ )
- mkdir "${confdir}" && cd "${confdir}"
- # for debugging
- echo ${myconf[@]} > myconf.out
- "${S}"/configure ${myconf[@]} || die "configure in ${confdir} failed"
- }
-
- atlas_configure shared "-Fa alg -fPIC" ${EXTRA_ECONF}
- use static-libs && atlas_configure static ${EXTRA_ECONF}
-}
-
-src_compile() {
- atlas_compile() {
- pushd "${S}_${1}" > /dev/null
- # atlas does its own parallel builds
- emake -j1 build
- cd lib
- emake libclapack.a
- [[ -e libptcblas.a ]] && emake libptclapack.a
- popd > /dev/null
- }
-
- atlas_compile shared
- use static-libs && atlas_compile static
-}
-
-src_test() {
- cd "${S}_shared"
- emake -j1 check time
-}
-
-# transform a static archive into a shared library and install them
-# atlas_install_libs <mylib.a> [extra link flags]
-atlas_install_libs() {
- local libname=$(basename ${1%.*})
- einfo "Installing ${libname}"
- local soname=${libname}.so.$(get_major_version)
- shift
- pushd "${S}_shared"/lib > /dev/null
- ${LINK:-$(tc-getCC)} ${LDFLAGS} -shared -Wl,-soname=${soname} \
- -Wl,--whole-archive ${libname}.a -Wl,--no-whole-archive \
- "$@" -o ${soname} || die "Creating ${soname} failed"
- dolib.so ${soname}
- ln -s ${soname} ${soname%.*}
- dosym ${soname} /usr/$(get_libdir)/${soname%.*}
- popd > /dev/null
- use static-libs && dolib.a "${S}_static"/lib/${libname}.a
-}
-
-# create and install a pkgconfig file
-# atlas_install_pc <libname> <pkg name> [extra link flags]
-atlas_install_pc() {
- local libname=${1} ; shift
- local pcname=${1} ; shift
- cat <<-EOF > ${pcname}.pc
- prefix=${EPREFIX}/usr
- libdir=\${prefix}/$(get_libdir)
- includedir=\${prefix}/include
- Name: ${pcname}
- Description: ${PN} ${pcname}
- Version: ${PV}
- URL: ${HOMEPAGE}
- Libs: -L\${libdir} -l${libname} $@
- Cflags: -I\${includedir}/${PN}
- ${PCREQ}
- EOF
- insinto /usr/$(get_libdir)/pkgconfig
- doins ${pcname}.pc
-}
-
-src_install() {
- cd "${S}_shared/lib"
- # rename to avoid collision with other packages
- local l
- for l in {,c}{blas,lapack}; do
- if [[ -e lib${l}.a ]]; then
- mv lib{,atl}${l}.a
- use static-libs && mv "${S}"_static/lib/lib{,atl}${l}.a
- fi
- done
-
- [[ -e libptcblas.a ]] && PTLIBS="-lpthread"
-
- # atlas
- atlas_install_libs libatlas.a -lm ${PTLIBS}
-
- # cblas
- atlas_install_libs libatlcblas.a -lm -L. -latlas
- atlas_install_pc atlcblas atlas-cblas -lm -latlas
- alternatives_for cblas atlas 0 \
- /usr/$(get_libdir)/pkgconfig/cblas.pc atlas-cblas.pc \
- /usr/include/cblas.h atlas/cblas.h
-
- # cblas threaded
- if [[ -e libptcblas.a ]]; then
- atlas_install_libs libptcblas.a -lm -L. -latlas ${PTLIBS}
- atlas_install_pc ptcblas atlas-cblas-threads -lm -latlas ${PTLIBS}
- alternatives_for cblas atlas-threads 0 \
- /usr/$(get_libdir)/pkgconfig/cblas.pc atlas-cblas-threads.pc \
- /usr/include/cblas.h atlas/cblas.h
- fi
-
- if use lapack; then
- PCREQ="Requires: cblas"
- # clapack
- atlas_install_libs libatlclapack.a -lm -L. -latlas -latlcblas
- atlas_install_pc atlclapack atlas-clapack -lm -latlas
-
- # clapack threaded
- if [[ -e libptclapack.a ]]; then
- atlas_install_libs libptclapack.a -lm -L. -latlas -lptcblas ${PTLIBS}
- atlas_install_pc ptclapack atlas-clapack-threads -lm -latlas ${PTLIBS}
- fi
- fi
-
- if use fortran; then
- LINK=$(tc-getF77) PCREQ=
-
- # blas
- atlas_install_libs libf77blas.a -lm -L. -latlas
- atlas_install_pc f77blas atlas-blas -lm -latlas
- alternatives_for blas atlas 0 \
- /usr/$(get_libdir)/pkgconfig/blas.pc atlas-blas.pc
-
- # blas threaded
- if [[ -e libptf77blas.a ]]; then
- atlas_install_libs libptf77blas.a -lm -L. -latlas ${PTLIBS}
- atlas_install_pc ptf77blas atlas-blas-threads -lm -latlas ${PTLIBS}
- alternatives_for blas atlas-threads 0 \
- /usr/$(get_libdir)/pkgconfig/blas.pc atlas-blas-threads.pc
- fi
-
- if use lapack; then
- PCREQ="Requires: blas cblas"
- # lapack
- atlas_install_libs libatllapack.a \
- -lm -L. -latlas -latlcblas -lf77blas
- atlas_install_pc atllapack atlas-lapack -lm -latlas
- alternatives_for lapack atlas 0 \
- /usr/$(get_libdir)/pkgconfig/lapack.pc atlas-lapack.pc
- # lapack threaded
- if [[ -e libptlapack.a ]]; then
- atlas_install_libs libptlapack.a \
- -lm -L. -latlas -lptcblas -lptf77blas ${PTLIBS}
- atlas_install_pc ptlapack atlas-lapack-threads \
- -lm -latlas ${PTLIBS}
- alternatives_for lapack atlas-threads 0 \
- /usr/$(get_libdir)/pkgconfig/lapack.pc atlas-lapack-threads.pc
- fi
- fi
- fi
-
- cd "${S}"
- insinto /usr/include/${PN}
- doins include/*.h
-
- cd "${S}/doc"
- dodoc INDEX.txt AtlasCredits.txt ChangeLog
- use doc && dodoc atlas*pdf cblas.pdf cblasqref.pdf
- use doc && use fortran && dodoc f77blas*pdf
- use doc && use fortran && use lapack && dodoc *lapack*pdf
-}
diff --git a/sci-libs/atlas/metadata.xml b/sci-libs/atlas/metadata.xml
index b4b8088..2fddb01 100644
--- a/sci-libs/atlas/metadata.xml
+++ b/sci-libs/atlas/metadata.xml
@@ -3,12 +3,12 @@
<pkgmetadata>
<herd>sci</herd>
<longdescription lang='en'>
- ATLAS is an approach for the automatic generation and optimization of
- numerical software. Currently ATLAS supplies optimized versions for the
- complete set of linear algebra kernels known as the Basic Linear Algebra
- Subroutines (BLAS) for both c and F77 interfaces. It can also build
- a subset of the linear algebra routine LAPACK library or the full
- LAPACK using the reference LAPACK from Netlib.
+ ATLAS is an approach for the automatic generation and optimization of
+ numerical software. Currently ATLAS supplies optimized versions for the
+ complete set of linear algebra kernels known as the Basic Linear Algebra
+ Subroutines (BLAS) for both c and F77 interfaces. It can also build
+ a subset of the linear algebra routine LAPACK library or the full
+ LAPACK using the reference LAPACK from Netlib.
</longdescription>
<use>
<flag name='generic'>Build atlas assuming a fairly generic architecture (sse2 for x86, core2 for amd64)</flag>
next reply other threads:[~2013-05-23 5:14 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-23 5:13 Sebastien Fabbro [this message]
-- strict thread matches above, loose matches on Subject: below --
2017-06-26 20:35 [gentoo-commits] proj/sci:master commit in: sci-libs/atlas/ Justin Lecher
2017-02-03 10:25 Marius Brehler
2016-12-02 9:06 Marius Brehler
2016-09-07 13:15 Marius Brehler
2016-01-03 10:33 Alexey Shvetsov
2015-12-14 11:39 Justin Lecher
2015-12-08 15:25 Justin Lecher
2015-12-05 13:32 Justin Lecher
2014-02-02 17:01 Reinis Danne
2014-01-28 19:01 Sebastien Fabbro
2013-10-14 9:38 Justin Lecher
2013-10-13 14:39 Justin Lecher
2013-02-25 1:20 Sebastien Fabbro
2013-02-20 19:09 Sebastien Fabbro
2013-01-28 22:51 Sebastien Fabbro
2012-07-10 21:28 Sebastien Fabbro
2012-06-26 22:27 Sebastien Fabbro
2012-06-18 22:01 Sebastien Fabbro
2012-06-07 16:35 Sebastien Fabbro
2012-05-07 15:09 Andrea Arteaga
2012-03-25 0:32 Andrea Arteaga
2012-03-16 21:41 Sebastien Fabbro
2012-02-23 19:05 Sebastien Fabbro
2012-02-20 23:21 Sebastien Fabbro
2012-02-16 4:26 Sebastien Fabbro
2011-10-12 15:29 Andrea Arteaga
2011-09-06 9:35 Andrea Arteaga
2011-08-15 17:18 Kacper Kowalik
2011-08-06 14:00 Alexey Shvetsov
2011-08-06 2:11 Andrea Arteaga
2011-08-06 0:25 Andrea Arteaga
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1369250431.4d8b1e647052cc50f0dfc4c65a3ca55c96f5bdc7.bicatali@gentoo \
--to=bicatali@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox