The previous approach had the big downside of bypassing the specified variants through the specified dependencies of variants. E.g. dune+pdelab~functions would silently ignore the ~functions aspect, because +pdelab enforces the installation of dune-functions. There is no direct mechanism in Spack to specify such dependencies in a way that enforces the correct variants on dependent modules. I have now added conflicts between variants that reflect the Dune module dependencies. In that case dune+pdelab~functions would throw an error. This comes at the cost that a command such as spack install dune+pdelab is not possible anymore. Instead the user needs to specify the dependent modules as well: spack install dune+pdelab+functions+typetree Note that in order to remove some burden from users, I removed the variants for the core modules - they are always installed. |
||
---|---|---|
.. | ||
package.py | ||
virtualenv_from_envvariable.patch |