- remove the old LGPL license headers from all files in Spack
- add SPDX headers to all files
- core and most packages are (Apache-2.0 OR MIT)
- a very small number of remaining packages are LGPL-2.1-only
* bison: Add missing build dependencies
bison also depends on cmp, which is currently not available in Spack.
* help2man: Add missing build dependency
* m4: Fix build with newer versions of glibc
* openssl: Add missing build dependency
openssl's configure script is actually a Perl script.
* texinfo: Add missing perl dependency
* diffutils: New package
* findutils: Fix build with newer versions of glibc
* mvapich2, mpich: Add missing findutils dependency
* mvapich2: add registration cache and file systems variants, avoid empty --with-pm= if no process manager is specified, add missing leading dash in --disable-silent-rules
Following a comment from Todd, the search path for the files listed in
`filter_compiler_wrappers` can now be narrowed. Anyhow, the function
implementation still makes use of `find`, the rationale being that we
have already seen packages that install artifacts in e.g. architecture
dependent folders. The possibility to have a relative search path might
be a good compromise between the previous approach and the one suggested
in the review.
Also: 'ignore_absent' and 'backup' keyword arguments can be optionally
forwarded to `filter_file`.
Implemented a declarative syntax for the additional behavior that can
get attached to classes. Implemented a function to filter compiler
wrappers that uses the mechanism above.
Modifications:
- added support for multi-valued variants
- refactored code related to variants into variant.py
- added new generic features to AutotoolsPackage that leverage multi-valued variants
- modified openmpi to use new features
- added unit tests for the new semantics
* libpciaccess: Convert to AutotoolsPackage, remove Darwin work-around
Other packages that depend on libpciaccess can do so via a conditional dependency (via a variant); we don’t need a dummy package for Darwin any more.
* Disable libpciaccess dependency on non-Darwin platforms
* hwloc: Remove direct dependency on libpciaccess
Package repositories now look like this:
top-level-dir/
repo.yaml
packages/
libelf/
package.py
mpich/
package.py
...
This leaves room at the top level for additional metadata, source,
per-repo configs, indexes, etc., and it makes it easy to see that
something is a spack repo (just look for repo.yaml and packages).