blob: 0cd376729eea3f735b93958355346aba4a20d611 (
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
|
# Maintainer: banana-bred <j.forer@posteo.net>
pkgname="gbtolib"
_name="GBTOLib"
_cmakeMinPolicy="3.10"
pkgver=3.0.3
pkgrel=5
epoch=
pkgdesc="A high-performance library for evaluation of molecular integrals"
arch=('any')
url='https://zenodo.org/records/5798035'
license=('GPL3')
groups=()
depends=('lapack64' 'blas64-openblas' 'mpich-fint64')
makedepends=('cmake' 'gcc' 'gcc-fortran' 'cmake' 'doxygen' 'mpich-fint64')
checkdepends=()
optdepends=()
provides=('gbtolib')
conflicts=()
replaces=()
backup=()
options=()
install=
changelog=
noextract=()
source=('https://zenodo.org/record/5798035/files/GBTOLib-'"${pkgver}"'.zip?download=1')
sha256sums=('5110ddf6f3c9993c56ecca99df1fbb071e6402a31e0f599f2db8ad73a72de0b1')
build() {
export BLAS_LIBRARIES="$(pkg-config --libs blas64)"
export LAPACK_LIBRARIES="$(pkg-config --libs lapack64)"
export BLAS_CFLAGS="$(pkg-config --cflags blas64)"
export LAPACK_CFLAGS="$(pkg-config --cflags lapack64)"
local _cmakeOptions=(
-D CMAKE_POLICY_VERSION_MINIMUM="$_cmakeMinPolicy"
-D CMAKE_C_COMPILER=/opt/mpich-fint64/bin/mpicc
-D CMAKE_CXX_COMPILER=/opt/mpich-fint64/bin/mpicc
-D CMAKE_Fortran_COMPILER=/opt/mpich-fint64/bin/mpifort
-D MPIEXEC_EXECUTABLE=/opt/mpich-fint64/bin/mpiexec
-D BLA_VENDOR=OpenBLAS
-D BLA_SIZE_OF_INTEGER=8
-D BLAS_LIBRARIES="${BLAS_LIBRARIES}"
-D LAPACK_LIBRARIES="${LAPACK_LIBRARIES}"
-D CMAKE_Fortran_FLAGS='-fdefault-integer-8'
-D WITH_MPI='ON'
)
mkdir -p "${srcdir}/${_name}-${pkgver}/build" ; cd "${srcdir}/${_name}-${pkgver}/build"
cmake "${_cmakeOptions[@]}" "${srcdir}/${_name}-${pkgver}"
make
}
check() {
# -- enfore larger cmake version minimum in tests
sed -i -r "s/cmake_minimum_required\(VERSION 3\.[0-9]+\)/cmake_minimum_required(VERSION $_cmakeMinPolicy)/" "${srcdir}/${_name}-${pkgver}"/tests/CMakeLists.txt
sed -i -r "s/cmake_minimum_required\(VERSION 3\.[0-9]+\)/cmake_minimum_required(VERSION $_cmakeMinPolicy)/" "${srcdir}/${_name}-${pkgver}"/tests/TestDriver.cmake
cd "${srcdir}/${_name}-${pkgver}"/build
make test
}
package() {
install -Dm644 "${srcdir}/${_name}-${pkgver}"/build/lib/libGBTO.a "${pkgdir}"/usr/lib/libGBTO.a
# -- docs
install -d "${pkgdir}"/usr/share/doc/"${pkgname}"
install -Dm644 "${srcdir}/${_name}-${pkgver}"/doc/Doxyfile "${pkgdir}"/usr/share/doc/"${pkgname}/."
install -Dm644 "${srcdir}/${_name}-${pkgver}"/doc/README "${pkgdir}"/usr/share/doc/"${pkgname}/."
install -Dm644 "${srcdir}/${_name}-${pkgver}"/doc/scatci_integrals.md "${pkgdir}"/usr/share/doc/"${pkgname}/."
# -- other Fortran-based programs may need the module files from GBTOLib to be built
install -d "${pkgdir}"/usr/mod/"${pkgname%-*}"
install -Dm644 "${srcdir}/${_name}-${pkgver}"/build/mod/*.mod "${pkgdir}"/usr/mod/"${pkgname%-*}"
}
# vim: ts=2 sw=2 et :
|