* Added the `spack buildcache preview` sub-command
This is similar to `spack spec -I` but highlights which nodes in a DAG
are relocatable and which are not.
spec.tree has been generalized a little to accept a status function,
instead of always showing the install status
The current implementation works only for ELF, and needs to be
generalized to other platforms.
* Added a test to check if an executable is relocatable or not
This test requires a few commands to be present in the environment.
Currently it will run only under python 3.7 (which uses Xenial instead
of Trusty).
* Added tests for the 'buildcache preview' command.
* Fixed codebase after rebase
* Fixed the list of apt addons for Python 3.7 in travis.yaml
* Only check ELF executables and shared libraries. Skip checking virtual or external packages. (#229)
* Fixed flake8 issues
* Add handling for macOS mach binaries (#231)
The environment modules package has been updated to include
versions up to 4.0.0. The url of the package and the homepage
have been updated accordingly.
The `spack bootstrap` command now builds version 3.2.10 of
the environment-modules package, and will do until #10708
is fixed.
* Make use of new QE multi-valued HDF5 variant interface
* Remove explicit CUDA dependency (which is handled by inheriting
from CudaPackage)
* Update cuda_arch unset variant check
libbeagle compiles against CUDA by default but no there is no mention
of it in the package recipe. This PR adds explicit cuda paths and
variants, and fixes the target architecture as well (for those who
don't have compute_13)
Serial HDF5 in serial QE only works in develop version. This adds
a conflict to the QE package to prevent Spack from trying to build
specs which don't satisfy this constraint.
This restores the use of Package.headers when computing -I options
for building a package that was added in #8136 and reverted in
#10604. #8136 used utility logic that located all header files in
an installation prefix, and calculated the -I options as the
immediate roots containing those header files.
In some cases, for a package containing a directory structure like
prefix/
include/
ex1.h
subdir/
ex2.h
dependents may expect to include ex2.h relative to 'include', and
adding 'prefix/include/subdir' as a -I was causing errors,
in particular if ex2.h has the same name as a system header.
This updates header utility logic to by default return the base
"include" directory when it exists, rather than subdirectories.
It also makes it possible for package implementers to override
Package.headers to return the subdirectory when it is required
(for example with libxml2).
Update older md5 checksums to sha256. Require CMake >= 3.6.0 (updated
from 3.5.0). Remove some third-party depends_on statements (which
were commented out before).
Extract implicit xenv dependency into a new package and add it as an
explicit dependency. Update Gaudi to explicitly depend on older
versions of xenv rather than the latest develop because that
conflicts with Spack's compiler wrappers.
Spack warns users when a dependency package updates CPATH. This
warning message is generating bug reports and alarm in cases where
there is no problem. For now this downgrades the warning message to
the debug level, so it only shows up if something goes wrong for the
user and they ask for more information from Spack.
The nvptx installation support phase (added in 040b658) was always
running for gcc regardless of whether +nvptx was enabled. This
removes the "@when" syntax (which apparently is not working) and
adds a check inside of the "nvptx_install" function to bail out if
+nvptx is not enabled.