blob: c3d215352779cc2c2146108cb471e451b739b611 (
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
|
# Maintainer: Myles English <myles at rockhead dot biz>
pkgname=scalapack
pkgver=2.0.2
pkgrel=3
pkgdesc="subset of scalable LAPACK routines redesigned for distributed memory MIMD parallel computers."
url="http://www.netlib.org/scalapack/"
license='custom'
depends=('glibc' 'openmpi' 'blas' 'lapack') # 'atlas-lapack' 'blacs-openmpi' )
makedepends=('cmake')
provides=('blacs')
conflicts=()
replaces=()
backup=()
arch=('i686' 'x86_64')
install=${pkgname}.install
source=(http://www.netlib.org/scalapack/$pkgname-$pkgver.tgz http://www.netlib.org/scalapack/manpages.tgz Makefile example1.f)
md5sums=('2f75e600a2ba155ed9ce974a1c4b536f'
'a536ab4837ec68addff0a3ec99427a10'
'0bef36150ffaf341a6228b474ed800c9'
'4723ad431356431bb193db254b6ee0fb')
build() {
msg "Starting make..."
[[ -e build ]] && rm -rf build
mkdir build
cd build
cmake ../"${pkgname}-${pkgver}" \
-DCMAKE_INSTALL_PREFIX=${pkgdir}/usr \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE:STRING=Release \
-DCMAKE_CXX_COMPILER=/usr/bin/mpic++ \
-DCMAKE_C_COMPILER=/usr/bin/mpicc
# doesn't work (?): -DCMAKE_INSTALL_LOCAL_ONLY=0 \
#-DCMAKE_CXX_FLAGS='fPIC' CMAKE_Fortran_FLAGS
make
# Builds library, test and example
# make lib
# ld -Bshareable -o ${srcdir}/${pkgname}-${pkgver}/lib${pkgname}.so -x -soname lib${pkgname}.so --whole-archive $startdir/src/${pkgname}-${pkgver}/lib${pkgname}.a
# make exe
# make example
}
package(){
cd ${srcdir}/build
make install #DESTDIR=${pkgdir}
sed -i 's#'"${pkgdir}"'##g' pkg/usr/lib/pkgconfig/scalapack.pc
# Install headers
install -m 755 -d ${pkgdir}/usr/include
install -m 644 -D "${srcdir}/${pkgname}-${pkgver}"/PBLAS/SRC/*.h ${pkgdir}/usr/include
install -m 644 -D "${srcdir}/${pkgname}-${pkgver}"/BLACS/SRC/*.h ${pkgdir}/usr/include
# Install man pages
install -m 755 -d ${pkgdir}/usr/share/man/manl
install -m 644 ${srcdir}/MANPAGES/man/manl/*.l ${PREFIX} ${pkgdir}/usr/share/man/manl
# Install test
install -m 755 -d ${pkgdir}/usr/share/$pkgname/testing
install -m 755 ${srcdir}/build/TESTING/x* ${pkgdir}/usr/share/$pkgname/testing
install -m 644 ${srcdir}/build/TESTING/*.dat ${pkgdir}/usr/share/$pkgname/testing
# Install examples
install -m 755 -d ${pkgdir}/usr/share/$pkgname/examples
install -m 644 ${srcdir}/Makefile ${pkgdir}/usr/share/${pkgname}/examples
install -m 644 ${srcdir}/example1.f ${pkgdir}/usr/share/${pkgname}/examples
# Install license
install -m 644 -D "${srcdir}/${pkgname}-${pkgver}"/LICENSE ${pkgdir}/usr/share/licenses/$pkgname/LICENSE
}
|