Massimiliano Culpo
ae1f39339b
Fix failing test self dependency
...
TO BE CHECKED
2025-02-28 23:34:49 +01:00
Massimiliano Culpo
30ebf3595b
Don't use compilers from buildcache if reuse is false
2025-02-28 23:34:48 +01:00
Massimiliano Culpo
7800c4c51b
Allow using compilers from build caches
2025-02-28 23:34:48 +01:00
Massimiliano Culpo
476f2a63e2
Add support for externals with compiler specified
...
Compiler annotation is taken into account when
selecting externals as dependencies.
2025-02-28 23:34:47 +01:00
Massimiliano Culpo
745a0fac8a
Improve default selection of compilers
...
This splits optimization on providers, and
puts selection of default compilers at lower
priority wrt selection of e.g. mpi or lapack
provider.
This is so that, on systems where 2 or more
compilers are used (e.g. macOS), clingo would
not make weird choices for mpi or lapack, in
order to minimize compiler penalty due to
using different compilers on the same node.
2025-02-28 23:34:47 +01:00
Massimiliano Culpo
660fff39eb
rpcsvc-proto: point to compiler-wrapper, instead of Spack dir
...
https://gitlab.spack.io/spack/spack/-/jobs/15003090
2025-02-28 23:34:47 +01:00
Massimiliano Culpo
d4b5eb2be6
Improve heuristic.lp
2025-02-28 23:34:46 +01:00
Massimiliano Culpo
ddeab9879e
Improve stability of DAG when using multiple compilers for the same language
2025-02-28 23:34:46 +01:00
Massimiliano Culpo
5920d31b25
unit-test: remove test that is superseded by new semantic
2025-02-28 23:34:45 +01:00
Massimiliano Culpo
f75555136b
No flag propagation when compilers are different
...
Flag propagation is not activated on nodes with
a compiler that is different from the propagation
source
2025-02-28 23:34:45 +01:00
Massimiliano Culpo
922b9b0e50
solver: test that we can build llvm%gcc
2025-02-28 23:34:44 +01:00
Harmen Stoppels
da916a944e
remove unused code
2025-02-28 23:34:44 +01:00
Harmen Stoppels
6d224d8a6f
simplify imports
2025-02-28 23:34:43 +01:00
Massimiliano Culpo
15f0871a6f
Add an alias for SpecfileLatest
2025-02-28 23:34:43 +01:00
Massimiliano Culpo
99489c236f
Modify granularity of CachedCMakeBuilder.cache_name
2025-02-28 23:34:42 +01:00
Massimiliano Culpo
e94ee8b2f3
Fix version numbers
2025-02-28 23:34:42 +01:00
Massimiliano Culpo
ac72170e91
Spack fails with an error the local database is at an outdated version
...
With this commit Spack fails with an error and an informative message,
if the local store is at an outdated version. This usually happens when
people upgrade their Spack version, but retain the same configuration as
before.
Since updating the DB without an explicit consent of the user means making
the local store incompatible with previous versions of Spack, here we opt
to error out and give the user the choice to either reindex, or update the
configuration.
2025-02-28 23:34:42 +01:00
Massimiliano Culpo
fc2793f98f
Improve info messages
2025-02-28 23:34:41 +01:00
Massimiliano Culpo
a8dd481bbf
Allow using compilers from the local store
...
To do this we introduce a new fact, that is true
when a compiler is used as a link dependency.
If we don't have this fact, we enforce only run
dependencies in the ASP problem.
2025-02-28 23:34:41 +01:00
Massimiliano Culpo
56c685e374
compiler-wrapper: install in libexec/spack instead of spack/bin
2025-02-28 23:34:40 +01:00
Massimiliano Culpo
42c5cc4dc8
Fix for compiler search and conversion from compilers.yaml
...
* Don't write to platform scope
* Remove leftover print about compilers.yaml
* Avoid merging all the scopes when writing compilers
2025-02-28 23:34:40 +01:00
Massimiliano Culpo
e0d889fb91
Remove dead code after "spack compiler" reworking
2025-02-28 23:34:39 +01:00
Massimiliano Culpo
4566ad9c2b
Tolerate compiler tokens in external specs
2025-02-28 23:34:39 +01:00
Massimiliano Culpo
dc12cfde75
Remove artifacts of frequent rebase
...
fixup
2025-02-28 23:34:38 +01:00
Massimiliano Culpo
b3cc4b4cb3
Fix non-determinism when using mixed compilers
2025-02-28 23:34:38 +01:00
Massimiliano Culpo
bb65d495d9
Fix setting build dependencies of a build dependency from cli
2025-02-28 23:34:38 +01:00
Massimiliano Culpo
8ccf626306
compiler-wrapper: decouple the package from Spack configuration
2025-02-28 23:34:37 +01:00
Massimiliano Culpo
11065ff318
Remove attribute spuriously added during rebase
2025-02-28 23:34:37 +01:00
Harmen Stoppels
b9b7ef424c
Fix test_pkg_flags_from_compiler_and_none
2025-02-28 23:34:36 +01:00
Massimiliano Culpo
91b09cfeb6
Better handling of legacy compilers.yaml
...
After this commit, entries in compilers.yaml will be "converted"
to entries in packages.yaml, only if no other compiler is present,
when Spack tries to initialize automatically the compiler
configuration.
2025-02-28 23:34:36 +01:00
Massimiliano Culpo
57b8167ead
Spec: relax a few type-hints to accept a Sequence
2025-02-28 23:34:35 +01:00
Massimiliano Culpo
aa10284a0a
Flatten the default store projection
2025-02-28 23:34:35 +01:00
Massimiliano Culpo
ec8c6e565d
Update pipeline configurations
...
Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2025-02-28 23:34:34 +01:00
Massimiliano Culpo
324d427292
builtin: reduce boilerplate when accessing package attributes
2025-02-28 23:34:34 +01:00
Massimiliano Culpo
4bd9ff2ef0
Use a stub compiler wrapper on windows
2025-02-28 23:34:34 +01:00
Massimiliano Culpo
95115d4290
Turn the compiler wrapper into a package
...
Remove the compiler wrappers from core Spack, and move
the relevant code into the "compiler-wrapper" package.
2025-02-28 23:34:33 +01:00
Massimiliano Culpo
e5f8049f3d
builtin: add cc, cxx, and fortran properties
...
These properties are implemented in the same way in each compiler
package, at least for external specs. So, push the implementation
to the base class for now.
This needs to be revisited, to make the base class less dependent
on C, C++, and Fortran.
2025-02-28 23:34:33 +01:00
Massimiliano Culpo
da48fdd864
mapl: fix conditional on gfortran
2025-02-28 23:34:32 +01:00
Massimiliano Culpo
f8117e8182
builtin: minimal fix for _get_host_config_path
2025-02-28 23:34:32 +01:00
Massimiliano Culpo
533973671b
builtin: fix for Windows pipelines
2025-02-28 23:34:31 +01:00
Massimiliano Culpo
cf9a148708
builtin: changes to packages
2025-02-28 23:34:31 +01:00
Massimiliano Culpo
d6f0ce3e5a
lmod: do not init compilers
2025-02-28 23:34:30 +01:00
Massimiliano Culpo
d6cb54da4b
Write repo caches in specfile specific files
...
In this way we'll never encounter weird errors, when bumping the
specfile version. There are other unrelated issues with repo caches,
but those can be resolved separately.
2025-02-28 23:34:30 +01:00
Massimiliano Culpo
f6851a56e8
compiler: add cc, cxx, and fortran properties
...
These properties are implemented in the same way in each compiler
package, at least for external specs. So, push the implementation
to the base class for now.
This needs to be revisited, to make the base class less dependent
on C, C++, and Fortran.
2025-02-28 23:34:29 +01:00
Massimiliano Culpo
95820a91b3
Fix print in spack compiler info
2025-02-28 23:34:29 +01:00
Harmen Stoppels
c3ddea9061
delete redundant spack.concretize.CHECK_COMPILER_EXISTENCE
2025-02-28 23:34:28 +01:00
Massimiliano Culpo
0bd8ca4e08
Raise UnsupportedCompilerFlag when a flag is not supported
2025-02-28 23:34:28 +01:00
Massimiliano Culpo
2d40025ae3
Remove SPACK_COMPILER_SPEC from the environment
2025-02-28 23:34:28 +01:00
Massimiliano Culpo
47d01c086c
Prepend compiler wrappers path last, so we don't risk finding externals
2025-02-28 23:34:27 +01:00
Massimiliano Culpo
00c04bd36a
Recover splicing semantic
2025-02-28 23:34:27 +01:00