Commit graph

22602 commits

Author SHA1 Message Date
Harmen Stoppels
a4a22a6926
Add a master branch for gnuconfig (#25866) 2021-09-13 14:17:32 +02:00
Nic McDonald
ceb94bd6ae
Log4cxx add v0.12.0, convert to CMakePackage (#25875) 2021-09-13 05:17:08 -06:00
Tim Gymnich
b745e208a3
ravel: fix missing header file (#25906)
Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2021-09-13 04:49:42 -06:00
Harmen Stoppels
6a8383b2a7
Make sure perl doesn't run into recompile with fPIC linker errors (#25834) 2021-09-13 11:29:15 +02:00
Kelly (KT) Thompson
6210e694e1
draco: add v7.11.0 (#24631) 2021-09-13 11:16:57 +02:00
Adam J. Stewart
2f889b045c
py-kornia: add new package (#25844) 2021-09-13 11:10:19 +02:00
Daniel Arndt
bc3b90f6ac
Add SYCL build option to ArborX (#25736) 2021-09-13 11:09:51 +02:00
Harmen Stoppels
1f323d296d
py-glmnet: new package (#25711) 2021-09-13 11:07:59 +02:00
Mikael Simberg
819cd41ee4
hpx, kokkos: add consistent variants for C++ std (#25535)
* Add cuda_constexpr variant to Kokkos package
* Don't require nvcc_wrapper in Kokkos package when using Cray compiler
2021-09-13 10:43:20 +02:00
Axel Huebl
c0069210e2
HiPACE: Update openPMD dep, add v21.09 (#25698) 2021-09-13 10:28:08 +02:00
Tamara Dahlgren
a1d792af4c
Bugfix: Correct checksum's sha256 when retrieve from remote (#25831) 2021-09-13 08:08:00 +00:00
Glenn Johnson
b7e61a4b75
Tell gtk-doc where the XML catalog is (#25569)
* Tell gtk-doc where the XML catalog is

The gtk-doc configure script has an option for specifying the path to
the XML catalog. If this is not set the configure script will search
a defined set of directories for a catalog file and will set
`with_xml_catalog` based on that. Only if no system catalog is found will
the XML_CATALOG_FILES be looked at. In order to make sure that the spack
provided catalog is used, pass the `--with-xml-catalog` option.

* Use the property from docbook-xml
2021-09-13 09:57:04 +02:00
Mickaël Schoentgen
59832fb0ac
httpie: add v2.5.0 (#25888) 2021-09-13 09:41:02 +02:00
Tamara Dahlgren
5fa075f5b4
Bugfix: spack test debug requires Spack tty (#25897) 2021-09-13 08:57:16 +02:00
gpotter2
4573741baa
nmap: overhaul of the package recipe (#25656) 2021-09-13 08:24:02 +02:00
Xavier Delaruelle
e0d8f67f34
environment-modules: add version 5.0.0 (#25904)
Adapt configure arguments to only keep useful ones for this new major
release version.
2021-09-13 07:58:40 +02:00
Adam J. Stewart
0545f7d5cc
py-pandas: add v1.3.3 (#25905) 2021-09-13 07:57:56 +02:00
Stephen McDowell
3a9028427c
[docs] document official gfortran macOS precompiled binaries (#25818)
* document official gfortran macOS precompiled binaries

* compile without -vvv ;) {squash this}
2021-09-10 14:11:26 -05:00
Harmen Stoppels
729726d157
Remove dead code in installer (#24035)
Currently as part of installing a package, we lock a prefix, check if
it exists, and create it if not; the logic for creating the prefix
included a check for the existence of that prefix (and raised an
exception if it did), which was redundant.

This also includes removal of tests which were not verifying
anything (they pass with or without the modifications in this PR).
2021-09-10 11:32:46 -07:00
Scott Wittenburg
81962f100c
Pipelines: build kokkos-kernels on bigger instance (#25845) 2021-09-10 08:27:42 -07:00
bernhardkaindl
d54a692e09
openssh: Fix parallel install issue, add test suite (#25790)
- Parallel install was failing to generate a config file.
- OpenSSH has an extensive test suite, run it if requested.
- 'executables' wrongly had 'rsh', replaced the openssh tools.
2021-09-10 05:58:37 -06:00
Christoph Conrads
b12f38383c
SQLite: fix rtree, add version, make discoverable (#25554)
There are two ways to build SQLite: With the Autotools setup or the
so-called "amalgamation" which is a single large C file containing the
SQLite implementation. The amalgamation build is controlled by
pre-processor flags and the Spack setup was using an amalgamation
pre-processor flag for a feature that is controlled by an option of the
configure script. As a consequence, until now Spack has always built
SQLite with the rtree feature enabled.
2021-09-09 18:13:49 -06:00
Mark Abraham
9084ad69b4
Have GROMACS log files indicate spack was used (#25869)
Knowing that spack has patched the code and organized the build is potentially valuable information for GROMACS users and developers troubleshooting their builds.

PLUMED does further patches to GROMACS, so that is expressed directly also.
2021-09-09 16:38:31 -06:00
albestro
59d8031076
CUDA official GCC conflicts (#25054)
* update CUDA 11 / GCC compatibility range

* additional unofficial conflict

* minor changes to comments
2021-09-09 15:03:16 -07:00
Massimiliano Culpo
5fddd48f80
Refactor unit-tests in test/architecture.py (#25848)
Modifications:
- Export platforms from spack.platforms directly, so that client modules don't have to import submodules
- Use only plain imports in test/architecture.py
- Parametrized test in test/architecture.py and put most of the setup/teardown in fixtures
2021-09-09 09:34:47 -06:00
acastanedam
d8b95a496c
openssl: link system openssl.conf after installation (#25807)
Co-authored-by: Arcesio Castaneda Medina <arcesio.castaneda.medina@itwm.fraunhofer.de>
2021-09-09 15:15:53 +02:00
Raghu Raja
161f0d5045
libfabric: Adds v1.13.1 (#25827)
This commit adds the 1.13.1 release. There was an update to the release
tarball on 9/7/21, so using the latest sha256 sum here.
2021-09-09 04:10:57 -06:00
Nathan Hanford
d83f7110d5
specs: move to new spec.json format with build provenance (#22845)
This is a major rework of Spack's core core `spec.yaml` metadata format.  It moves from `spec.yaml` to `spec.json` for speed, and it changes the format in several ways. Specifically:

1. The spec format now has a `_meta` section with a version (now set to version `2`).  This will simplify major changes like this one in the future.
2. The node list in spec dictionaries is no longer keyed by name. Instead, it is a list of records with no required key. The name, hash, etc. are fields in the dictionary records like any other.
3. Dependencies can be keyed by any hash (`hash`, `full_hash`, `build_hash`).
4. `build_spec` provenance from #20262 is included in the spec format. This means that, for spliced specs, we preserve the *full* provenance of how to build, and we can reproduce a spliced spec from the original builds that produced it.

**NOTE**: Because we have switched the spec format, this PR changes Spack's hashing algorithm.  This means that after this commit, Spack will think a lot of things need rebuilds.

There are two major benefits this PR provides:
* The switch to JSON format speeds up Spack significantly, as Python's builtin JSON implementation is orders of magnitude faster than YAML. 
* The new Spec format will soon allow us to represent DAGs with potentially multiple versions of the same dependency -- e.g., for build dependencies or for compilers-as-dependencies.  This PR lays the necessary groundwork for those features.

The old `spec.yaml` format continues to be supported, but is now considered a legacy format, and Spack will opportunistically convert these to the new `spec.json` format.
2021-09-09 01:48:30 -07:00
Harmen Stoppels
edb1d75b1b
Add new package gnuconfig (#25849) 2021-09-09 02:13:43 -06:00
bernhardkaindl
ed9b38c8e3
Fix python/packages.py's config_vars for python2 packages (#25839)
Analysis mostly by me, fix updated after suggestion by Adam J. Steward

Co-authored-by: Bernhard Kaindl <bernhard.kaindl@ait.ac.at>
2021-09-09 01:25:55 -06:00
Adam J. Stewart
1a5891754a
py-torchmetrics: add v0.5.1 (#25855) 2021-09-09 01:19:45 -06:00
Esteban Pauli
d916d801f2
sina: new package (#25448)
* Added spackage to build Sina (https://github.com/LLNL/Sina).

* Improvements to sina/package.py

Made numerous simplifications and improvements to sina/package.py
based on PR feedback.

* Added licence info

* Added maintainers

* Changed maintainers to be Github IDs.
2021-09-08 20:56:37 -07:00
Dr. Christian Tacke
46d770b416
root: Add Version 6.24.06 (#25822) 2021-09-08 16:29:10 -07:00
Cyrus Harrison
6979a63396
conduit: changes related to hdf5 builds that use cmake (#25719) 2021-09-08 15:53:47 -07:00
lukebroskop
f9314d38b0
mpip: fix package to depends on libunwind when +libunwind (#24007)
Added a dependency for mpip@3.5: when the libunwind is set to true (which is the default)
and '~setjmp' is set to False (which is also the default) to avoid a configure
time error from not finding libunwind.

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2021-09-08 13:34:39 -06:00
Massimiliano Culpo
e47f0d486c Account for bootstrapping from sources niche case
This modification accounts for:
1. Bootstrapping from sources using system, non-standard Python
2. Using later an ABI compatible standard Python interpreter
2021-09-08 11:13:37 -07:00
Massimiliano Culpo
fd0884c273 Fix clingo bootstrapping on rhel + ppc64le
The system Python interpreter on rhel is patched to have
slightly different names for some architectures. This
makes it incompatible with manylinux generated extensions
for ppc64le.

To fix this issue when bootstrapping Spack we generate
on-the-fly symbolic links to the name expected by the
current interpreter if it differs from the default.

Links:
  https://github.com/pypa/manylinux/issues/687
  https://src.fedoraproject.org/fork/churchyard/rpms/python3/blame/00274-fix-arch-names.patch?identifier=test_email-mktime
2021-09-08 11:13:37 -07:00
Massimiliano Culpo
4033cc0250 Disable module generation during bootstrapping 2021-09-08 11:13:16 -07:00
Todd Gamblin
c309adb4b3
url stats: add --show-issues option (#25792)
* tests: make `spack url [stats|summary]` work on mock packages

Mock packages have historically had mock hashes, but this means they're also invalid
as far as Spack's hash detection is concerned.

- [x] convert all hashes in mock package to md5 or sha256
- [x] ensure that all mock packages have a URL
- [x] ignore some special cases with multiple VCS fetchers

* url stats: add `--show-issues` option

`spack url stats` tells us how many URLs are using what protocol, type of checksum,
etc., but it previously did not tell us which packages and URLs had the issues. This
adds a `--show-issues` option to show URLs with insecure (`http`) URLs or `md5` hashes
(which are now deprecated by NIST).
2021-09-08 07:59:06 -07:00
Paul Kuberry
c2a6ccbea8
trilinos: Gather teko requirements in one place and add conflict for muelu (#25703) 2021-09-08 15:18:01 +01:00
acastanedam
ca94240dd4
gcc: add patch for sanitizer in gcc<11.1.0 (#25804)
This allows to fix the compilation of gcc versions less than 11.1.0,
due to the remove of cyclades of libsanitizer as it is described in
the patch:

The Linux kernel has removed the interface to cyclades from the latest
kernel headers due to them being orphaned for the past 13
years. libsanitizer uses this header when compiling against glibc, but
glibcs itself doesn't seem to have any references to cyclades. Further
more it seems that the driver is broken in the kernel and the firmware
doesn't seem to be available anymore. As such since this is breaking
the build of libsanitizer (and so the GCC bootstrap) it is proposed to
remove this.

Co-authored-by: Arcesio Castaneda Medina <arcesio.castaneda.medina@itwm.fraunhofer.de>
2021-09-08 15:57:42 +02:00
bernhardkaindl
0ac751b27b
perl: Bind us to @gdbm:1.19 due to API change in gdbm@1.20: (#25819)
By changing return values from C #defines to enums, gdbm-1.20 breaks a kludge:

  #ifndef GDBM_ITEM_NOT_FOUND
  # define GDBM_ITEM_NOT_FOUND GDBM_NO_ERROR
  #endif

The absence of the #define causes perl to #define GDBM_ITEM_NOT_FOUND
as GDBM_NO_ERROR which incorrect for gdbm@1.20:
2021-09-08 07:28:52 -06:00
Nic McDonald
9ef1dbd0ef
systemc: new package (#25761) 2021-09-08 07:08:03 -06:00
Ethan Stam
c3d5232d5b
ParaView: disable externals for fmt and exprtk (#25462) 2021-09-08 14:05:52 +02:00
Seth R. Johnson
f4e66b306e
trilinos: yak shaving (#25549)
* trilinos: yak shaving

- use flags instead of manually adding cxxflags
- rearrange defines more sensibly
- use conflicts instead of inline package disables
- fix some inapplicable definitions such as OpenMP instantiation
- disable "broken" leaf packages(FEI, Panzer) by default
- rely on upstream libraries 'libs' rather than manual names

* flake8

* Fix executable call

* Address reviewer feedback
2021-09-08 14:04:35 +02:00
Harmen Stoppels
c33382b607
Cmake: improve ncurses detection (#25776)
* Optionally enable ccmake in cmake

Renames ncurses variant to `ccmake` since that's how users know it, and
explicitly enable/disable `BUILD_CursesDialog`.

* Make cmake locate its dependencies with CMAKE_PREFIX_PATH, and set rpath flags too

* Undo variant name & defaults change
2021-09-08 05:56:00 -06:00
iarspider
47b16b39a3
Add new version of Alpaka, set minimal CMake version (#25835) 2021-09-08 13:55:38 +02:00
Harmen Stoppels
7018a42211
Make sure we only pull in openssl w/ +ownlibs (#25559) 2021-09-08 05:16:50 -06:00
iarspider
28f71c4d12
Update catch2 (#25838) 2021-09-08 04:49:50 -06:00
Harmen Stoppels
26455a4ac2
mbedtls: trun into a MakefilePackage (#25558)
This is a step towards building cmake with curl using mbedtls instead of
openssl; building mbedtls shouldn't require cmake then.
2021-09-08 12:39:25 +02:00