spack install: simplify behavior when inside environments (#35206)
Example one: ``` spack install --add x y z ``` is equivalent to ``` spack add x y z spack concretize spack install --only-concrete ``` where `--only-concrete` installs without modifying spack.yaml/spack.lock Example two: ``` spack install ``` concretizes current spack.yaml if outdated and installs all specs. Example three: ``` spack install x y z ``` concretizes current spack.yaml if outdated and installs *only* concrete specs in the environment that match abstract specs `x`, `y`, or `z`.
This commit is contained in:
@@ -19,11 +19,11 @@ SPACK_INSTALL_FLAGS ?=
|
||||
{% endif %}
|
||||
|
||||
# The spack install commands are of the form:
|
||||
# spack -e my_env --no-add --only=package --only=concrete /hash
|
||||
# spack -e my_env --only=package --only=concrete /hash
|
||||
# This is an involved way of expressing that Spack should only install
|
||||
# an individual concrete spec from the environment without deps.
|
||||
{{ install_target }}/%: | {{ dirs_target }}
|
||||
{{ jobserver_support }}$(SPACK) -e '{{ environment }}' install $(SPACK_BUILDCACHE_FLAG) $(SPACK_INSTALL_FLAGS) --only-concrete --only=package --no-add /$(HASH) # $(SPEC)
|
||||
{{ jobserver_support }}$(SPACK) -e '{{ environment }}' install $(SPACK_BUILDCACHE_FLAG) $(SPACK_INSTALL_FLAGS) --only-concrete --only=package /$(HASH) # $(SPEC)
|
||||
@touch $@
|
||||
|
||||
{{ install_deps_target }}/%: | {{ dirs_target }}
|
||||
|
Reference in New Issue
Block a user