Massimiliano Culpo
00c04bd36a
Recover splicing semantic
2025-02-28 23:34:27 +01:00
Massimiliano Culpo
0d6a5c0f06
solver: temporarily enforce compilers to be externals
2025-02-28 23:34:26 +01:00
Massimiliano Culpo
f379b304a1
Remove rule already accounted for by the gcc package
2025-02-28 23:34:26 +01:00
Massimiliano Culpo
ec97e7e6fe
Allow different target flags for different compilers
2025-02-28 23:34:25 +01:00
Massimiliano Culpo
7f093d129b
unit-test: make Spec.compiler behavior stricter
...
Now the adaptor will raise if the Spec has no C, C++,
or Fortran compiler.
2025-02-28 23:34:25 +01:00
Massimiliano Culpo
3a67dfd9e8
Remove a test that should fail according to concretization rules
2025-02-28 23:34:25 +01:00
Massimiliano Culpo
dfd28bc5c0
Add a unit-test for satisfies and __getitem__ semantic
2025-02-28 23:34:24 +01:00
Massimiliano Culpo
0d8549e282
Add a unit-test for compiler self-dependencies
2025-02-28 23:34:24 +01:00
Massimiliano Culpo
895e3c453e
Exempt "compilers" and "runtimes" from default requirements
2025-02-28 23:34:23 +01:00
Massimiliano Culpo
7a429af479
unit-tests: mark a few tests as xfail, or skip, for now
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:23 +01:00
Massimiliano Culpo
32fc8c351d
Fix setting SPACK_TARGET_ARGS for concrete specs
2025-02-28 23:34:22 +01:00
Massimiliano Culpo
eb85f2e862
unit-test: fix reading Cray manifest files
2025-02-28 23:34:22 +01:00
Massimiliano Culpo
28d42eed5e
unit-tests: fix most unit tests to account for the new model
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:21 +01:00
Massimiliano Culpo
f79354c312
Fix setting SPACK_TARGET_ARGS for concrete specs
2025-02-28 23:34:21 +01:00
Massimiliano Culpo
5492b9cc6d
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.
2025-02-28 23:34:21 +01:00
Massimiliano Culpo
5260acc53b
Modify Spec.short_spec to remove compiler info
2025-02-28 23:34:20 +01:00
Massimiliano Culpo
040b827dad
Make Spec.compiler behavior stricter
...
Now the adaptor will raise if the Spec has no C, C++,
or Fortran compiler.
2025-02-28 23:34:20 +01:00
Massimiliano Culpo
54bca16130
asp: fix intel-oneapi-compilers-classic
2025-02-28 23:34:19 +01:00
Massimiliano Culpo
bec6b06c16
Spec.__contains__: traverse only lin/run + direct build
2025-02-28 23:34:19 +01:00
Massimiliano Culpo
27e2e146e2
Exempt "compilers" and "runtimes" from default requirements
2025-02-28 23:34:18 +01:00
Massimiliano Culpo
1ddc0e6b52
Allow self concretization to bootstrap compilers
2025-02-28 23:34:18 +01:00
Massimiliano Culpo
f56aaf1fc3
Add more constraint to providers
2025-02-28 23:34:18 +01:00
Massimiliano Culpo
5b3f4387b3
Fix for duplicate glibc in concretization
2025-02-28 23:34:17 +01:00
Massimiliano Culpo
55196252dd
Improve reporting when bootstrapping from source
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:17 +01:00
Massimiliano Culpo
d3a7a73a00
Improve error messages for statically checked specs
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:16 +01:00
Massimiliano Culpo
21afe2af1f
spec: implemented direct satisfy semantic
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:16 +01:00
Massimiliano Culpo
646c2f42c4
Fixup binary cache reuse
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:15 +01:00
Massimiliano Culpo
1ab3e8c776
Write adaptors for CompilerSpec and Compiler
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:15 +01:00
Massimiliano Culpo
49978d5b6c
Fix reading Cray manifest files
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:14 +01:00
Massimiliano Culpo
a1866d7a4b
(WIP) Fix LMod module generation
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:14 +01:00
Massimiliano Culpo
6674ce6dc4
(WIP) Remove deprecated argument for Spec.format
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:14 +01:00
Massimiliano Culpo
f729353ac3
fixup: spec copies compiler annotation
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:13 +01:00
Massimiliano Culpo
73e0cf07cb
Restore bootstrapping from binaries
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:13 +01:00
Massimiliano Culpo
8842df3f94
Restore bootstrapping from sources
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:12 +01:00
Massimiliano Culpo
8d3132b26b
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>
2025-02-28 23:34:12 +01:00
Massimiliano Culpo
e342de41b2
spec: bump specfile format to v5
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:11 +01:00
Massimiliano Culpo
0415390270
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>
2025-02-28 23:34:11 +01:00
Massimiliano Culpo
5b7caba4a6
Remove spack.compilers Python modules
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:10 +01:00
Massimiliano Culpo
f59c120e0a
(WIP) Install mechanism
2025-02-28 23:34:10 +01:00
Massimiliano Culpo
a0cae04302
(WIP) Recover bootstrapping from binaries on linux
2025-02-28 23:34:10 +01:00
Massimiliano Culpo
496ae0bb31
unit-tests: fix concretization and spack compiler
tests
2025-02-28 23:34:09 +01:00
Massimiliano Culpo
4c06f83c60
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`.
2025-02-28 23:34:09 +01:00
Massimiliano Culpo
5c66cc71fe
builtin.mock et al. : changes to packages
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:08 +01:00
Massimiliano Culpo
0b11775529
Deprecate packages:all:compiler and update default configs
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:08 +01:00
Massimiliano Culpo
a10f3295bc
directives: remove workaround for the c, cxx and fortran language
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:07 +01:00
Massimiliano Culpo
285926cb69
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.
2025-02-28 23:34:07 +01:00
Massimiliano Culpo
da02a4a606
Allow reading old JSON files
2025-02-28 23:34:06 +01:00
Massimiliano Culpo
37dd777a51
parse_with_version_concrete: remove compiler=
switch
2025-02-28 23:34:06 +01:00
Massimiliano Culpo
7dc824d1ff
Make CompilerSpec raise on __init__
2025-02-28 23:34:06 +01:00
Massimiliano Culpo
78744b11ae
parser: parse compilers as direct build deps
2025-02-28 23:34:02 +01:00