From 542a36daed2c293d06d32480839a116c643caf2b Mon Sep 17 00:00:00 2001 From: Sebastien Fabbro Date: Fri, 1 Jun 2007 16:05:35 +0000 Subject: Version bump. Reorganized the ebuild to take into account new systems. Added a multi-processor profile, only used with the ifc case, but soon with gfortran-4.2. Fix bug #141127 (Portage version: 2.1.2.7) --- sci-libs/acml/ChangeLog | 15 +++- sci-libs/acml/acml-3.6.0.ebuild | 148 ++++++++++++++++++++++++++++++++++ sci-libs/acml/acml-3.6.1.ebuild | 112 +++++++++++++++++++++++++ sci-libs/acml/files/digest-acml-3.6.0 | 12 +++ sci-libs/acml/files/digest-acml-3.6.1 | 9 +++ sci-libs/acml/files/eselect.blas-mp | 3 + sci-libs/acml/files/eselect.cblas-mp | 3 + sci-libs/acml/files/eselect.lapack-mp | 3 + 8 files changed, 304 insertions(+), 1 deletion(-) create mode 100644 sci-libs/acml/acml-3.6.0.ebuild create mode 100644 sci-libs/acml/acml-3.6.1.ebuild create mode 100644 sci-libs/acml/files/digest-acml-3.6.0 create mode 100644 sci-libs/acml/files/digest-acml-3.6.1 create mode 100644 sci-libs/acml/files/eselect.blas-mp create mode 100644 sci-libs/acml/files/eselect.cblas-mp create mode 100644 sci-libs/acml/files/eselect.lapack-mp (limited to 'sci-libs/acml') diff --git a/sci-libs/acml/ChangeLog b/sci-libs/acml/ChangeLog index dadebff03ca8..01dffc5cda04 100644 --- a/sci-libs/acml/ChangeLog +++ b/sci-libs/acml/ChangeLog @@ -1,6 +1,19 @@ # 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.19 2007/02/22 05:48:15 je_fro Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-libs/acml/ChangeLog,v 1.20 2007/06/01 16:05:35 bicatali Exp $ + +*acml-3.6.1 (01 Jun 2007) +*acml-3.6.0 (01 Jun 2007) + + 01 Jun 2007; Sébastien Fabbro + +files/eselect.blas-mp, +files/eselect.cblas-mp, +files/eselect.lapack-mp, + +acml-3.6.0.ebuild, +acml-3.6.1.ebuild: + Version bump. Reorganized the ebuild to take into account new systems. + acml-3.6.0 is for g77 and ifc compilers, acml-3.6.1 for the gfortran + compiler. Added a multi-processor profile, only used with the ifc case, but + soon with gfortran-4.2. Fix bug #141127, thanks to Adam + , Sun Bing and + others in the bug. 22 Feb 2007; Jeff Gardner ChangeLog: Really changing the manifest this time... diff --git a/sci-libs/acml/acml-3.6.0.ebuild b/sci-libs/acml/acml-3.6.0.ebuild new file mode 100644 index 000000000000..f084d0168b28 --- /dev/null +++ b/sci-libs/acml/acml-3.6.0.ebuild @@ -0,0 +1,148 @@ +# 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.ebuild,v 1.1 2007/06/01 16:05:35 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="amd64? ( ifc? ( acml-${MY_PV}-ifort-64bit.tgz ) + !ifc? ( acml-${MY_PV}-gnu-64bit.tgz ) ) + x86? ( ifc? ( acml-${MY_PV}-ifort-32bit.tgz ) + !ifc? ( acml-${MY_PV}-gnu-32bit.tgz ) )" + +RESTRICT="fetch nostrip" +IUSE="ifc openmp doc examples" +LICENSE="ACML" +KEYWORDS="~amd64 ~x86" +SLOT="0" + +RDEPEND="app-admin/eselect-blas + app-admin/eselect-cblas + app-admin/eselect-lapack" + +DEPEND="${RDEPEND}" + +PROVIDE="virtual/blas + virtual/lapack" + +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() { + if use openmp && ! use ifc; then + eerror "Multi-processors ACML not available for g77 compiler" + eerror "Please either unset openmp USE flag, choose ifc or update acml" + die "setup openmp failed" + fi + 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="g77" + use ifc && FORTRAN="ifc" + fortran_pkg_setup +} + +src_unpack() { + unpack ${A} + (DISTDIR="${S}" unpack contents-acml-*.tgz) + local fort + case ${FORTRANC} in + g77) + fort=gnu + ;; + ifc|ifort) + fort=ifort + ;; + *) + eerror "Unsupported fortran compiler: $FORTRANC" + die + ;; + esac + local bits="32" + use amd64 && bits="64" + ACMLDIR=${S}/${fort}${bits} + use openmp && ACMLDIR="${ACMLDIR} ${ACMLDIR}_smp" +} + +src_compile() { + einfo "Nothing to compile" + return +} + +src_test() { + for f in ${ACMLDIR}; do + einfo "Testing acml for $(basename ${f})" + for d in . acml_mv; do + cd "${f}/examples/${d}" + emake \ + ACMLDIR="${f}" \ + F77="${FORTRANC}" \ + CC="$(tc-getCC)" \ + CPLUSPLUS="$(tc-getCXX)" \ + || die "emake test in ${d} failed" + emake clean + done + done +} + +src_install() { + # Libraries + for f in ${ACMLDIR}; do + dolib ${f}/lib/* || die "dolib failed" + done + + # Headers (same openmp or not) + insinto /usr/include/acml + doins ${f}*/include/* || die "doins headers failed" + dosym acml/acml.h /usr/include/acml.h + + # Documentation + dodoc ReleaseNotes* + cd ${S}/Doc + dodoc *.txt + doinfo *info* + insinto /usr/share/doc/${PF} + if use doc; then + doins acml.pdf + dohtml html/* + fi + if use examples; then + for f in ${ACMLDIR}; do + insinto "/usr/share/doc/${PF}/examples/$(basename ${f})" + doins -r ${f}/examples/* + done + fi + + # eselect files + for l in blas cblas lapack; do + eselect ${l} add $(get_libdir) "${FILESDIR}"/eselect.${l} acml + use openmp && eselect ${l} add $(get_libdir) "${FILESDIR}"/eselect.${l}-mp acml-mp + done +} + +pkg_postinst() { + # set acml if none are set yet + for l in blas cblas lapack; do + if [[ -z "$(eselect ${l} show)" ]]; then + if use openmp; then + eselect ${l} set acml-mp + else + eselect ${l} set acml + fi + fi + elog "To use ACML's BLAS features, you have to issue (as root):" + elog "\n\teselect ${l} set acml # or acml-mp for multi-processors\n" + done +} diff --git a/sci-libs/acml/acml-3.6.1.ebuild b/sci-libs/acml/acml-3.6.1.ebuild new file mode 100644 index 000000000000..d59a5a09db61 --- /dev/null +++ b/sci-libs/acml/acml-3.6.1.ebuild @@ -0,0 +1,112 @@ +# 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.ebuild,v 1.1 2007/06/01 16:05:35 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? ( int64? ( acml-${MY_PV}-gfortran-64bit-int64.tgz ) + !int64? ( acml-${MY_PV}-gfortran-64bit.tgz ) )" + +RESTRICT="fetch nostrip" +IUSE="int64 doc examples" +LICENSE="ACML" +KEYWORDS="~amd64 ~x86" +SLOT="0" + +RDEPEND="app-admin/eselect-blas + app-admin/eselect-cblas + app-admin/eselect-lapack" + +DEPEND="${RDEPEND}" + +PROVIDE="virtual/blas + virtual/lapack" + +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)." + epause + FORTRAN="gfortran" + fortran_pkg_setup +} + +src_unpack() { + unpack ${A} + (DISTDIR="${S}" unpack contents-acml-*.tgz) + local bits="32" + use amd64 && bits="64" + local i64="" + use int64 && i64="_int64" + ACMLDIR=${S}/${FORTRANC}${bits}${i64} +} + +src_compile() { + einfo "Nothing to compile" + return +} + +src_test() { + einfo "Testing acml" + for d in . acml_mv; do + cd "${ACMLDIR}/examples/${d}" + emake \ + ACMLDIR="${ACMLDIR}" \ + F77="${FORTRANC}" \ + CC="$(tc-getCC)" \ + CPLUSPLUS="$(tc-getCXX)" \ + || die "emake test in ${d} failed" + emake clean + done +} + +src_install() { + # Libraries + dolib ${ACMLDIR}/lib/* || die "dolib failed" + + # Headers + insinto /usr/include/acml + doins ${ACMLDIR}/include/* || die "doins headers failed" + dosym acml/acml.h /usr/include/acml.h + + # Documentation + dodoc ReleaseNotes* + cd ${S}/Doc + dodoc *.txt + doinfo *info* + insinto /usr/share/doc/${PF} + if use doc; then + doins acml.pdf + dohtml html/* + fi + use examples && doins -r ${ACMLDIR}/examples + + # eselect files + for l in blas cblas lapack; do + eselect ${l} add $(get_libdir) "${FILESDIR}"/eselect.${l} acml + done +} + +pkg_postinst() { + # set acml if none are set yet + for l in blas cblas lapack; do + [[ -z "$(eselect ${l} show)" ]] && eselect ${l} set acml + elog "To use ACML's BLAS features, you have to issue (as root):" + elog "\n\teselect ${l} set acml # or acml-mp for multi-processors\n" + done +} diff --git a/sci-libs/acml/files/digest-acml-3.6.0 b/sci-libs/acml/files/digest-acml-3.6.0 new file mode 100644 index 000000000000..78ad50e56f66 --- /dev/null +++ b/sci-libs/acml/files/digest-acml-3.6.0 @@ -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 b/sci-libs/acml/files/digest-acml-3.6.1 new file mode 100644 index 000000000000..31c6126b2492 --- /dev/null +++ b/sci-libs/acml/files/digest-acml-3.6.1 @@ -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/eselect.blas-mp b/sci-libs/acml/files/eselect.blas-mp new file mode 100644 index 000000000000..58af5042ffe3 --- /dev/null +++ b/sci-libs/acml/files/eselect.blas-mp @@ -0,0 +1,3 @@ +libacml_mp.so /usr/@LIBDIR@/libblas.so +libacml_mp.so /usr/@LIBDIR@/libblas.so.0 +libacml_mp.a /usr/@LIBDIR@/libblas.a diff --git a/sci-libs/acml/files/eselect.cblas-mp b/sci-libs/acml/files/eselect.cblas-mp new file mode 100644 index 000000000000..e5d94c4f315f --- /dev/null +++ b/sci-libs/acml/files/eselect.cblas-mp @@ -0,0 +1,3 @@ +libacml_mp.so /usr/@LIBDIR@/libcblas.so +libacml_mp.so /usr/@LIBDIR@/libcblas.so.0 +libacml_mp.a /usr/@LIBDIR@/libcblas.a diff --git a/sci-libs/acml/files/eselect.lapack-mp b/sci-libs/acml/files/eselect.lapack-mp new file mode 100644 index 000000000000..5ad6e799543e --- /dev/null +++ b/sci-libs/acml/files/eselect.lapack-mp @@ -0,0 +1,3 @@ +libacml_mp.so /usr/@LIBDIR@/liblapack.so +libacml_mp.so /usr/@LIBDIR@/liblapack.so.0 +libacml_mp.a /usr/@LIBDIR@/liblapack.a -- cgit v1.2.3-65-gdbad