summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD84
1 files changed, 84 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..c58d8919eb35
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,84 @@
+# $Id: PKGBUILD 57440 2011-10-27 20:16:15Z lcarlier $
+# Maintainer: Hector <hsearaDOTatDOTgmailDOTcom>
+
+pkgname=gromacs-2016-complete
+pkgver=2016.4
+pkgrel=1
+pkgdesc='A versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles.'
+url='http://www.gromacs.org/'
+license=("LGPL")
+arch=('i686' 'x86_64')
+depends=('lapack' 'zlib' 'libx11')
+optdepends=('cuda: Nvidia GPU support'
+ 'openmotif: needed for gmx view'
+ 'perl: needed for demux.pl and xplor2gmx.pl'
+ 'opencl-mesa: OpenCL support for AMD GPU'
+ 'opencl-nvidia: OpenCL support for Nvidia GPU')
+makedepends=('cmake' 'libxml2' 'hwloc' 'gcc6')
+options=('!libtool')
+source=(http://ftp.gromacs.org/pub/gromacs/gromacs-${pkgver}.tar.gz
+ GMXRC.bash.cmakein.patch)
+sha1sums=('b142c9c77e793fa8def24aeacebaf8b8f1dd55fc'
+ '014b2cbfa13db9b495c88f653805c330747117dc')
+
+#With gcc6 currently there are less errors in the tests
+# also the compilation is possible in CUDA capable machines
+export CC=gcc-6
+export CXX=g++-6
+export CFLAGS="-march=native -O2 -pipe -fstack-protector-strong"
+export CXXFLAGS="${CFLAGS}"
+
+export VMDDIR=/usr/lib/vmd/ #If vmd is available at compilation time
+ #Gromacs will have the ability to read any
+ #trajectory file format that can be read by
+ #VMD installation (e.g. AMBER's DCD format).
+prepare() {
+cd ${srcdir}/gromacs-${pkgver}/scripts/
+ls
+patch -p0 -i ${srcdir}/GMXRC.bash.cmakein.patch
+}
+
+build() {
+ mkdir -p ${srcdir}/{single,double}
+
+ msg2 "Building the double precision files"
+ cd ${srcdir}/double
+ cmake ../gromacs-${pkgver}/ \
+ -DCMAKE_INSTALL_PREFIX=/usr/local/gromacs/gromacs-${pkgver}/ \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DGMX_DOUBLE=ON \
+ -DGMX_BUILD_OWN_FFTW=ON \
+ -DREGRESSIONTEST_DOWNLOAD=ON
+ # -DGMX_LIBS_SUFFIX=_d
+ make
+
+ msg2 "Building the single precision files"
+ cd ${srcdir}/single
+ cmake ../gromacs-${pkgver}/ \
+ -DCMAKE_INSTALL_PREFIX=/usr/local/gromacs/gromacs-${pkgver}/ \
+ -DCMAKE_INSTALL_LIBDIR=lib \
+ -DBUILD_SHARED_LIBS=ON \
+ -DGMX_BUILD_OWN_FFTW=ON \
+ -DREGRESSIONTEST_DOWNLOAD=ON
+ make
+}
+
+check () {
+ msg2 "Testing double precision compilation"
+ cd ${srcdir}/double
+ make check
+ msg2 "Testing single precision compilation"
+ cd ${srcdir}/single
+ make check
+}
+
+package() {
+ msg2 "Making the single precision executables"
+ cd ${srcdir}/single
+ make DESTDIR=${pkgdir} install
+
+ msg2 "Making the double precision executables"
+ cd ${srcdir}/double
+ make DESTDIR=${pkgdir} install
+}