summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/pdc/package.py42
1 files changed, 42 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/pdc/package.py b/var/spack/repos/builtin/packages/pdc/package.py
new file mode 100644
index 0000000000..2f96d12d79
--- /dev/null
+++ b/var/spack/repos/builtin/packages/pdc/package.py
@@ -0,0 +1,42 @@
+# 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)
+
+from spack import *
+
+
+class Pdc(CMakePackage):
+ """Proactive Data Containers (PDC) software provides an object-centric
+ API and a runtime system with a set of data object management services.
+ These services allow placing data in the memory and storage hierarchy,
+ performing data movement asynchronously, and providing scalable
+ metadata operations to find data objects."""
+
+ homepage = "https://pdc.readthedocs.io/en/latest/"
+ url = "https://github.com/hpc-io/pdc/archive/refs/tags/0.1.tar.gz"
+
+ maintainers = ['houjun', 'sbyna']
+
+ version('0.1', sha256='01b4207ecf71594a7f339c315f2869b3fa8fbd34b085963dc4c1bdc5b66bb93e')
+
+ conflicts('%clang')
+ depends_on('libfabric')
+ depends_on('mercury')
+ depends_on('mpi')
+
+ root_cmakelists_dir = 'src'
+
+ def cmake_args(self):
+ args = [
+ self.define('MPI_C_COMPILER', self.spec['mpi'].mpicc),
+ self.define('BUILD_MPI_TESTING', 'ON'),
+ self.define('BUILD_SHARED_LIBS', 'ON'),
+ self.define('BUILD_TESTING', 'ON'),
+ self.define('PDC_ENABLE_MPI', 'ON'),
+ self.define('CMAKE_C_COMPILER', self.spec['mpi'].mpicc)
+ ]
+
+ if self.spec.satisfies('platform=cray'):
+ args.append("-DRANKSTR_LINK_STATIC=ON")
+ return args