summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-libs/acml/ChangeLog13
-rw-r--r--sci-libs/acml/Manifest48
-rw-r--r--sci-libs/acml/acml-3.6.0-r1.ebuild152
-rw-r--r--sci-libs/acml/acml-3.6.1-r1.ebuild173
-rw-r--r--sci-libs/acml/acml-4.0.0.ebuild168
-rw-r--r--sci-libs/acml/files/blas.pc.in11
-rw-r--r--sci-libs/acml/files/digest-acml-3.6.0-r112
-rw-r--r--sci-libs/acml/files/digest-acml-3.6.1-r19
-rw-r--r--sci-libs/acml/files/digest-acml-4.0.09
-rw-r--r--sci-libs/acml/files/lapack.pc.in11
10 files changed, 597 insertions, 9 deletions
diff --git a/sci-libs/acml/ChangeLog b/sci-libs/acml/ChangeLog
index a614beec1048..2dfc5e241892 100644
--- a/sci-libs/acml/ChangeLog
+++ b/sci-libs/acml/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for sci-libs/acml
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-libs/acml/ChangeLog,v 1.21 2007/07/02 15:25:55 peper Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/acml/ChangeLog,v 1.22 2007/10/08 20:47:04 bicatali Exp $
+
+*acml-4.0.0 (08 Oct 2007)
+*acml-3.6.1-r1 (08 Oct 2007)
+*acml-3.6.0-r1 (08 Oct 2007)
+
+ 08 Oct 2007; Sébastien Fabbro <bicatali@gentoo.org> +files/blas.pc.in,
+ +files/lapack.pc.in, +acml-3.6.0-r1.ebuild, +acml-3.6.1-r1.ebuild,
+ +acml-4.0.0.ebuild:
+ Version bump. Fixed openmp profiles for acml-3.6.0-r1 and acml-3.6.1-r1.
+ Added a bunch of tests, now supports new virtual style. Remove any cblas
+ reference since API is not compatible.
02 Jul 2007; Piotr Jaroszyński <peper@gentoo.org> acml-3.0.0.ebuild,
acml-3.1.0-r1.ebuild, acml-3.6.0.ebuild, acml-3.6.1.ebuild:
diff --git a/sci-libs/acml/Manifest b/sci-libs/acml/Manifest
index 5ca61ec4397f..555ec3ebe57d 100644
--- a/sci-libs/acml/Manifest
+++ b/sci-libs/acml/Manifest
@@ -1,6 +1,10 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
+AUX blas.pc.in 277 RMD160 8cb47efd4dde249c1167474349f5dfd627cf0db8 SHA1 528846352226a1f2543a7562370a60110c958252 SHA256 36cef41ee7bede42836c6d9b4d8d95ee95270f238ed52994440565741e0db129
+MD5 f00b2103879c1f4c8f85533e2b20d80f files/blas.pc.in 277
+RMD160 8cb47efd4dde249c1167474349f5dfd627cf0db8 files/blas.pc.in 277
+SHA256 36cef41ee7bede42836c6d9b4d8d95ee95270f238ed52994440565741e0db129 files/blas.pc.in 277
AUX c-ACML.blas 465 RMD160 71b32038e97db51ff63ca9090bc1b3cd759c1768 SHA1 4110d471675aa5821bf862b9658d6c0509e98c54 SHA256 3f784a81417fc88dcbfc4bbf4b2497eeef5b1f88084ea5b948725c1aa54ef3fd
MD5 e92e9b2507e25e7826de1be1cce7c7ae files/c-ACML.blas 465
RMD160 71b32038e97db51ff63ca9090bc1b3cd759c1768 files/c-ACML.blas 465
@@ -37,6 +41,10 @@ AUX f77-ACML.lapack 441 RMD160 d51ae2b9561c40a9d5402077e30766bfb00cab80 SHA1 e2d
MD5 035015e5be8999d26202cfb042029acc files/f77-ACML.lapack 441
RMD160 d51ae2b9561c40a9d5402077e30766bfb00cab80 files/f77-ACML.lapack 441
SHA256 b3a2a05d934e1826868399b6d6a5717d96136c36dc411ab2d0581d96e12de3c0 files/f77-ACML.lapack 441
+AUX lapack.pc.in 274 RMD160 7d97022fffe23c7b1215de1555851a4057efebe2 SHA1 b6b1c19d6c5fe734bb40877c23f33134838a7f6e SHA256 0a0d676a89f34710c8955178440f5f72114adaa8ec9d73d067f43480360c443a
+MD5 bcc3002846ea0acf7d199f861d83b1d1 files/lapack.pc.in 274
+RMD160 7d97022fffe23c7b1215de1555851a4057efebe2 files/lapack.pc.in 274
+SHA256 0a0d676a89f34710c8955178440f5f72114adaa8ec9d73d067f43480360c443a files/lapack.pc.in 274
DIST acml-3-0-0-gnu-32bit.tgz 24117886 RMD160 6c8f4829c9b8ca5ec7250e2aad4d85bdfcdd7862 SHA1 218c6c9ba0116a8bdfb0a194c23529d85478ef1b SHA256 1818e48c23254f586c5c81383eeffe907442800cb16040837b4e2b4ebcbf144e
DIST acml-3-0-0-gnu-64bit.tgz 9995385 RMD160 b3f979e6c303207bc22bdcb5057fd7e4aded51e9 SHA1 aaa0efbd314c69ce5b8112bd5997a9950343f98e SHA256 c9c447f871134214ffc363d4b8f2b4df1c4ccbb82e8b4e4c90601d01a7c745e5
DIST acml-3-1-0-gnu-32bit.tgz 24132771 RMD160 45530e58db9cc6ff31721cca1f440a852ca6a2a9 SHA1 902f14ea0accb659deab4c2552f4ecf06bb9ad37 SHA256 32581925aad8df6449453cc62eeaa28a07b6c081b625a8a77e985859466e05de
@@ -48,6 +56,9 @@ DIST acml-3-6-0-ifort-64bit.tgz 21966276 RMD160 a6031f5cdacdc70d11c06cf6d8e8ae31
DIST acml-3-6-1-gfortran-32bit.tgz 17682562 RMD160 abdb8ea2f66f08f478a951b37c5ce5945854a357 SHA1 7606b690061319c50f30af11766694205b03922f SHA256 adec95c65d1042c65fa1490978b76042c3bf9670df7c226cd28431473985898c
DIST acml-3-6-1-gfortran-64bit-int64.tgz 19802195 RMD160 3cb2317d6a5ec62797c4a11ab1336aabb50e16fa SHA1 a9be2f4ecbfdb6e0f849f545b66e78f752367f00 SHA256 56cbbb6deac2a93d21f3954511ad95ccc2a8ce893fdbf9a8605a2d81deb1fc41
DIST acml-3-6-1-gfortran-64bit.tgz 20452058 RMD160 8df00704e7ac037dcd55a9207f45d6f0b2214ff8 SHA1 f0d2a10e5db83dc264d6f937189ce10a1f461a4d SHA256 efec543a8185ffb6e6e68db94ef0cbd92c1b9ee1580affe6cd0a73c580ad8bdc
+DIST acml-4-0-0-gfortran-64bit-int64.tgz 21881646 RMD160 65d3d4ca146ade1781efb43ca35c80cc85387c90 SHA1 e57ac634fe7c9a8ba82db59df572b0fa4e1d3434 SHA256 eda0b3c1350716509b1d244641200edca30faaae42c7b7b3873f573b4036f1f6
+DIST acml-4-0-0-gfortran-64bit.tgz 22559682 RMD160 cd9042e882fb4e8c1f5951e8eb2880d035ab14ea SHA1 27632153f219d9659734d4079c884d5347842b10 SHA256 3a7300dd9f7a494177baddd8bc34375daf80e550f5b6edb9539ed966adb80f11
+DIST acml-4-0-0-ifort-64bit.tgz 26676345 RMD160 2f4a1f14a55ac3334fd3fc045355a4fdebf2e87f SHA1 8a862389cc73d6b2975e8f2c682669f6bc1d9c3b SHA256 090f64a5fe309c6ed2ee9bcf7ae73687e0577a02da9f8ceabd4e5315fecb4769
EBUILD acml-3.0.0.ebuild 1840 RMD160 34a83d5a7044d028f3f7894284c14fcd59413b65 SHA1 5fd0a2dad0bae97741fbed06146117197b740dfe SHA256 4bb05b109421e8e45da065b43355f64cd0f0c1a3a5e3a96e505d7233620ad7a9
MD5 14e23bdec101001236ebece752ab2e3a acml-3.0.0.ebuild 1840
RMD160 34a83d5a7044d028f3f7894284c14fcd59413b65 acml-3.0.0.ebuild 1840
@@ -56,18 +67,30 @@ EBUILD acml-3.1.0-r1.ebuild 2217 RMD160 f41caa6097f70e1112dbbf38a5cf887e6a43f9e7
MD5 0510c2422a50236816dd2a3f681367f9 acml-3.1.0-r1.ebuild 2217
RMD160 f41caa6097f70e1112dbbf38a5cf887e6a43f9e7 acml-3.1.0-r1.ebuild 2217
SHA256 ec062715d179ef9157ff1f5f1a9d2f518e0de11401590152e94c0f101b919836 acml-3.1.0-r1.ebuild 2217
+EBUILD acml-3.6.0-r1.ebuild 4329 RMD160 239e9d3ec86da65fc6e4b83850e140a042ed3420 SHA1 4274d3648ec17fea88ed2c39cb85df9935c05523 SHA256 f8e3c405f05ac60349404f5df0461ed7d31e57e18a1838a69a3aa1f608b926af
+MD5 e1c0a59c472bedfb5f60f0df10d7297d acml-3.6.0-r1.ebuild 4329
+RMD160 239e9d3ec86da65fc6e4b83850e140a042ed3420 acml-3.6.0-r1.ebuild 4329
+SHA256 f8e3c405f05ac60349404f5df0461ed7d31e57e18a1838a69a3aa1f608b926af acml-3.6.0-r1.ebuild 4329
EBUILD acml-3.6.0.ebuild 3462 RMD160 34986e1b68917842a0ecd92cee665727452b84d5 SHA1 a1055c84f947151ee204e737255511e32975724a SHA256 00f444068d885d80169d3b73ce82dcefad311ab302bc5fc0295de9ef8d94f145
MD5 995e153cf553a942c872668184e00dbc acml-3.6.0.ebuild 3462
RMD160 34986e1b68917842a0ecd92cee665727452b84d5 acml-3.6.0.ebuild 3462
SHA256 00f444068d885d80169d3b73ce82dcefad311ab302bc5fc0295de9ef8d94f145 acml-3.6.0.ebuild 3462
+EBUILD acml-3.6.1-r1.ebuild 5091 RMD160 9a80e45b53d3c8ce8fdb735464ffb24933fb14a6 SHA1 f5180c981c6fe264bebc95c8f2a171ad852b1207 SHA256 a84d5e9d438425a24ad5474227c0a6baae8eaa99529f8c648d8593561b351ed9
+MD5 0f643ddddae23af7850e32aa36ae626a acml-3.6.1-r1.ebuild 5091
+RMD160 9a80e45b53d3c8ce8fdb735464ffb24933fb14a6 acml-3.6.1-r1.ebuild 5091
+SHA256 a84d5e9d438425a24ad5474227c0a6baae8eaa99529f8c648d8593561b351ed9 acml-3.6.1-r1.ebuild 5091
EBUILD acml-3.6.1.ebuild 2673 RMD160 02905dc7c28a88bf4b657cc5fc78c672d5e4d7dd SHA1 f32b3957d35bbc755b5d9df93818d1c17b7ed8d2 SHA256 c88b2f1e3ef1fb3acebe8f83496c08fc5c25ecf79859c452a24304a8b52e3a9c
MD5 3b151f708791a1ad03164dae15298c0e acml-3.6.1.ebuild 2673
RMD160 02905dc7c28a88bf4b657cc5fc78c672d5e4d7dd acml-3.6.1.ebuild 2673
SHA256 c88b2f1e3ef1fb3acebe8f83496c08fc5c25ecf79859c452a24304a8b52e3a9c acml-3.6.1.ebuild 2673
-MISC ChangeLog 3878 RMD160 f1c398d535f5fea350c29d3f5669ec38d9fbb132 SHA1 6f6073a48ffdfdd71ce70b9ad4fbf3715148e3b4 SHA256 c634c54c86c144ee14b7a21904070984c1a59f1d8cac78c0865c537f21ef04aa
-MD5 d3633fabff34e5ee9db4ae68d4410b07 ChangeLog 3878
-RMD160 f1c398d535f5fea350c29d3f5669ec38d9fbb132 ChangeLog 3878
-SHA256 c634c54c86c144ee14b7a21904070984c1a59f1d8cac78c0865c537f21ef04aa ChangeLog 3878
+EBUILD acml-4.0.0.ebuild 4774 RMD160 7b3ede022c37e793c163dfdfe1e4ff87a7ae2ce7 SHA1 254af3cd3b27fa633d4b40d30070d61dd045bdd7 SHA256 dbb2234d926f1bad815721d5c1a8ddb73223d2f7c8376d3a14f4084eeed9d940
+MD5 954bc70afed31c457396f7e9aed80290 acml-4.0.0.ebuild 4774
+RMD160 7b3ede022c37e793c163dfdfe1e4ff87a7ae2ce7 acml-4.0.0.ebuild 4774
+SHA256 dbb2234d926f1bad815721d5c1a8ddb73223d2f7c8376d3a14f4084eeed9d940 acml-4.0.0.ebuild 4774
+MISC ChangeLog 4323 RMD160 78fab4a27f4930abe2e8181198116ad56bad23c5 SHA1 f9958aa643e94508a9c716d393b6fbad6f93b7f7 SHA256 191c94d231d41caf3c0ea7ea0eb8309beeda8c24af8fe4f2e7698ad398c8e7ff
+MD5 81463dfb231181ee66f9e760c5373d3d ChangeLog 4323
+RMD160 78fab4a27f4930abe2e8181198116ad56bad23c5 ChangeLog 4323
+SHA256 191c94d231d41caf3c0ea7ea0eb8309beeda8c24af8fe4f2e7698ad398c8e7ff ChangeLog 4323
MISC metadata.xml 879 RMD160 2d3f16b5906f71d5d455954d5b20afdc8b8aac1f SHA1 375f02d5d2550aa144c759818140e7f1c55de278 SHA256 a2b244cea577e4260368dad481a0b5886a471185f966288bc58af29fb335fe74
MD5 a42a87565bfb006095c3fa658c84b275 metadata.xml 879
RMD160 2d3f16b5906f71d5d455954d5b20afdc8b8aac1f metadata.xml 879
@@ -81,13 +104,22 @@ SHA256 6b247371ce9a1a190f833759fc570bc065870f0e0a9bdcd406a001541e933887 files/di
MD5 0825c9a4d803ec3e005d86b883c72998 files/digest-acml-3.6.0 1045
RMD160 574657f2c6a1f3697428f9522c5d67fa18ce5193 files/digest-acml-3.6.0 1045
SHA256 47bd4eee1e3dfc0f1b508ce5a41054c23089bb9b9d7add427abcdc24942a1887 files/digest-acml-3.6.0 1045
+MD5 0825c9a4d803ec3e005d86b883c72998 files/digest-acml-3.6.0-r1 1045
+RMD160 574657f2c6a1f3697428f9522c5d67fa18ce5193 files/digest-acml-3.6.0-r1 1045
+SHA256 47bd4eee1e3dfc0f1b508ce5a41054c23089bb9b9d7add427abcdc24942a1887 files/digest-acml-3.6.0-r1 1045
MD5 f822ee466ea41e1f6900d64b52a495c6 files/digest-acml-3.6.1 840
RMD160 47a3138d09b475dcfe429b1ac3fc9c8a31bee749 files/digest-acml-3.6.1 840
SHA256 b1ab60561ac029d5f444f7c4b5c7c7dc1793f89ae5ec1b20baa7d4bfdb10a025 files/digest-acml-3.6.1 840
+MD5 f822ee466ea41e1f6900d64b52a495c6 files/digest-acml-3.6.1-r1 840
+RMD160 47a3138d09b475dcfe429b1ac3fc9c8a31bee749 files/digest-acml-3.6.1-r1 840
+SHA256 b1ab60561ac029d5f444f7c4b5c7c7dc1793f89ae5ec1b20baa7d4bfdb10a025 files/digest-acml-3.6.1-r1 840
+MD5 30c75ad6d4c67447b44e64aaf2fbc377 files/digest-acml-4.0.0 831
+RMD160 e3e44e6538bc48e46f21b7f3d0a7157470084635 files/digest-acml-4.0.0 831
+SHA256 cb97c792d69b1d1ce81af1153f870042bbb951dfae73530d5db4c89a445f62c1 files/digest-acml-4.0.0 831
-----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.4 (GNU/Linux)
+Version: GnuPG v1.4.7 (GNU/Linux)
-iD8DBQFGiRkKppoStNGKGywRAv9oAJsGSLGBTjreIBSTm8SjESgiHRrR+wCgvJuI
-hcyidTKqPHXbA4xLeLXvOiU=
-=fpk0
+iD8DBQFHCpdX1ycZbhPLE2ARAp4iAJ0fJxYjTniE9Xt/GR9WjxnQIM6sVwCgmKp3
+nflFQnr6nQbAPyt+FBO8eRU=
+=icy5
-----END PGP SIGNATURE-----
diff --git a/sci-libs/acml/acml-3.6.0-r1.ebuild b/sci-libs/acml/acml-3.6.0-r1.ebuild
new file mode 100644
index 000000000000..699a21ed10eb
--- /dev/null
+++ b/sci-libs/acml/acml-3.6.0-r1.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/acml/acml-3.6.0-r1.ebuild,v 1.1 2007/10/08 20:47:04 bicatali Exp $
+
+inherit eutils toolchain-funcs fortran
+
+DESCRIPTION="AMD Core Math Library (ACML) for x86 and amd64 CPUs"
+HOMEPAGE="http://developer.amd.com/acml.jsp"
+
+MY_PV=${PV//\./\-}
+
+IUSE="openmp ifc doc examples"
+KEYWORDS="~amd64 ~x86"
+
+SRC_URI="amd64? ( ifc? ( acml-${MY_PV}-ifort-64bit.tgz )
+ !ifc? ( openmp? ( acml-${MY_PV}-ifort-64bit.tgz )
+ !openmp? ( acml-${MY_PV}-gnu-64bit.tgz ) )
+ openmp? ( acml-${MY_PV}-ifort-64bit.tgz ) )
+ x86? ( ifc? ( acml-${MY_PV}-ifort-32bit.tgz )
+ !ifc? ( openmp? ( acml-${MY_PV}-ifort-32bit.tgz )
+ !openmp? ( acml-${MY_PV}-gnu-32bit.tgz ) )
+ openmp? ( acml-${MY_PV}-ifort-32bit.tgz ) )"
+
+RESTRICT="strip fetch"
+LICENSE="ACML"
+SLOT="0"
+
+DEPEND="app-admin/eselect-blas
+ app-admin/eselect-lapack"
+
+RDEPEND="${DEPEND}
+ 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"
+}
+
+pkg_setup() {
+ elog "From version 3.5.0 on, ACML no longer supports"
+ elog "hardware without SSE/SSE2 instructions. "
+ elog "For older 32-bit hardware that does not support SSE/SSE2,"
+ elog "you must continue to use an older version (ACML 3.1.0 and ealier)."
+ epause
+ FORTRAN=ifc
+ FORT=ifort
+ ! use ifc && ! use openmp && FORTRAN=g77 && FORT=gnu
+ fortran_pkg_setup
+}
+
+src_unpack() {
+ unpack ${A}
+ (DISTDIR="${S}" unpack contents-acml-*.tgz)
+ use openmp || rm -rf ${FORT}*_mp*
+ FORTDIRS="$(ls -d ${FORT}*)"
+}
+
+src_compile() {
+ einfo "Nothing to compile"
+}
+
+src_test() {
+ for fort in ${FORTDIRS}; do
+ einfo "Testing acml for $(basename ${fort})"
+ cd "${S}"/${fort}/examples
+ for d in . acml_mv; do
+ cd "${S}"/${fort}/examples/${d}
+ emake \
+ ACMLDIR="${S}"/${fort} \
+ F77=${FORTRANC} \
+ CC="$(tc-getCC)" \
+ CPLUSPLUS="$(tc-getCXX)" \
+ || die "emake test in ${fort}/examples/${d} failed"
+ emake clean
+ done
+ done
+}
+
+src_install() {
+ # respect acml default install dir (and FHS)
+ local instdir=/opt/${PN}${PV}
+ dodir ${instdir}
+
+ for fort in ${FORTDIRS}; do
+ # install acml
+ use examples || rm -rf "${S}"/${fort}/examples
+ cp -pPR "${S}/${fort}" "${D}"${instdir} || die "copy ${fort} failed"
+
+ # install profiles
+ ESELECT_PROF=acml-${FORTRANC}
+ local acmldir=${instdir}/${fort}
+ local libname=${acmldir}/lib/libacml
+ local extlibs
+ local extflags
+ if [[ ${fort} =~ _mp ]]; then
+ ESELECT_PROF=${ESELECT_PROF}-openmp
+ extlibs=-lpthread
+ libname=${libname}_mp
+ extflags="${extflags} -openmp"
+ fi
+ for l in blas lapack; do
+ # pkgconfig files
+ sed -e "s:@LIBDIR@:$(get_libdir):" \
+ -e "s:@PV@:${PV}:" \
+ -e "s:@ACMLDIR@:${acmldir}:g" \
+ -e "s:@EXTLIBS@:${extlibs}:g" \
+ -e "s:@EXTFLAGS@:${extflags}:g" \
+ "${FILESDIR}"/${l}.pc.in > ${l}.pc \
+ || die "sed ${l}.pc failed"
+ insinto ${acmldir}/lib
+ doins ${l}.pc || die "doins ${l}.pc failed"
+
+ # eselect files
+ cat > eselect.${l} << EOF
+${libname}.so /usr/@LIBDIR@/lib${l}.so.0
+${libname}.so /usr/@LIBDIR@/lib${l}.so
+${libname}.a /usr/@LIBDIR@/lib${l}.a
+${acmldir}/lib/${l}.pc /usr/@LIBDIR@/pkgconfig/${l}.pc
+EOF
+ eselect ${l} add $(get_libdir) eselect.${l} ${ESELECT_PROF}
+ done
+ echo "LDPATH=${instdir}/${fort}/lib" > 35acml
+ echo "INCLUDE=${instdir}/${fort}/include" >> 35acml
+ done
+
+ doenvd 35acml || die "doenvd failed"
+
+ use doc || rm -rf "${S}"/Doc/acml.pdf "${S}"/Doc/html
+ cp -pPR "${S}"/Doc "${D}"${instdir} || die "copy doc failed"
+}
+
+pkg_postinst() {
+ for p in blas lapack; do
+ local current_p=$(eselect ${p} show | cut -d' ' -f2)
+ # uncomment when eselect bug #189942 is fixed, together with DEPEND
+ #if [[ -z ${current_p} || ${current_p} == ${ESELECT_PROF} ]]; then
+ if [[ -z ${current_p} ]]; then
+ eselect ${p} set ${ESELECT_PROF}
+ elog "${p} has been eselected to ${ESELECT_PROF}"
+ else
+ elog "Current eselected ${p} is ${current_p}"
+ elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):"
+ elog "\t eselect ${p} set ${ESELECT_PROF}"
+ fi
+ done
+}
diff --git a/sci-libs/acml/acml-3.6.1-r1.ebuild b/sci-libs/acml/acml-3.6.1-r1.ebuild
new file mode 100644
index 000000000000..7ae06fc40a19
--- /dev/null
+++ b/sci-libs/acml/acml-3.6.1-r1.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/acml/acml-3.6.1-r1.ebuild,v 1.1 2007/10/08 20:47:04 bicatali Exp $
+
+inherit eutils toolchain-funcs fortran
+
+DESCRIPTION="AMD Core Math Library (ACML) for x86 and amd64 CPUs"
+HOMEPAGE="http://developer.amd.com/acml.jsp"
+
+MY_PV=${PV//\./\-}
+S=${WORKDIR}
+SRC_URI="x86? ( acml-${MY_PV}-gfortran-32bit.tgz )
+ amd64? ( ( acml-${MY_PV}-gfortran-64bit.tgz )
+ int64? ( acml-${MY_PV}-gfortran-64bit-int64.tgz ) )"
+
+
+RESTRICT="strip fetch"
+IUSE="openmp int64 doc examples"
+LICENSE="ACML"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+DEPEND="app-admin/eselect-blas
+ app-admin/eselect-lapack
+ dev-util/pkgconfig
+ openmp? ( >=sys-devel/gcc-4.2 )
+ !openmp? ( =sys-devel/gcc-4.1* )"
+
+RDEPEND="${DEPEND}
+ doc? ( app-doc/blas-docs app-doc/lapack-docs )"
+
+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"
+}
+
+pkg_setup() {
+ elog "From version 3.5.0 on, ACML no longer supports"
+ elog "hardware without SSE/SSE2 instructions. "
+ elog "For older 32-bit hardware that does not support SSE/SSE2,"
+ elog "you must continue to use an older version (ACML 3.1.0 and ealier)."
+ FORTRAN="gfortran"
+ fortran_pkg_setup
+ if [[ ${FORTRANC} == gfortran ]]; then
+ local gcc_version=$(gcc-major-version)$(gcc-minor-version)
+ if ! use openmp && (( ${gcc_version} != 41 )); then
+ eerror "You need gcc-4.1.x to test acml."
+ eerror "Please use gcc-config to swicth gcc version 4.1.x"
+ die "setup gcc failed"
+ elif use openmp && (( ${gcc_version} != 42 )); then
+ eerror "You need gfortran >= 4.2 to use openmp features."
+ eerror "Please use gcc-config to switch gcc version >= 4.2"
+ die "setup gcc failed"
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ (DISTDIR="${S}" unpack contents-acml-*.tgz)
+ case ${FORTRANC} in
+ gfortran) FORT=gfortran ;;
+ ifc|ifort) FORT=ifort ;;
+ *) eerror "Unsupported fortran compiler: ${FORTRANC}"
+ die ;;
+ esac
+ use openmp || rm -rf ${FORT}*_mp*
+ FORTDIRS="$(ls -d ${FORT}*)"
+}
+
+src_compile() {
+ einfo "Nothing to compile"
+}
+
+src_test() {
+ local forts=${FORTDIRS}
+ # only testing with current compiler
+ use openmp && forts="$(ls -d ${FORT}*_mp*)"
+ for fort in ${forts}; do
+ einfo "Testing acml for ${fort}"
+ cd "${S}"/${fort}/examples
+ for d in . acml_mv; do
+ cd "${S}"/${fort}/examples/${d}
+ emake \
+ ACMLDIR="${S}"/${fort} \
+ F77=${FORTRANC} \
+ CC="$(tc-getCC)" \
+ CPLUSPLUS="$(tc-getCXX)" \
+ || die "emake test in ${fort}/examples/${d} failed"
+ emake clean
+ done
+ done
+}
+
+src_install() {
+ # respect acml default install dir (and FHS)
+ local instdir=/opt/${PN}${PV}
+ dodir ${instdir}
+
+ for fort in ${FORTDIRS}; do
+ # install acml
+ use examples || rm -rf "${S}"/${fort}/examples
+ cp -pPR "${S}/${fort}" "${D}"${instdir} || die "copy ${fort} failed"
+
+ # install profiles
+ ESELECT_PROF=acml-${FORTRANC}
+ local acmldir=${instdir}/${fort}
+ local libname=${acmldir}/lib/libacml
+ local extlibs
+ local extflags
+ if [[ ${fort} =~ int64 ]]; then
+ ESELECT_PROF=${ESELECT_PROF}-int64
+ extflags="${extflags} -fdefault-integer-8"
+ fi
+ if [[ ${fort} =~ _mp ]]; then
+ ESELECT_PROF=${ESELECT_PROF}-openmp
+ extlibs=-lpthread
+ libname=${libname}_mp
+ extflags="${extflags} -fopenmp"
+ fi
+ for l in blas lapack; do
+ # pkgconfig files
+ sed -e "s:@LIBDIR@:$(get_libdir):" \
+ -e "s:@PV@:${PV}:" \
+ -e "s:@ACMLDIR@:${acmldir}:g" \
+ -e "s:@EXTLIBS@:${extlibs}:g" \
+ -e "s:@EXTFLAGS@:${extflags}:g" \
+ "${FILESDIR}"/${l}.pc.in > ${l}.pc \
+ || die "sed ${l}.pc failed"
+ insinto ${acmldir}/lib
+ doins ${l}.pc
+
+ # eselect files
+ cat > eselect.${l} << EOF
+${libname}.so /usr/@LIBDIR@/lib${l}.so.0
+${libname}.so /usr/@LIBDIR@/lib${l}.so
+${libname}.a /usr/@LIBDIR@/lib${l}.a
+${acmldir}/lib/${l}.pc /usr/@LIBDIR@/pkgconfig/${l}.pc
+EOF
+ eselect ${l} add $(get_libdir) eselect.${l} ${ESELECT_PROF}
+ done
+ echo "LDPATH=${acmldir}/lib" > "${S}"/35acml
+ echo "INCLUDE=${acmldir}/include" >> "${S}"/35acml
+ done
+
+ doenvd "${S}"/35acml || die "doenvd failed"
+ use doc || rm -rf "${S}"/Doc/acml.pdf "${S}"/Doc/html
+ cp -pPR "${S}"/Doc "${D}"${instdir} || die "copy doc failed"
+}
+
+pkg_postinst() {
+ for p in blas lapack; do
+ local current_p=$(eselect ${p} show | cut -d' ' -f2)
+ # uncomment when eselect bug #189942 is fixed, together with DEPEND
+ #if [[ -z ${current_p} || ${current_p} == ${ESELECT_PROF} ]]; then
+ if [[ -z ${current_p} ]]; then
+ eselect ${p} set ${ESELECT_PROF}
+ elog "${p} has been eselected to ${ESELECT_PROF}"
+ else
+ elog "Current eselected ${p} is ${current_p}"
+ elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):"
+ elog "\t eselect ${p} set ${ESELECT_PROF}"
+ fi
+ done
+ if use openmp; then
+ elog "Remember that if you want to use openmp"
+ elog "You need to switch to gcc >= 4.2 with gcc-config"
+ elog "When using ACML without openmp, stick with gcc-4.1.x"
+ fi
+}
diff --git a/sci-libs/acml/acml-4.0.0.ebuild b/sci-libs/acml/acml-4.0.0.ebuild
new file mode 100644
index 000000000000..2824d505580a
--- /dev/null
+++ b/sci-libs/acml/acml-4.0.0.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/acml/acml-4.0.0.ebuild,v 1.1 2007/10/08 20:47:04 bicatali Exp $
+
+inherit eutils toolchain-funcs fortran
+
+MY_PV=${PV//\./\-}
+
+DESCRIPTION="AMD Core Math Library (ACML) for x86_64 CPUs"
+HOMEPAGE="http://developer.amd.com/acml.jsp"
+SRC_URI="ifc? ( acml-${MY_PV}-ifort-64bit.tgz )
+ !ifc? ( int64? ( acml-${MY_PV}-gfortran-64bit-int64.tgz )
+ !int64? ( acml-${MY_PV}-gfortran-64bit.tgz ) )"
+
+IUSE="openmp ifc int64 doc examples"
+KEYWORDS="~amd64"
+
+RESTRICT="strip fetch"
+LICENSE="ACML"
+SLOT="0"
+
+DEPEND="app-admin/eselect-blas
+ app-admin/eselect-lapack
+ ifc? ( dev-lang/ifc )
+ openmp? ( !ifc? ( >=sys-devel/gcc-4.2 ) )
+ !openmp? ( !ifc? ( =sys-devel/gcc-4.1* ) )"
+
+RDEPEND="${DEPEND}
+ 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"
+}
+
+pkg_setup() {
+ FORTRAN="gfortran"
+ use ifc && FORTRAN="ifc"
+ fortran_pkg_setup
+ if [[ ${FORTRANC} == gfortran ]]; then
+ local gcc_version=$(gcc-major-version)$(gcc-minor-version)
+ if ! use openmp && (( ${gcc_version} != 41 )); then
+ eerror "You need gcc-4.1.x to test acml."
+ eerror "Please use gcc-config to swicth gcc version 4.1.x"
+ die "setup gcc failed"
+ elif use openmp && (( ${gcc_version} != 42 )); then
+ eerror "You need gfortran >= 4.2 to use openmp features."
+ eerror "Please use gcc-config to switch gcc version >= 4.2"
+ die "setup gcc failed"
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ (DISTDIR="${S}" unpack contents-acml-*.tgz)
+ case ${FORTRANC} in
+ gfortran) FORT=gfortran ;;
+ ifc|ifort) FORT=ifort ;;
+ *) eerror "Unsupported fortran compiler: ${FORTRANC}"
+ die "failed configuring fortran";;
+ esac
+ use openmp || rm -rf ${FORT}*_mp*
+ FORTDIRS="$(ls -d ${FORT}*)"
+}
+
+src_compile() {
+ einfo "Nothing to compile"
+}
+
+src_test() {
+ local forts=${FORTDIRS}
+ # only testing with current compiler
+ use openmp && forts="$(ls -d ${FORT}*_mp*)"
+ for fort in ${forts}; do
+ einfo "Testing acml for ${fort}"
+ cd "${S}"/${fort}/examples
+ for d in . acml_mv; do
+ cd "${S}"/${fort}/examples/${d}
+ emake \
+ ACMLDIR="${S}"/${fort} \
+ F77=${FORTRANC} \
+ CC="$(tc-getCC)" \
+ CPLUSPLUS="$(tc-getCXX)" \
+ || die "emake test in ${fort}/examples/${d} failed"
+ emake clean
+ done
+ done
+}
+
+src_install() {
+ # respect acml default install dir (and FHS)
+ local instdir=/opt/${PN}${PV}
+ dodir ${instdir}
+
+ for fort in ${FORTDIRS}; do
+ # install acml
+ use examples || rm -rf "${S}"/${fort}/examples
+ cp -pPR "${S}"/${fort} "${D}"${instdir} || die "copy ${fort} failed"
+
+ # install profiles
+ ESELECT_PROF=acml-${FORTRANC}
+ local acmldir=${instdir}/${fort}
+ local libname=${acmldir}/lib/libacml
+ local extlibs
+ local extflags
+ if [[ ${fort} =~ int64 ]]; then
+ ESELECT_PROF=${ESELECT_PROF}-int64
+ extflags="${extflags} -fdefault-integer-8"
+ fi
+ if [[ ${fort} =~ _mp ]]; then
+ ESELECT_PROF=${ESELECT_PROF}-openmp
+ extlibs=-lpthread
+ libname=${libname}_mp
+ extflags="${extflags} -fopenmp"
+ fi
+ for l in blas lapack; do
+ # pkgconfig files
+ sed -e "s:@LIBDIR@:$(get_libdir):" \
+ -e "s:@PV@:${PV}:" \
+ -e "s:@ACMLDIR@:${acmldir}:g" \
+ -e "s:@EXTLIBS@:${extlibs}:g" \
+ -e "s:@EXTFLAGS@:${extflags}:g" \
+ "${FILESDIR}"/${l}.pc.in > ${l}.pc \
+ || die "sed ${l}.pc failed"
+ insinto ${acmldir}/lib
+ doins ${l}.pc || die "doins ${l}.pc failed"
+
+ # eselect files
+ cat > eselect.${l} << EOF
+${libname}.so /usr/@LIBDIR@/lib${l}.so.0
+${libname}.so /usr/@LIBDIR@/lib${l}.so
+${libname}.a /usr/@LIBDIR@/lib${l}.a
+${acmldir}/lib/${l}.pc /usr/@LIBDIR@/pkgconfig/${l}.pc
+EOF
+ eselect ${l} add $(get_libdir) eselect.${l} ${ESELECT_PROF}
+ done
+ echo "LDPATH=${instdir}/${fort}/lib" > 35acml
+ echo "INCLUDE=${instdir}/${fort}/include" >> 35acml
+ done
+
+ doenvd 35acml || die "doenvd failed"
+
+ use doc || rm -rf "${S}"/Doc/acml.pdf "${S}"/Doc/html
+ cp -pPR "${S}"/Doc "${D}"${instdir} || die "copy doc failed"
+}
+
+pkg_postinst() {
+ for p in blas lapack; do
+ local current_p=$(eselect ${p} show | cut -d' ' -f2)
+ # uncomment when eselect bug #189942 is fixed, together with DEPEND
+ #if [[ -z ${current_p} || ${current_p} == ${ESELECT_PROF} ]]; then
+ if [[ -z ${current_p} ]]; then
+ eselect ${p} set ${ESELECT_PROF}
+ elog "${p} has been eselected to ${ESELECT_PROF}"
+ else
+ elog "Current eselected ${p} is ${current_p}"
+ elog "To use ${p} ${ESELECT_PROF} implementation, you have to issue (as root):"
+ elog "\t eselect ${p} set ${ESELECT_PROF}"
+ fi
+ done
+}
diff --git a/sci-libs/acml/files/blas.pc.in b/sci-libs/acml/files/blas.pc.in
new file mode 100644
index 000000000000..fd1d57ffd054
--- /dev/null
+++ b/sci-libs/acml/files/blas.pc.in
@@ -0,0 +1,11 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/@LIBDIR@
+includedir=@ACMLDIR@/include
+
+Name: blas
+Description: ACML implementations of the Basic Linear Algebra Subroutines
+Version: @PV@
+URL: http://developer.amd.com/acml.jsp
+Libs: -L${libdir} -lblas @EXTLIBS@
+Cflags: @EXTFLAGS@
diff --git a/sci-libs/acml/files/digest-acml-3.6.0-r1 b/sci-libs/acml/files/digest-acml-3.6.0-r1
new file mode 100644
index 000000000000..78ad50e56f66
--- /dev/null
+++ b/sci-libs/acml/files/digest-acml-3.6.0-r1
@@ -0,0 +1,12 @@
+MD5 544b271fac69f3a5de4859c42962d257 acml-3-6-0-gnu-32bit.tgz 9879145
+RMD160 bafa6acd1d8a319fb385245559779450c7bdcd66 acml-3-6-0-gnu-32bit.tgz 9879145
+SHA256 81ee83babf134bc021e5e64983200abf815531ee20ecc5ecc97a30bbdb5cf6dd acml-3-6-0-gnu-32bit.tgz 9879145
+MD5 cd29b05621cc8af7094bc30e3d8288e3 acml-3-6-0-gnu-64bit.tgz 11101900
+RMD160 f6d674a4fbf99e79109bb379d1ba5dbaf88ce010 acml-3-6-0-gnu-64bit.tgz 11101900
+SHA256 240cd40c9f9c993c15ec113278faf8689713b45b7626da2d0c369024bec97c03 acml-3-6-0-gnu-64bit.tgz 11101900
+MD5 b142edc1cd30cee76262c7df3d6e491c acml-3-6-0-ifort-32bit.tgz 17399749
+RMD160 c41ebe1b62470858d176c5815e05893ba4caf4ad acml-3-6-0-ifort-32bit.tgz 17399749
+SHA256 1585df79ced4ecd6fdcbb59b36e2686b61d6faf7b755d5ac5a267eddeff36340 acml-3-6-0-ifort-32bit.tgz 17399749
+MD5 e887b75ceec837ba9778b3fe18913faa acml-3-6-0-ifort-64bit.tgz 21966276
+RMD160 a6031f5cdacdc70d11c06cf6d8e8ae3149eff55f acml-3-6-0-ifort-64bit.tgz 21966276
+SHA256 bdfb47a5f018d1bcca257b9223f176726663596ae0e8337dc295a312f8382950 acml-3-6-0-ifort-64bit.tgz 21966276
diff --git a/sci-libs/acml/files/digest-acml-3.6.1-r1 b/sci-libs/acml/files/digest-acml-3.6.1-r1
new file mode 100644
index 000000000000..31c6126b2492
--- /dev/null
+++ b/sci-libs/acml/files/digest-acml-3.6.1-r1
@@ -0,0 +1,9 @@
+MD5 3aa80dc1a5fed2ccedceacffcbf22501 acml-3-6-1-gfortran-32bit.tgz 17682562
+RMD160 abdb8ea2f66f08f478a951b37c5ce5945854a357 acml-3-6-1-gfortran-32bit.tgz 17682562
+SHA256 adec95c65d1042c65fa1490978b76042c3bf9670df7c226cd28431473985898c acml-3-6-1-gfortran-32bit.tgz 17682562
+MD5 1eb1958766688332a83e4b9807031495 acml-3-6-1-gfortran-64bit-int64.tgz 19802195
+RMD160 3cb2317d6a5ec62797c4a11ab1336aabb50e16fa acml-3-6-1-gfortran-64bit-int64.tgz 19802195
+SHA256 56cbbb6deac2a93d21f3954511ad95ccc2a8ce893fdbf9a8605a2d81deb1fc41 acml-3-6-1-gfortran-64bit-int64.tgz 19802195
+MD5 f1df8d99221337e5644e85ca790e19c2 acml-3-6-1-gfortran-64bit.tgz 20452058
+RMD160 8df00704e7ac037dcd55a9207f45d6f0b2214ff8 acml-3-6-1-gfortran-64bit.tgz 20452058
+SHA256 efec543a8185ffb6e6e68db94ef0cbd92c1b9ee1580affe6cd0a73c580ad8bdc acml-3-6-1-gfortran-64bit.tgz 20452058
diff --git a/sci-libs/acml/files/digest-acml-4.0.0 b/sci-libs/acml/files/digest-acml-4.0.0
new file mode 100644
index 000000000000..3d884d84518b
--- /dev/null
+++ b/sci-libs/acml/files/digest-acml-4.0.0
@@ -0,0 +1,9 @@
+MD5 50879e5fa9cafc7a9badde44037f55ab acml-4-0-0-gfortran-64bit-int64.tgz 21881646
+RMD160 65d3d4ca146ade1781efb43ca35c80cc85387c90 acml-4-0-0-gfortran-64bit-int64.tgz 21881646
+SHA256 eda0b3c1350716509b1d244641200edca30faaae42c7b7b3873f573b4036f1f6 acml-4-0-0-gfortran-64bit-int64.tgz 21881646
+MD5 47f15966a5ed81243350d31afdd4e7f6 acml-4-0-0-gfortran-64bit.tgz 22559682
+RMD160 cd9042e882fb4e8c1f5951e8eb2880d035ab14ea acml-4-0-0-gfortran-64bit.tgz 22559682
+SHA256 3a7300dd9f7a494177baddd8bc34375daf80e550f5b6edb9539ed966adb80f11 acml-4-0-0-gfortran-64bit.tgz 22559682
+MD5 175b1968c5a3279cb7ebfab7018c0b82 acml-4-0-0-ifort-64bit.tgz 26676345
+RMD160 2f4a1f14a55ac3334fd3fc045355a4fdebf2e87f acml-4-0-0-ifort-64bit.tgz 26676345
+SHA256 090f64a5fe309c6ed2ee9bcf7ae73687e0577a02da9f8ceabd4e5315fecb4769 acml-4-0-0-ifort-64bit.tgz 26676345
diff --git a/sci-libs/acml/files/lapack.pc.in b/sci-libs/acml/files/lapack.pc.in
new file mode 100644
index 000000000000..e312798d8485
--- /dev/null
+++ b/sci-libs/acml/files/lapack.pc.in
@@ -0,0 +1,11 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=/usr/@LIBDIR@
+includedir=@ACMLDIR@/include
+
+Name: lapack
+Description: ACML implementation of the F77 Linear Algebra PACKage
+Version: @PV@
+URL: http://developer.amd.com/acml.jsp
+Libs: -L${libdir} -llapack @EXTLIBS@
+Cflags: @EXTFLAGS@