summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorNathan Hanford <8302958+nhanford@users.noreply.github.com>2022-04-12 13:31:39 -0700
committerGitHub <noreply@github.com>2022-04-12 13:31:39 -0700
commita3520d14bdf8f78b1a903560e18627ee00d24b0c (patch)
tree333520bd2c5252f86ea58c1d6c5aeef16ed65d03 /var
parent7d534f38d6606e4bbe2e52c64ec9a2c7d0d06863 (diff)
downloadspack-a3520d14bdf8f78b1a903560e18627ee00d24b0c.tar.gz
spack-a3520d14bdf8f78b1a903560e18627ee00d24b0c.tar.bz2
spack-a3520d14bdf8f78b1a903560e18627ee00d24b0c.tar.xz
spack-a3520d14bdf8f78b1a903560e18627ee00d24b0c.zip
Splice differing virtual packages (#27919)
Co-authored-by: Nathan Hanford <hanford1@llnl.gov>
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin.mock/packages/splice-a/package.py30
-rw-r--r--var/spack/repos/builtin.mock/packages/splice-h/package.py3
-rw-r--r--var/spack/repos/builtin.mock/packages/splice-vh/package.py29
3 files changed, 62 insertions, 0 deletions
diff --git a/var/spack/repos/builtin.mock/packages/splice-a/package.py b/var/spack/repos/builtin.mock/packages/splice-a/package.py
new file mode 100644
index 0000000000..ebd37777dd
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/splice-a/package.py
@@ -0,0 +1,30 @@
+# 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 SpliceA(Package):
+ """Simple package with one optional dependency"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/splice-a-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789efghij')
+
+ variant('foo', default=False, description='nope')
+ variant('bar', default=False, description='nope')
+ variant('baz', default=False, description='nope')
+
+ depends_on('splice-z')
+ depends_on('splice-z+foo', when='+foo')
+
+ provides('something')
+ provides('somethingelse')
+
+ def install(self, spec, prefix):
+ with open(prefix.join('splice-a'), 'w') as f:
+ f.write('splice-a: {0}'.format(prefix))
+ f.write('splice-z: {0}'.format(spec['splice-z'].prefix))
diff --git a/var/spack/repos/builtin.mock/packages/splice-h/package.py b/var/spack/repos/builtin.mock/packages/splice-h/package.py
index 8236b11766..b09c3b667a 100644
--- a/var/spack/repos/builtin.mock/packages/splice-h/package.py
+++ b/var/spack/repos/builtin.mock/packages/splice-h/package.py
@@ -21,6 +21,9 @@ class SpliceH(Package):
depends_on('splice-z')
depends_on('splice-z+foo', when='+foo')
+ provides('something')
+ provides('somethingelse')
+
def install(self, spec, prefix):
with open(prefix.join('splice-h'), 'w') as f:
f.write('splice-h: {0}'.format(prefix))
diff --git a/var/spack/repos/builtin.mock/packages/splice-vh/package.py b/var/spack/repos/builtin.mock/packages/splice-vh/package.py
new file mode 100644
index 0000000000..e4310f0b42
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/splice-vh/package.py
@@ -0,0 +1,29 @@
+# Copyright 2013-2022 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 SpliceVh(Package):
+ """Simple package with one optional dependency"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/splice-vh-1.0.tar.gz"
+
+ version('1.0', '0123456789abcdef0123456789abcdef')
+
+ variant('foo', default=False, description='nope')
+ variant('bar', default=False, description='nope')
+ variant('baz', default=False, description='nope')
+
+ depends_on('splice-z')
+ depends_on('splice-z+foo', when='+foo')
+
+ provides('something')
+
+ def install(self, spec, prefix):
+ with open(prefix.join('splice-vh'), 'w') as f:
+ f.write('splice-vh: {0}'.format(prefix))
+ f.write('splice-z: {0}'.format(spec['splice-z'].prefix))