diff options
Diffstat (limited to 'var/spack/repos/builtin/packages/meep/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/meep/package.py | 156 |
1 files changed, 81 insertions, 75 deletions
diff --git a/var/spack/repos/builtin/packages/meep/package.py b/var/spack/repos/builtin/packages/meep/package.py index 9340a2d83f..5f8124e473 100644 --- a/var/spack/repos/builtin/packages/meep/package.py +++ b/var/spack/repos/builtin/packages/meep/package.py @@ -11,97 +11,103 @@ class Meep(AutotoolsPackage): software package developed at MIT to model electromagnetic systems.""" homepage = "http://ab-initio.mit.edu/wiki/index.php/Meep" - git = "https://github.com/NanoComp/meep.git" - url = "https://github.com/NanoComp/meep/archive/refs/tags/v1.21.0.tar.gz" - - version('master', branch='master') - - version('1.21.0', sha256='71911cd2f38b15bdafe9a27ad111f706f24717894d5f9b6f9f19c6c10a0d5896') - version('1.3', sha256='564c1ff1b413a3487cf81048a45deabfdac4243a1a37ce743f4fcf0c055fd438', - url='http://ab-initio.mit.edu/meep/meep-1.3.tar.gz') - version('1.2.1', sha256='f1f0683e5688d231f7dd1863939677148fc27a6744c03510e030c85d6c518ea5', - url='http://ab-initio.mit.edu/meep/meep-1.2.1.tar.gz') - version('1.1.1', sha256='7a97b5555da1f9ea2ec6eed5c45bd97bcd6ddbd54bdfc181f46c696dffc169f2', - url='http://ab-initio.mit.edu/meep/old/meep-1.1.1.tar.gz') - - variant('blas', default=True, description='Enable BLAS support') - variant('lapack', default=True, description='Enable LAPACK support') - variant('harminv', default=True, description='Enable Harminv support') - variant('guile', default=True, description='Enable Guilde support') - variant('libctl', default=True, description='Enable libctl support') - variant('mpi', default=True, description='Enable MPI support') - variant('hdf5', default=True, description='Enable HDF5 support') - variant('gsl', default=True, description='Enable GSL support') - variant('python', default=True, description='Enable Python support') - variant('single', default=False, description='Enable Single Precision') - - depends_on('autoconf', type='build', when='@1.21.0') - depends_on('automake', type='build', when='@1.21.0') - depends_on('libtool', type='build', when='@1.21.0') - - depends_on('blas', when='+blas') - depends_on('lapack', when='+lapack') - depends_on('harminv', when='+harminv') - depends_on('guile@:2', when='@:1.4+guile') - depends_on('guile@2:', when='@1.4:+guile') - depends_on('libctl@3.2', when='@:1.3+libctl') - depends_on('libctl@4:', when='+libctl') - depends_on('mpi', when='+mpi') - depends_on('hdf5~mpi', when='+hdf5~mpi') - depends_on('hdf5+mpi', when='+hdf5+mpi') - depends_on('gsl', when='+gsl') - with when('+python'): - depends_on('python') - depends_on('py-numpy') - depends_on('swig') - depends_on('py-mpi4py', when='+mpi') + git = "https://github.com/NanoComp/meep.git" + url = "https://github.com/NanoComp/meep/archive/refs/tags/v1.21.0.tar.gz" + + version("master", branch="master") + + version("1.21.0", sha256="71911cd2f38b15bdafe9a27ad111f706f24717894d5f9b6f9f19c6c10a0d5896") + version( + "1.3", + sha256="564c1ff1b413a3487cf81048a45deabfdac4243a1a37ce743f4fcf0c055fd438", + url="http://ab-initio.mit.edu/meep/meep-1.3.tar.gz", + ) + version( + "1.2.1", + sha256="f1f0683e5688d231f7dd1863939677148fc27a6744c03510e030c85d6c518ea5", + url="http://ab-initio.mit.edu/meep/meep-1.2.1.tar.gz", + ) + version( + "1.1.1", + sha256="7a97b5555da1f9ea2ec6eed5c45bd97bcd6ddbd54bdfc181f46c696dffc169f2", + url="http://ab-initio.mit.edu/meep/old/meep-1.1.1.tar.gz", + ) + + variant("blas", default=True, description="Enable BLAS support") + variant("lapack", default=True, description="Enable LAPACK support") + variant("harminv", default=True, description="Enable Harminv support") + variant("guile", default=True, description="Enable Guilde support") + variant("libctl", default=True, description="Enable libctl support") + variant("mpi", default=True, description="Enable MPI support") + variant("hdf5", default=True, description="Enable HDF5 support") + variant("gsl", default=True, description="Enable GSL support") + variant("python", default=True, description="Enable Python support") + variant("single", default=False, description="Enable Single Precision") + + depends_on("autoconf", type="build", when="@1.21.0") + depends_on("automake", type="build", when="@1.21.0") + depends_on("libtool", type="build", when="@1.21.0") + + depends_on("blas", when="+blas") + depends_on("lapack", when="+lapack") + depends_on("harminv", when="+harminv") + depends_on("guile@:2", when="@:1.4+guile") + depends_on("guile@2:", when="@1.4:+guile") + depends_on("libctl@3.2", when="@:1.3+libctl") + depends_on("libctl@4:", when="+libctl") + depends_on("mpi", when="+mpi") + depends_on("hdf5~mpi", when="+hdf5~mpi") + depends_on("hdf5+mpi", when="+hdf5+mpi") + depends_on("gsl", when="+gsl") + with when("+python"): + depends_on("python") + depends_on("py-numpy") + depends_on("swig") + depends_on("py-mpi4py", when="+mpi") def configure_args(self): spec = self.spec - config_args = [ - '--enable-shared' - ] + config_args = ["--enable-shared"] - if '+blas' in spec: - config_args.append('--with-blas={0}'.format( - spec['blas'].prefix.lib)) + if "+blas" in spec: + config_args.append("--with-blas={0}".format(spec["blas"].prefix.lib)) else: - config_args.append('--without-blas') + config_args.append("--without-blas") - if '+lapack' in spec: - config_args.append('--with-lapack={0}'.format( - spec['lapack'].prefix.lib)) + if "+lapack" in spec: + config_args.append("--with-lapack={0}".format(spec["lapack"].prefix.lib)) else: - config_args.append('--without-lapack') + config_args.append("--without-lapack") - if '+libctl' in spec: - config_args.append('--with-libctl={0}'.format( - join_path(spec['libctl'].prefix.share, 'libctl'))) + if "+libctl" in spec: + config_args.append( + "--with-libctl={0}".format(join_path(spec["libctl"].prefix.share, "libctl")) + ) else: - config_args.append('--without-libctl') + config_args.append("--without-libctl") - if '+mpi' in spec: - config_args.append('--with-mpi') + if "+mpi" in spec: + config_args.append("--with-mpi") else: - config_args.append('--without-mpi') + config_args.append("--without-mpi") - if '+hdf5' in spec: - config_args.append('--with-hdf5') + if "+hdf5" in spec: + config_args.append("--with-hdf5") else: - config_args.append('--without-hdf5') + config_args.append("--without-hdf5") - if '+python' in spec: - config_args.append('--with-python') + if "+python" in spec: + config_args.append("--with-python") else: - config_args.append('--without-python') - config_args.append('--without-scheme') + config_args.append("--without-python") + config_args.append("--without-scheme") - if '+single' in spec: - config_args.append('--enable-single') + if "+single" in spec: + config_args.append("--enable-single") - if spec.satisfies('@1.21.0:'): - config_args.append('--enable-maintainer-mode') + if spec.satisfies("@1.21.0:"): + config_args.append("--enable-maintainer-mode") return config_args @@ -110,7 +116,7 @@ class Meep(AutotoolsPackage): # aniso_disp test fails unless installed with harminv # near2far test fails unless installed with gsl - if '+harminv' in spec and '+gsl' in spec: + if "+harminv" in spec and "+gsl" in spec: # Most tests fail when run in parallel # 2D_convergence tests still fails to converge for unknown reasons - make('check', parallel=False) + make("check", parallel=False) |