Commit graph

1496 commits

Author SHA1 Message Date
Tom Scogland
fcdf08e4d7 allow nested resources
This solution doesn't really make me happy, but does seem to work.  It
sorts the resources by the length of the string representing their
destination.  Since any nested resource must contain another resource's
name in its path, it seems that should work, but there should be a
better way to do this.
2015-12-30 16:59:39 -08:00
Tom Scogland
cc8c783bb2 adding errno import for the deep directory creation patch 2015-12-30 16:59:39 -08:00
Tom Scogland
30f5ccb80d create leading directories for resources
This allows resources to be placed into subdirectory trees that may not
exist in the base package, and may depend on other resources to be
staged later.
2015-12-30 16:59:39 -08:00
Tom Scogland
01f811d546 legacy mysql bindings for python 2015-12-30 11:18:13 -08:00
Tom Scogland
31f674da3c python libraries, libedit, and ninja
A pile of libraries and tools, libedit is actually important as a
replacement of readline for non-GPL projects.  Also ninja may be
worthwhile for some of the larger CMake projects, like llvm/clang.
2015-12-30 11:13:09 -08:00
Tom Scogland
926efed31c another portability fix, this time for zsh/non-bash sh
Yay for non-portable declaration syntax.  After the previous screwiness
I ran this through a number of shells, and found that this is the most
portable version I coudl seem to get.
2015-12-30 10:55:52 -08:00
Todd Gamblin
d842365e4c Merge pull request #288 from trws/zsh-array-fix
removing ill-fated array check for non-portability
2015-12-30 10:34:31 -08:00
Tom Scogland
8726d2fe2e removing ill-fated array check for non-portability 2015-12-30 10:29:11 -08:00
Todd Gamblin
3e3667f254 Revert "removing check as it can cause failures in zsh"
This reverts commit 496e485691.

Undo overly large set of changes -- LLVM wasn't ready.  Tom can
recommit just the zsh stuff.
2015-12-30 10:20:27 -08:00
Tom Scogland
496e485691 removing check as it can cause failures in zsh 2015-12-30 10:13:46 -08:00
Todd Gamblin
99a73c5991 Merge pull request #285 from trws/args-check
fix for array handling in ancient bash
2015-12-29 09:22:32 -08:00
Tom Scogland
d7607973fa fix for array handling in ancient bash
fixes #284
2015-12-29 09:04:54 -08:00
Todd Gamblin
e8e6368cc8 Rework mirror configuration.
- All of these work:
  - `spack mirror add`
  - `spack mirror remove`
  - `spack mirror list`

- `spack mirror` subcommands (except create) now have their own
  --scope argument.

- Mirror config is now stored sanely as an ordered list.
2015-12-28 01:14:41 -08:00
Todd Gamblin
1f8ba53ca7 Rework compiler configuration and simplify config.py logic.
- `spack compiler` subcommands now take an optional --scope argument.

- no more `remove_from_config` in `config.py` -- `update` just
  overwrites b/c it's easier to just call `get_config`, modify YAML
  structures directly, and then call `update`.

- Implemented `spack compiler remove`.
2015-12-28 00:46:51 -08:00
Todd Gamblin
ff0d871612 Remove mock_configs; tests no longer modify spack home directory. 2015-12-27 21:13:18 -08:00
Todd Gamblin
39e360f93a Add custom YAML loader & dumper to track lines & maintain dict order.
- Configs are now parsed with `spack.util.spack_yaml.load/dump`

- Parser annotates returned data with `_start_mark` and `_end_mark`
  properties, so that we can recover what lines/files they came from.

- Parser uses `OrderedDict` instead of `dict`.  This will help
  maintain some sanity when round-tripping config files.
2015-12-27 17:51:11 -08:00
Todd Gamblin
4e8e298eb3 Uncomment disabled tests. 2015-12-27 17:40:31 -08:00
Todd Gamblin
487ac9cd19 Merge pull request #277 from LLNL/bugfix/vcs-mirror-fetch
Fix #85 and #228: errors fetching VCS packages from a mirror.
2015-12-26 09:28:38 -08:00
Todd Gamblin
bef52570ae Default to scope with highest precedence instead of user scope,
- Generalizes config scopes a bit more: nothing assumes there is a
  'user' scope (this would break testing sometimes).
2015-12-25 18:42:06 -08:00
Todd Gamblin
c65fd3a289 Merge branch 'develop' into mplegendre-multi_pkgsrc_roots
Conflicts:
	lib/spack/spack/cmd/create.py
	lib/spack/spack/cmd/extensions.py
	lib/spack/spack/cmd/fetch.py
	lib/spack/spack/cmd/uninstall.py
	lib/spack/spack/config.py
	lib/spack/spack/database.py
	lib/spack/spack/directory_layout.py
	lib/spack/spack/packages.py
	lib/spack/spack/spec.py
2015-12-25 16:35:55 -08:00
Todd Gamblin
34401cf0c3 Rework Spack config: keep user & site config in memory.
- User and site config are now kept separately in memory.
- Merging is done on demand when client code requests the configuration.
- Allows user/site config to be updated independently of each other by commands.
- simplifies config logic (no more tracking merged files)
2015-12-25 14:00:33 -08:00
Erik Schnetter
be12720eb7 Use filter_file instead of calling perl 2015-12-25 14:02:56 -05:00
Todd Gamblin
9a23e1a9df Merge pull request #211 from LLNL/bugfix/github-154
Fix #154 -- better log messages for do_patch()
2015-12-24 11:46:32 -08:00
Todd Gamblin
52625de52c Fix #154 -- better log messages for do_patch() 2015-12-24 11:37:40 -08:00
Erik Schnetter
01f7e768f6 Enable several variants for HDF5
+cxx, +fortran: Enable support for the respective languages
+threadsafe: Enable multi-threading
2015-12-23 22:49:42 -05:00
Todd Gamblin
f37f872e5f Fix #85 and #228: errors fetching VCS packages from a mirror.
- Stage and fetcher were not being set up properly when fetching using
  a different fetch strategy than the default one for the package.

