Commit graph

18862 commits

Author SHA1 Message Date
Adam J. Stewart
323667ce2a
fakexrandr: add new package (#20687) 2021-01-06 08:59:12 +01:00
Adam J. Stewart
564aebdb1a
Xorg proto: type build -> link (#20685) 2021-01-06 08:56:22 +01:00
Desmond Orton
8d0f5c0a6f
py-picrust2: added new package (#20455) 2021-01-06 08:54:36 +01:00
Gregory Lee
7dbc4d32db
update stat and deps with bug fixes (#20690) 2021-01-06 08:36:56 +01:00
Sinan
1f2f82d388
libspatialite: added v5.0.0 (#20293)
Co-authored-by: sbulut <sbulut@3vgeomatics.com>
2021-01-06 08:16:25 +01:00
estewart08
7faa0a9e43
Rocm-openmp-extras 4.0 version updates (#20692) 2021-01-05 22:48:54 -06:00
Sreenivasa Murthy Kolam
023cb7ab7f
bump up version for rocm-4.0.0 release (#20691) 2021-01-05 22:25:45 -06:00
ketsubouchi
15a7723645
alps: fix for latest gcc and test bug (#20462)
* gcc build OK

* gcc mc-01 OK

* time test problem

* remove comment and debug

* use climit

* TAB to spaces

* comment
2021-01-05 22:24:50 -06:00
Massimiliano Culpo
0111a18b23 concretizer: make rules on virtual packages more linear
fixes #20679

In this refactor we have a single cardinality rule on the
provider, which triggers a rule transforming a dependency
on a virtual package into a dependency on the provider of
the virtual.
2021-01-05 16:59:15 -08:00
Vanessasaurus
67ce1939a3
spack python: allow use of IPython (#20329)
This adds a -i option to "spack python" which allows use of the
IPython interpreter; it can be used with "spack python -i ipython".
This assumes it is available in the Python instance used to run
Spack (i.e. that you can "import IPython").
2021-01-05 16:54:47 -08:00
andymwood
35d81a9006
VTK: add -no-ipo for builds using intel compiler (#20480)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2021-01-05 13:11:29 -08:00
Greg Becker
61c1b71d38
bugfix for target adjustments on target ranges (#20537) 2021-01-05 12:27:13 -08:00
Ethan Stam
18110346c8
Mesa: use auto when llvm is built shared (#20683) 2021-01-05 13:04:57 -07:00
estewart08
32c7241089
Updates and Enhancements to AOMP Recipe. Added version 3.10.0. (#20464)
* Update recipe for AOMP.
Reduced repitition with version hashes.
Expanded dependency versioning.
Reduced repitition with cmake args.
Added version 3.10.0

* Update dependency versions and remove uneeded quotes.

* Update var/spack/repos/builtin/packages/aomp/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2021-01-05 13:39:57 -06:00
estewart08
c55b3bf2d9
AMD ROCm 3.10 Release: Add new package recipe for rocm-openmp-extras. (#20204)
* AMD ROCm 3.9 Release: Add new package recipe for openmp-extras.

* Updated openmp-extras recipe.

Changed name to rocm-openmp-extras.
Reduced repitition with component hashes.
Adjusted the removal of CMAKE_BUILD_TYPE.
Reduced repitition in cmake args.
Added 3.10.0 to recipe.

* Update python/py-setuptools dependency versions.

* Expand dependency versions, fix the openmp cmake args.

* Remove double formats.

* Substitute escape characters with string=True for filter_file(s).

* Remove CMAKE_VERBOSE_MAKEFILE, already present in standard args.
2021-01-05 13:39:38 -06:00
Rémi Lacroix
072d21ad96
Berkeley-DB: Fix compilation with NVIDIA HPC Compilers on Red Hat 8. (#20616) 2021-01-05 10:45:22 -08:00
Luca Heltai
155a3b3a08
Fix compilation for boost@1.72: (#20618) 2021-01-05 10:42:11 -08:00
Rémi Lacroix
18d14eb765
ParaView: Allow choosing a CUDA architecture. (#20623)
This is useful when the "native" architecture cannot be guessed.
2021-01-05 10:37:00 -08:00
Harmen Stoppels
4a7c4e6667
Add cray-fftw (#20654) 2021-01-05 10:22:49 -08:00
Robert Cohn
a1e4465c59
compiler version format changed (#20671) 2021-01-05 09:37:46 -08:00
MBlaschek
4d3c9da872
Update of Eccodes to 2.19.1 (#20368)
* Update of Eccodes to 2.19.1

* PEP8

* PEP8

* PEP8-whitespace

* Update var/spack/repos/builtin/packages/eccodes/package.py

Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>

Co-authored-by: Michael Blaschek <michael.blaschek@univie.ac.at>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2021-01-05 10:09:11 -06:00
AMD Toolchain Support
350418ec35
AOCC support for WRFv3.9.1.1 (#20568)
* AOCC support for WRFv3.9.1.1

* r' as prefix for string literal
2021-01-05 10:06:24 -06:00
Todd Gamblin
5ac05db917
concretizer: use consistent naming for compiler predicates (#20677)
Every other predicate in the concretizer uses a `_set` suffix to
implement user- or package-supplied settings, but compiler settings use a
`_hard` suffix for this. There's no difference in how they're used, so
make the names the same.

- [x] change `node_compiler_hard` to `node_compiler_set`
- [x] change `node_compiler_version_hard` to `node_compiler_version_set`
2021-01-05 08:41:01 +01:00
Axel Huebl
e6d462589f
OpenMPI: Depends on hwlock & libevent (#20658)
* OpenMPI: Depends on hwlock & libevent

Both hwlock & libevent are required dependencies of Open MPI.
While they are also shipped internally, newer releases (>=4.0)
will start looking for external packages by default.

This caused build issues of Open MPI 4.0.5 with Fortran on macOS
10.15.

* Open MPI 4.0: libevent external

Internally shipped libevent just works fine for prior releases.
2021-01-04 21:05:11 -06:00
Jim Huang
e5b03770ed
SS2NEON transition to new repository; update headers and patch (#20647) 2021-01-04 18:45:47 -08:00
mic84
ad29f2148e
amrex: new version 21.01 (#20659) 2021-01-04 18:41:06 -08:00
Stephanie Brink
dec98ed754
py-hatchet: added latest versions up to 1.3.0 (#20667) 2021-01-04 18:38:44 -08:00
Peter Scheibel
22a45e010a
Bugfix: Support old installations using Cray MPICH (#20663)
#20076 moved Cray-specific MPICH support from the Spack MPICH package
to a new cray-mpich Package. This broke existing package installs
using external mpich on Cray systems. This PR keeps the cray-mpich
package but restores the Cray-specific MPICH support for older
installations.

In the future this support should be removed from the Spack mpich
package and users should be directed to use cray-mpich on Cray.
2021-01-04 17:19:08 -08:00
Sreenivasa Murthy Kolam
f4acf74091
bump up rocm math libs recipes for rocm-4.0.0 release (#20651) 2021-01-05 00:02:03 +01:00
Todd Gamblin
9c941bb706 concretizer: simplify handling of virtual version constraints
Previously, the concretizer handled version constraints by comparing all
pairs of constraints and ensuring they satisfied each other. This led to
INCONSISTENT ressults from clingo, due to ambiguous semantics like:

    version_constraint_satisfies("mpi", ":1", ":3")
    version_constraint_satisfies("mpi", ":3", ":1")

To get around this, we introduce possible (fake) versions for virtuals,
based on their constraints. Essentially, we add any Versions,
VersionRange endpoints, and all such Versions and endpoints from
VersionLists to the constraint. Virtuals will have one of these synthetic
versions "picked" by the solver. This also allows us to remove a special
case from handling of `version_satisfies/3` -- virtuals now work just
like regular packages.
2021-01-04 14:51:10 -08:00
Todd Gamblin
a1ed71f7e4 concretizer: remove rule generation code from concretizer
Our program only generates facts now, so remove all unused code related
to generating cardinality constraints and rules.
2021-01-04 14:51:10 -08:00
Todd Gamblin
0ce08640e0 concretizer: convert virtuals to facts; move all rules to concretize.lp
This converts the virtual handling in the new concretizer from
already-ground rules to facts. This is the last thing that needs to be
refactored, and it converts the entire concretizer to just use facts.

The previous way of handling virtuals hinged on rules involving
`single_provider_for` facts that were tied to the virtual and a version
range. The new method uses the condition pattern we've been using for
dependencies, externals, and conflicts.

To handle virtuals as conditions, we impose constraints on "fake" virtual
specs in the logic program. i.e., `version_satisfies("mpi", "2.0:",
"2.0")` is legal whereas before we wouldn't have seen something like
this. Currently, constriants are only handled on versions -- we don't
handle variants or anything else yet, but they key change here is that we
*could*. For a long time, virtual handling in Spack has only dealt with
versions, and we'd like to be able to handle variants as well. We could
easily add an integrity constraint to handle variants like the one we use
for versions.

One issue with the implementation here is that virtual packages don't
actually declare possible versions like regular packages do. To get
around that, we implement an integrity constraint like this:

    :- virtual_node(Virtual),
       version_satisfies(Virtual, V1), version_satisfies(Virtual, V2),
       not version_constraint_satisfies(Virtual, V1, V2).

This requires us to compare every version constraint to every other, both
in program generation and within the concretizer -- so there's a
potentially quadratic evaluation time on virtual constraints because we
don't have a real version to "anchor" things to. We just say that all the
constraints need to agree for the virtual constraint to hold.

We can investigate adding synthetic versions for virtuals in the future,
to speed this up.
2021-01-04 14:51:10 -08:00
Todd Gamblin
49ac3471cf concretizer: consolidate handling of virtuals into spec_clauses 2021-01-04 14:51:10 -08:00
Todd Gamblin
fa411e7c07 concretizer: make _condtion_id_counter an iterator 2021-01-04 14:51:10 -08:00
Todd Gamblin
3cc89726ee concretizer: more detailed section headers in concretize.lp 2021-01-04 14:51:10 -08:00
Rémi Lacroix
39b77e1b39
r-codetools: Update package (#20626) 2021-01-04 14:46:47 -08:00
Mark W. Krentel
735d5c3769
libunwind: add version 1.5.0 (#20632)
Add version 1.5.0, remove 1.4-rc1 (use 1.4.0) and 1.5-rc1 (use 1.5.0).
2021-01-04 14:37:52 -08:00
Fabian Brandt
0c6641abd0
Update libnetworkit, py-networkit to 8.0 (#20478) 2021-01-04 16:14:06 -06:00
yellowhat
4dd6ba44f2
fftw: bump to 3.3.9 (#20634) 2021-01-04 23:01:42 +01:00
Massimiliano Culpo
cfd0ff52d1
ci: fix issue with latest sphinx (#20661) 2021-01-04 22:10:49 +01:00
Dave Love
11dd7ffad6
Add procenv (#20121)
* Add procenv

* procenv: Only buildrequire check

* procenv:  Patch for gcc 10

* procenv:  Add omitted patch

* Indent doc string
2021-01-04 22:08:54 +01:00
darmac
1b33008705
libthai: new package at v0.1.28 (#19916) 2021-01-04 17:36:12 +01:00
Sreenivasa Murthy Kolam
c9e6a4d18b
Bumpup version for rocm 4.0.0 release (#20640) 2021-01-04 17:16:26 +01:00
Sreenivasa Murthy Kolam
efb1e19339
bumpup version for rocm stage1 recipes for rocm-4.0.0 release (#20635) 2021-01-04 17:06:44 +01:00
Rémi Lacroix
47998b3f47
Libnsl: added v1.3.0 and v1.1.0. (#20645) 2021-01-04 16:34:42 +01:00
Rémi Lacroix
573d2ce2e1
Plumed: added v2.7.0. (#20646) 2021-01-04 16:34:09 +01:00
Axel Huebl
a3fb8e55d5
openPMD-api: 0.13.0 (#20648)
Add the latest release of openPMD-api.

Remove a selection of unsupported, pre-beta releases.
2021-01-04 16:29:46 +01:00
Tomoyasu Nojiri
a5611e0466
exciting: fix build on aarch64 (#20505) 2021-01-04 16:26:18 +01:00
Todd Gamblin
16ce207481
bugfix: infinite loop when building a set from incomplete specs (#20649)
This code in `SpecBuilder.build_specs()` introduced in #20203, can loop
seemingly interminably for very large specs:

```python
set([spec.root for spec in self._specs.values()])
```

It's deceptive, because it seems like there must be an issue with
`spec.root`, but that works fine. It's building the set afterwards that
takes forever, at least on `r-rminer`. Currently if you try running
`spack solve r-rminer`, it loops infinitely and spins up your fan.

The issue (I think) is that the spec is not yet complete when this is
run, and something is going wrong when constructing and comparing so many
values produced by `_cmp_key()`. We can investigate the efficiency of
`_cmp_key()` separately, but for now, the fix is:

```python
roots = [spec.root for spec in self._specs.values()]
roots = dict((id(r), r) for r in roots)
```

We know the specs in `self._specs` are distinct (they just came out of
the solver), so we can just use their `id()` to unique them here. This
gets rid of the infinite loop.
2021-01-04 10:28:16 +01:00
Tomoyasu Nojiri
4c23d99e7d
fdupes: Add pcre2 depend (#20466)
* fdupes: Add pcre2 depend

* fdupes: Fix depend for pcre2
2021-01-04 10:12:13 +01:00