Moved from app-sci/blas-atlas to sci-libs/blas-atlas.
authorOlivier Fisette <ribosome@gentoo.org>
Wed, 29 Dec 2004 18:19:36 +0000 (18:19 +0000)
committerOlivier Fisette <ribosome@gentoo.org>
Wed, 29 Dec 2004 18:19:36 +0000 (18:19 +0000)
sci-libs/blas-atlas/ChangeLog [new file with mode: 0644]
sci-libs/blas-atlas/Manifest [new file with mode: 0644]
sci-libs/blas-atlas/blas-atlas-3.6.0.ebuild [new file with mode: 0644]
sci-libs/blas-atlas/files/c-ATLAS [new file with mode: 0644]
sci-libs/blas-atlas/files/c-threaded-ATLAS [new file with mode: 0644]
sci-libs/blas-atlas/files/digest-blas-atlas-3.6.0 [new file with mode: 0644]
sci-libs/blas-atlas/files/f77-ATLAS [new file with mode: 0644]
sci-libs/blas-atlas/files/f77-threaded-ATLAS [new file with mode: 0644]
sci-libs/blas-atlas/files/war [new file with mode: 0644]
sci-libs/blas-atlas/metadata.xml [new file with mode: 0644]

diff --git a/sci-libs/blas-atlas/ChangeLog b/sci-libs/blas-atlas/ChangeLog
new file mode 100644 (file)
index 0000000..a2611c8
--- /dev/null
@@ -0,0 +1,72 @@
+# ChangeLog for app-sci/blas-atlas
+# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-libs/blas-atlas/ChangeLog,v 1.1 2004/12/29 18:19:36 ribosome Exp $
+
+*blas-atlas-3.6.0 (29 Dec 2004)
+
+  29 Dec 2004; Olivier Fisette <ribosome@gentoo.org> +metadata.xml,
+  +files/c-ATLAS, +files/c-threaded-ATLAS, +files/f77-ATLAS,
+  +files/f77-threaded-ATLAS, +files/war, +blas-atlas-3.6.0.ebuild:
+  Moved from app-sci/blas-atlas to sci-libs/blas-atlas.
+
+  19 Dec 2004; Bryan Ã˜stergaard <kloeri@gentoo.org>
+  blas-atlas-3.6.0.ebuild:
+  Stable on alpha.
+
+  28 Nov 2004; Daniel Goller <morfic@gentoo.org> blas-atlas-3.6.0.ebuild:
+  Fix clobbering of bx register, reference bug 56842 for more information
+
+  17 Nov 2004; Markus Rothe <corsair@gentoo.org> blas-atlas-3.6.0.ebuild:
+  stable on ppc64
+
+  31 Oct 2004; Olivier Fisette <ribosome@gentoo.org> blas-atlas-3.6.0.ebuild:
+  Replaced ${GCC} by tc-getCC from toolchain-funcs.
+
+  10 Oct 2004; Danny van Dyk <kugelfang@gentoo.org> blas-atlas-3.6.0.ebuild:
+  Marked stable on x86 and ppc.
+
+  30 Sep 2004; Ferris McCormick <fmccor@gentoo.org> blas-atlas-3.6.0.ebuild:
+  Stable for sparc (tested both hardened and not).
+
+  29 Sep 2004; Ferris McCormick <fmccor@gentoo.org> files/c-ATLAS:
+  Correct trivial typo: setup() {... needs closing '}'.
+
+  09 Sep 2004; Philippe Trottier <tchiwam@gentoo.org> blas-atlas-3.6.9.ebuild:
+  marked ~ppc64
+
+  03 Jul 2004; Danny van Dyk <kugelfang@gentoo.org> blas-atlas-3.6.0.ebuild:
+  Marked ~alpha, kloeri tested.
+
+  03 Jul 2004; Ferris McCormick <fmccor@gentoo.org> blas-atlas-3.6.0.ebuild:
+  1. Restructure .ebuild for correct sparc CFLAGS (kugelfang@gentoo.org)
+  2. Add ~sparc keyword to restructured build.
+
+  24 Jun 2004; George Shapovalov <george@gentoo.org> blas-atlas-3.6.0.ebuild :
+  ifc useflag got retained even though this ebuild does not support ifc (yet), cleaned up
+
+  18 Jun 2004; Michael Sterrett <mr_bones_@gentoo.org>
+  blas-atlas-3.6.0.ebuild:
+  fix typo in error message (bug #54290)
+
+  06 Jun 2004; Danny van Dyk <kugelfang@gentoo.org> blas-atlas-3.6.0.ebuild:
+  Marked stable on amd64.
+
+  12 May 2004; George Shapovalov <george@gentoo.org> blas-atlas-3.6.0.ebuild :
+  added the fix for g77 issue. Moved atlas3.6.0-shared-libs.patch.bz2 to the mirrors to 
+  avoid duplication (the same one is used by lapack-atlas), plus it is 5k in size, which is 
+  more than 2k limit :).
+  Removed old version (3.4.2), so that we start aclean when this gets unmasked..
+
+  11 May 2004; Danny van Dyk <kugelfang@gentoo.org> blas-atlas-3.6.0.ebuild:
+  Marked ~amd64 and ~ppc.
+
+*blas-atlas-3.6.0 (03 Apr 2004)
+
+*blas-atlas-3.4.2 (02 Feb 2004)
+
+  02 Feb 2004; George Shapovalov <george@gentoo.org> blas-atlas-3.4.2.ebuild, Manifest, files/{atlas-gentoo.patch.bz2,c-ATLAS,c-threaded-ATLAS,digest-blas-atlas-3.4.2,f77-ATLAS,f77-threaded-ATLAS,war} :
+  initial release (#30453)
+  Automatically Tuned Linear Algebra Software BLAS implementation
+  ebuild submitted by Derek Dolney <dolney@astro.upenn.edu>
+  This version installs shared and static libs and provides virtual/blas
+  and will replace atlas now in dev-libs as a part of large blas reorganization (see bug)
diff --git a/sci-libs/blas-atlas/Manifest b/sci-libs/blas-atlas/Manifest
new file mode 100644 (file)
index 0000000..44e2bec
--- /dev/null
@@ -0,0 +1,19 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+MD5 7871af64aeb5931c4102e079ddb5367f blas-atlas-3.6.0.ebuild 4152
+MD5 4abd68eabe38687d049d61ad189510b1 ChangeLog 2905
+MD5 8c623e53daafa025137077c6b65815bd metadata.xml 156
+MD5 c0a79db6ec6fb95a56ce677107f08c01 files/f77-threaded-ATLAS 492
+MD5 a12493a52d3484ebdcaa90f5e250129a files/c-threaded-ATLAS 564
+MD5 c1c57e922c1763ddde357504442e94c4 files/digest-blas-atlas-3.6.0 139
+MD5 646c8df3efa24d6573a870dbb0f5fc8d files/f77-ATLAS 457
+MD5 73bb69e091e5629e3d47ec813d560223 files/c-ATLAS 497
+MD5 13d26350d75e6993f1b3ec48ca97f14e files/war 545
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.2.6 (GNU/Linux)
+
+iD8DBQFBxVuxugEuf3OQ0akRAiFXAJ4tX7rQsa+YtpNUfXaNyUoSaAYhswCeJd0a
+M5Sjr62I+Ip3g4ClD8yC26I=
+=3q8t
+-----END PGP SIGNATURE-----
diff --git a/sci-libs/blas-atlas/blas-atlas-3.6.0.ebuild b/sci-libs/blas-atlas/blas-atlas-3.6.0.ebuild
new file mode 100644 (file)
index 0000000..eb39bbb
--- /dev/null
@@ -0,0 +1,166 @@
+# Copyright 1999-2004 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.6.0.ebuild,v 1.1 2004/12/29 18:19:36 ribosome Exp $
+
+inherit eutils toolchain-funcs
+
+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/atlas${PV}-shared-libs.patch.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="x86 amd64 ppc ppc64 sparc alpha"
+IUSE="doc"
+
+DEPEND="app-sci/blas-config
+       >=sys-devel/libtool-1.5"
+
+RDEPEND=""
+
+PROVIDE="virtual/blas"
+
+S=${WORKDIR}/ATLAS
+
+pkg_setup() {
+       if [ -z `which g77` ]; then
+               eerror "No fortran compiler found on the system!"
+               eerror "Please add f77 to your USE flags and reemerge gcc!"
+               die
+       fi
+}
+
+src_unpack() {
+       unpack ${A}
+
+       cd ${S}
+       epatch ${DISTDIR}/atlas3.6.0-shared-libs.patch.bz2
+       sed -i -e "s:ASM:ASM VOLATILE:" include/contrib/camm_dpa.h || die "sed failed to fix clobbering"
+       cp ${FILESDIR}/war ${S}
+       chmod a+x ${S}/war
+}
+
+atlas_fail() {
+       eerror
+       eerror "ATLAS auto-config failed."
+       eerror "Please run 'interactive=1 emerge blas-atlas' to configure manually."
+       eerror
+       die "ATLAS auto-config failed."
+}
+
+# Added to allow compilation on sparc architecture. The default CCFLAG0
+# and MMFLAGS are *bad*.
+# Danny van Dyk <kugelfang@gentoo.org> 2004/07/02
+#
+reconfigure() {
+       case "`uname -p`" in
+               "sun4m")
+                       MY_CCFLAGS="-O3 -mcpu=v8"
+                       MY_CXXFLAGS="${MY_CCFLAGS}"
+                       MY_MMFLAGS="-O -mcpu=v8"
+                       MY_LDFLAGS=""
+                       ;;
+               "sun4u")
+                       MY_CCFLAGS="-O3 -mcpu=ultrasparc"
+                       MY_CXXFLAGS="${MY_CCFLAGS}"
+                       MY_MMFLAGS="-O -mcpu=ultrasparc"
+                       MY_LDFLAGS=""
+                       ;;
+               *)
+                       MY_CCFLAGS="${CFLAGS}"
+                       MY_CXXFLAGS="${CXXFLAGS}"
+                       MY_MMFLAGS="${CFLAGS}"
+                       MY_LDFLAGS="${LDFLAGS}"
+                       ;;
+       esac
+
+       MY_FILE="`find -name Make.Linux*`"
+
+       sed -i -e "s/CCFLAG0 =.*/CCFLAG0 = \$(CDEFS) ${MY_CCFLAGS}/" \
+               -e "s/CCFLAGS =.*/CCFLAGS = \$(CDEFS) ${MY_CCFLAGS}/" \
+               -e "s/CLINKFLAGS =.*/CLINKFLAGS =\$(CDEFS) ${MY_LDFLAGS}/" \
+               -e "s/XCCFLAGS =.*/XCCFLAGS =\$(CDEFS) ${MY_CXXFLAGS}/" \
+               -e "s/MMFLAGS =.*/MMFLAGS = ${MY_MMFLAGS}/" \
+               ${MY_FILE} || die "sed didnt complete"
+
+}
+
+src_compile() {
+       # Libraries will be installed in ${RPATH}/atlas and ${RPATH}/threaded-atlas:
+       RPATH="${DESTTREE}/lib/blas"
+
+       if [ -n "${interactive}" ]
+       then
+               echo "${interactive}"
+               make config CC="$(tc-getCC) -DUSE_LIBTOOL -DINTERACTIVE" || die
+       else
+               # Use ATLAS defaults for all questions:
+               (echo | make config CC="$(tc-getCC) -DUSE_LIBTOOL") || atlas_fail
+       fi
+
+       reconfigure
+
+       TMPSTR=$(ls Make.Linux*)
+       ATLAS_ARCH=${TMPSTR#'Make.'}
+
+       make install arch=${ATLAS_ARCH} || die
+
+       make shared-strip arch=${ATLAS_ARCH} RPATH=${RPATH}/atlas || die
+
+       # Build shared versions of the threaded libs.
+       # ATLAS only compiles threaded libs on multiprocessor machines.
+       if [ -d gentoo/libptf77blas.a ]
+       then
+               make ptshared-strip \
+                       arch=${ATLAS_ARCH} RPATH=${RPATH}/threaded-atlas || die
+       fi
+}
+
+src_install () {
+       dodir ${RPATH}/atlas
+       cd ${S}/gentoo/libs
+       cp -P libatlas* ${D}/${DESTTREE}/lib
+       cp -P *blas* ${D}/${RPATH}/atlas #the rest really
+
+       insinto ${RPATH}
+       doins ${FILESDIR}/c-ATLAS ${FILESDIR}/f77-ATLAS
+
+       if [ -d ${S}/gentoo/threaded-libs ]
+       then
+               dodir ${RPATH}/threaded-atlas
+               cd ${S}/gentoo/threaded-libs
+               cp -P * ${D}/${RPATH}/threaded-atlas
+               doins ${FILESDIR}/c-threaded-ATLAS ${FILESDIR}/f77-threaded-ATLAS
+       fi
+
+       insinto ${DESTTREE}/include/atlas
+       doins ${S}/include/cblas.h
+
+       # 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 ${S}/include/${ATLAS_ARCH}/*.h
+
+       #some docs
+       cd ${S}
+       dodoc README doc/{AtlasCredits.txt,ChangeLog}
+       use doc && dodoc doc/*.ps
+}
+
+pkg_postinst() {
+       if [ -d ${RPATH}/threaded-atlas ]
+       then
+               ${DESTTREE}/bin/blas-config threaded-ATLAS
+       else
+               ${DESTTREE}/bin/blas-config ATLAS
+       fi
+
+       einfo
+       einfo "Fortran users link using -lblas"
+       einfo
+       einfo "C users compile against the header /usr/include/atlas/cblas.h and"
+       einfo "link using -lcblas"
+       einfo
+}
diff --git a/sci-libs/blas-atlas/files/c-ATLAS b/sci-libs/blas-atlas/files/c-ATLAS
new file mode 100644 (file)
index 0000000..412cf91
--- /dev/null
@@ -0,0 +1,14 @@
+CFLAGS="-I/usr/include/atlas"
+CLIBS="-L/usr/$(get_libdir)/blas/atlas -lcblas"
+ 
+setup() {
+MY_LIBDIR="$(get_libdir)"
+einfo "/usr/${MY_LIBDIR}/libcblas.so -> blas/atlas/libcblas.so"
+ln -sf blas/atlas/libcblas.so /usr/${MY_LIBDIR}/libcblas.so
+
+einfo "/usr/${MY_LIBDIR}/libcblas.so.0 -> blas/atlas/libcblas.so.0"
+ln -sf blas/atlas/libcblas.so.0 /usr/${MY_LIBDIR}/libcblas.so.0
+ 
+einfo "/usr/${MY_LIBDIR}/libcblas.a -> blas/atlas/libcblas.a"
+ln -sf blas/atlas/libcblas.a /usr/${MY_LIBDIR}/libcblas.a
+}
diff --git a/sci-libs/blas-atlas/files/c-threaded-ATLAS b/sci-libs/blas-atlas/files/c-threaded-ATLAS
new file mode 100644 (file)
index 0000000..9e36f05
--- /dev/null
@@ -0,0 +1,14 @@
+CFLAGS="-I/usr/include/atlas"
+CLIBS="-L/usr/$(get_libdir)/blas/threaded-atlas -lcblas"
+
+setup() {
+MY_LIBDIR="$(get_libdir)" 
+einfo "/usr/${MY_LIBDIR}/libcblas.so -> blas/threaded-atlas/libcblas.so"
+ln -sf blas/threaded-atlas/libcblas.so /usr/${MY_LIBDIR}/libcblas.so
+
+einfo "/usr/${MY_LIBDIR}/libcblas.so.0 -> blas/threaded-atlas/libcblas.so.0"
+ln -sf blas/threaded-atlas/libcblas.so.0 /usr/${MY_LIBDIR}/libcblas.so.0
+ 
+einfo "/usr/${MY_LIBDIR}/libcblas.a -> blas/threaded-atlas/libcblas.a"
+ln -sf blas/threaded-atlas/libcblas.so.0 /usr/${MY_LIBDIR}/libcblas.a"
+}
diff --git a/sci-libs/blas-atlas/files/digest-blas-atlas-3.6.0 b/sci-libs/blas-atlas/files/digest-blas-atlas-3.6.0
new file mode 100644 (file)
index 0000000..f4642d1
--- /dev/null
@@ -0,0 +1,2 @@
+MD5 df2ee2eb65d1c08ee93d04370172c262 atlas3.6.0.tar.bz2 1687723
+MD5 743b75ec473ab0f0edda6b649aa89060 atlas3.6.0-shared-libs.patch.bz2 5140
diff --git a/sci-libs/blas-atlas/files/f77-ATLAS b/sci-libs/blas-atlas/files/f77-ATLAS
new file mode 100644 (file)
index 0000000..550187d
--- /dev/null
@@ -0,0 +1,14 @@
+F77LIBS="-L/usr/$(get_libdir)/blas/atlas -lblas"
+
+setup() {
+MY_LIBDIR="$(get_libdir)" 
+einfo "/usr/${MY_LIBDIR}/libblas.so -> blas/atlas/libblas.so"
+ln -sf blas/atlas/libblas.so /usr/${MY_LIBDIR}/libblas.so
+
+einfo "/usr/${MY_LIBDIR}/libblas.so.0 -> blas/atlas/libblas.so.0"
+ln -sf blas/atlas/libblas.so.0 /usr/${MY_LIBDIR}/libblas.so.0
+ 
+einfo "/usr/${MY_LIBDIR}/libblas.a -> blas/atlas/libblas.a"
+ln -sf blas/atlas/libblas.a /usr/${MY_LIBDIR}/libblas.a
+
+}
diff --git a/sci-libs/blas-atlas/files/f77-threaded-ATLAS b/sci-libs/blas-atlas/files/f77-threaded-ATLAS
new file mode 100644 (file)
index 0000000..3099368
--- /dev/null
@@ -0,0 +1,14 @@
+F77LIBS="-L/usr/${MY_LIBDIR}/blas/threaded-atlas -lblas"
+
+setup() {
+MY_LIBDIR="$(get_libdir)" 
+einfo "/usr/lib/libblas.so -> blas/threaded-atlas/libblas.so"
+ln -sf blas/threaded-atlas/libblas.so /usr/${MY_LIBDIR}/libblas.so
+
+einfo "/usr/lib/libblas.so.0 -> blas/threaded-atlas/libblas.so.0"
+ln -sf blas/threaded-atlas/libblas.so.0 /usr/${MY_LIBDIR}/libblas.so.0
+ 
+einfo "/usr/lib/libblas.a -> blas/threaded-atlas/libblas.a"
+ln -sf blas/threaded-atlas/libblas.a /usr/${MY_LIBDIR}/libblas.a
+
+}
diff --git a/sci-libs/blas-atlas/files/war b/sci-libs/blas-atlas/files/war
new file mode 100644 (file)
index 0000000..2093f03
--- /dev/null
@@ -0,0 +1,26 @@
+#! /bin/bash
+#
+# war -- wrapper for the archiver
+#
+# Executed by ATLAS build as:
+# full_path/war ARCHIVER ARFLAGS LIBNAME.a OBJS.lo
+
+TOPDIR=$(echo $0 | sed 's/\(.*\)\/.*/\1/')
+PWD=$(pwd)
+
+ARCHIVER=$1
+LIBRARY=$(echo $3 | sed 's/.*\/\(.*\)/\1/')
+OBJ_DIR=${TOPDIR}/gentoo/$LIBRARY
+
+if [ ! -x $OBJ_DIR ]; then mkdir -p ${OBJ_DIR}/.libs; fi
+
+$ARCHIVER $@
+
+shift 3
+for obj in $@ ; do
+       lobj=$(echo $obj | sed 's/\.o/\.lo/')
+       ln -sf ${PWD}/$obj ${OBJ_DIR}/$obj
+       ln -sf ${PWD}/$lobj ${OBJ_DIR}/$lobj
+       ln -sf ${PWD}/.libs/$obj ${OBJ_DIR}/.libs/$obj
+done
+
diff --git a/sci-libs/blas-atlas/metadata.xml b/sci-libs/blas-atlas/metadata.xml
new file mode 100644 (file)
index 0000000..b229aec
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+</pkgmetadata>