summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2013-10-17spec flatten, normalize, validate; package validateTodd Gamblin21-167/+641
New operations for manipulating spec and package DAGs. For specs: flatten: gather all deps to the root normalize: Merge constraints and make spec match package DAG For packages: validate_dependencies: Make sure spec constraints in package DAG are sane. Added tests for above methods. Also added beginnings of concretization logic, to turn abstract spec into a concrete one. Still need proper tests for normalize().
2013-10-15Spec constraints and normalization now work.Todd Gamblin17-191/+473
- Specs can be "constrained" by other specs, throw exceptions when constraint can't be satisfied. - Normalize will put a spec in DAG form and merge all package constraints with the spec. - Ready to add concretization policies for abstract specs now.
2013-10-11Command to launch interpreter with spack in sys.pathTodd Gamblin1-0/+21
2013-10-11Command to run pydoc on spack classes.Todd Gamblin1-0/+9
2013-10-07Refactor utils into separate modules.Todd Gamblin14-225/+221
2013-10-07Start to make a bigger package out of utils.pyTodd Gamblin14-79/+111
- moved none_compare functions to util.none_high and util.none_low packages - renamed utils.py to util package
2013-10-07Checkpoint commit: much-improved spec class.Todd Gamblin26-361/+1403
Still organizing things.
2013-06-29Add spec architeccture, redo color output support.Todd Gamblin5-69/+128
2013-06-29Clean up half-downloaded tarballs.Todd Gamblin1-5/+11
2013-06-29Adding expression syntax for console colors.Todd Gamblin1-0/+162
2013-06-02Add checks for version 2.7Todd Gamblin1-0/+3
2013-05-17Better error messages for spack list -v.Todd Gamblin1-16/+20
2013-05-17Ability to list versions from web page with spack list -v PACKAGETodd Gamblin7-27/+129
Experimental feature automatically parses versions out of web pages and prints what it thinks are avaialble versions of a package, e.g.: $ spack list -v libunwind 1.1 1.0 0.98.6 0.98.4 0.98.2 0.98 0.96 0.93 0.91 0.1 1.0.1 0.99 0.98.5 0.98.3 0.98.1 0.97 0.95 0.92 0.9 0.0
2013-05-17Added command to print out URL and homepage.Todd Gamblin1-0/+13
2013-05-17Renamed variables called 'spec' to 'path'Todd Gamblin1-31/+36
2013-05-13list_modules will now find directories.Todd Gamblin1-4/+11
2013-05-12Added EBNF grammar.Todd Gamblin1-0/+22
2013-05-12Commands take specs as input instead of names.Todd Gamblin15-180/+265
modified clean, create, fetch, install, and uninstall
2013-05-12More rubust spec parsing and error messagesTodd Gamblin4-41/+120
2013-05-09Initial implementation of package specs, including parser.Todd Gamblin10-76/+821
spec.py can parse full dependence specs like this: openmpi@1.4.3:1.4.5%intel+debug ^hwloc@1.2 These will be used to specify how to install packages and their dependencies, as well as to specify restrictions (e.g., on particular versions) for dependencies. e.g.: class SomePackage(Package): depends_on('boost@1.46,1.49') This would require either of those two versions of boost. This also moves depends_on out to relations.py and adds "provides", which will allow packages to provide virtual dependences. This is just initial implementation of the parsing and objects to represent specs. They're not integrated with packages yet.
2013-05-09Removed old versions.pyTodd Gamblin1-245/+0
2013-05-09Don't exit after one test.Todd Gamblin1-1/+1
2013-05-09Changed class name.Todd Gamblin1-0/+244
2013-05-09Removed executable bit.Todd Gamblin1-0/+0
2013-04-28Tests can be run via spack test <test_name>Todd Gamblin8-217/+325
2013-04-04This adds support for multi-platform methods.Todd Gamblin13-81/+329
You can now do this: class MyPackage(Package): def install(self): ...default install... @platform('bgqos_0') def install(self): ...specialized install for bgq... This works on functions other than install, as well (as long as they're in a Package)
2013-03-25Moved install-spack to its own simpler command.Todd Gamblin2-3/+53
2013-03-22Fix in docs.Todd Gamblin1-1/+1
2013-03-22Documentation and small changes.Todd Gamblin10-163/+444
2013-02-25Simpler implementation of depends_on.Todd Gamblin1-6/+5
2013-02-22Better spack -h: added cmd descriptions.Todd Gamblin12-3/+29
- each cmd has a desscription attribute that is used for the help strign in argparse.
2013-02-21Better handling of stage.Todd Gamblin2-10/+35
- better symlink handling - remove stage directories on successful install.
2013-02-21Parallel bootstrap for cmake.Todd Gamblin2-1/+5
2013-02-21Minor changes; loosened up parallel build for dwarf.Todd Gamblin5-11/+9
2013-02-21Fix regression in clean.Todd Gamblin1-1/+1
2013-02-21Added help command and purge command.Todd Gamblin11-17/+28
2013-02-21Use tmp directory for downloading and buildingTodd Gamblin2-3/+44
2013-02-20Fixed bug in parallel make option.Todd Gamblin1-2/+2
2013-02-20Added libunwind and fixed link issues in cc.Todd Gamblin9-80/+165
2013-02-19Fixed passing of dependence prefixes to cc. libdwarf works.Todd Gamblin4-21/+59
2013-02-19Fixes, remove parallel build for libdwarf due to race case.Todd Gamblin8-48/+86
2013-02-19rpaths for dependencies. elf, dwarf, cmake build on LinuxTodd Gamblin6-13/+28
2013-02-18Require python2.7Todd Gamblin1-1/+1
2013-02-18Dependencies now work. Added libelf, libdwarf.Todd Gamblin39-258/+1161
2013-02-13Initial version of spack with one package: cmakeTodd Gamblin21-0/+1049