gromacs : added package
This commit is contained in:
parent
3c1aa9a4ad
commit
30c3047482
@ -47,6 +47,8 @@ class Fftw(Package):
|
||||
|
||||
depends_on('mpi', when='+mpi')
|
||||
|
||||
# TODO : add support for architecture specific optimizations as soon as targets are supported
|
||||
|
||||
def install(self, spec, prefix):
|
||||
options = ['--prefix=%s' % prefix,
|
||||
'--enable-shared',
|
||||
|
56
var/spack/repos/builtin/packages/gromacs/package.py
Normal file
56
var/spack/repos/builtin/packages/gromacs/package.py
Normal file
@ -0,0 +1,56 @@
|
||||
from spack import *
|
||||
|
||||
|
||||
class Gromacs(Package):
|
||||
"""
|
||||
GROMACS (GROningen MAchine for Chemical Simulations) is a molecular dynamics package primarily designed for
|
||||
simulations of proteins, lipids and nucleic acids. It was originally developed in the Biophysical Chemistry
|
||||
department of University of Groningen, and is now maintained by contributors in universities and research centers
|
||||
across the world.
|
||||
|
||||
GROMACS is one of the fastest and most popular software packages available and can run on CPUs as well as GPUs.
|
||||
It is free, open source released under the GNU General Public License. Starting from version 4.6, GROMACS is
|
||||
released under the GNU Lesser General Public License.
|
||||
"""
|
||||
|
||||
homepage = 'http://www.gromacs.org'
|
||||
url = 'ftp://ftp.gromacs.org/pub/gromacs/gromacs-5.1.2.tar.gz'
|
||||
|
||||
version('5.1.2', '614d0be372f1a6f1f36382b7a6fcab98')
|
||||
|
||||
variant('mpi', default=True, description='Activate MPI support')
|
||||
variant('shared', default=True, description='Enables the build of shared libraries')
|
||||
variant('debug', default=False, description='Enables debug mode')
|
||||
variant('double', default=False, description='Produces a double precision version of the executables')
|
||||
|
||||
depends_on('mpi', when='+mpi')
|
||||
|
||||
depends_on('fftw')
|
||||
|
||||
# TODO : add GPU support
|
||||
|
||||
def install(self, spec, prefix):
|
||||
|
||||
options = []
|
||||
|
||||
if '+mpi' in spec:
|
||||
options.append('-DGMX_MPI:BOOL=ON')
|
||||
|
||||
if '+double' in spec:
|
||||
options.append('-DGMX_DOUBLE:BOOL=ON')
|
||||
|
||||
if '~shared' in spec:
|
||||
options.append('-DBUILD_SHARED_LIBS:BOOL=OFF')
|
||||
|
||||
if '+debug' in spec:
|
||||
options.append('-DCMAKE_BUILD_TYPE:STRING=Debug')
|
||||
else:
|
||||
options.append('-DCMAKE_BUILD_TYPE:STRING=Release')
|
||||
|
||||
options.extend(std_cmake_args)
|
||||
|
||||
with working_dir('spack-build', create=True):
|
||||
|
||||
cmake('..', *options)
|
||||
make()
|
||||
make('install')
|
Loading…
Reference in New Issue
Block a user