summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Dittrich <markusle@gentoo.org>2007-07-24 16:20:25 +0000
committerMarkus Dittrich <markusle@gentoo.org>2007-07-24 16:20:25 +0000
commitd85cfb383bdfb43bea8a3a9e31008ff5fad0088d (patch)
tree4e067bb5e1b3f0ea1dfddfbebae7fd8e036a6c61 /sci-libs
parentamd64 stable, bug 185649 (diff)
downloadhistorical-d85cfb383bdfb43bea8a3a9e31008ff5fad0088d.tar.gz
historical-d85cfb383bdfb43bea8a3a9e31008ff5fad0088d.tar.bz2
historical-d85cfb383bdfb43bea8a3a9e31008ff5fad0088d.zip
Version bump.
Package-Manager: portage-2.1.3_rc9
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/blas-atlas/ChangeLog8
-rw-r--r--sci-libs/blas-atlas/blas-atlas-3.7.34.ebuild178
-rw-r--r--sci-libs/blas-atlas/files/digest-blas-atlas-3.7.346
-rw-r--r--sci-libs/lapack-atlas/ChangeLog8
-rw-r--r--sci-libs/lapack-atlas/files/digest-lapack-atlas-3.7.349
-rw-r--r--sci-libs/lapack-atlas/files/lapack-reference-3.1.1-autotool.patch8
-rw-r--r--sci-libs/lapack-atlas/files/lapack-reference-3.1.1-test-fix.patch36
-rw-r--r--sci-libs/lapack-atlas/lapack-atlas-3.7.34.ebuild177
8 files changed, 424 insertions, 6 deletions
diff --git a/sci-libs/blas-atlas/ChangeLog b/sci-libs/blas-atlas/ChangeLog
index c09a5ce9baf2..796d4b9abb61 100644
--- a/sci-libs/blas-atlas/ChangeLog
+++ b/sci-libs/blas-atlas/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sci-libs/blas-atlas
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/blas-atlas/ChangeLog,v 1.64 2007/07/22 15:36:23 opfer Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/blas-atlas/ChangeLog,v 1.65 2007/07/24 16:17:58 markusle Exp $
+
+*blas-atlas-3.7.34 (24 Jul 2007)
+
+ 24 Jul 2007; Markus Dittrich <markusle@gentoo.org>
+ +blas-atlas-3.7.34.ebuild:
+ Version bump.
22 Jul 2007; Christian Faulhammer <opfer@gentoo.org>
blas-atlas-3.6.0-r2.ebuild, blas-atlas-3.7.11-r1.ebuild:
diff --git a/sci-libs/blas-atlas/blas-atlas-3.7.34.ebuild b/sci-libs/blas-atlas/blas-atlas-3.7.34.ebuild
new file mode 100644
index 000000000000..8520c41c7715
--- /dev/null
+++ b/sci-libs/blas-atlas/blas-atlas-3.7.34.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/blas-atlas/blas-atlas-3.7.34.ebuild,v 1.1 2007/07/24 16:17:58 markusle Exp $
+
+inherit eutils toolchain-funcs fortran
+
+DESCRIPTION="Automatically Tuned Linear Algebra Software BLAS implementation"
+HOMEPAGE="http://math-atlas.sourceforge.net/"
+MY_PN=${PN/blas-/}
+SRC_URI="mirror://sourceforge/math-atlas/${MY_PN}${PV}.tar.bz2
+ mirror://gentoo/${MY_PN}-${PV}-shared-libs.patch.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="doc"
+
+RDEPEND="app-admin/eselect-blas
+ app-admin/eselect-cblas"
+DEPEND="${RDEPEND}
+ >=sys-devel/libtool-1.5"
+PROVIDE="virtual/blas"
+
+S="${WORKDIR}/ATLAS"
+BLD_DIR="${S}/gentoo-build"
+RPATH="${DESTTREE}/$(get_libdir)/blas"
+FORTRAN="g77 gfortran"
+
+pkg_setup() {
+ fortran_pkg_setup
+ echo
+ ewarn "Please make sure to disable CPU throttling completely"
+ ewarn "during the compile of blas-atlas. Otherwise, all atlas"
+ ewarn "generated timings will be completely random and the"
+ ewarn "performance of the resulting libraries will be degraded"
+ ewarn "considerably."
+ echo
+ ewarn "For users of <=gcc-4.1.1 only:"
+ ewarn "If you experience failing SANITY tests during"
+ ewarn "atlas' compile please try passing -mfpmath=387; this"
+ ewarn "option might also result in much better performance"
+ ewarn "than using then sse instruction set depending on your"
+ ewarn "CPU."
+ echo
+ epause 10
+}
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+
+ epatch "${DISTDIR}"/${MY_PN}-${PV}-shared-libs.patch.bz2
+ epatch "${FILESDIR}"/${MY_PN}-asm-gentoo.patch
+
+ # make sure shared libs link against proper libraries
+ if [[ ${FORTRANC} == "gfortran" ]]; then
+ libs="${LDFLAGS} -lpthread -lgfortran"
+ else
+ libs="${LDFLAGS} -lpthread -lg2c"
+ fi
+
+ #increase amount of workspace to improve threaded performance
+ sed -e "s:16777216:167772160:" -i include/atlas_lvl3.h ||
+ die "Failed to fix ATL_MaxMalloc"
+
+ sed -e "s:SHRD_LNK:${libs}:g" -i Make.top || \
+ die "Failed to add addtional libs to shared object build"
+
+ sed -e "s:= gcc:= $(tc-getCC) ${CFLAGS}:" \
+ -i CONFIG/src/SpewMakeInc.c || die "Failed to fix Spewmake"
+
+ mkdir ${BLD_DIR} || die "failed to generate build directory"
+ cp "${FILESDIR}"/war ${BLD_DIR} && chmod a+x ${BLD_DIR}/war || \
+ die "failed to install war"
+
+ # force proper 32/64bit libs
+ local archselect
+ if [[ "${ARCH}" == "amd64" || "${ARCH}" == "ppc64" ]]; then
+ archselect="-b 64"
+ elif [ "${ARCH}" == "alpha" ]; then
+ archselect=""
+ else
+ archselect="-b 32"
+ fi
+
+ # set up compiler/flags using atlas' native configure
+ local compdefs
+ compdefs="${compdefs} -C xc '$(tc-getCC)' -F xc '${CFLAGS}'"
+ compdefs="${compdefs} -C ic '$(tc-getCC)' -F ic '${CFLAGS}'"
+ compdefs="${compdefs} -C sk '$(tc-getCC)' -F sk '${CFLAGS}'"
+ compdefs="${compdefs} -C dk '$(tc-getCC)' -F dk '${CFLAGS}'"
+ compdefs="${compdefs} -C sm '$(tc-getCC)' -F sm '${CFLAGS}'"
+ compdefs="${compdefs} -C dm '$(tc-getCC)' -F dm '${CFLAGS}'"
+ compdefs="${compdefs} -C if '${FORTRANC}' -F if '${FFLAGS}'"
+ compdefs="${compdefs} -Ss pmake '\$(MAKE) ${MAKEOPTS}'"
+ compdefs="${compdefs} -Si cputhrchk 0 ${archselect}"
+
+ cd ${BLD_DIR} && ../configure ${compdefs} \
+ || die "configure failed"
+}
+
+src_compile() {
+ cd ${BLD_DIR}
+ emake -j1 || die "make failed"
+
+ make shared-strip RPATH=${RPATH}/atlas || \
+ die "failed to build shared libraries"
+
+ # build shared libraries of threaded libraries if applicable
+ if [ -d gentoo/libptf77blas.a ]; then
+ make ptshared-strip RPATH=${RPATH}/threaded-atlas || \
+ die "failed to build threaded shared libraries"
+ fi
+}
+
+src_install () {
+ dodir "${RPATH}"/atlas
+ cd ${BLD_DIR}/gentoo/libs
+ cp -P libatlas* "${D}/${DESTTREE}/$(get_libdir)" || \
+ die "Failed to install libatlas"
+ cp -P *blas* "${D}/${RPATH}"/atlas || \
+ die "Failed to install blas/cblas"
+
+ eselect blas add $(get_libdir) ${FILESDIR}/eselect.blas atlas
+ eselect cblas add $(get_libdir) ${FILESDIR}/eselect.cblas atlas
+
+ if [ -d ${BLD_DIR}/gentoo/threaded-libs ]
+ then
+ dodir "${RPATH}"/threaded-atlas
+ cd ${BLD_DIR}/gentoo/threaded-libs
+ cp -P * "${D}/${RPATH}"/threaded-atlas || \
+ die "Failed to install threaded atlas"
+
+ eselect blas add $(get_libdir) ${FILESDIR}/eselect.blas-threaded threaded-atlas
+ eselect cblas add $(get_libdir) ${FILESDIR}/eselect.cblas-threaded threaded-atlas
+ fi
+
+ insinto "${DESTTREE}"/include/atlas
+ doins "${S}"/include/cblas.h "${S}"/include/atlas_misc.h \
+ "${S}"/include/atlas_enum.h || \
+ die "failed to install headers"
+
+ # These headers contain the architecture-specific
+ # optimizations determined by ATLAS. The atlas-lapack build
+ # is much shorter if they are available, so save them:
+ doins ${BLD_DIR}/include/*.h || \
+ die "failed to install timing headers"
+
+ #some docs
+ cd "${S}"
+ dodoc README doc/{AtlasCredits.txt,ChangeLog}
+ use doc && dodoc doc/*.ps
+}
+
+pkg_postinst() {
+ local THREADED
+
+ if [ -d "${RPATH}"/threaded-atlas ]
+ then
+ THREADED="threaded-"
+ fi
+ if [[ -z "$(eselect blas show)" ]]; then
+ eselect blas set ${THREADED}atlas
+ fi
+ if [[ -z "$(eselect cblas show)" ]]; then
+ eselect cblas set ${THREADED}atlas
+ fi
+
+ elog
+ elog "Fortran users link using -lblas"
+ elog
+ elog "C users compile against the header ${ROOT}usr/include/atlas/cblas.h and"
+ elog "link using -lcblas"
+ elog
+ elog "If using threaded ATLAS, you may also need to link with -lpthread."
+ elog
+ elog "Configuration now uses eselect rather than blas-config."
+}
diff --git a/sci-libs/blas-atlas/files/digest-blas-atlas-3.7.34 b/sci-libs/blas-atlas/files/digest-blas-atlas-3.7.34
new file mode 100644
index 000000000000..ec93a12e4467
--- /dev/null
+++ b/sci-libs/blas-atlas/files/digest-blas-atlas-3.7.34
@@ -0,0 +1,6 @@
+MD5 6a37551621d91bd3495bc1718df0b9cd atlas-3.7.34-shared-libs.patch.bz2 6157
+RMD160 c898883344c421fa8290f7bbd759578ee6c60bed atlas-3.7.34-shared-libs.patch.bz2 6157
+SHA256 8d2fe80d4c368412bce30b2d6d9ce4017e9ab2d1e97f2fa2f8bff12c49748983 atlas-3.7.34-shared-libs.patch.bz2 6157
+MD5 2cb87f02e0d131138eef8049d5a854d1 atlas3.7.34.tar.bz2 2252847
+RMD160 b3c0b5ba49bd04da935bf6597ff727dcfc94711f atlas3.7.34.tar.bz2 2252847
+SHA256 6f29cc34266ceb9b5ee27276677281deba8438b00d4ace7c018b2b5aa5a9d333 atlas3.7.34.tar.bz2 2252847
diff --git a/sci-libs/lapack-atlas/ChangeLog b/sci-libs/lapack-atlas/ChangeLog
index d0e75499442a..62ba86a77dd8 100644
--- a/sci-libs/lapack-atlas/ChangeLog
+++ b/sci-libs/lapack-atlas/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sci-libs/lapack-atlas
# Copyright 2004-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/lapack-atlas/ChangeLog,v 1.45 2007/05/29 13:15:05 markusle Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/lapack-atlas/ChangeLog,v 1.46 2007/07/24 16:20:25 markusle Exp $
+
+*lapack-atlas-3.7.34 (24 Jul 2007)
+
+ 24 Jul 2007; Markus Dittrich <markusle@gentoo.org>
+ +files/lapack-reference-3.1.1-test-fix.patch, +lapack-atlas-3.7.34.ebuild:
+ Version bump.
29 May 2007; Markus Dittrich <markusle@gentoo.org>
lapack-atlas-3.7.32.ebuild:
diff --git a/sci-libs/lapack-atlas/files/digest-lapack-atlas-3.7.34 b/sci-libs/lapack-atlas/files/digest-lapack-atlas-3.7.34
new file mode 100644
index 000000000000..c40a27a11f69
--- /dev/null
+++ b/sci-libs/lapack-atlas/files/digest-lapack-atlas-3.7.34
@@ -0,0 +1,9 @@
+MD5 6a37551621d91bd3495bc1718df0b9cd atlas-3.7.34-shared-libs.patch.bz2 6157
+RMD160 c898883344c421fa8290f7bbd759578ee6c60bed atlas-3.7.34-shared-libs.patch.bz2 6157
+SHA256 8d2fe80d4c368412bce30b2d6d9ce4017e9ab2d1e97f2fa2f8bff12c49748983 atlas-3.7.34-shared-libs.patch.bz2 6157
+MD5 2cb87f02e0d131138eef8049d5a854d1 atlas3.7.34.tar.bz2 2252847
+RMD160 b3c0b5ba49bd04da935bf6597ff727dcfc94711f atlas3.7.34.tar.bz2 2252847
+SHA256 6f29cc34266ceb9b5ee27276677281deba8438b00d4ace7c018b2b5aa5a9d333 atlas3.7.34.tar.bz2 2252847
+MD5 5feace3f4507a92ef822b2e0b50151d7 lapack-lite-3.1.1.tgz 5332509
+RMD160 d81baafd1f0f9859d9f75ac9b658f743544b5f5b lapack-lite-3.1.1.tgz 5332509
+SHA256 505a13272d0d71c45ea52be2de74b0562b234ea3ccf5160665c7a2ee74a58437 lapack-lite-3.1.1.tgz 5332509
diff --git a/sci-libs/lapack-atlas/files/lapack-reference-3.1.1-autotool.patch b/sci-libs/lapack-atlas/files/lapack-reference-3.1.1-autotool.patch
index d9a9b479bfdb..295cc2b0f4d3 100644
--- a/sci-libs/lapack-atlas/files/lapack-reference-3.1.1-autotool.patch
+++ b/sci-libs/lapack-atlas/files/lapack-reference-3.1.1-autotool.patch
@@ -15,8 +15,8 @@ diff -Naur lapack-lite-3.1.1/INSTALL/Makefile.am lapack-lite-3.1.1.new/INSTALL/M
+testlsame_SOURCES = lsame.f lsametst.f
+testslamch_SOURCES = slamch.f lsame.f slamchtst.f
+testdlamch_SOURCES = dlamch.f lsame.f dlamchtst.f
-+testsecond_SOURCES = second_EXT_ETIME.f secondtst.f
-+testdsecnd_SOURCES = dsecnd_EXT_ETIME.f dsecndtst.f
++testsecond_SOURCES = second_INT_CPU_TIME.f secondtst.f
++testdsecnd_SOURCES = dsecnd_INT_CPU_TIME.f dsecndtst.f
+testieee_SOURCES = tstiee.f
+
+EXTRA_DIST = \
@@ -64,7 +64,7 @@ diff -Naur lapack-lite-3.1.1/SRC/Makefile.am lapack-lite-3.1.1.new/SRC/Makefile.
+ slaset.f slasq1.f slasq2.f slasq3.f slazq3.f slasq4.f slazq4.f slasq5.f slasq6.f \
+ slasr.f slasrt.f slassq.f slasv2.f spttrf.f sstebz.f sstedc.f \
+ ssteqr.f ssterf.f slaisnan.f sisnan.f \
-+ ../INSTALL/second_EXT_ETIME.f
++ ../INSTALL/second_INT_CPU_TIME.f
+endif
+
+if DOUBLE
@@ -86,7 +86,7 @@ diff -Naur lapack-lite-3.1.1/SRC/Makefile.am lapack-lite-3.1.1.new/SRC/Makefile.
+ dlaset.f dlasq1.f dlasq2.f dlasq3.f dlazq3.f dlasq4.f dlazq4.f dlasq5.f dlasq6.f \
+ dlasr.f dlasrt.f dlassq.f dlasv2.f dpttrf.f dstebz.f dstedc.f \
+ dsteqr.f dsterf.f dlaisnan.f disnan.f \
-+ ../INSTALL/dsecnd_EXT_ETIME.f
++ ../INSTALL/dsecnd_INT_CPU_TIME.f
+endif
+
+if S
diff --git a/sci-libs/lapack-atlas/files/lapack-reference-3.1.1-test-fix.patch b/sci-libs/lapack-atlas/files/lapack-reference-3.1.1-test-fix.patch
new file mode 100644
index 000000000000..e9b754403f3a
--- /dev/null
+++ b/sci-libs/lapack-atlas/files/lapack-reference-3.1.1-test-fix.patch
@@ -0,0 +1,36 @@
+diff -Naur lapack-lite-3.1.1/TESTING/ctest.in lapack-lite-3.1.1-new/TESTING/ctest.in
+--- lapack-lite-3.1.1/TESTING/ctest.in 2007-02-26 13:20:47.000000000 -0500
++++ lapack-lite-3.1.1-new/TESTING/ctest.in 2007-07-24 10:19:31.000000000 -0400
+@@ -32,5 +32,4 @@
+ CQL 8 List types on next line if 0 < NTYPES < 8
+ CQP 6 List types on next line if 0 < NTYPES < 6
+ CTZ 3 List types on next line if 0 < NTYPES < 3
+-CLS 6 List types on next line if 0 < NTYPES < 6
+ CEQ
+diff -Naur lapack-lite-3.1.1/TESTING/dtest.in lapack-lite-3.1.1-new/TESTING/dtest.in
+--- lapack-lite-3.1.1/TESTING/dtest.in 2007-02-26 13:20:49.000000000 -0500
++++ lapack-lite-3.1.1-new/TESTING/dtest.in 2007-07-24 10:19:36.000000000 -0400
+@@ -30,5 +30,4 @@
+ DQL 8 List types on next line if 0 < NTYPES < 8
+ DQP 6 List types on next line if 0 < NTYPES < 6
+ DTZ 3 List types on next line if 0 < NTYPES < 3
+-DLS 6 List types on next line if 0 < NTYPES < 6
+ DEQ
+diff -Naur lapack-lite-3.1.1/TESTING/stest.in lapack-lite-3.1.1-new/TESTING/stest.in
+--- lapack-lite-3.1.1/TESTING/stest.in 2007-02-26 13:20:49.000000000 -0500
++++ lapack-lite-3.1.1-new/TESTING/stest.in 2007-07-24 10:19:48.000000000 -0400
+@@ -30,5 +30,4 @@
+ SQL 8 List types on next line if 0 < NTYPES < 8
+ SQP 6 List types on next line if 0 < NTYPES < 6
+ STZ 3 List types on next line if 0 < NTYPES < 3
+-SLS 6 List types on next line if 0 < NTYPES < 6
+ SEQ
+diff -Naur lapack-lite-3.1.1/TESTING/ztest.in lapack-lite-3.1.1-new/TESTING/ztest.in
+--- lapack-lite-3.1.1/TESTING/ztest.in 2007-02-26 13:20:49.000000000 -0500
++++ lapack-lite-3.1.1-new/TESTING/ztest.in 2007-07-24 10:19:42.000000000 -0400
+@@ -32,5 +32,4 @@
+ ZQL 8 List types on next line if 0 < NTYPES < 8
+ ZQP 6 List types on next line if 0 < NTYPES < 6
+ ZTZ 3 List types on next line if 0 < NTYPES < 3
+-ZLS 6 List types on next line if 0 < NTYPES < 6
+ ZEQ
diff --git a/sci-libs/lapack-atlas/lapack-atlas-3.7.34.ebuild b/sci-libs/lapack-atlas/lapack-atlas-3.7.34.ebuild
new file mode 100644
index 000000000000..1e0d194ba348
--- /dev/null
+++ b/sci-libs/lapack-atlas/lapack-atlas-3.7.34.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/lapack-atlas/lapack-atlas-3.7.34.ebuild,v 1.1 2007/07/24 16:20:25 markusle Exp $
+
+inherit eutils flag-o-matic toolchain-funcs fortran versionator
+
+MY_PN="${PN/lapack-/}"
+L_PN="lapack"
+L_PV="3.1.1"
+BlasRelease=$(get_version_component_range 1-3)
+
+DESCRIPTION="Full LAPACK implementation using available ATLAS routines"
+LICENSE="BSD"
+HOMEPAGE="http://math-atlas.sourceforge.net/"
+SRC_URI1="mirror://sourceforge/math-atlas/${MY_PN}${PV}.tar.bz2"
+SRC_URI2="http://www.netlib.org/${L_PN}/${L_PN}-lite-${L_PV}.tgz"
+SRC_URI="${SRC_URI1} ${SRC_URI2}
+ mirror://gentoo/${MY_PN}-${PV}-shared-libs.patch.bz2"
+
+SLOT="0"
+IUSE="doc"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND="virtual/blas
+ app-admin/eselect-lapack"
+
+DEPEND="${RDEPEND}
+ >=sys-devel/libtool-1.5
+ ~sci-libs/blas-atlas-${BlasRelease}"
+
+PROVIDE="virtual/lapack"
+
+FORTRAN="g77 gfortran"
+
+S="${WORKDIR}/ATLAS"
+S_LAPACK="${WORKDIR}/${L_PN}-lite-${L_PV}"
+BLD_DIR="${S}/gentoo-build"
+RPATH="${DESTTREE}/$(get_libdir)/${L_PN}/${MY_PN}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${WORKDIR}"
+
+ epatch "${DISTDIR}"/${MY_PN}-${PV}-shared-libs.patch.bz2
+ epatch "${FILESDIR}"/${MY_PN}-asm-gentoo.patch
+ epatch "${FILESDIR}"/${L_PN}-reference-${L_PV}-autotool.patch
+ epatch "${FILESDIR}"/${L_PN}-reference-${L_PV}-test-fix.patch
+
+ cd "${S}"
+ mkdir ${BLD_DIR} || die "failed to generate build directory"
+ cp "${FILESDIR}"/war "${BLD_DIR}" && chmod a+x "${BLD_DIR}"/war \
+ || die "failed to install war"
+
+ # make sure the compile picks up the proper includes
+ sed -e "s|INCLUDES =|INCLUDES = -I/usr/include/atlas/|" \
+ -e "s:= gcc:= $(tc-getCC) ${CFLAGS}:" \
+ -i CONFIG/src/SpewMakeInc.c || \
+ die "failed to append proper includes"
+
+ # force proper 32/64bit libs
+ local archselect
+ if [[ "${ARCH}" == "amd64" || "${ARCH}" == "ppc64" ]]; then
+ archselect="-b 64"
+ elif [ "${ARCH}" == "alpha" ]; then
+ archselect=""
+ else
+ archselect="-b 32"
+ fi
+
+ # set up compiler/flags using atlas' native configure
+ local compdefs
+ compdefs="${compdefs} -C xc '$(tc-getCC)' -F xc '${CFLAGS}'"
+ compdefs="${compdefs} -C ic '$(tc-getCC)' -F ic '${CFLAGS}'"
+ compdefs="${compdefs} -C sk '$(tc-getCC)' -F sk '${CFLAGS}'"
+ compdefs="${compdefs} -C dk '$(tc-getCC)' -F dk '${CFLAGS}'"
+ compdefs="${compdefs} -C sm '$(tc-getCC)' -F sm '${CFLAGS}'"
+ compdefs="${compdefs} -C dm '$(tc-getCC)' -F dm '${CFLAGS}'"
+ compdefs="${compdefs} -C if '${FORTRANC}' -F if '${FFLAGS}'"
+ compdefs="${compdefs} -Ss pmake '\$(MAKE) ${MAKEOPTS}'"
+ compdefs="${compdefs} -Si cputhrchk 0 ${archselect}"
+
+
+ cd ${BLD_DIR} && ../configure ${compdefs} \
+ || die "configure failed"
+
+ cd "${S_LAPACK}"
+ eautoreconf
+
+ # set up the testing routines
+ cp make.inc.example make.inc || die "Failed to copy make.inc"
+ sed -e "s:g77:${FORTRANC}:" \
+ -e "s:-funroll-all-loops -O3:${FFLAGS}:" \
+ -e "s:LOADOPTS =:LOADOPTS = ${LDFLAGS}:" \
+ -e "s:../../blas\$(PLAT).a:-lblas -lcblas:" \
+ -e "s:lapack\$(PLAT).a:SRC/.libs/liblapack.a:" \
+ -e "s:EXT_ETIME$:INT_CPU_TIME:" \
+ -i make.inc || die "Failed to set up make.inc"
+}
+
+src_compile() {
+ # build atlas' part of lapack
+ cd "${BLD_DIR}"/src/lapack
+ make lib || die "Failed to make lib in ${BLD_DIR}/src/lapack"
+
+ cd "${BLD_DIR}"/interfaces/lapack/C/src
+ make lib || die "Failed to make lib in ${BLD_DIR}/interfaces/lapack/C/src"
+
+ cd "${BLD_DIR}"/interfaces/lapack/F77/src
+ make lib || die "Failed to make lib in ${BLD_DIR}/interfaces/lapack/F77/src"
+
+ # build rest of lapack
+ cd "${S_LAPACK}"
+ econf || die "Failed to configure reference lapack lib"
+ emake || die "Failed to make reference lapack lib"
+
+ cd "${S_LAPACK}"/SRC
+ einfo "Copying liblapack.a/*.o to ${S_LAPACK}/SRC"
+ cp -sf "${BLD_DIR}"/gentoo/liblapack.a/*.o .
+ einfo "Copying liblapack.a/*.lo to ${S_LAPACK}/SRC"
+ cp -sf "${BLD_DIR}"/gentoo/liblapack.a/*.lo .
+ einfo "Copying liblapack.a/.libs/*.o to ${S_LAPACK}/SRC"
+ cp -sf "${BLD_DIR}"/gentoo/liblapack.a/.libs/*.o .libs/
+
+ # make sure shared libs link against proper libraries
+ if [[ ${FORTRANC} == "gfortran" ]]; then
+ libs="${LDFLAGS} -lpthread -lgfortran"
+ else
+ libs="${LDFLAGS} -lpthread -lg2c"
+ fi
+
+ ../libtool --mode=link --tag=F77 ${FORTRANC} -lblas -lcblas \
+ -latlas ${libs} -o liblapack.la *.lo -rpath "${RPATH}" \
+ || die "Failed to create liblapack.la"
+}
+
+src_install () {
+ dodir "${RPATH}"
+
+ cd "${S_LAPACK}"/SRC
+ ../libtool --mode=install install -s liblapack.la \
+ "${D}/${RPATH}" \
+ || die "Failed to install lapack-atlas library"
+
+ eselect lapack add $(get_libdir) ${FILESDIR}/eselect.lapack atlas
+
+ insinto /usr/include/atlas
+ cd "${S}"/include
+ doins clapack.h || die "Failed to install clapack.h"
+
+ cd "${S}"
+ dodoc README doc/AtlasCredits.txt doc/ChangeLog || \
+ die "Failed to install docs"
+ if use doc; then
+ dodoc doc/lapackqref.pdf || die "Failed to install docs"
+ fi
+}
+
+src_test() {
+ cd "${S_LAPACK}"/TESTING/MATGEN && emake || \
+ die "Failed to create tmglib.a"
+ cd ../ && emake || die "lapack-reference tests failed."
+}
+
+pkg_postinst() {
+ if [[ -z "$(eselect lapack show)" ]]; then
+ eselect lapack set atlas
+ fi
+
+ elog
+ elog "To link with ATLAS LAPACK from C or Fortran, simply use:"
+ elog
+ elog "-llapack"
+ elog
+ elog "C users: your header is /usr/include/atlas/clapack.h"
+ elog
+ elog "Configuration now uses eselect rather than lapack-config."
+}