summaryrefslogtreecommitdiff
path: root/bin/sbang
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2020-11-11 01:02:05 -0800
committerTodd Gamblin <tgamblin@llnl.gov>2020-11-17 10:04:13 -0800
commit44aa94a210e8189a452030afd0627d9e3faac9d1 (patch)
treea7e91d0066fbccbc6c426783e3bcdc046d6fa2dc /bin/sbang
parent0620d954f59bd80b4dc229d13ecaa8ba04b49a70 (diff)
downloadspack-44aa94a210e8189a452030afd0627d9e3faac9d1.tar.gz
spack-44aa94a210e8189a452030afd0627d9e3faac9d1.tar.bz2
spack-44aa94a210e8189a452030afd0627d9e3faac9d1.tar.xz
spack-44aa94a210e8189a452030afd0627d9e3faac9d1.zip
concretizer: spec_clauses() shouldn't emit node_compiler_hard for rule bodies.
`node_compiler_hard()` means that something explicitly asked for a node's compiler to be set -- i.e., it's not inherited, it's required. We're generating this in spec_clauses even for specs in rule bodies, which results in conditions like this for optional dependencies: In py-torch/package.py: depends_on('llvm-openmp', when='%apple-clang +openmp') In the generated ASP: declared_dependency("py-torch","llvm-openmp","build") :- node("py-torch"), variant_value("py-torch","openmp","True"), node_compiler("py-torch","apple-clang"), node_compiler_hard("py-torch","apple-clang"), node_compiler_version_satisfies("py-torch","apple-clang",":"). The `node_compiler_hard` there means we would have to *explicitly* set py-torch's compiler to trigger the llvm-openmp dependency, rather than just letting it be set by preferences. This is wrong; the dependency should be there regardless of how the compiler was set. - [x] remove fn.node_compiler_hard() call from spec_clauses when generating rule body clauses.
Diffstat (limited to 'bin/sbang')
0 files changed, 0 insertions, 0 deletions