* Add --with-mpi=spec['mpi'].name at configure step to avoid error when finding 2 MPI implementations
* Improve scorep package with different compilers and mpi providers
Merge work from multiple contributors on the mesa package. This
includes the following changes and decisions:
* Added in mesa +hwrender support
* make +swrender the default selection since this represents a very
common usage case (ie, cluster usage)
* leave ~llvm as the default, since inadvertently building this package
could take a very long time. May need to revisit this assumption in
the future since the performance difference can be quite substantial.
* build libGLESv1+2 and libGL for all variants
* avoid dependence on dri/libdrm when ~hwrender
* disable gallium drivers if none are requested
- '\b' in regular expression needs to be in a raw string (r'\b')
- Regression test that would've caught this was unintentionally disabled
- This fixes the string and the test
Fixes a problem in ymake-filter: The line buffer is currently hardcoded to be
2048 bytes large but some Makefiles contain lines longer than that. This
caused the Makefiles to sometimes not be generated, consequently failing parts
of the build.
Fixes#4112
This commit extends the support of the AutotoolsPackage methods
`with_or_without` and `enable_or_disable` to bool-valued variants. It
also defines for those functions a convenience short-cut if the
activation parameter is the prefix of a spec (like in
`--with-{pkg}={prefix}`).
This commit also includes:
* Updates to viennarna and adios accordingly: they have been modified to
use `enable_or_disable` and `with_or_without`
* Improved docstrings in `autotools.py`. Raise `KeyError` if name is
not a variant.
* fix armadillo macro expansions
- most compilers `#define linux 1`
- armadillo does raw pasting of include directories in code
- this means macro expansion of `linux-x86_64` -> `1-x86_64`
- new version, previous download url seems broken
- lib64 instead of lib?
- needs verification, was required for intel, works for others
* flake8: two spaces is modules, one for classes
* add some explanation of how the patch works
* use p1 patch file with -U0 to prepend undef linux
* armadillo v8.100.1
* Improve PDToolkit support for different compilers
PDT dependency of TAU profiler doesn't use CC, CXX eb variables and needs command line arguments for compiler identification. If we don't pass compiler id then it uses gcc and result in link time errors while building TAU. This patch fixes it; tested with PGI and Intel compilers.
Renames the existing bootstrap command to 'clone'. Repurposes
'spack bootstrap' to install packages that are useful to the
operation of Spack (for now this is just environment-modules).
For bash and ksh users running setup-env.sh, if a Spack-installed
instance of environment-modules is detected and environment modules
and dotkit are not externally available, Spack will define the
'module' command in the user's shell to use the environment-modules
built by Spack.
* Added support to query packages by tags.
- The querying commands `spack list`, `spack find` and `spack info` have
been modified to support querying by tags. Tests have been added to
check that the feature is working correctly under what should be the
most frequent use cases.
* Refactored Repo class to make insertion of new file caches easier.
- Added the class FastPackageChecker. This class is a Mapping from
package names to stat info, that gets memoized for faster access.
- Extracted the creation of a ProviderIndex to its own factory function.
* Added a cache file for tags.
- Following what was done for providers, a TagIndex class has been added.
This class can serialize and deserialize objects from json. Repo and
RepoPath have a new method 'packages_with_tags', that uses the TagIndex
to compute a list of package names that have all the tags passed as
arguments.
On Ubuntu 14.04 the effect if the cache reduces the time for spack list
from ~3sec. to ~0.3sec. after the cache has been built.
* Fixed colorization of `spack info`
pkgconf is a new pkg-config implementation with additional features and
no external dependencies.
For a detailed comparison, see: http://pkgconf.org/features.html
Adds a development version of boost, based on their github master
repo.
Git clones the submodules forever, but installs! :)
Useful for testing since boost tends to break complex software
dependencies quite often. This helps testing it before releases.
* Package 'cdo': removed obsolete version 1.6.9.
* Package 'cdo': updated urls.
* Package 'cdo': added version 1.9.0.
* Package 'cdo': no need to specify per version urls.
* Package 'cdo': switched from Package to AutotoolsPackage.
* Package 'cdo': added new variant 'openmp'.
* Package 'cdo': variants 'curl' and 'magics' by default.
Users can now add an optional custom message to the conflicts directive.
Layout on screen has been changed to improve readability and the long
spec is shown in tree format. Two conflicts in `espresso` have been
modified to showcase the feature.
- Python I/O would not properly interleave (or appear) with output from
subcommands.
- Add a flusing wrapper around sys.stdout and sys.stderr when
redirecting, so that Python output is synchronous with that of
subcommands.
- This should speed-up Travis CI tests and refers to #5049
- Travis uses build-stages to group tests together
- The idea is to let fast tests fail first, then move to longer ones.
- Added external perl to avoid download failure from CPAN and reduce build time
- Disabling perl-dbi: continues to fail with (504 Gateway Time-out) on Travis
- We now cover all the build systems in tests:
- Add back `openblas` to Travis as a separate package.
- Switched `openblas` for `astyle` to build a simpler MakefilePackage.
- Added 'tut' (WafPackage)
- Added 'py-setuptools' (PythonPackage)
- Added 'perl-dbi' (PerlPackage)
- Added 'build_systems' directory to the ones for which we get a summary
- Added 'openjpeg' (CMakePackage)
- Added 'r-rcpp' (RPackage)
- Added comments to build tests to show the covered build system
+ gitk (and possibly other tools) expect to find the Tk executable `wish`, so
add a symlink with this name that points to the the versioned filename.
+ Example: `wish --> wish8.6`