summaryrefslogtreecommitdiffstats
path: root/abs/extra/lapack/PKGBUILD
blob: 7ff50f125e6632d3d856a8b6380b676245a4f1ad (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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# $Id$
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: damir <damir@archlinux.org>
# Contributor: Jason Taylor <jftaylor21@gmail.com>

pkgbase=lapack
pkgname=('lapack' 'blas' 'cblas' 'lapacke')
pkgver=3.8.0
pkgrel=1
url="http://www.netlib.org/lapack"
pkgdesc="Linear Algebra PACKage"
makedepends=('gcc-fortran' 'cmake' 'python' 'doxygen')
arch=('x86_64')
license=("custom")
source=(http://www.netlib.org/${pkgbase}/${pkgbase}-${pkgver}.tar.gz LICENSE.blas)
sha1sums=('55ac9d6be510883c5442c8aca967722cdf58fb29'
          '2491a151a37f0162b25fc4e4e9a8ac444b574a76')

build() {
  install -d build
  cd build
  cmake ../${pkgname}-${pkgver} \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_SKIP_RPATH=ON \
    -DBUILD_SHARED_LIBS=ON \
    -DBUILD_TESTING=OFF \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_INSTALL_LIBDIR=lib \
    -DCMAKE_Fortran_COMPILER=gfortran \
    -DLAPACKE_WITH_TMG=ON \
    -DCBLAS=ON \
    -DBUILD_DEPRECATED=ON
  make

# Build man pages
  cd ../$pkgname-$pkgver
  doxygen DOCS/Doxyfile_man
}

package_lapack() {
  depends=("blas")
  
  cd build
  make DESTDIR="$pkgdir" install

  rm -r "$pkgdir"/usr/lib/{libblas.*,libcblas.*,liblapacke.*}
  rm -r "$pkgdir"/usr/lib/pkgconfig/{blas.*,cblas.*,lapacke.*}
  rm -r "$pkgdir"/usr/lib/cmake/{cblas*,lapacke*}
  rm -r "$pkgdir"/usr/include
}

package_blas() {
  pkgdesc="Basic Linear Algebra Subprograms"
  depends=('gcc-libs')

  cd build/BLAS
  make DESTDIR="$pkgdir" install
  
  install -m755 -d "${pkgdir}/usr/share/licenses/blas"
  install -m644 "${srcdir}/LICENSE.blas" \
    "${pkgdir}/usr/share/licenses/blas/"
}

package_cblas() {
  pkgdesc="C interface to BLAS"
  depends=("blas")

  cd build/CBLAS
  make DESTDIR="$pkgdir" install
}

package_lapacke() {
  pkgdesc="C interface to LAPACK"
  depends=("lapack")

  cd build/LAPACKE
  make DESTDIR="$pkgdir" install
}

package_lapack-doc() {
  pkgdesc="Man pages for BLAS/LAPACK"

  mkdir -p "$pkgdir"/usr/share
  cp -r lapack-$pkgver/DOCS/man "$pkgdir"/usr/share
}