diff options
author | Peter Scheibel <scheibel1@llnl.gov> | 2020-05-05 17:37:34 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-05 17:37:34 -0700 |
commit | b030a81a5f1d4a02cf611fc771bbeaf0bfc7963e (patch) | |
tree | 4c5f8dfe2b9aa42587496af9b2b4d4f499893b79 /.github/CONTRIBUTING.md | |
parent | 7e5874c25029c2649d5ded2621533b17bd7c5196 (diff) | |
download | spack-b030a81a5f1d4a02cf611fc771bbeaf0bfc7963e.tar.gz spack-b030a81a5f1d4a02cf611fc771bbeaf0bfc7963e.tar.bz2 spack-b030a81a5f1d4a02cf611fc771bbeaf0bfc7963e.tar.xz spack-b030a81a5f1d4a02cf611fc771bbeaf0bfc7963e.zip |
Automatically find externals (#15158)
Add a `spack external find` command that tries to populate
`packages.yaml` with external packages from the user's `$PATH`. This
focuses on finding build dependencies. Currently, support has only been
added for `cmake`.
For a package to be discoverable with `spack external find`, it must define:
* an `executables` class attribute containing a list of
regular expressions that match executable names.
* a `determine_spec_details(prefix, specs_in_prefix)` method
Spack will call `determine_spec_details()` once for each prefix where
executables are found, passing in the path to the prefix and the path to
all found executables. The package is responsible for invoking the
executables and figuring out what type of installation(s) are in the
prefix, and returning one or more specs (each with version, variants or
whatever else the user decides to include in the spec).
The found specs and prefixes will be added to the user's `packages.yaml`
file. Providing the `--not-buildable` option will mark all generated
entries in `packages.yaml` as `buildable: False`
Diffstat (limited to '.github/CONTRIBUTING.md')
0 files changed, 0 insertions, 0 deletions