summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: dda062e2f011b33de3eeffad4f8a5fb23337393d (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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# Maintainer: anon at sansorgan.es 
pkgbase=dune-core
pkgname=('dune-common' 'dune-geometry' 'dune-localfunctions' 'dune-istl' 'dune-grid' 'dune-uggrid')
pkgver=2.7.1
pkgrel=1
pkgdesc='Core modules of the DUNE framework'
groups=('dune')
url='http://www.dune-project.org'

arch=('i686' 'x86_64')
license=('custom')

makedepends=('cmake' 'gcc-fortran' 'openmpi' 'gmp' 'lapack' 'boost' 'superlu' 'suitesparse'
    'parmetis' 'psurface' 'python' 'bash' 'libtirpc-compat')

export CPPFLAGS="-I/usr/include/tirpc ${CPPFLAGS}"
export CFLAGS="-fPIC ${CFLAGS}"
export CXXFLAGS="-fPIC ${CFLAGS}" 

for _module in "${pkgname[@]}"; do
    source+=("http://www.dune-project.org/download/${pkgver}/${_module}-${pkgver}.tar.gz")
done

_dunecontrol="./dune-common-${pkgver}/bin/dunecontrol"

#prepare() {
#    cd "dune-istl-${pkgver}"

#    patch -p1 -i ../../avoid-boost-fusion-1.61.patch
#}

make_package() {
    $_dunecontrol --only=${pkgname} make install DESTDIR="${pkgdir}"

    install -m644 -D ${pkgname}-${pkgver}/COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"

    find "${pkgdir}" -type d -empty -delete
}

build() {
    CMAKE_FLAGS='-DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib -fPIC -DBUILD_SHARED_LIBS:BOOL=OFF -I/usr/include/tirpc' \
        $_dunecontrol configure --enabled-shared

    $_dunecontrol make
}

package_dune-common() {
    pkgdesc='Basic classes used by all DUNE modules'
    depends=('bash' 'python')

    make_package
}

package_dune-geometry() {
    pkgdesc='Reference elements with corresponding mappings and quadratures'

    make_package
}

package_dune-localfunctions() {
    pkgdesc='Shape functions, interpolation operators on DUNE reference elemements'
    arch=('any')

    make_package
}

package_dune-istl() {
    pkgdesc='Iterative solver template library'
    arch=('any')

    make_package
}

package_dune-grid() {
    pkgdesc='Nonconforming, hierarchically nested, multi-element-type, parallel grids'
    arch=('any')
    make_package
}

package_dune-uggrid() {
    pkgdesc='UG grid manager'
    arch=('any')
    make_package
}


#package_dune-alugrid() {
#    pkgdesc='Unstructured simplicial and cube DUNE grids'
#    arch=('any')
#
#    package
#}
#package_dune-functions() {
#    pkgdesc='Needed to build core dune modules'
#    arch=('any')
#
#    package
#}

md5sums=('8c789975f762066d5bffc02085ac3eda'
         '57bfac1eb1b08b2e6601907664797609'
         'b3adbb0e960f2f27f3e6cb825ec5ac42'
         '7ece14f349d76c9df10bf784c1bc686b'
         'c739c3dfce1d4d7f93bea58963e4681d'
         '597cbd936908506bfd0392b1dd0edbe8')