spack/share/spack
Massimiliano Culpo 2079b888c8
Remove the old concretizer (#45215)
The old concretizer is still used to bootstrap clingo from source. If we switch to a DAG model
where compilers are treated as nodes, we need to either:

1. fix the old concretizer to support this (which is a lot of work and possibly research), or
2. bootstrap `clingo` without the old concretizer.

This PR takes the second approach and gets rid of the old concretizer code. To bootstrap
`clingo`, we store some concrete spec prototypes as JSON, select one according to the
coarse-grained system architecture, and tweak them according to the current host.

The old concretizer and related dead code are removed.  In particular, this removes
`Spec.normalize()` and related methods, which were used in many unit-tests to set
up the test context. The tests have been updated not to use `normalize()`.

- [x] Bootstrap clingo concretization based on a JSON file
- [x] Bootstrap clingo *before* patchelf
- [x] Remove any use of the old concretizer, including:
      * Remove only_clingo and only_original fixtures
      * Remove _old_concretize and _new_concretize
      * Remove _concretize_together_old
      * Remove _concretize_together_new
      * Remove any use of `SPACK_TEST_SOLVER`
      * Simplify CI jobs
- [x] ensure bootstrapping `clingo` works on on Darwin and Windows
- [x] Raise an intelligible error when a compiler is missing
- [x] Ensure bootstrapping works on FreeBSD
- [x] remove normalize and related methods

Signed-off-by: Todd Gamblin <tgamblin@llnl.gov>
2024-08-10 16:12:27 -07:00
..
bash Update copyright year to 2024 (#41919) 2024-01-02 09:21:30 +01:00
bootstrap Update bootstrap buildcache to support Python 3.12 (#40404) 2023-10-11 19:03:17 +02:00
csh Fix setup-env when going back and forth between instances (#40924) 2024-01-05 11:31:32 -06:00
docker Update copyright year to 2024 (#41919) 2024-01-02 09:21:30 +01:00
docs/docker/module-file-tutorial Update copyright year to 2024 (#41919) 2024-01-02 09:21:30 +01:00
fish Update copyright year to 2024 (#41919) 2024-01-02 09:21:30 +01:00
gitlab/cloud_pipelines e4s oneapi ci: try enabling some disabled specs (#45355) 2024-08-01 21:25:30 -07:00
keys update tutorial command for v0.18.0 and new gpg key (#30904) 2022-05-28 02:36:20 +00:00
logo add artisanal handcrafted SVG Spack logo. (#6165) 2017-11-06 22:42:16 -08:00
qa Remove the old concretizer (#45215) 2024-08-10 16:12:27 -07:00
templates containers: rm centos7 since EOL (#45049) 2024-07-04 22:22:23 +02:00
setup-env.csh Remove execution permission from setup-env.sh (#45641) 2024-08-09 13:27:07 -07:00
setup-env.fish Remove execution permission from setup-env.sh (#45641) 2024-08-09 13:27:07 -07:00
setup-env.ps1 Update copyright year to 2024 (#41919) 2024-01-02 09:21:30 +01:00
setup-env.sh Remove execution permission from setup-env.sh (#45641) 2024-08-09 13:27:07 -07:00
setup-tutorial-env.sh Remove execution permission from setup-env.sh (#45641) 2024-08-09 13:27:07 -07:00
spack-completion.bash Remove execution permission from setup-env.sh (#45641) 2024-08-09 13:27:07 -07:00
spack-completion.fish Remove execution permission from setup-env.sh (#45641) 2024-08-09 13:27:07 -07:00