From aed8bdf8731c04938d3d1837f8566650b15a189e Mon Sep 17 00:00:00 2001 From: bicatali Date: Fri, 21 Sep 2007 17:42:26 +0000 Subject: added: colamd ccolamd cxsparse camd git-svn-id: http://overlays.gentoo.org/svn/proj/science/overlay@739 32389bae-6d03-0410-99cf-db05cde120eb --- sci-libs/acml/Manifest | 26 +++++++++----- sci-libs/acml/acml-3.6.0-r1.ebuild | 55 ++++++++++++++--------------- sci-libs/acml/acml-3.6.1-r1.ebuild | 72 +++++++++++++++++--------------------- 3 files changed, 78 insertions(+), 75 deletions(-) (limited to 'sci-libs/acml') diff --git a/sci-libs/acml/Manifest b/sci-libs/acml/Manifest index 3fdd6082e..56cc834e2 100644 --- a/sci-libs/acml/Manifest +++ b/sci-libs/acml/Manifest @@ -13,17 +13,27 @@ 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 -EBUILD acml-3.6.0-r1.ebuild 3942 RMD160 b029485d7230d4995b65e86bdca29508f96ec934 SHA1 1000c66d0a7e07d560708176481d3d504d78abae SHA256 0d68037cc5c0be70e1fb1a9a700e71e1fa29673a0a25cf6f6a9c210333ae04f9 -MD5 a91c81516a71325e5752bce83f30b693 acml-3.6.0-r1.ebuild 3942 -RMD160 b029485d7230d4995b65e86bdca29508f96ec934 acml-3.6.0-r1.ebuild 3942 -SHA256 0d68037cc5c0be70e1fb1a9a700e71e1fa29673a0a25cf6f6a9c210333ae04f9 acml-3.6.0-r1.ebuild 3942 -EBUILD acml-3.6.1-r1.ebuild 4800 RMD160 5a1ecbbd23e6e35050c05b45c1c4f3e3f760ae92 SHA1 45b3590c0130a6b05662feb52d74abab3d7bfb29 SHA256 248310b9b53178cc54c977ccf3a0e3c3b753b5fbc758f49ea5778ee5240fcf99 -MD5 32143a27766bc1b0174eb6996b2751bd acml-3.6.1-r1.ebuild 4800 -RMD160 5a1ecbbd23e6e35050c05b45c1c4f3e3f760ae92 acml-3.6.1-r1.ebuild 4800 -SHA256 248310b9b53178cc54c977ccf3a0e3c3b753b5fbc758f49ea5778ee5240fcf99 acml-3.6.1-r1.ebuild 4800 +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.6.0-r1.ebuild 4160 RMD160 c9d644d363ebf8d95a21af04ff4142430943a889 SHA1 2e21b37201855d7985a82165c93009d7fa270da2 SHA256 649a4e862efdc42f7ad32b47cc51930b5569f2e110535bf39a95b8d8b44c81dd +MD5 757f4b1809aeff018d9124cca60c493f acml-3.6.0-r1.ebuild 4160 +RMD160 c9d644d363ebf8d95a21af04ff4142430943a889 acml-3.6.0-r1.ebuild 4160 +SHA256 649a4e862efdc42f7ad32b47cc51930b5569f2e110535bf39a95b8d8b44c81dd acml-3.6.0-r1.ebuild 4160 +EBUILD acml-3.6.1-r1.ebuild 4854 RMD160 8d22523e2ab5998a61809aaddffff0759ba3d6e6 SHA1 f6506a35f307f74058c1a8731e6d6f2d43ebfbc3 SHA256 ab260a13eb5af2c3a9b549eb7375bbab868f6c3c19b2a04ea51dccf4b45b129d +MD5 733a2affdbf51e55c1470a35efe08d0e acml-3.6.1-r1.ebuild 4854 +RMD160 8d22523e2ab5998a61809aaddffff0759ba3d6e6 acml-3.6.1-r1.ebuild 4854 +SHA256 ab260a13eb5af2c3a9b549eb7375bbab868f6c3c19b2a04ea51dccf4b45b129d acml-3.6.1-r1.ebuild 4854 +EBUILD acml-4.0.0.ebuild 4153 RMD160 67382a31aed6122a7f39103f91fcba3fcd40e689 SHA1 8ca2bd947587159a72412ed2b877f94937de2823 SHA256 dfb99de1f28f6b840afa342dd51e4b63ce3ac3d90c4bbbe9611f507432bbe824 +MD5 1585acdcd57a9c2d0f31177723a0df19 acml-4.0.0.ebuild 4153 +RMD160 67382a31aed6122a7f39103f91fcba3fcd40e689 acml-4.0.0.ebuild 4153 +SHA256 dfb99de1f28f6b840afa342dd51e4b63ce3ac3d90c4bbbe9611f507432bbe824 acml-4.0.0.ebuild 4153 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-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 diff --git a/sci-libs/acml/acml-3.6.0-r1.ebuild b/sci-libs/acml/acml-3.6.0-r1.ebuild index cf96e69d7..2a7aaebb8 100644 --- a/sci-libs/acml/acml-3.6.0-r1.ebuild +++ b/sci-libs/acml/acml-3.6.0-r1.ebuild @@ -63,18 +63,17 @@ src_unpack() { src_compile() { einfo "Nothing to compile" - return } src_test() { for fort in ${FORTDIRS}; do einfo "Testing acml for $(basename ${fort})" - cd "${S}/${fort}/examples" + cd "${S}"/${fort}/examples for d in . acml_mv; do - cd "${S}/${fort}/examples/${d}" + cd "${S}"/${fort}/examples/${d} emake \ - ACMLDIR="${S}/${fort}" \ - F77="${FORTRANC}" \ + ACMLDIR="${S}"/${fort} \ + F77=${FORTRANC} \ CC="$(tc-getCC)" \ CPLUSPLUS="$(tc-getCXX)" \ || die "emake test in ${fort}/examples/${d} failed" @@ -85,24 +84,24 @@ src_test() { src_install() { # respect acml default install dir (and FHS) - local instdir="/opt/${PN}${PV}" + 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}" + 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 prof=acml-${FORTRANC} local extlibs local extflags - if [[ "${fort}" =~ "_mp" ]]; then - prof="${prof}-openmp" - extlibs="-lpthread" - libname="${libname}_mp" + if [[ ${fort} =~ _mp ]]; then + ESELECT_PROF=${ESELECT_PROF}-openmp + extlibs=-lpthread + libname=${libname}_mp extflags="${extflags} -openmp" fi for l in blas lapack; do @@ -115,7 +114,7 @@ src_install() { "${FILESDIR}"/${l}.pc.in > ${l}.pc \ || die "sed ${l}.pc failed" insinto ${acmldir}/lib - doins ${l}.pc + doins ${l}.pc || die "doins ${l}.pc failed" # eselect files cat > eselect.${l} << EOF @@ -124,28 +123,28 @@ ${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} ${prof} + eselect ${l} add $(get_libdir) eselect.${l} ${ESELECT_PROF} done - echo "LDPATH=${instdir}/${fort}/lib" > 35acml - echo "INCLUDE=${instdir}/${fort}/include" >> 35acml + echo "LDPATH=${instdir}/${fort}/lib" > 35acml + echo "INCLUDE=${instdir}/${fort}/include" >> 35acml done - # paths - doenvd 35acml + doenvd 35acml || die "doenvd failed" use doc || rm -rf "${S}"/Doc/acml.pdf "${S}"/Doc/html - cp -pPR "${S}"/Doc "${D}${instdir}" + cp -pPR "${S}"/Doc "${D}"${instdir} || die "copy doc failed" } pkg_postinst() { - # set acml if none are set yet - for l in blas lapack; do - if [[ -z "$(eselect ${l} show)" ]]; then - local prof=acml-${FORTRANC} - use openmp && prof="${prof}-openmp" - eselect ${l} set ${prof} + for p in blas lapack; do + local current_p=$(eselect ${p} show | cut -d' ' -f2) + if [[ -z ${current_p} ]] || [[ ${current_p} == ${ESELECT_PROF} ]]; 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 - elog "Use 'eselect blas' and 'eselect lapack' to select" - elog "one of the multiple acml blas and lapack profiles" } diff --git a/sci-libs/acml/acml-3.6.1-r1.ebuild b/sci-libs/acml/acml-3.6.1-r1.ebuild index 48e226d9f..b807a73cf 100644 --- a/sci-libs/acml/acml-3.6.1-r1.ebuild +++ b/sci-libs/acml/acml-3.6.1-r1.ebuild @@ -15,20 +15,18 @@ SRC_URI="x86? ( acml-${MY_PV}-gfortran-32bit.tgz ) RESTRICT="strip fetch" -IUSE="openmp int64 test doc examples" +IUSE="openmp int64 doc examples" LICENSE="ACML" KEYWORDS="~amd64 ~x86" SLOT="0" # proper gcc needed for tests DEPEND="app-admin/eselect-blas - openmp? ( test? ( >=sys-devel/gcc-4.2 ) ) - !openmp? ( test? ( =sys-devel/gcc-4.1* ) ) - app-admin/eselect-lapack" + app-admin/eselect-lapack + openmp? ( >=sys-devel/gcc-4.2 ) + !openmp? ( =sys-devel/gcc-4.1* )" RDEPEND="${DEPEND} - openmp? ( >=sys-devel/gcc-4.2 ) - !openmp? ( =sys-devel/gcc-4.1* ) doc? ( app-doc/blas-docs app-doc/lapack-docs )" pkg_nofetch() { @@ -44,7 +42,6 @@ pkg_setup() { 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 if use test; then @@ -64,7 +61,6 @@ src_unpack() { unpack ${A} (DISTDIR="${S}" unpack contents-acml-*.tgz) case ${FORTRANC} in - g77) FORT=gnu ;; gfortran) FORT=gfortran ;; ifc|ifort) FORT=ifort ;; *) eerror "Unsupported fortran compiler: ${FORTRANC}" @@ -76,7 +72,6 @@ src_unpack() { src_compile() { einfo "Nothing to compile" - return } src_test() { @@ -85,12 +80,12 @@ src_test() { use openmp && forts="$(ls -d ${FORT}*_mp*)" for fort in ${forts}; do einfo "Testing acml for ${fort}" - cd "${S}/${fort}/examples" + cd "${S}"/${fort}/examples for d in . acml_mv; do - cd "${S}/${fort}/examples/${d}" + cd "${S}"/${fort}/examples/${d} emake \ - ACMLDIR="${S}/${fort}" \ - F77="${FORTRANC}" \ + ACMLDIR="${S}"/${fort} \ + F77=${FORTRANC} \ CC="$(tc-getCC)" \ CPLUSPLUS="$(tc-getCXX)" \ || die "emake test in ${fort}/examples/${d} failed" @@ -101,28 +96,28 @@ src_test() { src_install() { # respect acml default install dir (and FHS) - local instdir="/opt/${PN}${PV}" + 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}" + 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 prof=acml-${FORTRANC} local extlibs local extflags - if [[ "${fort}" =~ "int64" ]]; then - prof="${prof}-int64" + if [[ ${fort} =~ int64 ]]; then + ESELECT_PROF=${ESELECT_PROF}-int64 extflags="${extflags} -fdefault-integer-8" fi - if [[ "${fort}" =~ "_mp" ]]; then - prof="${prof}-openmp" - extlibs="-lpthread" - libname="${libname}_mp" + if [[ ${fort} =~ _mp ]]; then + ESELECT_PROF=${ESELECT_PROF}-openmp + extlibs=-lpthread + libname=${libname}_mp extflags="${extflags} -fopenmp" fi for l in blas lapack; do @@ -144,30 +139,29 @@ ${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} ${prof} + eselect ${l} add $(get_libdir) eselect.${l} ${ESELECT_PROF} done - echo "LDPATH=${acmldir}/lib" > ${S}/35acml - echo "INCLUDE=${acmldir}/include" >> ${S}/35acml + echo "LDPATH=${acmldir}/lib" > "${S}"/35acml + echo "INCLUDE=${acmldir}/include" >> "${S}"/35acml done - doenvd "${S}"/35acml + + doenvd "${S}"/35acml || die "doenvd failed" use doc || rm -rf "${S}"/Doc/acml.pdf "${S}"/Doc/html - cp -pPR "${S}"/Doc "${D}${instdir}" + cp -pPR "${S}"/Doc "${D}"${instdir} || die "copy doc failed" } pkg_postinst() { - # set acml if none are set yet - for l in blas lapack; do - if [[ -z "$(eselect ${l} show)" ]]; then - local prof=${FORTRANC} - use int64 && ext="${prof}-int64" - use openmp && ext="${prof}-openmp" - eselect ${l} set ${prof} + for p in blas lapack; do + local current_p=$(eselect ${p} show | cut -d' ' -f2) + if [[ -z ${current_p} ]] || [[ ${current_p} == ${ESELECT_PROF} ]]; 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 - elog "Use 'eselect blas' and 'eselect lapack' to select" - elog "one of the multiple acml blas and lapack profiles" - echo 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" -- cgit v1.2.3-65-gdbad