summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-10-23hypre: Add new variants to expose existing features. (#13373)Sarah Osborn1-5/+36
* hypre: Add new variants to expost existing features. * hypre: Add new variants to expose existing features. * hypre: Shorten description line. * hypre: Add an explicit else clause to disable some features.
2019-10-23url summary: show right and wrong parse counts for each regexTodd Gamblin1-13/+30
Previously this command only showed total counts for each regular expression. This doesn't give you a sense of which regexes are working well and which ones are not. We now display the number of right, wrong, and total URL parses per regex. It's easier to see where we might improve the URL parsing with this change.
2019-10-23Add latest version of py-pbr (#13380)Adam J. Stewart1-7/+23
2019-10-23py-argparse: remove Python dependency version (#13378)Adam J. Stewart1-2/+0
2019-10-23py-traceback2: fix dependencies (#13381)Adam J. Stewart1-2/+7
2019-10-23bison: Fix build (#13231)Michael Kuhn1-0/+4
It seems that 3.4.2 includes a change that is supposed to fix parallel builds (https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00000.html). Instead, it actually breaks it for me (with -j48) with errors such as: ``` mv: cannot stat 'examples/c/reccalc/scan.stamp.tmp': No such file or directory Makefile:9323: recipe for target 'examples/c/reccalc/scan.stamp' failed ```
2019-10-23py-linecache2: pbr is only a build dependency (#13379)Adam J. Stewart1-1/+3
2019-10-23py-unittest2: fix dependencies (#13382)Adam J. Stewart1-2/+1
2019-10-23Add py-codecov package (#13383)Adam J. Stewart1-0/+24
2019-10-23bpp-phyl: Clarify namespace of 'isnan' function. (#13386)t-karatsu2-0/+79
2019-10-23magics: Use correct python path (#13394)Michael Kuhn1-1/+6
python~pythoncmd does not provide a python symlink for python3, so make sure we pick the right command.
2019-10-23bracken: Use correct python command (#13395)Michael Kuhn1-4/+7
python~pythoncmd does not provide a python symlink for python3, so make sure we pick the right command.
2019-10-23Ace package. Initial commit (#13211)carlabguillen1-0/+44
* Ace package. Initial commit * Correcting header now with licence. * Using sha256 * Making requested changes:removing import line, urls and checksums in one line, and making it an MakefilePackage. * Removing extra line
2019-10-23glib: Use correct python command (#13392)Michael Kuhn1-3/+6
python~pythoncmd does not provide a python symlink for python3, so make sure we pick the right command.
2019-10-23petsc: add version 3.12.1 [and variant: batch] (#13390)Satish Balay1-8/+14
* petsc: add version 3.12.1 [and variant: batch] * fix test_prs_update_old_api errors
2019-10-23Preserve comments for Spack YAML objects (#11602)Todd Gamblin13-178/+171
This updates the configuration loading/dumping logic (now called load_config/dump_config) in spack_yaml to preserve comments (by using ruamel.yaml's RoundTripLoader). This has two effects: * environment spack.yaml files expect to retain comments, which load_config now supports. By using load_config, users can now use the ':' override syntax that was previously unavailable for environment configs (but was available for other config files). * config files now retain user comments by default (although in cases where Spack updates/overwrites config, the comments can still be removed). Details: * Subclasses `RoundTripLoader`/`RoundTripDumper` to parse yaml into ruamel's `CommentedMap` and analogous data structures * Applies filename info directly to ruamel objects in cases where the updated loader returns those * Copies management of sections in `SingleFileScope` from #10651 to allow overrides to occur * Updates the loader/dumper to handle the processing of overrides by specifically checking for the `:` character * Possibly the most controversial aspect, but without that, the parsed objects have to be reconstructed (i.e. as was done in `mark_overrides`). It is possible that `mark_overrides` could remain and a deep copy will not cause problems, but IMO that's generally worth avoiding. * This is also possibly controversial because Spack YAML strings can include `:`. My reckoning is that this only occurs for version specifications, so it is safe to check for `endswith(':') and not ('@' in string)` * As a consequence, this PR ends up reserving spack yaml functions load_config/dump_config exclusively for the purpose of storing spack config
2019-10-22tests: avoid extra output in `env status` test (#13344)Todd Gamblin1-9/+12
`test_envoronment_status()` was printing extra output during tests. - [x] disable output only for `env('status')` calls instead of disabling it for the whole test.
2019-10-22env activation: use package defined env setup methods (#13249)Greg Becker6-46/+191
This PR ensures that environment activation sets all environment variables set by the equivalent `module load` operations, except that the spec prefixes are "rebased" to the view associated with the environment. Currently, Spack blindly adds paths relative to the environment view root to the user environment on activation. Issue #12731 points out ways in which this behavior is insufficient. This PR changes that behavior to use the `setup_run_environment` logic for each package to augment the prefix inspections (as in Spack's modulefile generation logic) to ensure that all necessary variables are set to make use of the packages in the environment. See #12731 for details on the previous problems in behavior. This PR also updates the `ViewDescriptor` object in `spack.environment` to have a `__contains__` method. This allows for checks like `if spec in self.default_view`. The `__contains__` operator for `ViewDescriptor` objects checks whether the spec satisfies the filters of the View descriptor, not whether the spec is already linked into the underlying `FilesystemView` object.
2019-10-22microarchitectures: look in /sbin and /usr/sbin for sysctl (#13365)Massimiliano Culpo3-22/+30
This PR ensures that on Darwin we always append /sbin and /usr/sbin to PATH, if they are not already present, when looking for sysctl. * Make sure we look into /sbin and /usr/sbin for sysctl * Refactor sysctl for better readability * Remove marker to make test pass
2019-10-22Fixed optimization flags support for old GCC versions (#13362)Massimiliano Culpo4-22/+24
These changes update our gcc microarchitecture descriptions based on manuals found here https://gcc.gnu.org/onlinedocs/ and assuming that new architectures are not added during patch releases.
2019-10-22Disable macOS builds on PRs while we wait for Travis to catch up. (#13389)Todd Gamblin1-0/+1
Travis macOS builds are taking too long to run, so we'll only run them on `develop` until they get faster.
2019-10-22gmsh: add version 4.4.1 (#13366)Benjamin Fovet1-0/+1
2019-10-22Boost package: Fix iostream autodetect libraries (#12440)Frédéric Simonis1-1/+3
Boost iostream autodetects the compression libraries libzstd and liblzma outside of the Spack environment. This commit disables mentioned libraries. In the future if the Spack zstd/lzma packages were added as dependencies of the Spack Boost package, additional work could be done to build Boost with the Spack-built versions of these libraries.
2019-10-22ADIOS2: Document endian_reverse variant (#13226)Axel Huebl1-1/+2
Update the documentation of the `endian_reverse` variant in ADIOS2. The short description caused some confusion (for me) :-)
2019-10-22git-lfs: Add new version (#13356)Ruben Di Battista1-0/+1
PS: The old versions do not work: it's likely that they changed git history on submodules
2019-10-22Default to Python 3.7 (#10319)Adam J. Stewart2-7/+44
* Default to Python 3 * Fix build with Intel compilers
2019-10-22Add latest version of py-scikit-learn (#13295)Adam J. Stewart1-32/+19
* Add latest version of py-scikit-learn * setup_environment -> setup_build_environment
2019-10-22Add latest version of npth (#13353)Adam J. Stewart1-1/+2
2019-10-22Add latest version of py-macs2 (#13358)Adam J. Stewart1-3/+7
2019-10-22Add latest version of py-sphinxcontrib-programoutput (#13359)Adam J. Stewart1-2/+4
2019-10-22Restrict parallel build of py-astropy to Python 3 (#13360)Adam J. Stewart1-2/+6
2019-10-22microarchitectures: add optimization flags for Intel compilers (#13345)Massimiliano Culpo2-4/+134
* Added optimization flags for Intel compilers with Intel CPUs * Added optimization flags for Intel compilers with AMD CPUs
2019-10-22fetching: S3 upload and download (#11117)Omar Padron21-289/+1420
This extends Spack functionality so that it can fetch sources and binaries from-, push sources and binaries to-, and index the contents of- mirrors hosted on an S3 bucket. High level to-do list: - [x] Extend mirrors configuration to add support for `file://`, and `s3://` URLs. - [x] Ensure all fetching, pushing, and indexing operations work for `file://` URLs. - [x] Implement S3 source fetching - [x] Implement S3 binary mirror indexing - [x] Implement S3 binary package fetching - [x] Implement S3 source pushing - [x] Implement S3 binary package pushing Important details: * refactor URL handling to handle S3 URLs and mirror URLs more gracefully. - updated parse() to accept already-parsed URL objects. an equivalent object is returned with any extra s3-related attributes intact. Objects created with urllib can also be passed, and the additional s3 handling logic will still be applied. * update mirror schema/parsing (mirror can have separate fetch/push URLs) * implement s3_fetch_strategy/several utility changes * provide more feature-complete S3 fetching * update buildcache create command to support S3 * Move the core logic for reading data from S3 out of the s3 fetch strategy and into the s3 URL handler. The s3 fetch strategy now calls into `read_from_url()` Since read_from_url can now handle S3 URLs, the S3 fetch strategy is redundant. It's not clear whether the ideal design is to have S3 fetching functionality in a fetch strategy, directly implemented in read_from_url, or both. * expanded what can be passed to `spack buildcache` via the -d flag: In addition to a directory on the local filesystem, the name of a configured mirror can be passed, or a push URL can be passed directly.
2019-10-22Add dependency version constraint to libgcrypt (#13351)Adam J. Stewart1-1/+1
2019-10-22Fix configure arg to libassuan (#13350)Adam J. Stewart1-3/+4
2019-10-22Fix configure arg to libksba (#13352)Adam J. Stewart1-3/+4
2019-10-22Add latest version of gnupg (#13349)Adam J. Stewart1-13/+23
2019-10-22Add latest version of patchelf (#13348)Adam J. Stewart1-5/+5
2019-10-21Add latest version of zstd (#13340)Adam J. Stewart1-3/+6
* Add latest version of zstd * setup_environment -> setup_build_environment
2019-10-21sniffles: fix zlib header lookup directory. (#13063)Toyohisa Kameyama2-0/+50
* sniffles: fix zlib header lookup directory. * use bamtools and zlib to spack installed package. * remove unneeded patch.
2019-10-21elsi:add CMAKE Fortran MODDIR FLAG for Fujitsu compiler (#13244)noguchi-k1-0/+5
* add CMAKE Fortran MODDIR FLAG for Fujitsu compiler * elsi:remove extra fix
2019-10-21arpack-ng: Fixed error that is not compatible with isnan. (#13246)t-karatsu2-0/+26
2019-10-21bpp-core: Clarify 'isnan' function's namespace. (#13260)t-karatsu2-0/+46
2019-10-21qt: Fix build for newer versions (#13262)Michael Kuhn1-2/+0
For some reason, newer versions of qt fail to build because they cannot find certain system libraries such as libatomic and libdl. Leaving the qmake compiler set to gcc seems to fix the problem. Fixes #13221
2019-10-21New package: Fl (#12877)健美猞猁1-0/+24
2019-10-21Bootstrap environment modules optimizing for generic architectures (#13105)Massimiliano Culpo4-3/+53
fixes #13073 Since #3206 was merged bootstrapping environment-modules was using the architecture of the current host or the best match supported by the default compiler. The former case is an issue since shell integration was looking for a spec targeted at the host microarchitecture. 1. Bootstrap an env modules targeted at generic architectures 2. Look for generic targets in shell integration scripts 3. Add a new entry in Travis to test shell integration
2019-10-21microarchitectures: fix custom compiler versions (#13222)Massimiliano Culpo6-5/+100
Custom string versions for compilers were raising a ValueError on conversion to int. This commit fixes the behavior by trying to detect the underlying compiler version when in presence of a custom string version. * Refactor code that deals with custom versions for better readability * Partition version components with a regex * Fix semantic of custom compiler versions with a suffix * clang@x.y-apple has been special-cased * Add unit tests
2019-10-21Fix Python 3.8 build on macOS (#13338)Adam J. Stewart1-150/+166
2019-10-21Add latest version of py-cffi (#13322)Adam J. Stewart1-5/+10
* Add latest version of py-cffi * setup_environment -> setup_build_environment
2019-10-21Add latest version of py-numpy (#13307)Adam J. Stewart1-4/+5
* Add latest version of py-numpy * setup_environment -> setup_build_environment