compiler_mixing: config option applies per-language#51796
Merged
alalazo merged 1 commit intospack:developfrom Jan 16, 2026
Merged
compiler_mixing: config option applies per-language#51796alalazo merged 1 commit intospack:developfrom
compiler_mixing: config option applies per-language#51796alalazo merged 1 commit intospack:developfrom
Conversation
alalazo
requested changes
Jan 13, 2026
When `compiler_mixing: false` is configured, Spack was forcing the C, C++, and Fortran compilers to be the same across all dependencies. The intent was rather to restrict this on a per-language basis, and this commit does that (and adds a test for it). Signed-off-by: Peter Scheibel <scheibel1@llnl.gov>
a937a9e to
5f7a4ae
Compare
alalazo
approved these changes
Jan 16, 2026
alecbcs
pushed a commit
to spack/spack-packages
that referenced
this pull request
Feb 6, 2026
* Revert "ci: disable tutorial pipeline (#3249)" * Revert "tutorial stack: use when_possible and bootstrap gcc12 (new container) (#2277)" This commit re-enables the tutorial stack without using `when_possible` which was leading to extremely long multi round concretization times post spack/spack#51796. Although this implementation of the tutorial stack is not technically correct when using compilers as nodes, it'll allow us to continue to ensure that all of the components of the stack build and are not accidentally broken due to a package PR. The long term solution here is to merge spack/spack#51891 which allows for multiple concretization groups in an environment and thus allows us to bootstrap a gcc compiler and then use it to build additional specs in the tutorial. --------- Signed-off-by: Gregory Becker <becker33@llnl.gov>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
If you set
then it should allow using different compilers for C and Fortran. As it was, #51135 was forcing all dependencies to use the same compiler for all languages.
This also updates the error generation to provide more info about which languages generated a mixing violation (when mixing is disallowed), and the compilers that were selected.