summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorHanqi Guo <guohanqi@gmail.com>2021-02-07 05:46:08 -0600
committerGitHub <noreply@github.com>2021-02-07 12:46:08 +0100
commit4f73dff204777eed61b4ee2747f03277cb5fa294 (patch)
treedfc095d720f87c177d67b135b623c5b0c12dfd91 /var
parent3387cefe1e3be61af8c211ee3374439519eb9572 (diff)
downloadspack-4f73dff204777eed61b4ee2747f03277cb5fa294.tar.gz
spack-4f73dff204777eed61b4ee2747f03277cb5fa294.tar.bz2
spack-4f73dff204777eed61b4ee2747f03277cb5fa294.tar.xz
spack-4f73dff204777eed61b4ee2747f03277cb5fa294.zip
adding new package FTK (the feature tracking kit) (#21493)
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/ftk/package.py62
1 files changed, 62 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/ftk/package.py b/var/spack/repos/builtin/packages/ftk/package.py
new file mode 100644
index 0000000000..7bb1e01fa3
--- /dev/null
+++ b/var/spack/repos/builtin/packages/ftk/package.py
@@ -0,0 +1,62 @@
+# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack import *
+
+
+class Ftk(CMakePackage):
+ """FTK is a library that simplifies, scales, and delivers feature
+ tracking algorithms for scientific data."""
+
+ # Add a proper url for your package's homepage here.
+ homepage = "https://github.com/hguo/ftk"
+ url = "https://github.com/hguo/ftk/archive/0.0.5.tar.gz"
+ git = "https://github.com/hguo/ftk.git"
+
+ # Add a list of GitHub accounts to
+ # notify when the package is updated.
+ maintainers = ['hguo']
+
+ version('master', branch='master')
+ version('dev', branch='dev')
+ version('0.0.5', sha256='9d5c84a73b7761b9fc7dac62d4296df9f3052b722ec1b06518b2b8f51a8d3440')
+ version('0.0.4', sha256='1674904da8d88dbd4c7d2b6a2629883f0444e70aefc99b48d285735d394897fa')
+
+ # variants
+ variant("adios2", default=False)
+ variant("cuda", default=False)
+ variant("gmp", default=True)
+ variant("hdf5", default=False)
+ variant("mpi", default=False)
+ variant("netcdf", default=False)
+ variant("vtk", default=False)
+
+ # optional dependencies
+ depends_on('adios2', when='+adios2')
+ depends_on('cuda', when='+cuda')
+ depends_on('hdf5', when='+hdf5')
+ depends_on('gmp', when='+gmp')
+ depends_on('mpi', when='+mpi')
+ depends_on('netcdf-c', when='+netcdf')
+ depends_on('vtk', when='+vtk')
+
+ def add_cmake_option(self, args, dependency, option):
+ if dependency in self.spec:
+ args.append('-D' + option + '=ON')
+ else:
+ args.append('-D' + option + '=OFF')
+
+ def cmake_args(self):
+ args = []
+
+ self.add_cmake_option(args, '+adios2', 'FTK_USE_ADIOS2')
+ self.add_cmake_option(args, '+cuda', 'FTK_USE_CUDA')
+ self.add_cmake_option(args, '+gmp', 'FTK_USE_GMP')
+ self.add_cmake_option(args, '+hdf5', 'FTK_USE_HDF5')
+ self.add_cmake_option(args, '+mpi', 'FTK_USE_MPI')
+ self.add_cmake_option(args, '+netcdf', 'FTK_USE_NETCDF')
+ self.add_cmake_option(args, '+vtk', 'FTK_USE_VTK')
+
+ return args