Commit graph

21079 commits

Author SHA1 Message Date
Dr. Christian Tacke
dabee2cee8
libc: Return empty libs (#20338)
The C-Library for the current compiler should already be used by the compiler. So there is no point in returning any libs for this package.

Without this patch: if one uses this as an external package (as intended), then this will can inject system library paths into the build process at the wrong place.
2021-01-06 10:01:07 -08:00
jkelling
8956c8c7b7
magma: remove -W args from CMakeLists.txt when using nvhpc (#20516) 2021-01-06 10:51:05 +01:00
Erik Schnetter
8860db4021
arrayfire: added v3.7.3 (#20612) 2021-01-06 10:46:02 +01:00
Rémi Lacroix
89b94d968d
libtheora: fetch a patch instead of storing it in Spack (#20620) 2021-01-06 10:44:05 +01:00
Rémi Lacroix
d30f9e5806
Blitz: added v1.0.2 (#20614) 2021-01-06 10:35:21 +01:00
Josh Essman
1cd4b134cb
mfem: link to nveccuda when +sundials+cuda (#20588) 2021-01-06 10:34:42 +01:00
Rémi Lacroix
c2411117f3
r-genefilter: added v1.72. (#20627) 2021-01-06 10:23:25 +01:00
Rémi Lacroix
83697161b4
Nek5000: Improve support for OpenMPI without legacy launchers. (#20622)
Use "srun" for the nekmpi wrapper when we know "mpiexec" won't be available.
2021-01-06 10:20:41 +01:00
Rémi Lacroix
3f40d15c84
Gromacs: simplify hwloc dependency. (#20619)
Additionaly remove the version constraint as newer versions work with OpenMPI 4.X.Y and the new experimental concretizer is now available for testing.
2021-01-06 10:19:48 +01:00
Adam J. Stewart
5aabd59335
py-scipy: add v1.6.0 (#20637) 2021-01-06 10:17:36 +01:00
Adam J. Stewart
4da57e8afa
GDAL: add v3.2.1 (#20664) 2021-01-06 10:06:32 +01:00
Tao Lin
05ab114ff9
GenFit: added new package (#20653)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2021-01-06 09:55:49 +01:00
Brian Van Essen
385c503d8e
lbann: make catch2 a "build" and "test" dependency (#20666) 2021-01-06 09:53:30 +01:00
Luca Heltai
812a3fb0ae
dealii: fix concretization problem between trilinos and adol-c (#20606) 2021-01-06 09:51:21 +01:00
Adam J. Stewart
c247999c65
py-sphinx-rtd-theme: remove npm dependency (#20675) 2021-01-06 09:39:06 +01:00
Adam J. Stewart
0a69cf5936
py-numpy: add v1.19.5 (#20684) 2021-01-06 09:16:46 +01:00
Massimiliano Culpo
3ae4a5d3cf qa: use dependabot to update Github Actions 2021-01-06 00:00:33 -08:00
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