summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: db49d1182dcff2c75ddc1efd5a16fa58b324f37c (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
# Maintainer: Hairy <renhongxu0820@hotmail.com>
pkgname=abacus-lts
pkgver=3.10.0
pkgrel=1
pkgdesc="Atomic-orbital Based Ab-initio Computation at UStc"
arch=('x86_64')
url="https://github.com/deepmodeling/abacus-develop"
license=('LGPL-3.0')
depends=(
    'blas'          
    'lapack'      
    'fftw'              
    'openmpi'       
    'cereal' 
    'scalapack' 
)
makedepends=(
    'cmake'
    'make'
    'gcc'
    'git'
)
optdepends=(
    'elpa' 
    'libxc' 
)
source=(
    "https://github.com/deepmodeling/abacus-develop/archive/refs/tags/LTSv$pkgver.tar.gz"
)
sha256sums=('332ed08bb18489f50dcaacdcca8f6ee7ff68e485d49585a2eb9797547898021b')  

build() {
    cd "$srcdir/abacus-develop-LTSv$pkgver"
    
    mkdir -p build && cd build

    if pacman -Qs '^elpa$' > /dev/null; then
        echo "ELPA found, enabling ELPA support"
        use_elpa=ON
    else
        use_elpa=OFF
    fi

    if pkg-config --exists libxc; then
        echo "libxc found, enabling libxc support"
        use_libxc=ON
    elif pacman -Qs '^libxc$' > /dev/null; then
        echo "libxc found, enabling libxc support"
        use_libxc=ON
    else
        use_libxc=OFF
    fi
    
    cmake .. \
        -DCMAKE_INSTALL_PREFIX=/usr \
        -DCMAKE_BUILD_TYPE=Release \
        -DENABLE_LIBRI=ON \
        -DENABLE_LIBXC=$use_libxc \
        -DUSE_ELPA=$use_elpa \
    
    make -j$(nproc) 
}

package() {
    cd "$srcdir/abacus-develop-LTSv$pkgver/build"
    make DESTDIR="$pkgdir/" install
}