summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorEsteban Pauli <40901502+estebanpauli@users.noreply.github.com>2021-09-08 20:56:37 -0700
committerGitHub <noreply@github.com>2021-09-08 20:56:37 -0700
commitd916d801f2c36454ac132a372cb203627eb3e4a4 (patch)
tree54ef186bff7c9038f029b018b441166b8befa9fe /var
parent46d770b416419a21ca6946a266a4ad52c0f866d6 (diff)
downloadspack-d916d801f2c36454ac132a372cb203627eb3e4a4.tar.gz
spack-d916d801f2c36454ac132a372cb203627eb3e4a4.tar.bz2
spack-d916d801f2c36454ac132a372cb203627eb3e4a4.tar.xz
spack-d916d801f2c36454ac132a372cb203627eb3e4a4.zip
sina: new package (#25448)
* Added spackage to build Sina (https://github.com/LLNL/Sina). * Improvements to sina/package.py Made numerous simplifications and improvements to sina/package.py based on PR feedback. * Added licence info * Added maintainers * Changed maintainers to be Github IDs.
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/sina/package.py78
1 files changed, 78 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/sina/package.py b/var/spack/repos/builtin/packages/sina/package.py
new file mode 100644
index 0000000000..b33daf40ec
--- /dev/null
+++ b/var/spack/repos/builtin/packages/sina/package.py
@@ -0,0 +1,78 @@
+# Copyright 2013-2021 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)
+
+import os
+
+from spack import *
+
+
+class Sina(CachedCMakePackage):
+ """Sina C++ Library"""
+
+ homepage = 'https://github.com/LLNL/Sina'
+ url = 'https://github.com/LLNL/Sina/releases/download/v1.10.0/sina-cpp-1.10.0.tar.gz'
+
+ maintainers = [
+ 'estebanpauli',
+ 'HaluskaR',
+ 'murray55',
+ ]
+
+ version('1.10.0', sha256='b34379ce8cc5eca5a0f16893053fac75be14c2109d1beed4c6d48e11f9b281c7')
+
+ variant('docs', default=False,
+ description='Allow generating documentation')
+ variant('adiak', default=False,
+ description='Create interface for calling Sina through Adiak')
+ variant('test', default=False,
+ description='Build tests')
+
+ depends_on('cmake@3.8.0:', type='build')
+ depends_on('adiak', when='+adiak')
+ depends_on('doxygen', type='build', when='+docs')
+ depends_on('conduit')
+
+ def cmake_args(self):
+ return [
+ self.define_from_variant('-DSINA_BUILD_ADIAK_BINDINGS', 'adiak'),
+ self.define_from_variant('-DSINA_BUILD_TESTS', 'test'),
+ self.define_from_variant('-DSINA_BUILD_DOCS', 'docs'),
+ ]
+
+ def initconfig_package_entries(self):
+ entries = [
+ '#' + 78 * '-',
+ '# Library Dependencies',
+ '#' + 78 * '-'
+ ]
+
+ conduit_dir = self.spec['conduit'].prefix
+ entries.append(cmake_cache_path(
+ 'Conduit_DIR',
+ '%s/lib/cmake/conduit' % conduit_dir))
+
+ use_adiak = self.spec.satisfies('^adiak')
+ entries.append(cmake_cache_option('SINA_BUILD_ADIAK_BINDINGS', use_adiak))
+ if use_adiak:
+ adiak_dir = self.spec['adiak'].prefix
+ entries.append(cmake_cache_path(
+ 'adiak_DIR',
+ '%s/lib/cmake/adiak/' % adiak_dir))
+
+ entries.append('#' + 78 * '-')
+ entries.append('# Devtools')
+ entries.append('#' + 78 * '-')
+
+ build_tests = self.spec.satisfies('+test')
+ entries.append(cmake_cache_option('SINA_BUILD_TESTS', build_tests))
+
+ build_docs = self.spec.satisfies('+docs')
+ entries.append(cmake_cache_option('SINA_BUILD_DOCS', build_docs))
+ if build_docs:
+ doxygen_bin_dir = self.spec['doxygen'].prefix.bin
+ entries.append(cmake_cache_path(
+ 'DOXYGEN_EXECUTABLE', os.path.join(doxygen_bin_dir, 'doxygen')))
+
+ return entries