diff options
author | Andrzej Giniewicz | 2015-07-07 18:59:37 +0200 |
---|---|---|
committer | Andrzej Giniewicz | 2015-07-07 18:59:37 +0200 |
commit | 3507e205a381aa182f5705f84219dc232213b1de (patch) | |
tree | c5a41be4f797b565449069e785be8275b057b879 | |
download | aur-3507e205a381aa182f5705f84219dc232213b1de.tar.gz |
Initial import
-rw-r--r-- | .SRCINFO | 39 | ||||
-rw-r--r-- | PKGBUILD | 91 | ||||
-rw-r--r-- | atlas-lapack.install | 16 | ||||
-rw-r--r-- | atlas-license.txt | 29 | ||||
-rw-r--r-- | blas-license.txt | 19 | ||||
-rw-r--r-- | makefile.shared.mt | 42 | ||||
-rw-r--r-- | makefile.shared.st | 26 |
7 files changed, 262 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..dbf802f45bfb --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,39 @@ +pkgbase = atlas-lapack + pkgdesc = Complete LAPACK and BLAS implementation using optimised ATLAS routines + pkgver = 3.10.2 + pkgrel = 1 + url = http://math-atlas.sourceforge.net/ + install = atlas-lapack.install + arch = i686 + arch = x86_64 + license = custom:blas + license = custom:lapack + license = custom:atlas + makedepends = binutils + makedepends = sed + makedepends = gcc-fortran + depends = gcc-libs + provides = blas + provides = lapack=3.5.0 + provides = cblas + conflicts = blas + conflicts = lapack + conflicts = cblas + noextract = lapack-3.5.0.tgz + noextract = atlas3.10.2.tar.bz2 + options = !makeflags + source = http://www.netlib.org/lapack/lapack-3.5.0.tgz + source = http://downloads.sourceforge.net/math-atlas/atlas3.10.2.tar.bz2 + source = blas-license.txt + source = atlas-license.txt + source = makefile.shared.mt + source = makefile.shared.st + md5sums = b1d3e3e425b2e44a06760ff173104bdf + md5sums = a4e21f343dec8f22e7415e339f09f6da + md5sums = 38b6acb8ed5691d25863319d30a8b365 + md5sums = 4903eb06072dfbf94710691ccb6660bf + md5sums = 471f0ecdc36ef5e1118309847d142eea + md5sums = 6e307b98236ff319ac1c03166ad9164c + +pkgname = atlas-lapack + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..096aa676e56f --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,91 @@ +# Maintainer: Giuseppe Borzi <gborzi___AT___ieee___DOT___org> +# Contributor: mickele <mimocciola___AT___yahoo___DOT___ com> +# Contributor: iztok pizorn <pizorn___AT___gmail___DOT___com> +# Contributor: olivier medoc <o_medoc___AT___yahoo___DOT___fr> +pkgname=atlas-lapack +pkgver=3.10.2 +_lapackver=3.5.0 +pkgrel=1 +pkgdesc="Complete LAPACK and BLAS implementation using optimised ATLAS routines" +url="http://math-atlas.sourceforge.net/" +depends=('gcc-libs') +makedepends=('binutils' 'sed' 'gcc-fortran') +arch=('i686' 'x86_64') +conflicts=('blas' 'lapack' 'cblas') +provides=("blas" "lapack=$_lapackver" 'cblas') +license=('custom:blas' 'custom:lapack' 'custom:atlas') +options=(!makeflags) +install=$pkgname.install +source=(http://www.netlib.org/lapack/lapack-$_lapackver.tgz http://downloads.sourceforge.net/math-atlas/atlas${pkgver}.tar.bz2 blas-license.txt atlas-license.txt makefile.shared.mt makefile.shared.st) +noextract=(lapack-$_lapackver.tgz atlas$pkgver.tar.bz2) +md5sums=('b1d3e3e425b2e44a06760ff173104bdf' + 'a4e21f343dec8f22e7415e339f09f6da' + '38b6acb8ed5691d25863319d30a8b365' + '4903eb06072dfbf94710691ccb6660bf' + '471f0ecdc36ef5e1118309847d142eea' + '6e307b98236ff319ac1c03166ad9164c') + +build() { + cd "$srcdir" + tar -xjf atlas$pkgver.tar.bz2 + + NCPU=`grep "^processor" /proc/cpuinfo | wc -l` + #USE_ARCH_DEFAULTS="yes" + msg 'Before building this package, as root you must set the CPU(s)' + msg 'governor(s) to "performance".' + + if [ "$CARCH" = "x86_64" ]; then + ARCHITECTURE_BUILD_OPTS="-b 64" # for x86_64 + else + ARCHITECTURE_BUILD_OPTS="-b 32" # for i686 + fi + + mkdir -p "$srcdir/ATLAS/build" + cd "$srcdir/ATLAS/build" + + msg 'Build ATLAS' + unset MAKE + cd "$srcdir/ATLAS/build" + rm -rf * + ../configure --prefix=/usr/ $ARCHITECTURE_BUILD_OPTS -Fa alg -fPIC \ + --with-netlib-lapack-tarfile="$srcdir/lapack-$_lapackver.tgz" + make build + msg 'Build shared libraries' + cd lib + if [ 1 -lt $NCPU ]; then + cp "$srcdir/makefile.shared.mt" makefile + else + cp "$srcdir/makefile.shared.st" makefile + fi + make -f makefile +} + +check() { + + cd "$srcdir/ATLAS/build" + + msg 'Check...' + unset MAKE + make check + make ptcheck + make time +} + +package() { + + cd "$srcdir/ATLAS/build" + make DESTDIR="$pkgdir/usr" install + cp -d lib/*.so* "$pkgdir/usr/lib" + [ -e lib/libptlapack.a ] && cp lib/libptlapack.a "$pkgdir/usr/lib" + cd "$pkgdir/usr/lib" + ln -s libblas.so libblas.so.3 + ln -s liblapack.so.3 liblapack.so + + install -Dm644 "${srcdir}/blas-license.txt" \ + "${pkgdir}/usr/share/licenses/$pkgname/blas-license.txt" + install -Dm644 "${srcdir}/ATLAS/build/src/lapack/reference/LICENSE" \ + "${pkgdir}/usr/share/licenses/$pkgname/lapack-license.txt" + install -Dm644 "${srcdir}/atlas-license.txt" \ + "${pkgdir}/usr/share/licenses/$pkgname/atlas-license.txt" +} + diff --git a/atlas-lapack.install b/atlas-lapack.install new file mode 100644 index 000000000000..46ed1e01ed8e --- /dev/null +++ b/atlas-lapack.install @@ -0,0 +1,16 @@ +post_install() { + echo "On multi-core/thread systems libf77blas.so, libstcblas.so and" + echo "liblapack.so.3.4.1 are single-threaded, libptcblas.so, libptf77blas.so" + echo "and libptlapack.so.3.4.1 are multi-threaded. By default" + echo "libcblas.so, libblas.so and liblapack.so point to the multi-threaded" + echo "versions." + echo "The default can be changed by making libcblas.so, libblas.so and" + echo "liblapack.so.3 point to the single threaded libraries, i.e." + echo "" + echo "ln -sf libf77blas.so libblas.so; ln -sf libstcblas.so libcblas.so;" + echo "ln -sf liblapack.so.3.4.1 liblapack.so.3" +} + +post_upgrade() { + post_install $1 +} diff --git a/atlas-license.txt b/atlas-license.txt new file mode 100644 index 000000000000..18e3a60e237f --- /dev/null +++ b/atlas-license.txt @@ -0,0 +1,29 @@ + Automatically Tuned Linear Algebra Software v3.8.2 + (C) Copyright 1999 R. Clint Whaley + + Code contributers : R. Clint Whaley, Antoine P. Petitet + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. The name of the ATLAS group or the names of its contributers may + not be used to endorse or promote products derived from this + software without specific written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ATLAS GROUP OR ITS CONTRIBUTORS + BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + diff --git a/blas-license.txt b/blas-license.txt new file mode 100644 index 000000000000..79f38386e651 --- /dev/null +++ b/blas-license.txt @@ -0,0 +1,19 @@ +From: http://www.netlib.org/blas/faq.html + + 2) Are there legal restrictions on the use of BLAS reference + implementation software? + +The reference BLAS is a freely-available software package. It is +available from netlib via anonymous ftp and the World Wide Web. Thus, +it can be included in commercial software packages (and has been). We +only ask that proper credit be given to the authors. + +Like all software, it is copyrighted. It is not trademarked, but we do +ask the following: + +If you modify the source for these routines we ask that you change the +name of the routine and comment the changes made to the original. + +We will gladly answer any questions regarding the software. If a +modification is done, however, it is the responsibility of the person +who modified the routine to provide support. diff --git a/makefile.shared.mt b/makefile.shared.mt new file mode 100644 index 000000000000..4d8e8d6f3333 --- /dev/null +++ b/makefile.shared.mt @@ -0,0 +1,42 @@ +include Make.inc + +all: libatlas.so libf77blas.so libptf77blas.so libstcblas.so libptcblas.so \ + libblas.so libcblas.so liblapack.so.3.4.1 libptlapack.so.3.4.1 liblapack.so.3 + + +libatlas.so: libatlas.a + ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libatlas.a \ + --no-whole-archive -lc $(LIBS) + +libf77blas.so : libf77blas.a libatlas.so + ld $(LDFLAGS) -shared -soname libf77blas.so.3 -o $@ --whole-archive \ + libf77blas.a --no-whole-archive $(F77SYSLIB) -L. -latlas + +libptf77blas.so : libptf77blas.a libatlas.so + ld $(LDFLAGS) -shared -soname libblas.so.3 -o $@ --whole-archive \ + libptf77blas.a --no-whole-archive $(F77SYSLIB) -L. -latlas + +libstcblas.so : libcblas.a libatlas.so + ld $(LDFLAGS) -shared -soname libstcblas.so -o $@ --whole-archive \ + libcblas.a -L. -latlas + +libptcblas.so : libptcblas.a libatlas.so + ld $(LDFLAGS) -shared -soname libcblas.so -o $@ --whole-archive \ + libptcblas.a -L. -latlas + +libblas.so: libptf77blas.so + ln -s $< $@ + +libcblas.so: libptcblas.so + ln -s $< $@ + +liblapack.so.3.4.1 : liblapack.a libstcblas.so libf77blas.so + ld $(LDFLAGS) -shared -soname libstlapack.so.3 -o $@ --whole-archive \ + liblapack.a --no-whole-archive $(F77SYSLIB) -L. -lstcblas -lf77blas -lgcc_s + +libptlapack.so.3.4.1 : libptlapack.a libcblas.so libblas.so + ld $(LDFLAGS) -shared -soname liblapack.so.3 -o $@ --whole-archive \ + libptlapack.a --no-whole-archive $(F77SYSLIB) -L. -lcblas -lblas -lgcc_s + +liblapack.so.3: libptlapack.so.3.4.1 + ln -s $< $@ diff --git a/makefile.shared.st b/makefile.shared.st new file mode 100644 index 000000000000..3e16e7485f6c --- /dev/null +++ b/makefile.shared.st @@ -0,0 +1,26 @@ +include Make.inc + +all: libatlas.so libf77blas.so libcblas.so libblas.so liblapack.so.3.4.1 + + +libatlas.so: libatlas.a + ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libatlas.a \ + --no-whole-archive -lc $(LIBS) + +libf77blas.so : libf77blas.a libatlas.so + ld $(LDFLAGS) -shared -soname libblas.so.3 -o $@ --whole-archive \ + libf77blas.a --no-whole-archive $(F77SYSLIB) -L. -latlas + +libcblas.so : libcblas.a libatlas.so + ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libcblas.a \ + -L. -latlas + +libblas.so: libf77blas.so + ln -s $< $@ + +liblapack.so.3.4.1 : liblapack.a libcblas.so libblas.so + ld $(LDFLAGS) -shared -soname liblapack.so.3 -o $@ --whole-archive \ + liblapack.a --no-whole-archive $(F77SYSLIB) -L. -lcblas -lblas -lgcc_s + +liblapack.so.3: liblapack.so.3.4.1 + ln -s $< $@ |