Commit graph

9316 commits

Author SHA1 Message Date
Adam J. Stewart
e0dad09ea2
Add Xerces-C++ 3.2.1 (#8208) 2018-05-20 15:04:06 -05:00
Adam J. Stewart
15d102acec
Add FYBA package (#8205) 2018-05-20 15:03:38 -05:00
Adam J. Stewart
04687598c9
Add libgeotiff package (#8203) 2018-05-20 15:02:49 -05:00
Adam J. Stewart
0ccbc3a479
URL parsing: strip x86-64 from filename (#8200) 2018-05-20 15:01:58 -05:00
Adam J. Stewart
0a47db5088
Add xz 5.2.4 (#8202) 2018-05-20 15:01:33 -05:00
Adam J. Stewart
17e6260d4b
Add libtiff 4.0.9 (#8201) 2018-05-20 15:01:11 -05:00
peetsv
1ec0f37897 r-utf8 v1.1.3 - New package (#8206)
* py-pyfaidx: adding new package

* updating the url

* r-utf8 v1.1.3 - New package

* adding list_url
2018-05-19 16:23:03 -05:00
peetsv
f9c35b2f04 r-spatial v7.3.11 - New package (#8204)
* py-pyfaidx: adding new package

* updating the url

* r-spatial v7.3.11 - New package
2018-05-19 13:12:47 -05:00
peetsv
96aedae886 r-proc v1 12 1 - New package (#8191)
* py-pyfaidx: adding new package

* updating the url

* r-proc v1.12.1 new package

* adding list_url
2018-05-19 11:26:44 -05:00
健美猞猁
2f5c4be3bf sleef: a new library. (#8198) 2018-05-19 11:26:31 -05:00
Todd Gamblin
22b551f84f fix leftover references to spack.<symbol>
- there were some leftover spack.* names being used after we removed
  globals and moved everything in the top-level namespace to spack.pkgkit

- point those references to their new homes
2018-05-19 07:37:24 -07:00
George Hartzell
9f85ad84ef neovim: add info for v0.2.2 (#8189) 2018-05-18 20:29:32 -05:00
Todd Gamblin
8d7873e8b2 imports: remove unnecessary import spack statements
- remove most `import spack` statements, except for files that need
  `spack_version`

- import spack is no longer sufficient to use submodules
  (e.g. spack.directives).

  - these submodules must be imported directly. Update references
    accordingly.
2018-05-18 16:06:21 -07:00
Todd Gamblin
6b2c49648a init: move symbols in spack to spack.pkgkit
- Spack packages were originally expected to call `from spack import *`
  themselves, but it has become difficult to manage imports in the
  Spack core.

- the top-level namespace polluted by package symbols, and it's not
  possible to avoid circular dependencies and unnecessary module loads in
  the core, given all the stuff the packages need.

- This makes the top-level `spack` package essentially empty, save for a
  version tuple and a version string, and `from spack import *` is now
  essentially a no-op.

- The common routines and directives that packages need are now in
  `spack.pkgkit`, and the import system forces packages to automatically
  include this so that old packages that call `from spack import *`
  will continue to work without modification.

- Since `from spack import *` is no longer required, we could consider
  removing ``from spack import *`` from packages in the future and
  shifting to ``from spack.pkgkit import *``, but we can wait a while to
  do this.
2018-05-18 16:06:21 -07:00
mcneish1
f2eb71ca20 Fix libjpeg library finding and opencv build with nonstandard library directories (#8160) (#8179)
* Use libs[0] and headers.directories[0] instead of hardcoded paths in opencv dependencies

* Fix library finding in libjpeg-turbo

* Use build_type=Debug instead of +debug to determine build_type
2018-05-18 15:30:25 -07:00
Todd Gamblin
54201e3c02
locks: add configuration and command-line options to enable/disable locks (#7692)
- spack.util.lock behaves the same as llnl.util.lock, but Lock._lock and
  Lock._unlock do nothing.

- can be disabled with a control variable.

- configuration options can enable/disable locking:
  - `locks` option in spack configuration controls whether Spack will use filesystem locks or not.
  - `-l` and `-L` command-line options can force-disable or force-enable locking.

- Spack will check for group- and world-writability before disabling
  locks, and it will not allow a group- or world-writable instance to
  have locks disabled.

- update documentation
2018-05-18 14:41:03 -07:00
Elizabeth Fischer
780cc9d72d antlr: Turn off CSharp (#8157)
Spack doesn't have a CSharp package, so the only time ANTLR would
succeed is if a system-installed CSharp was available. This disables
CSharp support, which enables building on systems without
system-installed CSharp.
2018-05-18 10:39:30 -07:00
Jon Rood
5641c1923b Turning off parallel during make install for parallel-netcdf. (#8186) 2018-05-18 12:12:43 -05:00
sknigh
c4cc6cde30 Added vim 8.1 (#8185) 2018-05-18 12:07:05 -05:00
Eric
e5b81dd566 task: Add version 2.5.1 (#8184) 2018-05-18 10:28:19 -05:00
Elizabeth Fischer
6d2617b05d nco: Find NetCDF (#8159)
* nco: Find NetCDF properly

* flake8
2018-05-18 07:51:21 -05:00
Levi Baber
29b695ed40 trinity: add perl+threads dependency (#8143) 2018-05-18 07:47:33 -05:00
Elizabeth Fischer
99f678035a libexpat: Fix for older systems, move to GitHub (#8135)
* PR #4945 did not make this work on SuSE 11.  Adding the latest version of libexpat did.  Also update for Expat's move to GitHub.

* Update package.py

* Update package.py

Move to url_for_version()
2018-05-17 20:04:57 -05:00
Levi Baber
e7d5421baf trinity: fixing jdk dependency (#8140) 2018-05-17 20:03:36 -05:00
Levi Baber
c06174a081 perl: adding threads variant (#8142) 2018-05-17 20:02:07 -05:00
Daryl W. Grunau
457dadaac8 silo: support version 4.10.2-bsd (#8164) 2018-05-17 19:55:00 -05:00
Michael Kuhn
c80333704c Update scorep and friends to newest versions (#8171) 2018-05-17 19:52:01 -05:00
Serban Maerean
a020a41298 Changed netlib-lapack to fix an error in the CMake setup. (#8172)
* Changed netlib-lapack to fix an error in their CMake setup. Changed
netlib-lapack spackage file to add Fortran flags correctly for XL
compiler.

* Fixed line length -- forgot abt flake8...

* Fix the package version where the ibm patch applies.
2018-05-17 19:51:34 -05:00
peetsv
9f12b5aed6 R dismo 1 1 4 - new package (#8176)
* py-pyfaidx: adding new package

* updating the url

* r-dismo: new package
2018-05-17 19:50:19 -05:00
Matthias Diener
f3f9d04c32 cmake: update version (#8178) 2018-05-17 19:48:46 -05:00
Todd Gamblin
5ef30e0a51 make check_for_compiler_existence an instance variable 2018-05-17 14:10:30 -07:00
Todd Gamblin
e9a3e3bfbb use os.path.join instead of join_path in core
- Spack core has long used llnl.util.filesystem.join_path, but
  os.path.join is pretty much the same thing, and is more efficient.

- Use os.path.join in the core Spack code from now on.
2018-05-17 14:10:30 -07:00
Todd Gamblin
f202198777 Convert lazy singleton functions to Singleton object
- simplify the singleton pattern across the codebase
- reduce lines of code needed for crufty initialization
- reduce functions that need to mess with a global

- Singletons whose semantics changed:
  - spack.store.store() -> spack.store
  - spack.repo.path() -> spack.repo.path
  - spack.config.config() -> spack.config.config
  - spack.caches.fetch_cache() -> spack.caches.fetch_cache
  - spack.caches.misc_cache() -> spack.caches.misc_cache
2018-05-17 14:10:30 -07:00
Todd Gamblin
3493f7e793 init: make spack.cmd.all_commands lazy
- `spack.cmd.all_commands` does a directory listing on
  `lib/spack/spack/cmd`, regardless of whether it is needed

- make this lazy so that the directory listing won't happen unless it's
  necessary.
2018-05-17 14:10:30 -07:00
Todd Gamblin
1fe5dbf338 init: only imoprt jsonschema if needed
- It turns out that jsonschema is one of the more expensive imports.

- move imports of jsonschema into functions to avoid the performance hits
  for calls that don't need config.
2018-05-17 14:10:30 -07:00
Todd Gamblin
6f2cac9565 init: initialize spack.store lazily
- spack.store was previously initialized at the spack.store module level,
  but this means the store has to be initialized on every spack call.

- this moves the state in spack.store to a singleton so that the store is
  only initialized when needed.
2018-05-17 14:10:30 -07:00
Todd Gamblin
c615d2be06 init: move spack.repo global variable into its own module
- spack.repository module is now spack.repo

- `spack.repo` is now `spack.repo.path()` and loaded lazily

- Added `spack.repo.get()` and `spack.repo.all_package_names()` as
  convenience functions to simplify the new lazy interface.

- updated tests and code
2018-05-17 14:10:30 -07:00
Todd Gamblin
2a09b627c9 tests: rename builtin_mock to "mock_packages" for clarity.
- rename `builtin_mock` and `refresh_builtin_mock` to the more clear
  `mock_packages` and `mutable_mock_packages`
2018-05-17 14:10:30 -07:00
Todd Gamblin
d1903f3bf3 init: convert spack.debug global variable to config option 2018-05-17 14:10:30 -07:00
Todd Gamblin
47dc96224d init: remove package_testing global
- refactor the way test dependencies are passed to the concretizer
- remove global state
- update tests
2018-05-17 14:10:30 -07:00
Todd Gamblin
bc9f5f084f init: remove dependency on spack.version
- no longer require `spack_version` to be a Version (it isn't used that
  way anyway)

- use a simple tuple `spack_version_info` with major, minor, patch
  versions

- generate `spack_version` from the tuple
2018-05-17 14:10:30 -07:00
Todd Gamblin
678639749c init: remove binary_cache_retrieved_specs global variable
- remove variable from spack/__init__.py
- clean up imports and some code structure in binary_distribution.py
2018-05-17 14:10:30 -07:00
Todd Gamblin
3e6d85c404 init: remove spack.concretizer global variable 2018-05-17 14:10:30 -07:00
Todd Gamblin
d4709673b5 init: remove build_jobs global variable 2018-05-17 14:10:30 -07:00
Todd Gamblin
2ab7b7a5a0 init: convert spack.dirty global to config option 2018-05-17 14:10:30 -07:00
Todd Gamblin
278933e824 init: remove template_dirs global
- remove template_dirs global variable from __init__.py

- also remove update_template_dirs fixture, which had no effect on test
  correctness
2018-05-17 14:10:30 -07:00
Todd Gamblin
77bd2dd706 init: replace global spack.do_checksum with config option 2018-05-17 14:10:30 -07:00
Todd Gamblin
73ab0e5dd7 init: replace spack.insecure global with spack.config.get 2018-05-17 14:10:30 -07:00
Todd Gamblin
863ccd5e94 config: simplify configuration API to just get and set
- replace `spack.config.get_configuration()` with `spack.config.config()`

- replace `get_config`/`update_config` with `get`, `set`

- add a path syntax that can be used to refer to specific config options
  without firt getting the entire configuration dict

- update usages of `get_config` and `update_config` to use `get` and `set`
2018-05-17 14:10:30 -07:00
Todd Gamblin
c9ea957563 config: create internal config scope for commands to use. 2018-05-17 14:10:30 -07:00