summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElsa Gonsiorowski <gonsie@me.com>2017-10-31 18:07:00 -0700
committerChristoph Junghans <christoph.junghans@gmail.com>2017-10-31 19:07:00 -0600
commitb53adc90f71ed24bfa405a044b65abfafad71450 (patch)
tree87454155e57c3be9f99b466f702aa50bd16d9b60
parent8a812294e0f4223aa9192c69128803f97e0f554f (diff)
downloadspack-b53adc90f71ed24bfa405a044b65abfafad71450.tar.gz
spack-b53adc90f71ed24bfa405a044b65abfafad71450.tar.bz2
spack-b53adc90f71ed24bfa405a044b65abfafad71450.tar.xz
spack-b53adc90f71ed24bfa405a044b65abfafad71450.zip
MACSio and JSON-CWX packages (#6018)
-rw-r--r--var/spack/repos/builtin/packages/ecp-proxy-apps/package.py1
-rw-r--r--var/spack/repos/builtin/packages/json-cwx/package.py48
-rw-r--r--var/spack/repos/builtin/packages/macsio/package.py118
3 files changed, 167 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py b/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
index 4aa6bf7f26..32cdea3a7e 100644
--- a/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
+++ b/var/spack/repos/builtin/packages/ecp-proxy-apps/package.py
@@ -46,6 +46,7 @@ class EcpProxyApps(Package):
depends_on('candle-benchmarks@1.0', when='@1.0')
depends_on('comd@1.1', when='@1.0')
depends_on('laghos@1.0', when='@1.0')
+ depends_on('macsio@1.0', when='@1.0')
depends_on('miniamr@1.4.0', when='@1.0')
depends_on('minife@2.1.0', when='@1.0')
depends_on('minitri@1.0', when='@1.0')
diff --git a/var/spack/repos/builtin/packages/json-cwx/package.py b/var/spack/repos/builtin/packages/json-cwx/package.py
new file mode 100644
index 0000000000..7cdfcb25ed
--- /dev/null
+++ b/var/spack/repos/builtin/packages/json-cwx/package.py
@@ -0,0 +1,48 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/llnl/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class JsonCwx(AutotoolsPackage):
+ """JSON-C with Extensions"""
+
+ homepage = "https://github.com/LLNL/json-cwx"
+ url = "https://github.com/LLNL/json-cwx/archive/0.12.tar.gz"
+
+ version('0.12', '8ba44ef7f463f004b4b14c6d8d85a2b70db977a4')
+
+ depends_on('autoconf', type='build')
+ depends_on('automake', type='build')
+ depends_on('libtool', type='build')
+ depends_on('m4', type='build')
+
+ parallel = False
+
+ configure_directory = 'json-cwx'
+
+ def autoreconf(self, spec, prefix):
+ with working_dir('json-cwx'):
+ autogen = Executable("./autogen.sh")
+ autogen()
diff --git a/var/spack/repos/builtin/packages/macsio/package.py b/var/spack/repos/builtin/packages/macsio/package.py
new file mode 100644
index 0000000000..a5e2415ef5
--- /dev/null
+++ b/var/spack/repos/builtin/packages/macsio/package.py
@@ -0,0 +1,118 @@
+##############################################################################
+# Copyright (c) 2013-2017, Lawrence Livermore National Security, LLC.
+# Produced at the Lawrence Livermore National Laboratory.
+#
+# This file is part of Spack.
+# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
+# LLNL-CODE-647188
+#
+# For details, see https://github.com/llnl/spack
+# Please also see the NOTICE and LICENSE files for our notice and the LGPL.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License (as
+# published by the Free Software Foundation) version 2.1, February 1999.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
+# conditions of the GNU Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+##############################################################################
+from spack import *
+
+
+class Macsio(CMakePackage):
+ """A Multi-purpose, Application-Centric, Scalable I/O Proxy Application
+ """
+ tags = ['proxy-app', 'ecp-proxy-app']
+
+ homepage = "http://llnl.github.io/MACSio"
+ url = "https://github.com/LLNL/MACSio/archive/1.0.tar.gz"
+
+ version('1.0', '90e8e00ea84af2a47bee387ad331dbde')
+ version('develop', git='https://github.com/LLNL/MACSio.git',
+ branch='master')
+
+ variant('mpi', default=True, description="Build MPI plugin")
+ variant('silo', default=True, description="Build with SILO plugin")
+ # TODO: multi-level variants for hdf5
+ variant('hdf5', default=False, description="Build HDF5 plugin")
+ variant('zfp', default=False, description="Build HDF5 with ZFP compression")
+ variant('szip', default=False, description="Build HDF5 with SZIP compression")
+ variant('zlib', default=False, description="Build HDF5 with ZLIB compression")
+ variant('pdb', default=False, description="Build PDB plugin")
+ variant('exodus', default=False, description="Build EXODUS plugin")
+ variant('scr', default=False, description="Build with SCR support")
+ # TODO: typhonio not in spack
+ # variant('typhonio', default=False, description="Build TYPHONIO plugin")
+
+ depends_on('json-cwx')
+ depends_on('mpi', when="+mpi")
+ depends_on('silo', when="+silo")
+ depends_on('hdf5', when="+hdf5")
+ # depends_on('hdf5+szip', when="+szip")
+ depends_on('exodusii', when="+exodus")
+ # pdb is packaged with silo
+ depends_on('silo', when="+pdb")
+ # depends_on('typhonio', when="+typhonio")
+ depends_on('scr', when="+scr")
+
+ def cmake_args(self):
+ spec = self.spec
+ cmake_args = []
+
+ if "~mpi" in spec:
+ cmake_args.append("-DENABLE_MPI=OFF")
+
+ if "~silo" in spec:
+ cmake_args.append("-DENABLE_SILO_PLUGIN=OFF")
+
+ if "+silo" in spec:
+ cmake_args.append("-DWITH_SILO_PREFIX={0}"
+ .format(spec['silo'].prefix))
+
+ if "+pdb" in spec:
+ # pdb is a part of silo
+ cmake_args.append("-DENABLE_PDB_PLUGIN=ON")
+ cmake_args.append("-DWITH_SILO_PREFIX={0}"
+ .format(spec['silo'].prefix))
+ if "+hdf5" in spec:
+ cmake_args.append("-DENABLE_HDF5_PLUGIN=ON")
+ cmake_args.append("-DWITH_HDF5_PREFIX={0}"
+ .format(spec['hdf5'].prefix))
+ # TODO: Multi-level variants
+ # ZFP not in hdf5 spack package??
+ # if "+zfp" in spec:
+ # cmake_args.append("-DENABLE_HDF5_ZFP")
+ # cmake_args.append("-DWITH_ZFP_PREFIX={0}"
+ # .format(spec['silo'].prefix))
+ # SZIP is an hdf5 spack variant
+ # if "+szip" in spec:
+ # cmake_args.append("-DENABLE_HDF5_SZIP")
+ # cmake_args.append("-DWITH_SZIP_PREFIX={0}"
+ # .format(spec['SZIP'].prefix))
+ # ZLIB is on by default, @1.1.2
+ # if "+zlib" in spec:
+ # cmake_args.append("-DENABLE_HDF5_ZLIB")
+ # cmake_args.append("-DWITH_ZLIB_PREFIX={0}"
+ # .format(spec['silo'].prefix))
+
+ # TODO: typhonio not in spack
+ # if "+typhonio" in spec:
+ # cmake_args.append("-DENABLE_TYPHONIO=ON")
+ # cmake_args.append("-DWITH_TYPHONIO_PREFIX={0}"
+ # .format(spec['typhonio'].prefix))
+
+ if "+exodus" in spec:
+ cmake_args.append("-DENABLE_EXODUS_PLUGIN=ON")
+ cmake_args.append("-DWITH_EXODUS_PREFIX={0}"
+ .format(spec['exodusii'].prefix))
+ # exodus requires netcdf
+ cmake_args.append("-DWITH_NETCDF_PREFIX={0}"
+ .format(spec['netcdf'].prefix))
+
+ return cmake_args