Commit graph

20822 commits

Author SHA1 Message Date
Greg Becker
cefbe48c89
Separable module configurations (#22588)
Currently, module configurations are inconsistent because modulefiles are generated with the configs for the active environment, but are shared among all environments (and spack outside any environment).

This PR fixes that by allowing Spack environments (or other spack config scopes) to define additional sets of modules to generate. Each set of modules can enable either lmod or tcl modules, and contains all of the previously available module configuration. The user defines the name of each module set -- the set configured in Spack by default is named "default", and is the one returned by module manipulation commands in the absence of user intervention.

As part of this change, the module roots configuration moved from the `config` section to inside each module configuration.

Additionally, it adds a feature that the modulefiles for an environment can be configured to be relative to an environment view rather than the underlying prefix. This will not be enabled by default, as it should only be enabled within an environment and for non-default views constructed with separate projections per-spec.

TODO:
- [x] code changes to support multiple module sets
- [x] code changes to support modules relative to a view
- [x] Tests for multiple module configurations
- [x] Tests for modules relative to a view
- [x] Backwards compatibility for module roots from config section
- [x] Backwards compatibility for default module set without the name specified
- [x] Tests for backwards compatibility
2021-05-14 15:03:28 -07:00
iarspider
fc392d2f56
root: Add variants: dcache and oracle (#23441) 2021-05-14 21:08:35 +02:00
Michael Kuhn
59a520246b
emacs: add texinfo build dependency on master (#23631)
It seems that building unreleased versions requires makeinfo, which is
part of texinfo.
2021-05-14 10:07:19 +02:00
Adam J. Stewart
14fc5604dd
py-rarfile: add new package (#23622) 2021-05-14 10:06:39 +02:00
Pat McCormick
d64fd1238b
legion: bug fix for flecsi use cases. (#23624) 2021-05-14 10:03:52 +02:00
Massimiliano Culpo
9e30e669d2
build tests: put an upper bound on the version of GCC being used (#23630) 2021-05-14 07:51:03 +00:00
Jacob Merson
117dfcae25
model-traits: add new package (#23589) 2021-05-14 07:45:04 +00:00
miheer vaidya
702f343fb1
emacs: add support for native compilation on master (#23493)
* Emacs native compilation on master

* emacs: Mark tools correctly as build dependency
2021-05-14 09:33:32 +02:00
natshineman
0d92c39d47
Update mvapich2 to 2.3.6 (#23574)
Co-authored-by: Nat Shineman <shineman.5@buckeyemail.osu.edu>
2021-05-14 09:32:21 +02:00
sebrowne
19c7188cbf
netcdf-c: refactor fsync variant (#23477)
Simplify logic by just enabling or disabling fsync as user specified
(default to off currently).  Also remove the 4.1 version check, since
that version isn't actually supported in here.

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
2021-05-14 08:59:43 +02:00
Massimiliano Culpo
f47066967b
spec: simplify __str__ implementation (#23593)
The implementation for __str__ has been simplified to traverse the spec directly, 
and doesn't call anymore the flat_dependencies method. Dead code has been 
removed.
2021-05-13 21:51:41 -07:00
Frank Willmore
b70bf073b5
cc: change mode to ccld for loopopt edit (#23482)
For configure (e.g. for hdf5) to pass, this option needs to be pulled out when invoked in ccld mode.

I thought it had fixed the issue but I still saw it after that. After some digging, my guess is that I was able
to get hdf5 to build with ifort instead of ifx. Lot of overlapping changes occurring at the time, as it were.
There are still outstanding issues building hdf5 with ifx, and Intel is looking into what appears to be a
compiler bug, but this manifests during build and is likely a separate issue.

I have verified that the making the edit in 'ccld' mode removes the -loopopt=0 and enables hdf5 to pass
configure. It should be fine to make the edit in 'ld' mode as well, but I have not tested that and didn't
include an -or- condition for it.
2021-05-13 21:31:20 -07:00
eugeneswalker
b91f24fa8a
py-warpx: new version: 21.05 (#23628) 2021-05-14 02:35:14 +00:00
eugeneswalker
cce59095bf
veloc: add v1.3 and v1.2 (#23626) 2021-05-13 18:32:13 -07:00
Axel Huebl
34ec69d140
openPMD-api: 0.13.4 (#23619)
Add the latest release.
2021-05-13 18:22:22 -07:00
Jon Rood
0cc42acbbd
Add -DSTK_NO_BOOST_STACKTRACE to compile line in trilinos if +stk and on a Mac. (#23625) 2021-05-13 18:21:40 -07:00
Sreenivasa Murthy Kolam
8b25bdcf4d
Enable image_support flag to fix the issues with hipMalloc3D,hipMallocPitch() (#23620) 2021-05-14 00:37:55 +02:00
Greg Sjaardema
98cf0f5e07
seacas: new version, update dependency versions (#23609)
Add new release of SEACAS.

Update netcdf-c version to recent release which fixes some issues that have caused problems in past

Use release version of CGNS instead of develop
2021-05-13 16:48:04 +02:00
Ben Boeckel
9ed1208650
libcatalyst: add package (#23595)
There are no official releases yet, so just use a git snapshot for now.
2021-05-13 16:47:18 +02:00
Davide Mancusi
98d1d40e46
libbsd: do not apply local-elf.h.patch after version 0.10 (#23565) 2021-05-13 11:58:45 +00:00
Adam J. Stewart
91b58112f1
py-cocotools: add new package (#23573) 2021-05-13 13:18:18 +02:00
Davide Mancusi
9a71bd3893
python: use CFLAGS=-fp-model=strict with %oneapi (#23575) 2021-05-13 11:04:21 +00:00
Sreenivasa Murthy Kolam
a4f03dba9c
update the version for rocm packages comgr,hip-rocclr ,... for rocm-4.2.0 release (#23608) 2021-05-13 12:27:20 +02:00
dependabot[bot]
725bcd1e80
build(deps): bump actions/cache from 2.1.4 to 2.1.5 (#23584)
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.4 to 2.1.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.4...v2.1.5)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-13 11:51:30 +02:00
Michael Kuhn
ce0733a4c3
rocksdb: update pkg-config patch (#23601)
The previous version did not fix an error that only occured with clang.
2021-05-13 11:38:05 +02:00
Michael Kuhn
d294438c24
glib: add v2.68.2 (#23603) 2021-05-13 11:31:52 +02:00
Michael Kuhn
a88206de03
libbson: add v1.17.5 (#23604) 2021-05-13 11:31:36 +02:00
Michael Kuhn
4bc043da85
mongo-c-driver: add v1.17.5 (#23605) 2021-05-13 11:31:17 +02:00
Michael Kuhn
2df7947f02
lmdb: add v0.9.29 (#23606) 2021-05-13 11:31:02 +02:00
Michael Kuhn
52145be122
mariadb-c-client: add v3.1.13 (#23607) 2021-05-13 11:30:46 +02:00
Greg Becker
190b043161
config key error: fix format string (#23610) 2021-05-13 11:20:32 +02:00
Jon Rood
97e6c0fda4
nalu-wind: remove SuperLU dependency from Trilinos and simplify recipe (#23600)
* Update Nalu-Wind to remove SuperLU from Trilinos requirement. Also simplify Nalu-Wind package.

* Leave boost option in nalu-wind.

* Add git branches into TPL requirements. Update OpenFAST for change to main branch.
2021-05-13 11:18:43 +02:00
G-Ragghianti
8a40a3a70f
slate: add v2021.05.01 (#23612)
Adds a new release version for SLATE and includes 
HIP/ROCm backend support. Now can build with either 
CUDA or ROCm support.
2021-05-13 10:32:31 +02:00
Greg Becker
f8740c8c75
env views: make view updates atomic (#23476)
Currently, environment views blink out of existence during the view regeneration, and are slowly built back up to their new and improved state. This is not good if other processes attempt to access the view -- they can see it in an inconsistent state.

This PR fixes makes environment view updates atomic. This requires a level of indirection (via symlink, similar to nix or guix) from the view root to the underlying implementation on the filesystem. 

Now, an environment view at `/path/to/foo` is a symlink to `/path/to/._foo/<hash>`, where `<hash>` is a hash of the contents of the view.  We construct the view in its content-keyed hash directory, create a new symlink to this directory, and atomically replace the symlink with one to the new view.

This PR has a couple of other benefits:
* It future-proofs environment views so that we can implement rollback.
* It ensures that we don't leave users in an inconsistent state if building a new view fails for some reason.

For background:
* there is no atomic operation in posix that allows for a non-empty directory to be replaced.
* There is an atomic `renameat2` in the linux kernel starting in version 3.15, but many filesystems don't support the system call, including NFS3 and NFS4, which makes it a poor implementation choice for an HPC tool, so we use the symlink approach that others tools like nix and guix have used successfully.
2021-05-13 06:56:20 +00:00
Desmond Orton
ee73f75239
New Package r-dexseq (#23457) 2021-05-12 19:56:56 -05:00
wspear
c2577275f5
tau: depend on provider of elf (#23602)
* tau: depend on provider of elf

* Depends on elf when +elf, not +libdwarf
2021-05-13 00:14:33 +00:00
Terry Cojean
735c48c4aa
Update: Ginkgo ROCm setup and smoke tests (#23280)
Add Ginkgo ROCmPackage support and improve tests.
2021-05-12 17:04:08 -06:00
Robert Mijakovic
d19d81a3f4
sqlite3: new version, 3.35.5 (#23592)
Co-authored-by: Robert Mijakovic <robert.mijakovic@lxp.lu>
2021-05-12 21:18:53 +02:00
Brian Van Essen
6b7c57ad47
High performance linkers for LBANN (#23594)
* Added the option to use high performance linkers: gold and lld, for
LBANN.  Including them as build flags causes unnecessary propagation
to all dependent packages, reducing package reuse.
2021-05-12 12:18:01 -07:00
Olivier Cessenat
3c05130258
gmsh: fix variant flags and dependencies (#23563)
* Package gmsh making clear dependencies
* Improvements from reviewer advise
2021-05-12 14:40:00 -04:00
Olivier Cessenat
6403f80a96
ngspice: enhanced to produce bin and more options. (#23495)
* Enhancing package ngspice to produce bin, take options

* Enhancing package ngspice, adding dependencies

* Enhancing package ngspice, typo
2021-05-12 11:04:43 -04:00
Massimiliano Culpo
fc2ac099cd
ASP-based solver: account for deprecated versions (#23491)
fixes #22351

The ASP-based solver now accounts for the presence
in the DAG of deprecated versions and tries to minimize
their number at highest priority.
2021-05-12 07:17:38 -07:00
Harmen Stoppels
b768d7bb09
lzo, lz4, xz, binutils: add libs multi-valued variant (#23474) 2021-05-12 12:31:02 +02:00
Tamara Dahlgren
e7219db93d
Bugfix for "Revert "craype fix for rempi"" (#23580)
This reverts and fixes commit 1ae28f66c6.

Co-authored-by: lukebroskop <luke.roskop@hpe.com>
2021-05-12 01:31:15 +00:00
Tamara Dahlgren
1ae28f66c6
Revert "craype fix for rempi (#23507)" (#23577)
This reverts commit 297f0e489a.
2021-05-11 17:35:41 -07:00
eugeneswalker
edd35eae71
mercury: flag_handler: fix incorrect indent on return statement (#23579) 2021-05-12 00:34:38 +00:00
eugeneswalker
1d3a4820f6
kvtree: flag_handler: fix incorrect indent on return statement (#23578) 2021-05-12 00:31:27 +00:00
lukebroskop
8d4c2d1c76
Fix cray-libsci package to find correct libraries (#23501) 2021-05-11 16:35:28 -07:00
lukebroskop
297f0e489a
craype fix for rempi (#23507)
When comping with cce, use the mpi wrappers
2021-05-11 16:08:51 -07:00
lukebroskop
d549e3a600
CrayPE fix for kvtree (#23513)
Allow for multiple definitions at link time (with cce's linker)

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2021-05-11 16:01:49 -07:00