summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: dc2901acce6f10678e0e4304c5316d6c7a223f90 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Maintainer: cornholio <vigo.the.unholy.carpathian@gmail.com>
# Contributor: cornholio <vigo.the.unholy.carpathian@gmail.com>

##### Configuration Options
# Specify GPU compute capability Tesla (1.x) or Fermi (2.x) or Kepler (3.x)
_GPU_TARGET=Tesla
#_GPU_TARGET=Fermi
#_GPU_TARGET=Kepler
##### End

pkgname=magma
pkgver=1.4.1
pkgrel=1
pkgdesc="Provides a dense linear algebra library similar to LAPACK but for heterogeneous/hybrid architectures, starting with current 'Multicore+GPU' systems."
arch=("i686" "x86_64")
url="http://icl.cs.utk.edu/magma/"
license=(custom)
depends=("cuda>=5.0.0" "gcc-libs-multilib" "gsl" "python" "acml-gfortran" "cblas")
makedepends=("acml-gfortran")
options=('staticlibs')
sha1sums=('3e6bc7c2d6500508134b6cdf48985f7c8b94c89b')
source=("http://icl.cs.utk.edu/projectsfiles/magma/downloads/magma-${pkgver}.tar.gz")

build() {

	cd ${srcdir}/magma-${pkgver}

	# Fix Makefile
	cp make.inc.acml make.inc
	sed -i "/GPU_TARGET ?=/c GPU_TARGET = ${_GPU_TARGET}" make.inc
	sed -i '/#CUDADIR/c CUDADIR   = /opt/cuda' make.inc
	sed -i '/#ACMLDIR/c ACMLDIR   = /usr/lib/acml/gfortran' make.inc
	sed -i '/#CBLASDIR/c CBLASDIR   = /usr/lib' make.inc
	sed -i 's^_mp^^g' make.inc
	sed -i 's^_mv^^g' make.inc
	sed -i 's^-L$(ACMLDIR)/gfortran64/lib^-L$(ACMLDIR)^g' make.inc
	sed -i 's^-L$(CBLASDIR)/lib^-L$(CBLASDIR)^g' make.inc

	make clean
	make all
	make prefix="${srcdir}/install/" install

	make clean
	sed -i 's^-O3^-fPIC -O3^g' make.inc
	sed -i 's^-fopenmp^-fPIC -fopenmp^g' make.inc
	sed -i '/NVOPTS    =/c NVOPTS    =       -O3 -DADD_ -Xcompiler "-fno-strict-aliasing -fPIC"' make.inc
	make shared
	make prefix="${srcdir}/install/" install
}

package(){
	mkdir -p ${pkgdir}/opt/magma/testing
	cp -ru ${srcdir}/magma-${pkgver}/testing/* ${pkgdir}/opt/magma/testing/
	cp -ru ${srcdir}/install/* ${pkgdir}/opt/magma/

	rm -rf ${pkgdir}/opt/magma/lib/pkgconfig	
	mkdir -p ${pkgdir}/usr/share/licenses/magma
	cp ${srcdir}/magma-${pkgver}/COPYRIGHT ${pkgdir}/usr/share/licenses/magma/LICENSE

}