Commit graph

7342 commits

Author SHA1 Message Date
Christoph Junghans
a685372636 Revert "Use cflags instead of the args variable (#5756)" (#5765)
This reverts commit 6c3184820a.
2017-10-14 13:55:02 +02:00
Adam J. Stewart
6f9036c858 Ensure that FileList makes it into the documentation (#5739) 2017-10-14 06:20:39 +02:00
Satish Balay
0168025c1c superlu_dist: update to latest version 5.2.1 (#5762)
The interface to +int64 changed from  -D_LONGINT to XSDK_INDEX_SIZE=64. This change
uses the appropriate interface for for the given version
2017-10-13 21:22:44 -06:00
David Gardner
f885c89fdc Update Sundials package (#5696)
* initial update of sundials package

* fix bugs in initial sundials update

* add xsdk cmake setup, fix generic math option, add cuda/raja Makefiles to install fixes

* Fix lapack install bug, add new conflicts, clean up formatting

* Address pull requeset comments and make fomatting style consistent

Remove blas variant as blas is only needed when used by an external
linear solver. Set related CMake blas variables as needed depending
enabled external linear solvers.

Add minimum required CMake version.

Additional conflicts and dependencies for external libraries based
on mpi, indextype, and precision.

Fix SuperLU_MT logic to check which threading type SuperLU_MT was
configured with.

Add maintaiers.

Change Sundials solver options to use an array of values.

Consistently use % for formatting.

* change triple-single quotes to single quotes

* Change indextype option to a single int64 option
2017-10-13 21:13:10 -06:00
Todd Gamblin
1ba4c1af63 Clean up logic in Sepc.satisfies_dependencies()
- This puts in a fast path when there are no dependencies to satisfy.

- Reduces time spent to concretize r-rminer by 2x, down to 5s from 10s
2017-10-13 19:46:57 -07:00
Todd Gamblin
afc99ca516 Remove single-root assertion from Spec.root
- Assertion would search for root through all possible paths.
  - It's also really slow.

- This isn't needed anymore. We're pretty good at ensuring single-rooted
  DAGs, and this assertion has never been thrown.

- This shaves another 6 seconds off r-rminer concretization
2017-10-13 19:46:57 -07:00
Todd Gamblin
3f091fb6db Use list instead of OrderedDict to find virtual/external candidates
- This reduces concretization time for r-rminer from over 1 minute to
  only 16 seconds.
  - OrderedDict ends up taking a *lot* of time to compare larger specs.

- An OrderedDict isn't actually needed here.  It's actually not possible
  to find duplicates, and we end up sorting the contents of the
  OrderedDict anyway.
2017-10-13 19:46:57 -07:00
Todd Gamblin
f58c503091 avoid creating lots of dictionaries in traverse_edges()
- This is an optimization to the way traverse_edges iterates over
  successors.

- Previous version called dependencies_dict(), which involved a lot of
  redundant work (creating dicts and calling caonical_deptype)
2017-10-13 19:46:57 -07:00
Todd Gamblin
9ccaf6474d Don't redundantly check for providers of non-virtuals. 2017-10-13 19:46:57 -07:00
Todd Gamblin
55f85f2307 Cache compilers parsed from config files
- Spack ends up constructing compilers frequently from YAML data.

- This caches the result of parsing the compiler config

- The logic in compilers/__init__.py could use a bigger cleanup, but this
  makes concretization much faster for now.

- on macOS, this also ensures that xcrun is called only twice, as opposed
  to every time a new compiler object is constructed.
2017-10-13 19:46:57 -07:00
Patrick Gartung
2e1aa0a5e9 This fixes a bug in creating rpaths relative to $ORIGIN on linux. (#5726)
* This fixes a bug in creating rpaths relative to  on linux.

* fix for macOS as well

* found in testing

* flake8

* fix testing on macOS

* flake8
2017-10-13 19:13:07 -07:00
Yifan Zhu
4d3424a5d4 r-preprocesscore: added versioned dependency on r (#5671) 2017-10-13 18:50:26 -06:00
Yifan Zhu
e6109381fc r-rmpi: added list_url and updated md5 (#5698) 2017-10-13 18:35:06 -06:00
Yifan Zhu
ad8b9522d6 r-edger: added versioned dependency on r (#5669) 2017-10-13 18:32:43 -06:00
Yifan Zhu
8c2fe52f8e r-s4vectors: added versioned dependency on r (#5672) 2017-10-13 18:32:17 -06:00
Denis Davydov
c13e13a52b likwid: update versions (#5757) 2017-10-13 16:08:49 -06:00
Yifan Zhu
2c73c9fb50 r-xvector: added versioned dependency on r (#5731) 2017-10-13 16:01:18 -06:00
Satish Balay
6fcfc3bd5a flake8: fix warnings (#5759) 2017-10-13 15:16:58 -06:00
Ondřej Čertík
6c3184820a Use cflags instead of the args variable (#5756)
That way the user can still append things to CFLAGS.
2017-10-13 15:15:06 -06:00
Christoph Junghans
3c7dd367f8 py-espresso: initial commit (#5724) 2017-10-13 12:29:30 -07:00
Christoph Junghans
23e801923d espressopp -> py-espressopp (#5732)
* espressopp -> py-espressopp

* Update package.py
2017-10-13 12:28:36 -07:00
Axel Huebl
e17765db39 Docker Workflow (#5582)
This adds a workflow section on how to use spack on Docker.

It provides an example on the best-practices I collected over the
last months and circumvents the common pitfalls I tapped in.

Works with MPI, CUDA, Modules, execution as root, etc.

Background: Developed initially for PIConGPU.
2017-10-13 12:17:20 -07:00
Ondřej Čertík
e76cfbbfd8 Fix m4 to compile with Intel (#5728)
Fixes #5705.
2017-10-13 11:20:49 -06:00
Yifan Zhu
8ffe18f1dc r-biostrings: added versioned dependency on r (#5667) 2017-10-13 07:51:30 -06:00
Yifan Zhu
ce1e5e3098 r-zlibbioc: added versioned dependency on r (#5674) 2017-10-13 07:50:10 -06:00
Denis Davydov
b8c1ce43fa trilinos / oce : add missing if before calling macOS_version (#5743)
* trilinos: add missing if before calling macOS_version

* oce: add missing if before calling macOS_version
2017-10-13 07:49:18 -06:00
Yifan Zhu
9716a6f37f r-readr: created new package (#5741) 2017-10-13 07:47:43 -06:00
Yifan Zhu
350624a231 r-dorng: created new package (#5740) 2017-10-13 07:47:01 -06:00
Yifan Zhu
9f3e055e8b r-stringr: added list_url and version 1.2.0 (#5738) 2017-10-13 07:46:29 -06:00
Yifan Zhu
525b69bbad r-stringi: added list_url and version 1.1.5 and 1.1.3 (#5737) 2017-10-13 07:45:26 -06:00
Yifan Zhu
0b117a03c6 r-summarizedexperiment: created new package (#5734) 2017-10-13 07:45:05 -06:00
Yifan Zhu
501ebe6706 r-yaqcaffy: added list_url and versioned dependency on r (#5730) 2017-10-13 07:44:26 -06:00
Denis Davydov
65f12c8160 slepc: refine version constraints for petsc 3.8 (#5752) 2017-10-13 07:11:17 -06:00
Denis Davydov
22ef8efce9 openblas: remove extra develop version (#5750) 2017-10-13 12:10:05 +02:00
Denis Davydov
b182e2334d gettext: fix prefix (#5749) 2017-10-13 10:52:55 +02:00
Brian Van Essen
bd185b8146 Lbann flags (#5747)
* Fixed the datatype flag in the LBANN package.  Also added develop
version to OpenBLAS.

* Fixed where the datatype flag should be set.
2017-10-12 20:23:38 -06:00
Yifan Zhu
f2a6685d8c r-gcrma: added versioned dependency on r (#5670) 2017-10-12 16:18:30 -06:00
Yifan Zhu
d4906169e0 r-simpleaffy: added versioned dependency on r (#5673) 2017-10-12 16:18:15 -06:00
Satish Balay
59163f9750 petsc: add in maintainers (#5729) 2017-10-12 15:09:47 -06:00
David Hows
8ff8b7476c Add the option for a versioned layout to boost (#5709) 2017-10-12 12:51:39 -06:00
Audrey Thoma
36ed96e7dd kaks-calculator: new package (#5725)
* kaks-calculator: new package

* kaks-calculator: new package

* fixing homepage
2017-10-12 12:47:11 -06:00
Satish Balay
98c2184bd3 petsc: update to latest 3.8 version [and include 3.7.7] (#5723)
Also fix flake8 warning "import os should be before import sys"
2017-10-12 12:46:00 -06:00
Jon Rood
c0b2e7db73 Add OpenFAST package (wind turbine simulation tool). (#5662)
* Add OpenFAST package (wind turbine simulator).
* Adding maintainer to openfast package.
* Fixing copyright date.
2017-10-12 11:42:51 -07:00
Denis Davydov
1b53e82348 various fixes for macOS high sierra (#5647)
* various fixes for macOS high sierra

* add macOS_version() helper function

* flake8 fixes

* update oce and trilinos

* fix bison
2017-10-12 11:41:57 -07:00
David Hows
0dad5b3ee5 Make --trusted default when running spack gpg list (#5678)
* Make --trusted default when running spack gpg list

Currently running `spack gpg list` with no arguments returns nothing. You must supply either the `--trusted` or the `--signing` options. The idea here is to return some initial data to the user when the command is run. The alternative is to return an error, telling the user to select one of the two options.

* Add an extra test case for the empty list command

Fixes the issue with code coverage
2017-10-12 11:14:48 -07:00
Todd Gamblin
65b38764ae Speed up concretization (#5716)
This isn't a rework of the concretizer but it speeds things up a LOT.

The main culprits were:
  1. Variant code, `provider_index`, and `concretize.py` were calling
     `spec.package` when they could use `spec.package_class`
    - `spec.package` looks up a package instance by `Spec`, which requires a
      (fast-ish but not that fast) DAG compare.
    - `spec.package_class` just looks up the package's class by name, and you
        should use this when all you need is metadata (most of the time).
    - not really clear that the current way packages are looked up is
      necessary -- we can consider refactoring that in the future.

  2. `Repository.repo_for_pkg` parses a `str` argument into a `Spec` when
     called with one, via `@_autospec`, but this is not needed.
     - Add some faster code to handle strings directly and avoid parsing

This speeds up concretization 3-9x in my limited tests.  Still not super
fast but much more bearable:

Before:
  - `spack spec xsdk` took 33.6s
  - `spack spec dealii` took 1m39s

After:
  - `spack spec xsdk` takes 6.8s
  - `spack spec dealii` takes 10.8s
2017-10-12 09:52:38 -07:00
Carlos Bederián
db149876a4 samtools: add version 1.6 + some fixes (#5715)
* htslib: add version 1.6

* samtools: add version 1.6, remove zlib dependency

* bcftools: add version 1.6, switch to using standalone htslib
2017-10-12 10:08:31 -06:00
Audrey Thoma
87c65fafa9 minimap2: new package (#5722) 2017-10-12 10:07:42 -06:00
David Hows
90cd075277 Initial version of libpcap (#5710)
Add a package script for libpcap with the current version (1.8.1)
2017-10-12 07:00:21 -06:00
Todd Gamblin
b5e136b729 Better install output (#5714)
* Do not call setup_package for fake installs

- setup package could fail if ``setup_dependent_environment`` or other
  routines expected to use executables from dependencies

- xpetsc and boost try to get python config variables in
  `setup_dependent_package`; this would cause them not to be
  fake-installable

* Remove vestigial deptype_query argument to Spec.traverse()

- The `deptype_query` argument isn't used anymore -- it's only passed
  around and causes confusion when calling traverse.

- Get rid of it and just keep the `deptypes` argument

* Don't print redundant messages when installing dependencies

- `do_install()` was originally depth-first recursive, and printed "<pkg>
  already installed in ..." multiple times for packages as recursive
  calls encountered them.

- For much cleaner output, use spec.traverse(order='post') to install
  dependencies instead
2017-10-12 00:49:59 -07:00