Commit Graph

38737 Commits

Author SHA1 Message Date
Massimiliano Culpo
1a6467c485 dyninst: add missing dependencies 2024-11-19 12:16:43 +01:00
Massimiliano Culpo
da8cbf22dc nvhpc: set run dependency on gcc 2024-11-19 12:16:43 +01:00
Massimiliano Culpo
16489a6e70 builtin: minimal fix for _get_host_config_path 2024-11-19 12:16:42 +01:00
Massimiliano Culpo
fbcb06e247 builtin: changes to packages 2024-11-19 12:16:42 +01:00
Massimiliano Culpo
c4fc739db7 Allow different target flags for different compilers 2024-11-19 12:16:41 +01:00
Massimiliano Culpo
d4d1840400 Fix setting SPACK_TARGET_ARGS for concrete specs 2024-11-19 12:16:41 +01:00
Massimiliano Culpo
09b3e862e3 Fix setting SPACK_TARGET_ARGS for concrete specs 2024-11-19 12:16:40 +01:00
Massimiliano Culpo
df18e29146 Fix concretization of julia
That package depends on llvm as a library, and the rule on compatible
targets for compilers was getting in the way.
2024-11-19 12:16:40 +01:00
Massimiliano Culpo
01aac267e4 Make Spec.compiler behavior stricter
Now the adaptor will raise if the Spec has no C, C++,
or Fortran compiler.
2024-11-19 12:16:40 +01:00
Massimiliano Culpo
013c4b8d3a Make Spec.compiler behavior stricter
Now the adaptor will raise if the Spec has no C, C++,
or Fortran compiler.
2024-11-19 12:16:39 +01:00
Massimiliano Culpo
875abbeb88 unit-tests: remove a few FIXMEs 2024-11-19 12:16:39 +01:00
Massimiliano Culpo
940b130b5e Spec.__contains__: traverse only lin/run + direct build 2024-11-19 12:16:38 +01:00
Massimiliano Culpo
57e42f6a6b Spec.__contains__: traverse only lin/run + direct build 2024-11-19 12:16:38 +01:00
Massimiliano Culpo
5ff86017cb Remove a test that should fail according to concretization rules 2024-11-19 12:16:37 +01:00
Massimiliano Culpo
d48212bc33 Add a unit-test for satisfies and __getitem__ semantic 2024-11-19 12:16:37 +01:00
Massimiliano Culpo
0c5d58e473 Add a unit-test for compiler self-dependencies 2024-11-19 12:16:36 +01:00
Massimiliano Culpo
61ab36582e Exempt "compilers" and "runtimes" from default requirements 2024-11-19 12:16:36 +01:00
Massimiliano Culpo
1740a54130 unit-tests: mark a few tests as xfail, or skip, for now
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:36 +01:00
Massimiliano Culpo
231472884f unit-tests: fix most unit tests to account for the new model
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:35 +01:00
Massimiliano Culpo
fc9017bf61 asp: fix intel-oneapi-compilers-classic 2024-11-19 12:16:35 +01:00
Massimiliano Culpo
4773c1fd12 Exempt "compilers" and "runtimes" from default requirements 2024-11-19 12:16:34 +01:00
Massimiliano Culpo
7df34b3524 Allow self concretization to bootstrap compilers 2024-11-19 12:16:34 +01:00
Massimiliano Culpo
79890ba242 Add more constraint to providers 2024-11-19 12:16:34 +01:00
Massimiliano Culpo
d50ed90ea6 Fix for duplicate glibc in concretization 2024-11-19 12:16:33 +01:00
Massimiliano Culpo
93eb2c0f94 Improve reporting when bootstrapping from source
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:33 +01:00
Massimiliano Culpo
c051450541 Improve error messages for statically checked specs
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:32 +01:00
Massimiliano Culpo
e3e258497c spec: implemented direct satisfy semantic
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:32 +01:00
Massimiliano Culpo
dec0e60d96 compilers_for_arch: improve implementation
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:32 +01:00
Massimiliano Culpo
f610ed9ea2 Fixup binary cache reuse
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:31 +01:00
Massimiliano Culpo
782112e747 Write adaptors for CompilerSpec and Compiler
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:31 +01:00
Massimiliano Culpo
0ef1b1ebfd Make BaseConfiguration pickleable
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:30 +01:00
Massimiliano Culpo
4feed79211 (WIP) Fix cray manifest
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:30 +01:00
Massimiliano Culpo
532e258248 (WIP) Fix LMod module generation
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:30 +01:00
Massimiliano Culpo
cd08cb04c0 (WIP) Remove deprecated argument for Spec.format
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:29 +01:00
Massimiliano Culpo
c86b3da9a9 fixup: spec copies compiler annotation
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:29 +01:00
Massimiliano Culpo
463ac6d6ea Restore bootstrapping from binaries
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:28 +01:00
Massimiliano Culpo
155d381abc Restore bootstrapping from sources
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:28 +01:00
Massimiliano Culpo
d48bddc196 spec: change semantic of __getitem__
Now __getitem__ can pick items in the transitive link/run graph,
or from direct build dependencies.

Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:28 +01:00
Massimiliano Culpo
1dfbf91eac spec: bump specfile format to v5
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:27 +01:00
Massimiliano Culpo
8daad8c00b Overhaul of the spack.compilers package
Now the package contains modules that help using, or
detecting, compiler packages.

Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:27 +01:00
Massimiliano Culpo
ca60f02d0f (WIP) Remove attributes from compilers
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:26 +01:00
Massimiliano Culpo
1505de5b78 (WIP) Install mechanism 2024-11-19 12:16:26 +01:00
Massimiliano Culpo
7be0066fc8 (WIP) Recover bootstrapping from binaries on linux 2024-11-19 12:16:25 +01:00
Massimiliano Culpo
012fd8600a unit-tests: fix concretization and spack compiler tests 2024-11-19 12:16:25 +01:00
Massimiliano Culpo
6270181d0a builtin.mock et al. : changes to packages
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:25 +01:00
Massimiliano Culpo
5f254f77da solver: first working implementation of compiler as nodes
This commit changes the model to treat compilers as nodes, and
drops the concept of a "compiler" as a bundle of a C, C++, and
Fortran compiler.

Implementation does not rely on `Compiler` or `CompilerSpec`.
2024-11-19 12:16:24 +01:00
Massimiliano Culpo
8377c452b4 Deprecate packages:all:compiler and update default configs
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:24 +01:00
Massimiliano Culpo
666f7e6055 directives: remove workaround for the c, cxx and fortran language
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2024-11-19 12:16:23 +01:00
Massimiliano Culpo
f0b23c5614 spack audit: account for % new semantic
Since % means "direct build dependency", we need to exclude
it from the check in audits.
2024-11-19 12:16:23 +01:00
Massimiliano Culpo
3dc4d1b029 Overhaul the spack compiler command
This reverts commit 2c47dddbc1.

Now, `spack compiler` writes by default in packages.yaml. Entries
in old `compilers.yaml` are converted to external specs as a way to
support legacy configuration.

Since this operation is expensive, an environment variable can be
used to enforce the deprecation of `compiler.yaml`.

The --mixed-toolchain option has been deprecated, since it stops to
make sense once compiler are treated as nodes.
2024-11-19 12:16:22 +01:00