From 88d8ca9b6504dca4973784932c0ea90fe8cd3f83 Mon Sep 17 00:00:00 2001 From: Nathan Hanford <8302958+nhanford@users.noreply.github.com> Date: Mon, 4 Apr 2022 14:45:35 -0700 Subject: rewiring of spliced specs (#26873) * tests for rewiring pure specs to spliced specs * relocate text, binaries, and links * using llnl.util.symlink for windows compat. Note: This does not include CLI hooks for relocation. Co-authored-by: Nathan Hanford --- var/spack/repos/builtin.mock/packages/splice-h/package.py | 7 ++++++- var/spack/repos/builtin.mock/packages/splice-t/package.py | 8 +++++++- var/spack/repos/builtin.mock/packages/splice-z/package.py | 6 +++++- 3 files changed, 18 insertions(+), 3 deletions(-) (limited to 'var') 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 d57ddf85d2..8236b11766 100644 --- a/var/spack/repos/builtin.mock/packages/splice-h/package.py +++ b/var/spack/repos/builtin.mock/packages/splice-h/package.py @@ -6,7 +6,7 @@ from spack import * -class SpliceH(AutotoolsPackage): +class SpliceH(Package): """Simple package with one optional dependency""" homepage = "http://www.example.com" @@ -20,3 +20,8 @@ class SpliceH(AutotoolsPackage): depends_on('splice-z') depends_on('splice-z+foo', when='+foo') + + def install(self, spec, prefix): + with open(prefix.join('splice-h'), 'w') as f: + f.write('splice-h: {0}'.format(prefix)) + f.write('splice-z: {0}'.format(spec['splice-z'].prefix)) diff --git a/var/spack/repos/builtin.mock/packages/splice-t/package.py b/var/spack/repos/builtin.mock/packages/splice-t/package.py index f38b627e99..edf373dbf5 100644 --- a/var/spack/repos/builtin.mock/packages/splice-t/package.py +++ b/var/spack/repos/builtin.mock/packages/splice-t/package.py @@ -6,7 +6,7 @@ from spack import * -class SpliceT(AutotoolsPackage): +class SpliceT(Package): """Simple package with one optional dependency""" homepage = "http://www.example.com" @@ -16,3 +16,9 @@ class SpliceT(AutotoolsPackage): depends_on('splice-h') depends_on('splice-z') + + def install(self, spec, prefix): + with open(prefix.join('splice-t'), 'w') as f: + f.write('splice-t: {0}'.format(prefix)) + f.write('splice-h: {0}'.format(spec['splice-h'].prefix)) + f.write('splice-z: {0}'.format(spec['splice-z'].prefix)) diff --git a/var/spack/repos/builtin.mock/packages/splice-z/package.py b/var/spack/repos/builtin.mock/packages/splice-z/package.py index c00c936f9d..793dfd1cfe 100644 --- a/var/spack/repos/builtin.mock/packages/splice-z/package.py +++ b/var/spack/repos/builtin.mock/packages/splice-z/package.py @@ -6,7 +6,7 @@ from spack import * -class SpliceZ(AutotoolsPackage): +class SpliceZ(Package): """Simple package with one optional dependency""" homepage = "http://www.example.com" @@ -16,3 +16,7 @@ class SpliceZ(AutotoolsPackage): variant('foo', default=False, description='nope') variant('bar', default=False, description='nope') + + def install(self, spec, prefix): + with open(prefix.join('splice-z'), 'w') as f: + f.write('splice-z: {0}'.format(prefix)) -- cgit v1.2.3-70-g09d2