summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2016-11-14Add SC16 tutorial to the Spack docs.Todd Gamblin13-17/+64
2016-11-13Edited/fixed basic usage tutorial (#2329)becker331-69/+79
* Colify compiler output * Edited/fixed basic usage tutorial * fix console spacing.
2016-11-13fake install: mock include directory (#2294)Massimiliano Culpo1-0/+1
2016-11-13install: fixed choices for `--only` (removed the default) fixes #2303 (#2308)Massimiliano Culpo1-1/+1
2016-11-12Basic usage step-by-step tutorialGregory Becker3-1/+1246
2016-11-12Add packaging tutorial to docs (#2315)Matthew LeGendre8-5/+651
* Add packaging tutorial to docs * packaging tutorial: formatting
2016-11-09Allow compiler wrapper to modify environment (#2275)scheibelp7-5/+112
* Allow compiler wrapper to modify environment This adds the ability to set environment variables in the compiler wrappers. These are specified as part of the compilers.yaml config. The user may also specify RPATHs in compilers.yaml that should be added. * Minor doc tweak
2016-11-09find, uninstall: improved user interaction in the case of empty DB (#2278)Massimiliano Culpo2-2/+6
2016-11-07Waste less space when fetching cached archives, simplify fetch messages. (#2264)Todd Gamblin2-24/+39
* Waste less space when fetching cached archives, simplify fetch messages. - Just symlink cached files into the stage instead of copying them with curl. - Don't copy linked files back into the cache when done fetching. * Fixes for review. * more updates * last update
2016-11-06Don't automatically spider remote list_urls before making stage. (#2263)Todd Gamblin1-6/+1
- This might be useful but we don't want to do it unconditionally.
2016-11-06Changed cflag matching to exact rather than subset. (#2227)becker331-2/+2
Not the desired eventual behavior, but cflag subset matching is not currently working for anonymous specs and this provides a temporary solution by restricting the feature until it is fixed.
2016-11-06Wordsmithing/minor-edits to module tutorial (#2256)George Hartzell1-21/+28
* Wordsmithing/minor-edits to module tutorial A small set of wordsmithing, spell checking and minor edits to the fancy new modules tutorial! * Fix typo (sneaky z key...) * Fix "S:" and "manual<" typos
2016-11-06Add detection for redhat enterprise server to distro.py (#2262)Todd Gamblin1-1/+2
2016-11-05variable referenced before assignment (#2252)Massimiliano Culpo1-2/+4
2016-11-04Bugfix in concretize_compiler (#2196)Jeffrey Salmond1-8/+7
* fix bug in search for concrete compiler * simplify implementation of concretize_compiler * fix flake8 errors
2016-11-04Fixes #1520 (#1822)scheibelp4-44/+73
Some packages which include resources fetched from source control repositories terminated package installs because they failed to archive; specifically, this included all SCM resources which identify a specific state of the repo - for example a revision in svn or a tag/revision in git. This is because the resource stage creation logic did not choose an appropriate archive name for these kinds of resources.
2016-11-04Set Clang as the default compiler on macOS (#2225)Adam J. Stewart2-25/+0
* Set OS-specific default compilers * Fix flake8 warnings
2016-11-04Fix bug in distribution detection on unsupported platforms.Todd Gamblin1-4/+8
2016-11-04Use code from the `distro` package to improve linux distro detection. (#1629)Jeffrey Salmond2-2/+1051
* Use code from the `distro` package to improve linux distro detection. Various issues [1] [2] with the platform.linux_distribution function led to the function being deprecated in python 3.4. The pipi package distro [3] contains compatible improved code that better tracks current methods for identifying linux distributions (see, for example, [4],[5]). [1]: https://bugs.python.org/issue20454 [2]: http://bugs.python.org/issue1322 [3]: https://pypi.python.org/pypi/distro [4]: https://refspecs.linuxbase.org/LSB_3.0.0/LSB-PDA/LSB-PDA/lsbrelease.html [5]: https://www.freedesktop.org/software/systemd/man/os-release.html * fix (potential) unicode problems
2016-11-04libSplash: Add 1.6.0 Release (#2244)Axel Huebl1-9/+19
* libSplash: Add 1.6.0 Release Add the latest release of libSplash, version 1.6.0. * Fix flake8 checks (another loop inversion issue)
2016-11-04module files tutorial : first complete draft (#2228)Massimiliano Culpo3-27/+1009
* module files tutorial : first complete draft - first complete draft for module files tutorial - minor corrections to module file reference * module file tutorial : first batch of corrections - module avail spelled out fully - typos from @adamjstewart - rewording of a few sentences * module file tutorial : first batch of corrections - emphasized lines in yaml files * module file tutorial : fixes according to @citibeth and @adamjstewart reviews - used long format for command options - reworded unclear sentence on tokes - reworked table in reference manual to make it clearer * module file tutorial : implemented corrections collected on site from @schlyfts * module file tutorial : removed comment (@hartzell suggestion)
2016-11-04patch older config.guess for newer architectures (#2221)Gregory Lee2-2/+79
2016-11-04Better spack spec (#2238)Todd Gamblin6-25/+85
* Add options for hashes, tree depth, and YAML to `spack spec`. - Can now display hashes with `spack spec`, like `spack find`. - Removed the old "ids" argument to `spack spec` (which printed numerical values)b - Can output YAML spec from `spack spec` with `-y` - Can control depth of DAG traversal with --cover=[nodes|edges|paths] - Can print install status (installed, missing, not installed) with -I * Don't use YAML aliases in specs. - Force Spack's YAML dumper to ignore aliases. - aliases cause non-canonical YAML to be used in DAG hash, and result in redundant hashes. - add a test to ensure this behavior stays
2016-11-04Make spec.format properties case-insensitivePeter J. Scheibel1-0/+4
2016-11-04Support 'COMPILERVERSION' in spec format stringPeter J. Scheibel1-1/+1
2016-11-03remove obsolete instructions on hacking clang+gfortran (#2217)Denis Davydov1-52/+15
* remove obsolete instructions on hacking clang+gfortran * add detailed instructions on how to setup Clang+gfortran on macOS
2016-11-03spack install: forward sys.stdin to child processes (#2158)Massimiliano Culpo3-36/+62
* spack install: forward sys.stdin to child processes fixes #2140 - [ ] redirection process is spawned in __enter__ instead of __init__ - [ ] sys.stdin is forwarded to child processes * log: wrapped __init__ definition
2016-11-03spack find: accepts anonymous specs as arguments fixes #2170 (#2188)Massimiliano Culpo5-58/+33
2016-11-02Fix style checker bug. (#2214)Todd Gamblin1-12/+42
* Fix style checker bug. * spack flake8: print cwd-relative paths by default, with root-relative option.
2016-11-02Add support for gfortran to be used with clang (#2192)Barry Smith2-4/+28
1) list gfortran as a fc and f77 compiler that can work with clang 2) allow compatible gfortran to ./spack compiler find with clang by matching version numbers This is based on the discussions in https://github.com/LLNL/spack/issues/237 https://github.com/dealii/dealii/wiki/deal.II-in-Spack#mixing-gcc-and-clang-on-osx This is not a long term solution but something to get us through the next months until the compiler infrastructure is reworked to allow mixing and matching for C/C++ and Fortran compilers Funded-by: IDEAS Project: IDEAS/xSDK Time: 1.5 hours
2016-11-01Update references in debug command (#2204)scheibelp1-3/+3
2016-10-31Improved package.py error handling. (#2187)Todd Gamblin4-163/+219
- Detailed debug information is now handed back to the parent process from builds, for *any* type of exception. - previously this only worked for Spack ProcessErrors, but now it works for any type of error raised in a child. - Spack will print an error message and source code context for build errors by default. - It will print a stack trace when using `spack -d`, even when the error occurred in the child process.
2016-10-31Add `spack flake8` command. (#2186)Todd Gamblin2-15/+160
- Ported old run-flake8-tests qa script to `spack flake8` command. - New command does not modify files in the source tree - Copies files to a temp stage modifies them there, and runs tests. - Updated docs and `run-flake8-tests` script to call `spack flake8`.
2016-10-30Allow common args to be written the same way regular args are.Todd Gamblin2-49/+25
2016-10-30Bugfix: '::' only worked on top-level key in config.Todd Gamblin11-151/+255
- generalized and fixed to work with any key in YAML file - simplified schema writing, as well - add more unit tests for the config system - Rename test/yaml.py to test/spack_yaml.py - Add test/yaml.pyc to ignored pyc files.
2016-10-30Documentation for configurationTodd Gamblin15-388/+678
2016-10-30Add `spack arch --platform` optionTodd Gamblin1-2/+12
2016-10-30Make provider_index use spack yaml for cleaner output.Todd Gamblin1-4/+4
2016-10-30source_cache, misc_cache, verify_ssl, checksum, & dirty in config.yamlTodd Gamblin16-76/+160
- Added new preferences to config.yaml: - source_cache - misc_cache - verify_ssl - checksum - dirty
2016-10-30Add module_roots to config.yamlTodd Gamblin4-35/+62
2016-10-30Move temp directory configuration to config.yamlTodd Gamblin8-171/+325
- Moved temp finding logic to spack.stage - Updated stage tests - Added tests for new path substaitution of $user, $spack, $tempdir
2016-10-30Rename install.yaml -> config.yaml, install_area -> "store"Todd Gamblin21-156/+202
- Added a schema for config.yaml - Moved install tree configuration to config.yaml - Moved etc/spack/install.yaml to etc/spack/defaults/config.yaml - renamed install_area to "store", to use a term in common with guix/nix. - in `config.yaml` file, it's called the `install_tree` to be more intuitive to users. - `install_tree` might've worked in the code, but `install_tree` is already a global function in the spack namespace, from llnl.util.filesystem.
2016-10-30add documentation for new option to set install areaBenedikt Hegner1-0/+11
2016-10-30refactor settings for install area and make them config optionsBenedikt Hegner21-161/+246
2016-10-30Removes cyclic dependency on spack.config. (#2121)Matt Belhorn3-51/+2
Merge #2030 added a cyclic dependency between the Cray platform needing to read a `targets.yaml` config file and `config.py` needing to get the platform names. This commit removes the cyclic dependency in favor of the more general config scheme. It also removes the now functionless `targets.yaml` config file. This breaks 'frontend' targets on the Cray platform but all architecture targets, including the frontend, that are provided by CrayPE are added to the Platform anyway so users can be explicit about the architecture targeted by the Cray compiler wrappers: ``` spack spec libelf arch=cray-CNL-frontend ``` becomes ``` spack spec libelf arch=cray-CNL-mc8 # on an XK7 or spack spec libelf arch=cray-CNL-sandybridge # on an older XC30, etc.. ``` The only way the 'frontend' target can be defined after this commit is through target environment variables.
2016-10-30module file support: major rework of docs (#2169)Massimiliano Culpo3-566/+660
* module file support: major rework of docs * module file support: fixed issues found by @adamjstewart - list or enumeration should not be indented - use console instead of bash or csh in things that are not scripts - other typos * module file support: fixed other issues found by @adamjstewart - tables should not be indented - substitute lines with pyobject to import an entire function - get help output running commands - typos * module file support: fixes according to review comments - @citibeth moved `spack module loads` after `spack load` - @glennpj tried to clarify installation table + changes to language - @tgamblin Removed top level section and moved the whole thing into the reference manual * module file support: moved directive before spack module loads
2016-10-30configuration file for modules : fixed enable keyword (#2176)Massimiliano Culpo4-74/+10
- enable keyword works again - test/modules.py : proper clean-up after tests
2016-10-29Do not check directory layout for external packages (#2172)Barry Smith1-1/+1
External packages do not have an spec.yaml file so don't check for it. Without this change any time a package depends on an external package when the new package is installed you will get the error Install prefix exists but contains no spec.yaml This problem has also haunted me since I started using Spack since PETSc depends on Python and I used an external python but fortunately it was relatively easy to debug once I could reproduce it at will. Funded-by: IDEAS Project: IDEAS/xSDK Time: 1 hour
2016-10-29Import dso_suffix from spack.build_environment in abi.py (#2174)Matthew Scott Krafczyk1-0/+1
Fixes #1845
2016-10-29Use Spec.format for token substitution in modules (#1848)scheibelp3-65/+87
This replaces a custom token-based substitution format with calls to Spec.format in modules.py This also resolves a couple issues: - LmodModules set configuration globally instead of in its initializer which meant test-specific configuration was not applied - Added support for setting hash_length=0 for LmodModules. This only affects the module filename and not the directory names for the hierarchy tokens in the path. This includes an additional unit test.