From da1d533877f90610571b72f070c01e13b9729108 Mon Sep 17 00:00:00 2001 From: Greg Becker Date: Fri, 8 Nov 2024 17:07:40 -0800 Subject: fix patched dependencies across repositories (#42463) Currently, if a package has a dependency from another repository and patches it, generation of the patch cache will fail. Concretization succeeds if a fixed patch cache is in place. - [x] don't assume that patched dependencies are in the same repo when indexing - [x] add some test fixtures to support multi-repo tests. --------- Signed-off-by: Todd Gamblin Co-authored-by: Todd Gamblin --- var/spack/repos/builtin.mock/README.md | 7 +++++++ .../patch-a-foreign-dependency/mock2-package.patch | 11 +++++++++++ .../packages/patch-a-foreign-dependency/package.py | 17 +++++++++++++++++ var/spack/repos/builtin.mock2/README.md | 6 ++++++ .../packages/mock2-patched-dependency/package.py | 15 +++++++++++++++ var/spack/repos/builtin.mock2/repo.yaml | 2 ++ 6 files changed, 58 insertions(+) create mode 100644 var/spack/repos/builtin.mock/README.md create mode 100644 var/spack/repos/builtin.mock/packages/patch-a-foreign-dependency/mock2-package.patch create mode 100644 var/spack/repos/builtin.mock/packages/patch-a-foreign-dependency/package.py create mode 100644 var/spack/repos/builtin.mock2/README.md create mode 100644 var/spack/repos/builtin.mock2/packages/mock2-patched-dependency/package.py create mode 100644 var/spack/repos/builtin.mock2/repo.yaml (limited to 'var') diff --git a/var/spack/repos/builtin.mock/README.md b/var/spack/repos/builtin.mock/README.md new file mode 100644 index 0000000000..5a5f6e747f --- /dev/null +++ b/var/spack/repos/builtin.mock/README.md @@ -0,0 +1,7 @@ +# `builtin.mock` + +This repository and the secondary mock repo `builtin.mock2` contain mock packages used +by Spack tests. + +Most tests are in `builtin.mock`, but `builtin.mock2` is used for scenarios where we +need multiple repos for testing. diff --git a/var/spack/repos/builtin.mock/packages/patch-a-foreign-dependency/mock2-package.patch b/var/spack/repos/builtin.mock/packages/patch-a-foreign-dependency/mock2-package.patch new file mode 100644 index 0000000000..02bfad9103 --- /dev/null +++ b/var/spack/repos/builtin.mock/packages/patch-a-foreign-dependency/mock2-package.patch @@ -0,0 +1,11 @@ +--- patch-a-dependency/configure 2018-08-13 23:13:51.000000000 -0700 ++++ patch-a-dependency/configure.patched 2018-08-13 23:14:15.000000000 -0700 +@@ -2,7 +2,7 @@ + prefix=$(echo $1 | sed 's/--prefix=//') + cat > Makefile <