From c0d490ffbe7268e72b3214764d7b03aee9f65502 Mon Sep 17 00:00:00 2001 From: Massimiliano Culpo Date: Fri, 31 Jul 2020 13:07:48 +0200 Subject: Simplify the detection protocol for packages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Packages can implement “detect_version” to support detection of external instances of a package. This is generally easier than implementing “determine_spec_details”. The API for determine_version is similar: for example you can return “None” to indicate that an executable is not an instance of a package. Users may implement a “determine_variants” method for a package. When doing external detection, executables are grouped by version and each group results in a single invocation of “determine_variants” for the associated spec. The method returns a string specifying the variants for the package. The method may additionally return a dictionary representing extra attributes for the package. These will be stored in the spec yaml and can be retrieved from self.spec.extra_attributes The Spack GCC package has been updated with an implementation of “determine_variants” which adds the following extra attributes to the package: c, cxx, fortran --- share/spack/spack-completion.bash | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'share') diff --git a/share/spack/spack-completion.bash b/share/spack/spack-completion.bash index 329b9f28ff..876ed0c647 100755 --- a/share/spack/spack-completion.bash +++ b/share/spack/spack-completion.bash @@ -853,7 +853,7 @@ _spack_external() { then SPACK_COMPREPLY="-h --help" else - SPACK_COMPREPLY="find" + SPACK_COMPREPLY="find list" fi } @@ -866,6 +866,10 @@ _spack_external_find() { fi } +_spack_external_list() { + SPACK_COMPREPLY="-h --help" +} + _spack_fetch() { if $list_options then -- cgit v1.2.3-70-g09d2