blob: 02858da0519a396b382021c171594be5571d73ba (
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
|
# Maintainer: Viktor Drobot (aka dviktor) linux776 [at] gmail [dot] com
pkgname=namd
pkgver=2.14
_charmver=6.10.2
pkgrel=2
pkgdesc="Scalable molecular dynamic engine"
url="http://www.ks.uiuc.edu/Research/namd/"
license=(custom)
arch=(x86_64)
depends=(gcc9 gcc9-libs fftw tcl)
makedepends=(make patch)
md5sums=('7a827066e0d7f2a37f748ca9f165ea80'
'3dee29385fed05eb8f3d2d38dd799383'
'e9d2d7f92283ee479f08f4f9c4c85709')
options=(staticlibs !buildflags)
# You MUST download the package from the NAMD url and put it in the PKGBUILD folder!
source=("http://charm.cs.illinois.edu/distrib/charm-${_charmver}.tar.gz"
"local://NAMD_${pkgver}_Source.tar.gz"
"namd.patch")
prepare() {
cd ${srcdir}/NAMD_${pkgver}_Source
# move Charm++ in place
mv ${srcdir}/charm-v${_charmver} ${srcdir}/NAMD_${pkgver}_Source/charm-${_charmver}
# apply patch
patch -Np0 -i "${srcdir}/namd.patch"
}
build() {
# build Charm++
cd ${srcdir}/NAMD_${pkgver}_Source/charm-${_charmver}
CC=gcc-9 CXX=g++-9 ./build charm++ multicore-linux64 --with-production
# go to the NAMD build
cd ${srcdir}/NAMD_${pkgver}_Source
# configure and build NAMD
./config Linux-x86_64-g++ --charm-arch multicore-linux64 --with-fftw3 --cc gcc-9 --cxx g++-9
cd Linux-x86_64-g++
make
}
package() {
cd ${srcdir}/NAMD_${pkgver}_Source/Linux-x86_64-g++
make release
# prepare directories
mkdir -p ${pkgdir}/opt
mkdir -p ${pkgdir}/usr/bin
# install stuff
mv NAMD_${pkgver}_Linux-x86_64-multicore ${pkgdir}/opt/${pkgname}
# install license
install -Dm644 ${pkgdir}/opt/${pkgname}/license.txt $pkgdir/usr/share/licenses/$pkgname/LICENSE
# create links to executables
ln -sf /opt/${pkgname}/charmrun ${pkgdir}/usr/bin/charmrun
ln -sf /opt/${pkgname}/flipbinpdb ${pkgdir}/usr/bin/flipbinpdb
ln -sf /opt/${pkgname}/flipdcd ${pkgdir}/usr/bin/flipdcd
ln -sf /opt/${pkgname}/namd2 ${pkgdir}/usr/bin/namd2
ln -sf /opt/${pkgname}/psfgen ${pkgdir}/usr/bin/psfgen
ln -sf /opt/${pkgname}/sortreplicas ${pkgdir}/usr/bin/sortreplicas
}
|