diff options
author | Drobot Viktor | 2019-09-19 18:13:13 +0300 |
---|---|---|
committer | Drobot Viktor | 2019-09-19 18:13:13 +0300 |
commit | 0ae8a92dbeacbcf4ce845e29e8ca1c531c5a3cf4 (patch) | |
tree | 0595262034ee56fbd29e9cf645f18141b9953142 | |
download | aur-0ae8a92dbeacbcf4ce845e29e8ca1c531c5a3cf4.tar.gz |
First release
-rw-r--r-- | .SRCINFO | 45 | ||||
-rw-r--r-- | PKGBUILD | 115 | ||||
-rw-r--r-- | amber.patch | 10 | ||||
-rw-r--r-- | pmemd.cuda | 7 | ||||
-rw-r--r-- | pmemd.cuda.MPI | 7 | ||||
-rw-r--r-- | pmemd.cuda_DPFP | 7 | ||||
-rw-r--r-- | pmemd.cuda_DPFP.MPI | 7 |
7 files changed, 198 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..43cc11f223b6 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,45 @@ +pkgbase = pmemd-cuda + pkgdesc = PMEMD module of AMBER software package (with CUDA support) + pkgver = 18 + pkgrel = 1 + url = http://ambermd.org/ + arch = x86_64 + license = custom + makedepends = make + makedepends = gcc7 + makedepends = gcc7-fortran + makedepends = patch + makedepends = tcsh + makedepends = imake + depends = openmpi3-gcc7 + depends = cuda + depends = fakeroot + depends = zlib + depends = bzip2 + depends = gcc7-libs + depends = flex + depends = python2 + depends = bash + optdepends = plumed-patches: PLUMED support + optdepends = plumed: metadynamics support + optdepends = plumed-mpi: metadynamics support with MPI + options = staticlibs + options = !buildflags + options = !makeflags + source = local://AmberTools19.tar.bz2 + source = local://Amber18.tar.bz2 + source = amber.patch + source = pmemd.cuda + source = pmemd.cuda_DPFP + source = pmemd.cuda.MPI + source = pmemd.cuda_DPFP.MPI + md5sums = afffe8a5473a0bd143b98f0396f52f0f + md5sums = 6b38d9cfb6e33b719bdf7fe73b26e841 + md5sums = 6015e304e72538d84e6d44f883ac39c2 + md5sums = c0e28736c9fe7ffd1cbed27ad3220e16 + md5sums = b1b881bd9e0f64a463c5e54138a679a6 + md5sums = c18bfebde8bd68bc6815e7e1ab17f154 + md5sums = c223fda763779c4f78fe3c634cfa3d50 + +pkgname = pmemd-cuda + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..969c06644b20 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,115 @@ +# Maintainer: Viktor Drobot (aka dviktor) linux776 [at] gmail [dot] com + +pkgname=pmemd-cuda +pkgver=18 +_toolsver=19 +_gccver=7.4.1 +pkgrel=1 +pkgdesc="PMEMD module of AMBER software package (with CUDA support)" +url="http://ambermd.org/" +license=('custom') +arch=('x86_64') +depends=('openmpi3-gcc7' 'cuda' 'fakeroot' 'zlib' 'bzip2' 'gcc7-libs' 'flex' 'python2' 'bash') +makedepends=('make' 'gcc7' 'gcc7-fortran' 'patch' 'tcsh' 'imake') +optdepends=('plumed-patches: PLUMED support' + 'plumed: metadynamics support' + 'plumed-mpi: metadynamics support with MPI') +md5sums=('afffe8a5473a0bd143b98f0396f52f0f' + '6b38d9cfb6e33b719bdf7fe73b26e841' + '6015e304e72538d84e6d44f883ac39c2' + 'c0e28736c9fe7ffd1cbed27ad3220e16' + 'b1b881bd9e0f64a463c5e54138a679a6' + 'c18bfebde8bd68bc6815e7e1ab17f154' + 'c223fda763779c4f78fe3c634cfa3d50') +options=(staticlibs !buildflags !makeflags) + +# Due to licensing issues you must register and download AmberTools package from AmberMD url and put it in directory with PKGBUILD. +# Moreover, you MUST purchase Amber package from AmberMD group and also place it in directory with PKGBUILD. +source=("local://AmberTools${_toolsver}.tar.bz2" + "local://Amber${pkgver}.tar.bz2" + "amber.patch" + "pmemd.cuda" + "pmemd.cuda_DPFP" + "pmemd.cuda.MPI" + "pmemd.cuda_DPFP.MPI") + +prepare() { + cd ${srcdir}/amber${pkgver} + + export AMBERHOME="${srcdir}/amber${pkgver}" + ./update_amber --update + patch -Np0 -i "${srcdir}/amber.patch" +} + +build() { + # set necessary variables + export LD_PRELOAD=/usr/lib/libstdc++.so + export AMBER_PREFIX="${srcdir}/amber${pkgver}" + export AMBERHOME="${srcdir}/amber${pkgver}" + + if [ -z "${LD_LIBRARY_PATH}" ]; then + export LD_LIBRARY_PATH="${AMBER_PREFIX}/lib" + else + export LD_LIBRARY_PATH="${AMBER_PREFIX}/lib:${LD_LIBRARY_PATH}" + fi + + export LD_LIBRARY_PATH="/usr/lib/gcc/x86_64-pc-linux-gnu/${_gccver}:${LD_LIBRARY_PATH}" + + export CUDA_HOME="/opt/cuda" + export LD_LIBRARY_PATH="/opt/cuda/lib:/opt/cuda/lib64:${LD_LIBRARY_PATH}" + + # pre-configure + cd ${srcdir}/amber${pkgver} + LANG=en_US.UTF-8 CC=gcc-7 CXX=g++-7 FC=gfortran-7 ./configure --with-python /usr/bin/python2 --no-updates gnu + + # add support for PLUMED + if [ -e "/usr/bin/plumed-mpi-patch" -a -e "/usr/lib/plumed-mpi/patches/amber${pkgver}.diff" ]; then + msg2 "Adding support for PLUMED (with MPI)" + plumed-mpi-patch -p -e amber${pkgver} + elif [ -e "/usr/bin/plumed-patch" -a -e "/usr/lib/plumed/patches/amber${pkgver}.diff" ]; then + msg2 "Adding support for PLUMED" + plumed-patch -p -e amber${pkgver} + fi + + # build internal libraries + cd ${srcdir}/amber${pkgver}/AmberTools/src/xblas + make lib-amb + mv libxblas-amb.a ../../../lib + + cd ${srcdir}/amber${pkgver}/AmberTools/src/blas + make install + + cd ${srcdir}/amber${pkgver}/AmberTools/src/lapack + make install + + cd ${srcdir}/amber${pkgver}/AmberTools/src/arpack + make install + + # build serial CUDA version + cd ${srcdir}/amber${pkgver} + LANG=en_US.UTF-8 CC=gcc-7 CXX=g++-7 FC=gfortran-7 ./configure --with-python /usr/bin/python2 --no-updates -cuda gnu + cd src + make install + + # build parallel CUDA version + cd ${srcdir}/amber${pkgver} + LANG=en_US.UTF-8 CC=gcc-7 CXX=g++-7 FC=gfortran-7 ./configure --with-python /usr/bin/python2 --no-updates -cuda -mpi gnu + cd src + make install +} + +package() { + cd ${srcdir}/amber${pkgver}/bin + + # install binaries + install -Dm755 pmemd.cuda_SPFP ${pkgdir}/usr/lib/${pkgname}/bin/pmemd.cuda_SPFP + install -Dm755 pmemd.cuda_DPFP ${pkgdir}/usr/lib/${pkgname}/bin/pmemd.cuda_DPFP + install -Dm755 pmemd.cuda_SPFP.MPI ${pkgdir}/usr/lib/${pkgname}/bin/pmemd.cuda_SPFP.MPI + install -Dm755 pmemd.cuda_SPFP.MPI ${pkgdir}/usr/lib/${pkgname}/bin/pmemd.cuda_DPFP.MPI + + # install wrappers + install -Dm755 ${srcdir}/pmemd.cuda ${pkgdir}/usr/bin/pmemd.cuda + install -Dm755 ${srcdir}/pmemd.cuda_DPFP ${pkgdir}/usr/bin/pmemd.cuda_DPFP + install -Dm755 ${srcdir}/pmemd.cuda.MPI ${pkgdir}/usr/bin/pmemd.cuda.MPI + install -Dm755 ${srcdir}/pmemd.cuda_DPFP.MPI ${pkgdir}/usr/bin/pmemd.cuda_DPFP.MPI +} diff --git a/amber.patch b/amber.patch new file mode 100644 index 000000000000..4bb17144857d --- /dev/null +++ b/amber.patch @@ -0,0 +1,10 @@ +--- AmberTools/src/configure2 2019-02-14 12:04:44.583123213 +0300 ++++ AmberTools/src/configure2 2019-02-14 12:05:00.319647178 +0300 +@@ -1193,6 +1193,7 @@ + echo " AMBER 18 requires CUDA version 7.5, 8.0, 9.0-9.2, or 10.0-10.2" + exit 1 + fi ++ nvccflags="$nvccflags --compiler-options -fPIC" + nvcc="$nvcc $nvccflags" + + fi diff --git a/pmemd.cuda b/pmemd.cuda new file mode 100644 index 000000000000..8be9506f7e70 --- /dev/null +++ b/pmemd.cuda @@ -0,0 +1,7 @@ +#!/usr/bin/bash + +export _gccver=7.4.1 +export LD_LIBRARY_PATH="/usr/lib/gcc/x86_64-pc-linux-gnu/${_gccver}:$LD_LIBRARY_PATH" +/usr/lib/pmemd-cuda/bin/pmemd.cuda_SPFP "$@" + +exit 0 diff --git a/pmemd.cuda.MPI b/pmemd.cuda.MPI new file mode 100644 index 000000000000..cdfafac9a680 --- /dev/null +++ b/pmemd.cuda.MPI @@ -0,0 +1,7 @@ +#!/usr/bin/bash + +export _gccver=7.4.1 +export LD_LIBRARY_PATH="/usr/lib/gcc/x86_64-pc-linux-gnu/${_gccver}:$LD_LIBRARY_PATH" +/usr/lib/pmemd-cuda/bin/pmemd.cuda_SPFP.MPI "$@" + +exit 0 diff --git a/pmemd.cuda_DPFP b/pmemd.cuda_DPFP new file mode 100644 index 000000000000..351733affad4 --- /dev/null +++ b/pmemd.cuda_DPFP @@ -0,0 +1,7 @@ +#!/usr/bin/bash + +export _gccver=7.4.1 +export LD_LIBRARY_PATH="/usr/lib/gcc/x86_64-pc-linux-gnu/${_gccver}:$LD_LIBRARY_PATH" +/usr/lib/pmemd-cuda/bin/pmemd.cuda_DPFP "$@" + +exit 0 diff --git a/pmemd.cuda_DPFP.MPI b/pmemd.cuda_DPFP.MPI new file mode 100644 index 000000000000..c0b19e29984a --- /dev/null +++ b/pmemd.cuda_DPFP.MPI @@ -0,0 +1,7 @@ +#!/usr/bin/bash + +export _gccver=7.4.1 +export LD_LIBRARY_PATH="/usr/lib/gcc/x86_64-pc-linux-gnu/${_gccver}:$LD_LIBRARY_PATH" +/usr/lib/pmemd-cuda/bin/pmemd.cuda_DPFP.MPI "$@" + +exit 0 |