Adds SpackCommand class allowing Spack commands to be easily in Python
Example usage:
from spack.main import SpackCommand
info = SpackCommand('info')
out, err = info('mpich')
print(info.returncode)
This allows easier testing of Spack commands.
Also:
* Simplify command tests
* Simplify mocking in command tests.
* Simplify module command test
* Simplify python command test
* Simplify uninstall command test
* Simplify url command test
* SpackCommand uses more compatible output redirection
Installing the stable version 0.5 through the checksummed tar.gz does not fetch the git submodule in the package.
The submodule appears as an empty directory.
Thus, clone the commit tagged as v0.5 using git to get around this issue
* savanna: modified adios dependency spec
* Replaced adios+staging with adios+flexpath+dataspaces
* savanna: Enabling fortran support in adios by default
* savanna: reverting to variant 'staging' for enabling all staging transports
- +swrender variant lets you compile an off-screen only version for
software rendering on clusters.
- +swrender+llvm for using llvm for the software pipe
- added newer versions (17.1 and 13.0) and corrected the url location
to use the canonical location.
* gtkorvo-atl: atl library from gtkorvo
* gtkorvo-dill: dill library from gtkorvo
* gtkorvo-cercs-env: cercs_env library from gtkorvo
* gtkorvo-enet: Enet networking library from gtkorvo
* libffs: FFS middleware communication library from GTKorvo
* libevpath: EVPath high performance communication library from GTKorvo
* gtkorvo-cercs-env: Added homepage and removed function configure_args
* gtkorvo-cercs-env: Re-add of accidental removal of cmake_args function in previous commit
* gtkorvo-enet: Removed configure_args since unused
* removed the tags as per comment in PR# 4749
* addressed above comments
* changed fortran compiler.
* added proxy application tags.
* added tags by removing them from description.
* addressed comments
* used join_path instead of path concat.
* addressed comments
* removed string formatting for LDFLAGS.
* Update the krell institute products to use the latest features of spack for building on cluster platforms.
* Address travis error messages and resubmit the pull request.
* Update the contents of openspeedshop package.py so it passes the flake8 tests.
* Fix flake8 error-whitespack issue in mrnet package.py file.
* Add updates based on spack reviewer feedback.
* More fixes based on comments from reviewers. Switch using extend to using append, remove additional setting of PATH and LD_LIBRARY_PATH that should not be required due to RPATH.
* More review related changes. Update MPIOption.append lines and take out xercesc references.
* Create a base options function for common openspeedshop base cmake options to reduce redundencies.
* Add libxml2+python depends on to get around issues with the libxml2 package file.
* Using boost over 1.60.0 causes compile errors. This is a known boost bug. Also, dyninst-9.2.0 is set to be the vesrion of dyninst to use with OSS, as of now. The newer version fails to build.
* Fix bad syntax in specifying the boost version range.
* Update the version numbers for the krell institute components and tools: cbtf and openspeedshop.
* Do not build glib for qt3, it is not needed and causes build problems at this time anyway.
* A fix was added for setting LD_LIBRARY_PATH in the qt3 build, but if LD_LIBRARY_PATH is not set the qt build fails. So so check and set LD_LIBRARY_PATH if not set, update if it is set.
* Update the fix for qt3 build by setting LD_LIBRARY_PATH instead of checking for whether it is set or not per Adams comment that spack clears LD_LIBRARY_PATH.
* A fix was added for setting LD_LIBRARY_PATH in the qt3 build, but if LD_LIBRARY_PATH is not set the qt build fails. So so check and set LD_LIBRARY_PATH if not set, update if it is set.
* Trim comments to fit more concisely.
* Fix tabs versus spaces and swap if and else clause check from a negative to a positive check.
* Fix issues with the cbtf-argonavis build, update to use dyninst-9.3.2, fixes to openspeedshop package build.
* Fix issues with the cbtf-argonavis package.py files related to comments.
* Add changes for changing the krell packages from Package to CMakePackage.
* Add better changes for changing the krell packages from Package to CMakePackage.
* Add more modifications for changing the krell packages from Package to CMakePackage.
* Add additional modifications for changing the krell packages from Package to CMakePackage and fixing Travis erros
* Fix new travis errors.
* Fix new travis errors.
* Add more changes for PR 4765.
* Add more refinements to the conversion from Package to CMakePackage.
* Fix new travis errors.
* Add dependencies for MPI to be passed to cbtf-krell, so it can build the MPI collectors requested by the builder of openspeedshop.
* Remove extra unnecessary routine to adjust build arguments. Fix if-else clause issue.
* Fix more flake issues caused by last changes.
* Initial work on flag trapping using functions called <flag>_handler and default_flag_handler
* Update packages so they do not obliterate flags
* Added append to EnvironmentModifications class
* changed EnvironmentModifications to have append_flags method
* changed flag_val to be a tuple
* Increased test coverage
* added documentation of flag handling
* removed the tags as per comment in PR# 4749
* addressed above comments
* changed fortran compiler.
* added proxy application tags.
* added tags by removing them from description.
* addressed comments
* used join_path instead of path concat.
* added tags and other minor changes.
* removed tags from description.
* new package: CLAMR
* changed from bool variants to single value variants and corresponding logic in build_type and cmake_args
* lowercase variant values
* updated conditionals for variants
* adjusted url and docstring
* new package to be added: NuT
* removed cmake_args() and made other changes as suggested
* Added setup_environment()
* PEP8 compliant
* edited version name, build_targets, and files/directories to install
* corrected executable directory
* compiler dependencies based on version
* Change path to CMakeLists.txt to be relative to root, not pwd
* Changes requested during code review
* Revert back to old naming of root_cmakelists_dir
* Make relative directory more clear in docs
* Revert change causing build_type AttributeError
* Fix forgotten abs_path var
* Update CLHEP with new relative path
* Update more packages with new root_cmakelists_dir syntax