2016-07-20 08:10:17 +08:00
|
|
|
# -------------------------------------------------------------------------
|
|
|
|
# This file controls default concretization preferences for Spack.
|
|
|
|
#
|
|
|
|
# Settings here are versioned with Spack and are intended to provide
|
|
|
|
# sensible defaults out of the box. Spack maintainers should edit this
|
|
|
|
# file to keep it current.
|
|
|
|
#
|
|
|
|
# Users can override these settings by editing the following files.
|
|
|
|
#
|
|
|
|
# Per-spack-instance settings (overrides defaults):
|
|
|
|
# $SPACK_ROOT/etc/spack/packages.yaml
|
|
|
|
#
|
|
|
|
# Per-user settings (overrides default and site settings):
|
|
|
|
# ~/.spack/packages.yaml
|
|
|
|
# -------------------------------------------------------------------------
|
|
|
|
packages:
|
|
|
|
all:
|
2024-04-25 00:00:40 +08:00
|
|
|
compiler: [gcc, clang, oneapi, xl, nag, fj, aocc]
|
2016-07-20 08:10:17 +08:00
|
|
|
providers:
|
2017-04-03 03:48:27 +08:00
|
|
|
awk: [gawk]
|
2024-05-04 05:48:58 +08:00
|
|
|
armci: [armcimpi]
|
[NEW] Added amdfftw, amdlibflame and amdscalapack recipes (#19457)
* [NEW] Added amdfftw, amdlibflame and amdscalapack recipes
Updated base fftw, libflame and netlib-scalapack recipes
to accommodate the above listed AMD Optimizing CPU Libraries
which are a set of numerical routines optimized for AMD platforms.
Updated amdblis spack recipe
amdblis:
1. updated with amdblis 2.2 release
amdfftw:
1. "--enable-single" now work as synonym for "--enable-float"
amdlibflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
Libflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
2. Corrected invocation of "enable_or_disable('threads')"
Change-Id: I9da0a2c2c4e2075b7fa2776e7cfe6548a2e0b32f
* Added amd-toolchain-support as maintainers
Added team github account amd-toolchain-support
as maintainers for all the recipes owned by
AMD Optimizing CPU Libraries (AOCL) team
Change-Id: I9a7969bd48fc42cfbb88dd7bd93e0802c6138582
* Incorporated review comments
Updated packages.yaml with aocl components
Handled Flake8 test failures
Change-Id: I0a03f02d8c9f326b2434ec907958c3de3a8e18eb
* Readded accidental removal of stream recipe
amdfftw:
1. Updated the aocc clang selection as per spack standards
fftw:
1. Currently apple-clang section is redundant,
already it is handled in the conflict checks.
Change-Id: Idef4a3f61717eb81f321e0cd16e7ba9619eac846
* Fix for style and docs/validate (pull_request) test
unnumbered format placeholders from {} to {0}
Change-Id: If67a3374177ec067573e5504462d257712fafc05
* changed compiler references to Spack's compiler wrapper:spack_cc, spack_cxx, spack_fc
Change-Id: I7ae29c978fff16e37773913f14c84df232499763
* Removed 'single' variant from amdfftw recipe
Instead of conflict for apple-clang + openmp, handled this senario
via below available feature:
depends_on('llvm-openmp', when='%apple-clang +openmp')
Change-Id: I701b23d83e822a500ca3aaf2b60cc9ace09e13dc
* Added relevant info for users who prefers to use single precision
Change-Id: I3506e21da428ddef5fb7895b5aaed32c2a061ef6
* Minor changes on fftw, amdfftw and libflame
amdfftw:
1. Removed escape symbol to the single quotes
2. Rewording the conflict line from Recommended
to Required
fftw:
1. Reorded to following recommended sections:
versions, variants, dependencies, providers,
patches
libflame:
1. Added provides entry for 5.1.0 version
Change-Id: I21ebff99b6dfde031763154693ecb3f1fa47b476
* Removed single quote from amdfftw docstring to fix style failures
Change-Id: Ife939a5a2f5ccbc8879b730c7bebfe2fcfef9332
2020-11-01 00:57:17 +08:00
|
|
|
blas: [openblas, amdblis]
|
2024-08-13 05:58:09 +08:00
|
|
|
c: [gcc]
|
2024-08-09 13:23:05 +08:00
|
|
|
cxx: [gcc]
|
2021-05-26 04:58:30 +08:00
|
|
|
D: [ldc]
|
2023-05-11 17:58:24 +08:00
|
|
|
daal: [intel-oneapi-daal]
|
2017-04-03 03:48:27 +08:00
|
|
|
elf: [elfutils]
|
[NEW] Added amdfftw, amdlibflame and amdscalapack recipes (#19457)
* [NEW] Added amdfftw, amdlibflame and amdscalapack recipes
Updated base fftw, libflame and netlib-scalapack recipes
to accommodate the above listed AMD Optimizing CPU Libraries
which are a set of numerical routines optimized for AMD platforms.
Updated amdblis spack recipe
amdblis:
1. updated with amdblis 2.2 release
amdfftw:
1. "--enable-single" now work as synonym for "--enable-float"
amdlibflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
Libflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
2. Corrected invocation of "enable_or_disable('threads')"
Change-Id: I9da0a2c2c4e2075b7fa2776e7cfe6548a2e0b32f
* Added amd-toolchain-support as maintainers
Added team github account amd-toolchain-support
as maintainers for all the recipes owned by
AMD Optimizing CPU Libraries (AOCL) team
Change-Id: I9a7969bd48fc42cfbb88dd7bd93e0802c6138582
* Incorporated review comments
Updated packages.yaml with aocl components
Handled Flake8 test failures
Change-Id: I0a03f02d8c9f326b2434ec907958c3de3a8e18eb
* Readded accidental removal of stream recipe
amdfftw:
1. Updated the aocc clang selection as per spack standards
fftw:
1. Currently apple-clang section is redundant,
already it is handled in the conflict checks.
Change-Id: Idef4a3f61717eb81f321e0cd16e7ba9619eac846
* Fix for style and docs/validate (pull_request) test
unnumbered format placeholders from {} to {0}
Change-Id: If67a3374177ec067573e5504462d257712fafc05
* changed compiler references to Spack's compiler wrapper:spack_cc, spack_cxx, spack_fc
Change-Id: I7ae29c978fff16e37773913f14c84df232499763
* Removed 'single' variant from amdfftw recipe
Instead of conflict for apple-clang + openmp, handled this senario
via below available feature:
depends_on('llvm-openmp', when='%apple-clang +openmp')
Change-Id: I701b23d83e822a500ca3aaf2b60cc9ace09e13dc
* Added relevant info for users who prefers to use single precision
Change-Id: I3506e21da428ddef5fb7895b5aaed32c2a061ef6
* Minor changes on fftw, amdfftw and libflame
amdfftw:
1. Removed escape symbol to the single quotes
2. Rewording the conflict line from Recommended
to Required
fftw:
1. Reorded to following recommended sections:
versions, variants, dependencies, providers,
patches
libflame:
1. Added provides entry for 5.1.0 version
Change-Id: I21ebff99b6dfde031763154693ecb3f1fa47b476
* Removed single quote from amdfftw docstring to fix style failures
Change-Id: Ife939a5a2f5ccbc8879b730c7bebfe2fcfef9332
2020-11-01 00:57:17 +08:00
|
|
|
fftw-api: [fftw, amdfftw]
|
2021-05-26 04:58:30 +08:00
|
|
|
flame: [libflame, amdlibflame]
|
2024-08-12 04:32:39 +08:00
|
|
|
fortran: [gcc]
|
Add `intel-oneapi-runtime`, allow injecting virtual dependencies (#42062)
This PR adds:
- A new runtime for `%oneapi` compilers, called `intel-oneapi-runtime`
- Information to both `gcc-runtime` and `intel-oneapi-runtime`, to ensure
that we don't mix compilers using different soname for either `libgfortran`
or `libifcore`
To do so, the following internal mechanisms have been implemented:
- Possibility to inject virtual dependencies from the `runtime_constraints`
callback on packages
Information has been added to `gcc-runtime` to provide the correct soname
under different conditions on its `%gcc`.
Rules injected into the solver looks like:
```prolog
% Add a dependency on 'gfortran@5' for nodes compiled with gcc@=13.2.0 and using the 'fortran' language
attr("dependency_holds", node(ID, Package), "gfortran", "link") :-
attr("node", node(ID, Package)),
attr("node_compiler", node(ID, Package), "gcc"),
attr("node_compiler_version", node(ID, Package), "gcc", "13.2.0"),
not external(node(ID, Package)),
not runtime(Package),
attr("language", node(ID, Package), "fortran").
attr("virtual_node", node(RuntimeID, "gfortran")) :-
attr("depends_on", node(ID, Package), ProviderNode, "link"),
provider(ProviderNode, node(RuntimeID, "gfortran")),
attr("node", node(ID, Package)),
attr("node_compiler", node(ID, Package), "gcc"),
attr("node_compiler_version", node(ID, Package), "gcc", "13.2.0"),
not external(node(ID, Package)),
not runtime(Package),
attr("language", node(ID, Package), "fortran").
attr("node_version_satisfies", node(RuntimeID, "gfortran"), "5") :-
attr("depends_on", node(ID, Package), ProviderNode, "link"),
provider(ProviderNode, node(RuntimeID, "gfortran")),
attr("node", node(ID, Package)),
attr("node_compiler", node(ID, Package), "gcc"),
attr("node_compiler_version", node(ID, Package), "gcc", "13.2.0"),
not external(node(ID, Package)),
not runtime(Package),
attr("language", node(ID, Package), "fortran").
```
2024-03-25 13:59:21 +08:00
|
|
|
fortran-rt: [gcc-runtime, intel-oneapi-runtime]
|
2021-05-28 05:21:11 +08:00
|
|
|
fuse: [libfuse]
|
2022-07-30 02:04:42 +08:00
|
|
|
gl: [glx, osmesa]
|
2018-04-13 02:30:49 +08:00
|
|
|
glu: [mesa-glu, openglu]
|
2022-10-19 01:18:49 +08:00
|
|
|
golang: [go, gcc]
|
2023-03-11 08:27:49 +08:00
|
|
|
go-or-gccgo-bootstrap: [go-bootstrap, gcc]
|
2020-03-28 22:10:31 +08:00
|
|
|
iconv: [libiconv]
|
2023-05-11 17:58:24 +08:00
|
|
|
ipp: [intel-oneapi-ipp]
|
2019-07-26 01:25:26 +08:00
|
|
|
java: [openjdk, jdk, ibm-java]
|
2018-05-06 06:26:47 +08:00
|
|
|
jpeg: [libjpeg-turbo, libjpeg]
|
[NEW] Added amdfftw, amdlibflame and amdscalapack recipes (#19457)
* [NEW] Added amdfftw, amdlibflame and amdscalapack recipes
Updated base fftw, libflame and netlib-scalapack recipes
to accommodate the above listed AMD Optimizing CPU Libraries
which are a set of numerical routines optimized for AMD platforms.
Updated amdblis spack recipe
amdblis:
1. updated with amdblis 2.2 release
amdfftw:
1. "--enable-single" now work as synonym for "--enable-float"
amdlibflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
Libflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
2. Corrected invocation of "enable_or_disable('threads')"
Change-Id: I9da0a2c2c4e2075b7fa2776e7cfe6548a2e0b32f
* Added amd-toolchain-support as maintainers
Added team github account amd-toolchain-support
as maintainers for all the recipes owned by
AMD Optimizing CPU Libraries (AOCL) team
Change-Id: I9a7969bd48fc42cfbb88dd7bd93e0802c6138582
* Incorporated review comments
Updated packages.yaml with aocl components
Handled Flake8 test failures
Change-Id: I0a03f02d8c9f326b2434ec907958c3de3a8e18eb
* Readded accidental removal of stream recipe
amdfftw:
1. Updated the aocc clang selection as per spack standards
fftw:
1. Currently apple-clang section is redundant,
already it is handled in the conflict checks.
Change-Id: Idef4a3f61717eb81f321e0cd16e7ba9619eac846
* Fix for style and docs/validate (pull_request) test
unnumbered format placeholders from {} to {0}
Change-Id: If67a3374177ec067573e5504462d257712fafc05
* changed compiler references to Spack's compiler wrapper:spack_cc, spack_cxx, spack_fc
Change-Id: I7ae29c978fff16e37773913f14c84df232499763
* Removed 'single' variant from amdfftw recipe
Instead of conflict for apple-clang + openmp, handled this senario
via below available feature:
depends_on('llvm-openmp', when='%apple-clang +openmp')
Change-Id: I701b23d83e822a500ca3aaf2b60cc9ace09e13dc
* Added relevant info for users who prefers to use single precision
Change-Id: I3506e21da428ddef5fb7895b5aaed32c2a061ef6
* Minor changes on fftw, amdfftw and libflame
amdfftw:
1. Removed escape symbol to the single quotes
2. Rewording the conflict line from Recommended
to Required
fftw:
1. Reorded to following recommended sections:
versions, variants, dependencies, providers,
patches
libflame:
1. Added provides entry for 5.1.0 version
Change-Id: I21ebff99b6dfde031763154693ecb3f1fa47b476
* Removed single quote from amdfftw docstring to fix style failures
Change-Id: Ife939a5a2f5ccbc8879b730c7bebfe2fcfef9332
2020-11-01 00:57:17 +08:00
|
|
|
lapack: [openblas, amdlibflame]
|
2024-03-14 00:03:10 +08:00
|
|
|
libc: [glibc, musl]
|
2024-10-31 05:32:54 +08:00
|
|
|
libgfortran: [gcc-runtime]
|
2024-05-21 23:18:14 +08:00
|
|
|
libglx: [mesa+glx]
|
2024-10-31 05:32:54 +08:00
|
|
|
libifcore: [intel-oneapi-runtime]
|
2022-07-30 02:04:42 +08:00
|
|
|
libllvm: [llvm]
|
2022-05-10 12:54:38 +08:00
|
|
|
lua-lang: [lua, lua-luajit-openresty, lua-luajit]
|
|
|
|
luajit: [lua-luajit-openresty, lua-luajit]
|
2019-03-16 03:12:30 +08:00
|
|
|
mariadb-client: [mariadb-c-client, mariadb]
|
2023-05-11 17:58:24 +08:00
|
|
|
mkl: [intel-oneapi-mkl]
|
2017-04-03 03:48:27 +08:00
|
|
|
mpe: [mpe2]
|
|
|
|
mpi: [openmpi, mpich]
|
2019-03-27 02:19:07 +08:00
|
|
|
mysql-client: [mysql, mariadb-c-client]
|
2017-04-03 03:48:27 +08:00
|
|
|
opencl: [pocl]
|
2021-06-11 15:47:27 +08:00
|
|
|
onedal: [intel-oneapi-dal]
|
2021-07-28 00:37:00 +08:00
|
|
|
pbs: [openpbs, torque]
|
2020-10-11 01:55:07 +08:00
|
|
|
pil: [py-pillow]
|
2017-11-23 23:05:38 +08:00
|
|
|
pkgconfig: [pkgconf, pkg-config]
|
2023-08-03 02:50:37 +08:00
|
|
|
qmake: [qt-base, qt]
|
2020-05-26 08:20:04 +08:00
|
|
|
rpc: [libtirpc]
|
[NEW] Added amdfftw, amdlibflame and amdscalapack recipes (#19457)
* [NEW] Added amdfftw, amdlibflame and amdscalapack recipes
Updated base fftw, libflame and netlib-scalapack recipes
to accommodate the above listed AMD Optimizing CPU Libraries
which are a set of numerical routines optimized for AMD platforms.
Updated amdblis spack recipe
amdblis:
1. updated with amdblis 2.2 release
amdfftw:
1. "--enable-single" now work as synonym for "--enable-float"
amdlibflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
Libflame:
1. Added enable_or_disable_threads() to set value for "--enable-multithreading" flag
2. Corrected invocation of "enable_or_disable('threads')"
Change-Id: I9da0a2c2c4e2075b7fa2776e7cfe6548a2e0b32f
* Added amd-toolchain-support as maintainers
Added team github account amd-toolchain-support
as maintainers for all the recipes owned by
AMD Optimizing CPU Libraries (AOCL) team
Change-Id: I9a7969bd48fc42cfbb88dd7bd93e0802c6138582
* Incorporated review comments
Updated packages.yaml with aocl components
Handled Flake8 test failures
Change-Id: I0a03f02d8c9f326b2434ec907958c3de3a8e18eb
* Readded accidental removal of stream recipe
amdfftw:
1. Updated the aocc clang selection as per spack standards
fftw:
1. Currently apple-clang section is redundant,
already it is handled in the conflict checks.
Change-Id: Idef4a3f61717eb81f321e0cd16e7ba9619eac846
* Fix for style and docs/validate (pull_request) test
unnumbered format placeholders from {} to {0}
Change-Id: If67a3374177ec067573e5504462d257712fafc05
* changed compiler references to Spack's compiler wrapper:spack_cc, spack_cxx, spack_fc
Change-Id: I7ae29c978fff16e37773913f14c84df232499763
* Removed 'single' variant from amdfftw recipe
Instead of conflict for apple-clang + openmp, handled this senario
via below available feature:
depends_on('llvm-openmp', when='%apple-clang +openmp')
Change-Id: I701b23d83e822a500ca3aaf2b60cc9ace09e13dc
* Added relevant info for users who prefers to use single precision
Change-Id: I3506e21da428ddef5fb7895b5aaed32c2a061ef6
* Minor changes on fftw, amdfftw and libflame
amdfftw:
1. Removed escape symbol to the single quotes
2. Rewording the conflict line from Recommended
to Required
fftw:
1. Reorded to following recommended sections:
versions, variants, dependencies, providers,
patches
libflame:
1. Added provides entry for 5.1.0 version
Change-Id: I21ebff99b6dfde031763154693ecb3f1fa47b476
* Removed single quote from amdfftw docstring to fix style failures
Change-Id: Ife939a5a2f5ccbc8879b730c7bebfe2fcfef9332
2020-11-01 00:57:17 +08:00
|
|
|
scalapack: [netlib-scalapack, amdscalapack]
|
2020-03-21 03:22:32 +08:00
|
|
|
sycl: [hipsycl]
|
2021-06-29 03:42:54 +08:00
|
|
|
szip: [libaec, libszip]
|
2017-08-17 01:21:07 +08:00
|
|
|
tbb: [intel-tbb]
|
2018-07-31 07:16:24 +08:00
|
|
|
unwind: [libunwind]
|
2020-12-30 00:12:26 +08:00
|
|
|
uuid: [util-linux-uuid, libuuid]
|
2024-07-29 07:13:49 +08:00
|
|
|
wasi-sdk: [wasi-sdk-prebuilt]
|
2025-01-04 17:39:45 +08:00
|
|
|
xkbdata-api: [xkeyboard-config, xkbdata]
|
2021-05-26 04:58:30 +08:00
|
|
|
xxd: [xxd-standalone, vim]
|
|
|
|
yacc: [bison, byacc]
|
2021-03-03 20:30:41 +08:00
|
|
|
ziglang: [zig]
|
`zlib-api`: use `zlib-ng +compat` by default (#39358)
In the HPC package manager, we want the fastest `zlib` implementation by default. `zlib-ng` is up to 4x faster than stock `zlib`, and it can do things like take advantage of AVX-512 instructions. This PR makes `zlib-ng` the default `zlib-api` provider (`zlib-api` was introduced earlier, in #37372).
As far as I can see, the only issues you can encounter are:
1. Build issues with packages that heavily rely on `zlib` internals. In Gitlab CI only one out of hundreds of packages had that issue (it extended zlib with deflate stuff, and used its own copy of zlib sources).
2. Packages that like to detect `zlib-ng` separately and rely on `zlib-ng` internals. The only issue I've found with this among the hundreds of packages built in CI is `perl` trying to report more specific zlib-ng version details, and relied on some internals that got refactored. But yeah... that warrants a patch / conflict and is nothing special.
At runtime, you cannot really have any issues, given that zlib and zlib-ng export the exact same symbols (and zlib-ng tests this in their CI).
You can't really have issues with externals when using zlib-ng either. The only type of issue is when system zlib is rather new, and not marked as external; if another external uses new symbols, and Spack builds an older zlib/zlib-ng, then the external might not find the new symbols. But this is a configuration issue, and it's not an issue caused by zlib-ng, as the same would happen with older Spack zlib.
* zlib-api: use zlib-ng +compat by default
* make a trivial change to zlib-ng to trigger a rebuild
* add `haampie` as maintainer
2023-08-18 05:03:14 +08:00
|
|
|
zlib-api: [zlib-ng+compat, zlib]
|
2018-10-12 05:29:07 +08:00
|
|
|
permissions:
|
|
|
|
read: world
|
|
|
|
write: user
|
2024-08-30 17:16:35 +08:00
|
|
|
cray-mpich:
|
|
|
|
buildable: false
|
|
|
|
cray-mvapich2:
|
|
|
|
buildable: false
|
2024-12-03 03:33:01 +08:00
|
|
|
egl:
|
|
|
|
buildable: false
|
2024-08-30 17:16:35 +08:00
|
|
|
fujitsu-mpi:
|
|
|
|
buildable: false
|
|
|
|
hpcx-mpi:
|
|
|
|
buildable: false
|
|
|
|
spectrum-mpi:
|
|
|
|
buildable: false
|