- This is fixed but fetch/stage/mirror logic is still too complicated
  and long-term needs a rethink.

- Spack will now print a warning when fetching a checksum-less tarball
  from a mirror -- users should be careful to use https or local
  filesystem mirrors for this.
2015-12-23 16:23:58 -08:00
Erik Schnetter
51f546fe92 Add comments to package file 2015-12-23 18:21:41 -05:00
Erik Schnetter
309877088d Build Julia 2015-12-23 18:21:40 -05:00
Erik Schnetter
a58dd8f6ab Remove leftover debug statement 2015-12-23 18:19:26 -05:00
Todd Gamblin
28d61f0d7f Merge pull request #276 from LLNL/bugfix/235-smarter-spider
Fix #235: Smarter web spidering -- use parsed links instead of recons…
2015-12-23 14:06:37 -08:00
Todd Gamblin
5ca5884ad6 Fix #235: Smarter web spidering -- use parsed links instead of reconstructing.
- Move `find_versions_of_archive` from spack.package to `spack.util.web`.

- `spider` funciton now just uses the link parsing it already does to
  return links.  We evaluate actual links found in the scraped pages
  instead of trying to reconstruct them naively.

- Add `spack url-parse` command, which you can use to show how Spack
  interprets the name and version in a URL.
2015-12-23 13:16:57 -08:00
alalazo
21dae4577a R : updated package 2015-12-23 10:20:13 +01:00
Todd Gamblin
d63cb8b537 Fix bug in URL regex. 2015-12-22 17:05:23 -08:00
Todd Gamblin
0d4b77a24b revert accidental print statements. 2015-12-22 17:02:14 -08:00
Todd Gamblin
2b89d9b1db More consistent URL parsing when finding versions.
Versions found by wildcard URLs are different from versions found by
parse_version, etc.  The wildcards are constructed more haphazardly
than the very specific URL patterns in url.py, so they can get things
wrong.  e.g., for this URL:

    https://software.lanl.gov/MeshTools/trac/attachment/wiki/WikiStart/mstk-2.25rc1.tgz

We miss the 'rc' and only return 2.25r as the version if we ONLY use
URL wildcards.

Future: Maybe use the regexes from url.py to scrape web pages, and
then compare them for similarity with the original URL, instead of
trying to make a structured wildcard URL pattern?  This might yield
better results.
2015-12-22 16:59:00 -08:00
Erik Schnetter
60ec79eac3 New package PCRE2
This is a major update of the package PCRE. It seems both PCRE and PCRE2 can be installed at the same time; their APIs are different.
2015-12-22 18:53:43 -05:00
Erik Schnetter
a540a68561 Make OpenSSL build on Darwin 2015-12-22 18:51:49 -05:00
Todd Gamblin
d1d23ec5e6 Merge pull request #257 from eschnett/eschnett/hwloc-1.11.2
Update hwloc; don't require libpciaccess on OS X
2015-12-22 15:18:39 -08:00
Todd Gamblin
1771063fe2 Merge pull request #269 from eschnett/eschnett/rsync-3.1.2
Update rsync to 3.1.2
2015-12-22 15:16:24 -08:00
Erik Schnetter
552d8ca5f0 Update rsync to 3.1.2 2015-12-22 16:40:09 -05:00
Erik Schnetter
6831ee6f0a Skip installing libpciaccess on Darwin 2015-12-22 16:24:05 -05:00
Erik Schnetter
6dc1fc03c1 Update hwloc; don't require libpciaccess on OS X
- hwloc 1.11.2 is available.
- libpciaccess is not supported on OS X; don't require it there.
2015-12-22 15:50:46 -05:00
Todd Gamblin
100ada0ed6 Merge pull request #266 from LLNL/bugfix/python3-setuptools-conflict
fix conflict with setuptools and cached pyc files
2015-12-22 09:19:57 -08:00
Gregory L. Lee
41fd380d1b fixed site pyc regular expression 2015-12-22 09:15:47 -08:00
Todd Gamblin
b1d40efd99 Merge pull request #261 from LLNL/features/prefer-versions-in-packages
Add ability to prefer particular versions in packages.
2015-12-22 08:25:52 -08:00
Gregory L. Lee
3db1c1761e only ignore cached site.py file 2015-12-22 08:03:17 -08:00
Todd Gamblin
5bcec9289e Merge pull request #263 from nolta/hdf5-mpi
fix non-mpi hdf5 package build
2015-12-22 07:57:11 -08:00
Todd Gamblin
157e42de22 Merge pull request #264 from nolta/typos
fix a few comment typos
2015-12-22 07:56:54 -08:00
Todd Gamblin
642ee87fcc Merge branch 'nolta-249' into develop 2015-12-22 07:56:10 -08:00
Todd Gamblin
792b033255 Slightly more robust tmp directory search.
- remove getcwd() check (seems arbitrary -- if users set their TMPDIR
  to this why stop them?)

- try a number of common locations and try per-user directories in
  them first.
2015-12-22 07:54:25 -08:00