From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 52D74138202 for ; Thu, 23 May 2013 05:14:02 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 1F3EBE0818; Thu, 23 May 2013 05:14:01 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 05537E081C for ; Thu, 23 May 2013 05:13:59 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id DC12333E165 for ; Thu, 23 May 2013 05:13:58 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id 7A736E5457 for ; Thu, 23 May 2013 05:13:57 +0000 (UTC) From: "Sebastien Fabbro" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sebastien Fabbro" Message-ID: <1369250431.4d8b1e647052cc50f0dfc4c65a3ca55c96f5bdc7.bicatali@gentoo> Subject: [gentoo-commits] proj/sci:master commit in: sci-libs/atlas/ X-VCS-Repository: proj/sci X-VCS-Files: sci-libs/atlas/ChangeLog sci-libs/atlas/atlas-3.10.1.ebuild sci-libs/atlas/metadata.xml X-VCS-Directories: sci-libs/atlas/ X-VCS-Committer: bicatali X-VCS-Committer-Name: Sebastien Fabbro X-VCS-Revision: 4d8b1e647052cc50f0dfc4c65a3ca55c96f5bdc7 X-VCS-Branch: master Date: Thu, 23 May 2013 05:13:57 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: b9a7dc30-b6be-42fc-9fd3-d44634e6af50 X-Archives-Hash: 80176b1b144cc45491917fe48659724b commit: 4d8b1e647052cc50f0dfc4c65a3ca55c96f5bdc7 Author: Sébastien Fabbro gentoo org> AuthorDate: Wed May 22 19:20:31 2013 +0000 Commit: Sebastien Fabbro gentoo 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 -atlas-3.10.1.ebuild, + metadata.xml: + Cleanup + 25 Feb 2013; Sébastien Fabbro 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 [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 [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 @@ sci - 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. Build atlas assuming a fairly generic architecture (sse2 for x86, core2 for amd64)