summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-11-09env: add -e as global spack argument, make `spack -e <env> spec` workTodd Gamblin6-40/+64
- add -E/--exact-env instead of --use-env-repo - simplify env handling in `spack find`
2018-11-09env: add `--env` argument to `spack location`Todd Gamblin2-11/+12
2018-11-09env: add --env argument to `spack find`Todd Gamblin5-9/+52
- add a common argument for `-e/--env` - modify the database to support queries on subsets of hashes - allow `spack find` to be filtered by hashes in an environment
2018-11-09bugfix: identical specs with different DAG hashes don't shadow each otherTodd Gamblin1-3/+5
- logic used in `spack find` was hiding duplicate installations if their hashes were different - short hash doesn't work in this scenario, since specs are structurally identical - ConstraintAction always works on a DB query, so use the DAG hash to ensure uniqueness
2018-11-09env: move main Environment class and logic to `spack.environment`Todd Gamblin5-601/+629
- `spack.environment` is now the home for most of the infrastructure around Spack environments - refactor `cmd/env.py` to use everything from spack.environment - refactor the cmd/env test to use pytest and fixtures
2018-11-09utils: merge spack.environment into spack.util.environmentTodd Gamblin9-637/+631
- `spack.util.environment` is the new home for routines that modify environment variables. - This is to make room for `spack.environment` to contain new routines for dealing with spack environments
2018-11-09env: refactor imports in cmd/env.py and testsTodd Gamblin2-16/+11
2018-11-09env: refactor subparsers in env.pyTodd Gamblin1-121/+116
- Instead of one method with all parsers, each subcommand gets two functions: `setup_<cmd>_parser()` and `environment_<cmd>()` - the `setup_parser()` and `env()` functions now generate the parser based on these and a list of subcommands. - it is now easier to associate the arguments with the subcommand.
2018-11-09env: add spack env command, along with env.yaml schema and testsPeter Josef Scheibel4-0/+988
Co-authored-by: Elizabeth Fischer <rpf2116@columbia.edu>
2018-11-09env: preserve command_line as the scope of highest precedencePeter Josef Scheibel2-10/+23
Co-authored-by: Elizabeth Fischer <rpf2116@columbia.edu>
2018-11-09env: refactor common argumentsElizabeth Fischer6-58/+108
2018-11-09specs: save/restore concrete & patches when exporting/importing SpecsElizabeth Fischer1-0/+20
2018-11-09specs: _concrete should never be cleared when copying SpecsPeter Josef Scheibel1-2/+2
2018-11-09specs: add convenience function for reading spec dependencies from node dictPeter Josef Scheibel1-0/+9
2018-11-09specs: allow writing full spec (including build deps) to dictPeter Josef Scheibel1-5/+13
2018-11-09env: rename 'spack env' command to 'spack build-env'Peter Josef Scheibel2-6/+6
2018-11-09env: renamed 'environment' testPeter Josef Scheibel1-0/+0
2018-11-08canu: use built-in makefile install (#9726)Justin Stanley1-11/+3
2018-11-08muparser: minor fixes to 2.2.5 and add 2.2.6 with CMake (#9724)Denis Davydov2-4/+27
* muparser: minor fixes to 2.2.5 and add 2.2.6 with CMake * dealii: make muparser optional
2018-11-08ncl: Add 6.5.0 (#9736)Michael Kuhn1-3/+4
2018-11-07r-delayedarray: new dep in latest vers (#9731)Levi Baber1-0/+1
2018-11-07Use the raw compiler path for the preprocessing pass in CLAW driver (#9748)Valentin Clement (バレンタイン クレメン)1-0/+3
2018-11-07sra-toolkit: improvements and new version (#9465)Ricardo Silva0-0/+0
* files under `bin` were copied 3 times instead of symlink'ed * sha256 checksums * new release 2.9.2 of July 24, 2018
2018-11-06New repo for advanced packaging tutorial (#9711)Peter Scheibel14-35/+958
* modified tutorial packages * update hint in hdf5 tutorial file (typo for suggested argument) * add repo.yaml to tutorial repository * update tutorial docs to refer user to tutorial package repository * flake edits * recommend site scope vs. defaults * you don't specify the repo's name when adding a repo, just the path
2018-11-06Binary caching: remove symlinks, copy files instead (#9747)Peter Scheibel1-3/+5
* omit symlinks and create file copies when making a binary cache of a package * unrelated flake edits involving regexes that recent flake is now angry about
2018-11-06cdash: report clean results to CDash server (#9564)Zack Galbreath4-12/+38
* Record stdout for packages without errors Previously our reporter only stored stdout if something went wrong while installing a package. This prevented us from properly reporting on steps where everything went as expected. * More robustly report all phases to CDash Previously if a phase generated no output it would not be reported to CDash. For example, consider the following output: ==> Executing phase: 'configure' ==> Executing phase: 'build' This would not generate a report for the configure phase. Now it does. * Add test case for CDash reporting clean builds * Fix default directory for CDash reports The default 'cdash_report' directory name was getting overwritten by 'junit-report'. * Upload the build phase first to CDash Older versions of CDash expect Build.xml to be the first file uploaded for any given build. * Define cdash_phase before referring to it
2018-11-06bugfix: work around ruamel.yaml vendoring issues (#9725)Massimiliano Culpo1-0/+12
- Delete references to ruamel.yaml at Spack start-up, if they are present - ruamel.yaml generates a .pth file when installed via pip that has the effect of always preferring the version of this package installed at site scope (effectively preventing us from vendoring it). - This mechanism triggers when implicitly importing the 'site' module when the python interpreter is started. In this PR we explicitly delete references to 'ruamel.yaml' and 'ruamel' in sys.modules, if any, after we set 'sys.path' to search from the directory where we store vendored packages. This ensures that the imports after those statements will be done from our vendored version. - See #9206 for further details
2018-11-06Adapted the code of the non-daemonic pool to recent python versionsMassimiliano Culpo1-7/+19
fixes #9739 The non-daemonic pool relies heavily on implementation details of the multiprocessing package. In this commit we provide an implementation that fits recent python versions.
2018-11-06snpeff: add wrapper for SnpSift.jar (#9674)Levi Baber2-14/+21
2018-11-06Add OpenMPI 3.1.3 and a bug patch (#9680)sknigh2-0/+33
2018-11-05py-backports-functools-lru-cache: add to 'backports' namespace (#9720)Gregory Lee1-0/+2
2018-11-02new package: homer (starting at 4.9.1) (#9669)Justin Stanley1-0/+48
2018-11-02freetype: enable-freetype-config build option for 2.9.1 (#9653)Eric1-1/+4
This builds the 'freetype-config' binary which can be used to get configuration information about the freetype install, used by some dependents.
2018-11-02Add version 2.0.2 of BookLeaf_Cpp and version 3.0.2 of Typhon. (#9662)Tim Law2-0/+3
2018-11-02compilers: add arm compiler detection to SpackNick Forrington1-0/+73
- added arm.py with support for detecting `armclang` and `armflang` Co-authored-by: Srinath Vadlamani <srinath.vadlamani@arm.com>
2018-11-01henson: new package (#9657)Dmitriy1-0/+38
* henson: new package * henson: change github path to henson-insitu * henson: make mpi-wrappers=off by default * henson: remove unsued variable and spaces to make linter happy * henson: rename version master to develop
2018-10-31xeus: new package (#9682)Thomas Stitt6-5/+113
* xeus: new package cppzmq: add version 4.3.0 zeromq: make libsodium optional, on by default * xeus: add patch so it builds, add new version nlohmann-json: add more versions cryptopp: add more versions * xeus: flake8 * xeus: fix license
2018-10-31Parse the ${NAMESPACE} format string in a spec's format method. (#9686)Tim Fuller1-0/+3
This allows installing software on a namespace basis by including ${NAMESPACE} in `install_path_scheme`. e.g., ``` cat ~/.spack/config.yaml config: install_path_scheme: "${ARCHITECTURE}/${NAMESPACE}/${COMPILERNAME}-${COMPILERVER}/${PACKAGE}-${VERSION}-${HASH}" ```
2018-10-31static_to_shared_library: separate options from option values (#9690)Satish Balay1-4/+4
The 'static_to_shared_library' function takes a compiler Executable, which is intended to be invoked with a list of arguments; the arguments must be separated from their values in the list, given the way that 'Executable.__call__' invokes the underlying executable. 'static_to_shared_library' was not doing this, which this commit fixes.
2018-10-31ecp-proxy-apps: disable building CANDLE Benchmarks by default (#9691)Abhinav Bhatele1-2/+5
add as a variant
2018-10-31lbzip2: add new package (#9688)Federico Ficarelli1-0/+16
2018-10-31Provide a newer doxygen version. (#9681)Kelly (KT) Thompson2-0/+32
* Provide a newer doxygen version. + Also provide a patch that allows collaboration diagrams to work properly with C++ std::shared_ptr<T>. Ref: https://github.com/Sleepyowl/doxygen/commit/6c380ba91ae41c6d5c409a5163119318932ae2a3?diff=unified
2018-10-31Packmol: a new package. (#9687)健美猞猁1-0/+16
2018-10-31r-dismo: new package starting at 1.1-4 (#9675)Justin Stanley1-0/+21
2018-10-30compilers: update clang fortran compiler wrapper selection (#9678)Todd Gamblin1-16/+44
Clang has support for using different fortran compilers with the Clang executable. Spack includes logic to select a compiler wrapper symlink which refers to the fortran executable (since some build systems depend on the name of the compiler, e.g. 'gfortran' or 'flang'). This selection was previously based on the architecture, and chose incorrectly in some situations (e.g. for clang/gfortran on Linux). This replaces architecture-based wrapper selection with a selection that is based on the name of the Fortran compiler executable.
2018-10-30Update openspeedshop and cbtf-krell module creation code (#9234)Jim Galarowicz7-112/+148
* Add the setting of CBTF_MPI_IMPLEMENTATION to the cbtf-krell and openspeeedshop package files, so that the mpi implementation can be found by the tool. This allows users to not have to set this manually if only one mpi implementation is specified in the build. * Update version ranges for dependencies of cbtf packages
2018-10-30tests: add test for FIXME boilerplate to package_sanity (#9285)Levi Baber1-0/+25
* package_sanity: add test_no_fixme * cleanup & better assert message
2018-10-30Update dependencies for py-llvmlite (#9668)Ross Miller1-1/+1
Change dependency on llvm from >=6.0 to 6.0:6.99. Refs #9667
2018-10-30New package: RegCM, regional climate model. (#9655)Alberto Chiusole1-0/+73
2018-10-30GCC: ISL and mpfr upper bounds (#9513)Axel Huebl2-6/+14
* GCC: constrain version 6, 7, and 8 to build with ISL version at most 0.18 * GCC version 9 (not yet released) will be compatible with ISL version 0.20 so future GCC releases are constrained to build with ISL version at most 0.20 * ISL: Add v0.15, replace all md5 sums with sha256 sums for ISL versions * GCC versions before 6 were constrained to build with ISL 0.14 but have been confirmed to work with ISL 0.15 * GCC: Place an upper bound on GCC's mpfr dependency