summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2022-05-24Allow Kokkos with OpenMPTarget backend (#30724)Daniel Arndt1-0/+9
* Allow Kokkos with OpenMPTarget backend * Restrict SYCL and OpenMPTarget to C++17 or higher * Improve C++ standard check for SYCL and OpenMPTarget * Fix indentation
2022-05-24mpich: re-enable building of the older versions (#30766)Sergey Kosukhin1-1/+7
* mpich: enable building @3.4:3.4.3 ~cuda * mpich: add dependency on mxm
2022-05-24tbl2asn: adding currently available version (#30774)snehring1-6/+9
2022-05-24Best effort co-concretization (iterative algorithm) (#28941)Massimiliano Culpo12-206/+532
Currently, environments can either be concretized fully together or fully separately. This works well for users who create environments for interoperable software and can use `concretizer:unify:true`. It does not allow environments with conflicting software to be concretized for maximal interoperability. The primary use-case for this is facilities providing system software. Facilities provide multiple MPI implementations, but all software built against a given MPI ought to be interoperable. This PR adds a concretization option `concretizer:unify:when_possible`. When this option is used, Spack will concretize specs in the environment separately, but will optimize for minimal differences in overlapping packages. * Add a level of indirection to root specs This commit introduce the "literal" atom, which comes with a few different "arities". The unary "literal" contains an integer that id the ID of a spec literal. Other "literals" contain information on the requests made by literal ID. For instance zlib@1.2.11 generates the following facts: literal(0,"root","zlib"). literal(0,"node","zlib"). literal(0,"node_version_satisfies","zlib","1.2.11"). This should help with solving large environments "together where possible" since later literals can be now solved together in batches. * Add a mechanism to relax the number of literals being solved * Modify spack solve to display the new criteria Since the new criteria is above all the build criteria, we need to modify the way we display the output. Originally done by Greg in #27964 and cherry-picked to this branch by the co-author of the commit. Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com> * Inject reusable specs into the solve Instead of coupling the PyclingoDriver() object with spack.config, inject the concrete specs that can be reused. A method level function takes care of reading from the store and the buildcache. * spack solve: show output of multi-rounds * add tests for best-effort coconcretization * Enforce having at least a literal being solved Co-authored-by: Greg Becker <becker33@llnl.gov>
2022-05-24New package: py-x21 (#30225)Jen Herting1-0/+66
* Py-x21 now works, needs dependencies Conflicts: var/spack/repos/rit-rc/packages/py-x21/package.py * Added dependencies to py-x21 * Making flake style check happy * [py-x21] flake8 * [py-x21] - added homepage - added placeholder description - added comment about checksums * [py-x21] added darwin support and fixed issue with python 3.7 wheel name * [py-x21] adding checksum hash * [py-x21] removed duplicate py-pynacl * [py-x21] - updated description - updated version listing to have a different version for each version of python. Also, versions dependent on sys.platform - updated url_for_version to not require post concretized information so that spack checksum works * [py-x21] isort Co-authored-by: vehrc <vehrc@rit.edu>
2022-05-24environments: fail gracefully on missing keys (#26378)Seth R. Johnson1-1/+8
2022-05-24Update regex to correctly identify quoted args (#23494)edwardsp1-1/+1
Previously the regex was only checking for presence of quotes as a beginning or end character and not a matching set. This erroneously identified the following *single* argument as being quoted: source bashenvfile &> /dev/null && python3 -c "import os, json; print(json.dumps(dict(os.environ)))"
2022-05-24apptainer: new package (#30745)Matthias Wolf3-14/+77
2022-05-24vdt: add preload variant (#30030)iarspider1-0/+5
2022-05-24libfabric has needed rdma-core for efa since 1.10.0 (#30798)Evan Bollig1-0/+1
2022-05-24petsc: update rocrand location wrt rocm@5.1.0 (#30790)Satish Balay1-1/+5
rocm-5.1.0 removed librocrand.so from ROCM_DIR/rocrand/lib location (but includes are still at this location) /opt/rocm-5.0.2/lib/librocrand.so /opt/rocm-5.0.2/rocrand/lib/librocrand.so /opt/rocm-5.1.0/lib/librocrand.so drwxr-xr-x 2 root root 617 Mar 8 08:20 /opt/rocm-5.0.2/rocrand/include drwxr-xr-x 2 root root 617 Mar 31 09:48 /opt/rocm-5.1.0/rocrand/include
2022-05-24su2: add v7.3.1 (#30794)Mr-Timn1-0/+3
2022-05-24trilinos: add adelus, aprepro and teuchos variants (#28935)Paul Wolfenbarger1-0/+4
2022-05-24gplates: add v2.3.0 (#30676)Adam J. Stewart1-30/+38
2022-05-24compiler flags: imposed hashes impose the lack of additional compiler flags ↵Greg Becker1-0/+5
(#30797)
2022-05-24strip -Werror: all specific or none (#30284)Tom Scogland5-3/+127
Add a config option to strip `-Werror*` or `-Werror=*` from compile lines everywhere. ```yaml config: keep_werror: false ``` By default, we strip all `-Werror` arguments out of compile lines, to avoid unwanted failures when upgrading compilers. You can re-enable `-Werror` in your builds if you really want to, with either: ```yaml config: keep_werror: all ``` or to keep *just* specific `-Werror=XXX` args: ```yaml config: keep_werror: specific ``` This should make swapping in newer versions of compilers much smoother when maintainers have decided to enable `-Werror` by default.
2022-05-24specs: emit better parsing errors for specs. (#24860)Todd Gamblin5-27/+33
Parse error information is kept for specs, but it doesn't seem like we propagate it to the user when we encounter an error. This fixes that. e.g., for this error in a package: ```python depends_on("python@:3.8", when="0.900:") ``` Before, with no context and no clue that it's even from a particular spec: ``` ==> Error: Unexpected token: ':' ``` With this PR: ``` ==> Error: Unexpected token: ':' Encountered when parsing spec: 0.900: ^ ```
2022-05-23Revert "Added cloud_pipline for E4S on Amazon Linux (#29522)" (#30796)Scott Wittenburg4-992/+6
This reverts commit 07e9c0695af09bbf5d1ebe51bb6f2b34eb88a3df.
2022-05-23Bugfix hwloc find cuda (#30788)Brian Van Essen1-0/+10
* Added autotools configure flags to ensure that hwloc finds the correct version of CUDA that it was concretized against, rather than the first one that package config finds. * Added support for finding the correct version of ROCm libraries. Fixed Flake8. * Fixed guard on finding ROCm library
2022-05-23[py-h2] added version 3.2.0 and 4.1.0 (#29804)Jen Herting1-4/+9
* [py-h2] py-wheel is implied by PythonPackage * [py-h2] python dependencies should be type=('build', 'run') * [py-h2] fixed dependencies for py-h2@4.0.0 * [py-h2] added version 3.2.0 * [py-h2] added version 4.1.0 * [py-h2] Older version requires py-enum34 for older versions of python
2022-05-23Documentation and new method for `CachedCMakePackage` build system (#22706)Greg Becker3-0/+128
Co-authored-by: Axel Huebl <axel.huebl@plasma.ninja>
2022-05-23Added cloud_pipline for E4S on Amazon Linux (#29522)Evan Bollig4-6/+992
Add two new cloud pipelines for E4S on Amazon Linux, include arm and x86 (v3 + v4) stacks. Notes: - Updated mpark-variant to remove conflict that no longer exists in Amazon Linux - Which command on Amazon Linux prefixes on all results when padded_length is too high. In this case, padded_length<=503 works as expected. Chose conservative length of 384.
2022-05-23usearch: adding in new version, updating checksums (#30776)snehring1-4/+6
2022-05-23genemark-et: updating to 4.69 (#30793)snehring1-0/+1
2022-05-23archspec: add oneapi and dpcpp flag support (#30783)Massimiliano Culpo2-1/+323
2022-05-23Deprecate `spack:concretization` over `concretizer:unify` (#30038)Harmen Stoppels19-48/+151
* Introduce concretizer:unify option to replace spack:concretization * Deprecate concretization * Make spack:concretization overrule concretize:unify for now * Add environment update logic to move from spack:concretization to spack:concretizer:reuse * Migrate spack:concretization to spack:concretize:unify in all locations * For new environments make concretizer:unify explicit, so that defaults can be changed in 0.19
2022-05-23plumed: add versions up to v2.8.0 (#30787)Maciej Wójcik2-21/+42
2022-05-23ci: Map visit to huge instance for the data-vis-sdk pipeline (#30779)Chuck Atkins1-0/+1
2022-05-23abseil-cpp: add v20211102 (#30785)marcus-elia1-1/+2
2022-05-23xsdk-examples: add v0.3.0 (#30770)Cody Balos3-30/+89
Co-authored-by: Satish Balay <balay@mcs.anl.gov> Co-authored-by: Veselin Dobrev <dobrev@llnl.gov>
2022-05-23py-rnc2rng: fix 2.6.5 and add 2.6.6 (#30784)Manuela Kuhn1-0/+3
2022-05-23hdf5-vol-async: update new version, tests, and runtime envs (#30713)Jean Luca Bez1-5/+21
* Update h5bench maintainers and versions * Include version 1.1 for h5bench * Correct release hash and set default version * Update .tar.gz version * Include new version and update runtime * Update year * Update package.py * Update package.py
2022-05-23llvm: make "omp_as_runtime" variant conditional (#30782)Massimiliano Culpo1-4/+1
fixes #30700 To avoid clingo adding penalties for not using the default value for a variant, it's better to model the variant as conditional where possible.
2022-05-23gdb: add v11.2 (#30780)Ben Bergen1-1/+2
- This resolves bug https://sourceware.org/PR28302
2022-05-22py-pyfr: Add v1.14.0, add LIBXSMM variant (#30612)MichaelLaufer3-8/+28
* Update PyFR, Gimmik versions. Add PyFR LIBXSMM variant * Fixes * Changes to variants * Update py-gimmik version requirement in py-pyfr * Revert "Update py-gimmik version requirement in py-pyfr" This reverts commit 3b3fde30425ece252290eb0a2793ca1707f84860. * Update libxsmm conflicts
2022-05-22Add Teuchos patch that fixes implicit casting of complex numbers (#30777)Paul Kuberry1-0/+3
2022-05-21Feature/composed boost pkg deps p3 (#28961)Abhik Sarkar16-102/+18
* This commit removes the Boost.with_default_variants to variants that packages are precisely dependant upon. This is the third batch of 16 packages with modified boost dependencies. * style fix * Update var/spack/repos/builtin/packages/sympol/package.py Co-authored-by: Tim Haines <thaines.astro@gmail.com> * fix style * Apply suggestions from code review Co-authored-by: Tim Haines <thaines.astro@gmail.com> * Fix Trilinos boost deps * Fix style Co-authored-by: Tim Haines <thaines.astro@gmail.com> Co-authored-by: Tom Scogland <tom.scogland@gmail.com>
2022-05-21gcc: add `build_type` and `profiled` variants (#30660)Harmen Stoppels1-0/+67
Add a `build_type` variant, which allows building optimized compilers, as well as target libraries (libstdc++ and friends). The default is `build_type=RelWithDebInfo`, which corresponds to GCC's default of -O2 -g. When building with `+bootstrap %gcc`, also add Spack's arch specific flags using the common denominator between host and new GCC. It is done by creating a config/spack.mk file in def patch, that looks as follows: ``` BOOT_CFLAGS := $(filter-out -O% -g%, $(BOOT_CFLAGS)) -O2 -g -march=znver2 -mtune=znver2 CFLAGS_FOR_TARGET := $(filter-out -O% -g%, $(CFLAGS_FOR_TARGET)) -O2 -g -march=znver2 -mtune=znver2 CXXFLAGS_FOR_TARGET := $(filter-out -O% -g%, $(CXXFLAGS_FOR_TARGET)) -O2 -g -march=znver2 -mtune=znver2 ```
2022-05-21New package: py-motor (#30763)Jen Herting1-0/+19
* New package: py-motor * Fixed dependency errors * Fixed flake style errors * Fixed linked issue Co-authored-by: Viv Eric Hafener <vehrc@sporcbuild.rc.rit.edu>
2022-05-21py-ww: add new package (#30767)Manuela Kuhn1-0/+23
* py-ww: add new package * Add missing py-pytest-runner dependency
2022-05-21paml: add v4.10.3 (#30772)snehring1-2/+8
2022-05-21build(deps): bump actions/upload-artifact from 3 to 3.1.0 (#30778)dependabot[bot]2-3/+3
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 3.1.0. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v3...3cea5372237819ed00197afe530f5a7ea3e805c8) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-21Fix toolchain detection for oneapi/dpcpp compilers (#30775)Glenn Johnson1-1/+2
The oneapi and dpcpp compilers are essentially the same except for which binary is used foc CXX. Spack will detect them as "mixed toolchain" and not inject compiler optimization flags. This will be needed once archspec has entries for the oneapi and dpcpp compilers. This PR detects when dpcpp and oneapi are in the toolchains list and explicitly sets `is_mixed_toolchain` to `False`.
2022-05-20visit: Overhaul to build in the DAV SDK (#30594)Chuck Atkins5-137/+185
* mesa-glu and mesa-demos: Fix conflicts with glu and osmesa * visit: Update visit dependencies * ecp-data-vis-sdk: Enable +visit * ci[data-vis-sdk]: Enable +visit
2022-05-20update checksum and url for mlirmiopen recipe (#30771)Sreenivasa Murthy Kolam1-2/+2
2022-05-20[py-openslide-python] added verion 1.1.2 (#30722)Jen Herting1-3/+6
* [py-openslide-python] added verion 1.1.2 and set max py-setuptools version for 1.1.1 * [py-openslide-python] - setuptools required for all possible newer versions - python is type build run * [py-openslide-python] use pil provider
2022-05-20py-formatizer: add new package (#30755)Manuela Kuhn1-0/+17
2022-05-20py-pybids: add 0.8.0 and 0.15.1 (#30756)Manuela Kuhn1-2/+6
2022-05-20DWZ: use virtual "elf" package (#30761)iarspider1-1/+1
2022-05-20Add newer openfast versions and preliminary OpenMP compile support (#30752)Nate deVelder1-0/+17
* Add version 3.0 and 3.1 and prelim OpenMP support * Fix flag handler missing spec variable * Use self.compiler.openmp_flag instead of -fopenmp * Fix whitespace