summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2023-01-13Paraview rocm (#34790)kwryankrattiger3-18/+32
* paraview: add `rocm` variant This conflicts with CUDA and requires at least ParaView 5.11.0. More dependencies are also needed. * E4S: Add ParaView for ROCm and CUDA stacks * DAV SDK: Update ParaView version and GPU variants * Verify using hipcc vs amdclang++ for newer hip Co-authored-by: Ben Boeckel <ben.boeckel@kitware.com>
2023-01-13Adding py-strawberryfields from Xanadu, and its deps (#34849)Marco De La Pierre9-1/+142
* adding 1st version of py-strawberryfields * py-strawberryfields: minor edit * added backbone for 4x new SF dependencies * edits to SF and its 4x new deps * added all deps for SF * added one version to py-lark-parser * py-quantum-xir with tarball from github * Update var/spack/repos/builtin/packages/py-strawberryfields/package.py Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com> * updated version for py-quantum-xir : pypy fixed * py-pennylane: added pythonpackage.maintainers, too Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
2023-01-13config: make path replacements lazy (#34758)Todd Gamblin1-23/+23
Currently, all of the replacements in `spack.util.path.replacements()` get evaluated for each replacement. This makes it easy to get bootstrap issues, because config is used very early on in Spack. Right now, if I run `test_autotools_gnuconfig_replacement_no_gnuconfig` on my M1 mac, I get the circular reference error below. This fixes the issue by making all of the path replacements lazy lambdas. As a bonus, this cleans up the way we do substitution for `$env` -- it's consistent with other substitutions now. - [x] make all path `replacements()` lazy - [x] clean up handling of `$env` ```console > spack unit-test -k test_autotools_gnuconfig_replacement_no_gnuconfig ... ==> [2022-12-31-15:44:21.771459] Error: AttributeError: The 'autotools-config-replacement' package cannot find an attribute while trying to build from sources. This might be due to a change in Spack's package format to support multiple build-systems for a single package. You can fix this by updating the build recipe, and you can also report the issue as a bug. More information at https://spack.readthedocs.io/en/latest/packaging_guide.html#installation-procedure /Users/gamblin2/src/spack/lib/spack/spack/package_base.py:1332, in prefix: 1330 @property 1331 def prefix(self): >> 1332 """Get the prefix into which this package should be installed.""" 1333 return self.spec.prefix Traceback (most recent call last): File "/Users/gamblin2/src/spack/lib/spack/spack/build_environment.py", line 1030, in _setup_pkg_and_run kwargs["env_modifications"] = setup_package( ^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/build_environment.py", line 757, in setup_package set_module_variables_for_package(pkg) File "/Users/gamblin2/src/spack/lib/spack/spack/build_environment.py", line 596, in set_module_variables_for_package m.std_cmake_args = spack.build_systems.cmake.CMakeBuilder.std_args(pkg) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/build_systems/cmake.py", line 241, in std_args define("CMAKE_INSTALL_PREFIX", pkg.prefix), ^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/package_base.py", line 1333, in prefix return self.spec.prefix ^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/spec.py", line 1710, in prefix self.prefix = spack.store.layout.path_for_spec(self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/directory_layout.py", line 336, in path_for_spec path = self.relative_path_for_spec(spec) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/directory_layout.py", line 106, in relative_path_for_spec projection = spack.projections.get_projection(self.projections, spec) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/projections.py", line 13, in get_projection if spec.satisfies(spec_like, strict=True): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/spec.py", line 3642, in satisfies if not self.virtual and other.virtual: ^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/spec.py", line 1622, in virtual return spack.repo.path.is_virtual(self.name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 890, in is_virtual return have_name and pkg_name in self.provider_index ^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 770, in provider_index self._provider_index.merge(repo.provider_index) ^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 1096, in provider_index return self.index["providers"] ~~~~~~~~~~^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 592, in __getitem__ self._build_all_indexes() File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 607, in _build_all_indexes self.indexes[name] = self._build_index(name, indexer) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/spack/repo.py", line 616, in _build_index index_mtime = self.cache.mtime(cache_filename) ^^^^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/llnl/util/lang.py", line 826, in __getattr__ return getattr(self.instance, name) ^^^^^^^^^^^^^ File "/Users/gamblin2/src/spack/lib/spack/llnl/util/lang.py", line 825, in __getattr__ raise AttributeError() AttributeError ```
2023-01-13Celeritas: new versions 0.1.4 and 0.2.0 (#34883)Seth R. Johnson1-0/+2
2023-01-12libfabric can now find external installation (#33796)Brian Van Essen1-1/+52
* Added support for libfabric to find an external installation and identify variants supported. * Change the fabrics definition to only include CXI when on a cray system with a libfabric-based slingshot network. * Added a conflict when trying to build the CXI fabric value since it is only available as closed source at this time.
2023-01-12Ninja package: resolve circular dependency (#34887)John W. Parent1-1/+5
#33128 Introduces a dependency on re2c into the Ninja build recipe. This is problematic on Windows as we use CMake to build re2c, and Ninja to drive the CMake build. This PR resolves this issue by adding a variant to toggle the use of re2c with ninja.
2023-01-12py-matplotlib: add v3.6.3 (#34903)Adam J. Stewart1-0/+1
2023-01-12ratel - add version 0.2.1 (#34895)Jeremy L Thompson1-2/+4
* ratel - add version 0.2.0 * ratel - use patch release 0.2.1 b/c tet test bug
2023-01-12Add fpart package (#34896)Derek Ryan Strong1-0/+29
* Add fpart package * Use default autoreconf implementation * Switch copyright year
2023-01-12bugfix rmda-core external find library (#34484)Brian Van Essen1-1/+6
* Added a more robust check for an external version of the library. Included a guard to identify when the library gives no discernible version information and then to substitute with "unknown_ver" identifier.
2023-01-12Documentation: Add installation policy to packaging guide (#34878)Tamara Dahlgren1-0/+9
2023-01-12sed %oneapi@2023.0.0: -Wno-error=incompatible-function-pointer-types (#34898)eugeneswalker1-0/+7
2023-01-12cURL package: add support for building on Windows (#30169)John W. Parent1-8/+78
2023-01-12gmp: Add `cxx` variant, and require it in `libint` package (#34881)Mosè Giordano2-2/+3
2023-01-12New package: py-fastfold (#34354)Benjamin Meyers1-0/+40
* New package: py-fastfold * Fix dependencies for py-fastfold * [py-fastfold] fix types * [py-fastfold] relax strict versions * Fix spack style manually * [py-fastfold] relax python and py-requests upper bounds * [py-fastfold] remove bad/unecessary depends_on
2023-01-12edm4hep: depends_on nlohmann-json (#34888)Wouter Deconinck1-0/+1
We may pick this up transitively through `root`, but it makes sense to be explicit too.
2023-01-12loki%oneapi@2023.0.0: -Wno-error=dynamic-exception-spec (#34899)eugeneswalker1-0/+7
2023-01-12Add dummy perl+open variant, use it in external find, require it in ↵Harmen Stoppels2-8/+20
libxcrypt (#34867)
2023-01-12updating checksummed versions for podman (#34788)Benjamin S. Kirk1-1/+2
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-01-11r-ncdf4: adding new version 1.21 (#34890)snehring1-0/+1
2023-01-11gaudi: new versions 36.8, 36.9 (#34822)Wouter Deconinck1-1/+4
* gaudi: new versions 36.8, 36.9 As of 36.8, the tests use catch2 ([commit](https://gitlab.cern.ch/gaudi/Gaudi/- /commit/f2cafb5c9d04c9d497d49182258aa3a0440622c0)). * gaudi: still depends_on fmt@:8
2023-01-11Add version 1.1 for ExaCA (#34833)Sam Reeve1-4/+7
2023-01-11perl-pathtools: add 3.75 (#34787)Christopher Christofi1-0/+15
2023-01-11unifyfs: new release v1.0.1 (#34876)Cameron Stanavige1-0/+8
* unifyfs: new release v1.0.1 Add 1.0.1 release Add new variant for new configure time option Co-authored-by: CamStan <CamStan@users.noreply.github.com>
2023-01-11Fix issue when generating compiler hierarchy (#34873)Massimiliano Culpo1-1/+1
- [x] Fix bug affecting generation of Lmod modules
2023-01-11py-virtualenv: add 20.17.1 (#34859)Manuela Kuhn1-4/+9
2023-01-11py-fasteners: add 0.15 (#34865)Christopher Christofi1-0/+1
2023-01-11Update ROCm recipes for 5.3.3 release. (#34862)Sreenivasa Murthy Kolam46-51/+193
* initial commit for 5.3.3 release * update rocm-openmp-extras for rocm-5.3.3 release * address review comments and failures
2023-01-11Update py-libconf package to newer major version (#34836)vucoda1-1/+2
2023-01-11Bump memory requests for e4s/ml generate jobs (#34648)Mike VanDenburgh1-0/+10
2023-01-11fix: python tix detection blocks reuse (#34768)Harmen Stoppels1-5/+6
Now that the `tix` variant is conditional, it should also be detected condititionally, otherwise the spec is invalid and cannot be used during concretization.
2023-01-11Add fpm 0.7.0 (#34871)Wileam Y. Phan1-0/+1
2023-01-11trilinos: Limit application of "-fuse-ld=gold" for %cce builds (#34875)QuellynSnead1-1/+1
2023-01-11shellcheck: add comments about installing binary (#34877)Alex Hedges1-1/+11
ShellCheck is installed with a downloaded binary instead of being compiled from source, and there should be comments to point out this unorthodox approach.
2023-01-10protected runner jobs at uo: trust e4s-uo signing key (#34828)eugeneswalker12-0/+36
2023-01-10Build systems: add MSBuild and update NMake (#34659)John W. Parent4-53/+225
Add/update build systems used to build packages on Windows.
2023-01-10plink: add new version (#34741)Glenn Johnson2-4/+96
The distribution of this has jumped around a bit. I left the previous versions as-is.
2023-01-10numactl: remove bash from numactl (#34798)Harmen Stoppels1-2/+1
It doesn't require bash on any registered version, and the file is executable and has a /bin/sh shebang.
2023-01-10runc: New version 1.1.4 (#34815)Erik Schnetter1-0/+1
2023-01-10shellcheck: add new package (#34831)Alex Hedges1-0/+42
2023-01-10autoconf: fix for long perl shebangs with autoconf@2.70+ (#34331)Benjamin S. Kirk1-2/+11
autoconf 2.70 uses use warnings instead of -w so that PERL=/usr/bin/env perl can be passed, but we want to fix absolute paths anyhow through sbang upon install. So, we stick to patching the one perl script that's used during the build.
2023-01-10ruby-gist: add new package (#34852)David Zmick1-0/+21
2023-01-10gitlab ci: fix tags for pipeline generation jobs (#34789)Scott Wittenburg1-37/+44
Gitlab does not merge lists when a job extends two other definitions that include the same list (e.g. tags). Also, it merges dictionaries as long as the keys are distinct, but just takes the last mentioned value when there are key collisions. This change makes sure that when different tags are needed by a pipeline, the ones we want are actually provided. It also changes the example stack to better follow this pattern so we do not lead developers astray in the future.
2023-01-10root: conflicts +ipo (#34842)Wouter Deconinck1-0/+4
ROOT does not build successfully with `+ipo`, with symptoms as in https://github.com/root-project/root/issues/10777, and discussed most recently in https://github.com/root-project/root/issues/11135. As indicated there, LTO is not a supported build configuration. As of 6.26.10 there is no estimate for a fix since upstream is still broken.
2023-01-10Remove **kwargs from function signatures in llnl.util.filesystem (#34804)Massimiliano Culpo1-69/+119
Since we dropped support for Python 2.7, we can embrace using keyword only arguments for many functions in Spack that use **kwargs in the function signature. Here this is done for the llnl.util.filesystem module. There were a couple of bugs lurking in the code related to typo-like errors when retrieving from kwargs. Those have been fixed as well.
2023-01-10Add variants for overriding ESMF_OS and ESMF_COMM for ESMF package (#34808)Alex Richert1-0/+15
* Add variants for overriding ESMF_OS and ESMF_COMM for ESMF package * Add doco for esmf_os/esmf_comm variants
2023-01-10xsbench: update version and add cuda support (#34597)Pranav Sivaraman1-2/+14
* Update xsbench to version 20 XSBench version 20 has implementations for new architectures and accelerators. * Added CUDA support for XSBench * Fixed style issues
2023-01-10WarpX 23.01 (#34793)Axel Huebl2-2/+5
Update `warpx` & `py-warpx` to the latest release.
2023-01-10style: Run mypy last (#34687)Jonathon Anderson1-1/+1
2023-01-10FileCache: Delete the new cache file on exception (#34623)Jonathon Anderson2-2/+22
The code in FileCache for write_transaction attempts to delete the temporary file when an exception occurs under the context by calling shutil.rmtree. However, rmtree only operates on directories while the rest of FileCache uses normal files. This causes an empty file to be written to the cache key when unneeded. Use os.remove instead which operates on normal files. Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>