Compare commits

..

50 commits

Author SHA1 Message Date
c1d57b921f Add spec for tool OTF-CPT to hlrs environment 2024-10-17 07:09:17 -05:00
e72d1773c8 Add numerical library Trilinos with ROCm support 2024-10-10 04:36:49 -05:00
bf07e347e4 Trilinos requires recent cmake; give to everyone 2024-10-08 04:06:05 -05:00
1bc51ab8a2 Add numerical library PETSc with ROCm support 2024-09-23 09:33:36 -05:00
be40140f44 Add numerical library hypre with ROCm support 2024-09-11 08:49:28 -05:00
a87de1536c Add numerical library mumps 2024-09-11 08:49:28 -05:00
5bd1fd997a Draft specs for numerical libs Trilinos and KaHIP 2024-09-11 08:49:28 -05:00
bb01e23196 Add numerical library parmgridgen 2024-09-11 08:49:28 -05:00
15f16e8546 Add numerical library SUNDIALS with ROCm support 2024-09-11 08:49:28 -05:00
e3f56fe88e Add numerical lib superLU with rocm support 2024-09-11 08:49:28 -05:00
80f0bb339e Add environment for numerical libraries 2024-09-11 08:49:27 -05:00
d1823ef785 Set path to compilers for ROCm package llvm-amdgpu 2024-09-11 08:49:27 -05:00
f60714d361 Add missing rocm components rocthrust and rocprim 2024-09-06 10:15:09 -05:00
43d5fa74ce ROCm package llvm-amdgpu requires additionally setting prefix 2024-09-04 04:32:22 -05:00
42662dbd75 MI300 requires more recent rocm version 2024-09-04 04:32:21 -05:00
416f1d777b Add missing rocm component llvm-amdgpu 2024-09-04 04:32:21 -05:00
eb821f3649 Fix spec of external package 2024-09-04 04:32:21 -05:00
a673f71049 Change config to cache sources in user dirs 2024-09-03 09:24:10 -05:00
0a04b8b791 Build scorep with hip support where possible 2024-07-19 10:40:33 -05:00
919467282d Add a bunch of hip/rocm stuff as external packages 2024-07-19 10:21:04 -05:00
77f443bd2d Add specs for scalasca and scorep (without hip support) 2024-07-19 09:01:32 -05:00
09718e78f3 Add specs for build tools meson and ninja 2024-07-19 08:59:45 -05:00
e8b3514554 Add external package for dbus 2024-07-18 10:15:39 -05:00
a1920efc10 Add external python packages through cray-python 2024-07-18 10:06:28 -05:00
cdc44fa2a6 Fix PYTHONPATH for spack's python-venv with Redoak's cray-python 2024-07-18 10:06:28 -05:00
30a327fb22 System Python is not a devel package on redoak 2024-07-18 10:06:28 -05:00
00df88e0db Allow incompatible function pointer types for extrae 2024-07-17 07:19:57 -05:00
845b86b42a Add latest version of extrae to repo 2024-07-17 07:17:26 -05:00
18b880e638 Fixed extrae's dependency on boost 2024-07-17 07:16:45 -05:00
84c5821f85 Define alias for common cflags re implicit definitions 2024-07-16 04:42:59 -05:00
1e7a11ac2d Prefer core compiler for dependencies 2024-07-16 04:42:59 -05:00
893717feef Add python basic packages as externals 2024-07-12 09:26:22 -05:00
212f94032d Remove sqlite3 from external packages due to missing includes 2024-07-12 09:20:08 -05:00
e2605e6eb5 gitignore .spack-env/ and python caches in repos 2024-07-12 09:20:08 -05:00
cb5349363c Add external packages for fftw, netcdf, and hdf5 from CPE 2024-07-12 09:20:08 -05:00
52adc7c804 Fix some package providers 2024-07-08 08:12:20 -05:00
dc790665b8 Allow int conversion for extrae and mpip 2024-07-08 08:10:29 -05:00
71d17467a2 External package binutils does not include libiberty 2024-07-08 04:46:11 -05:00
575f74f7b7 Use definitions of compilers and MPIs in specs 2024-07-05 08:13:35 -05:00
42c6c88aee Spack keeps ignoring external libxml2, so build it with core compiler 2024-07-05 08:07:11 -05:00
8d0421b4d2 External package xz was removed from Redoak. 2024-07-05 06:26:18 -05:00
f6c3102345 Allow usage of implicit declarations in mpip and extrae (sigh) 2024-07-01 09:46:44 -05:00
4a5fef92cc Add packages which you might expect in OS image and thus build with system compiler 2024-07-01 09:44:27 -05:00
9347a7a8ef Define compilers in terms of CPE wrappers and modules 2024-07-01 09:29:51 -05:00
9dd9c29847 Declare provider for pkg-conf 2024-06-27 10:55:39 -05:00
40e3cab5ce Add some test packages to hlrs environment 2024-06-27 07:27:42 -05:00
927f3567bc Add cray-libsci to packages 2024-06-27 07:27:41 -05:00
306e1e96fc Add cray-mpich and dependencies to packages 2024-06-27 07:27:41 -05:00
0f89706e95 Add redoak CPE 24.03 compilers 2024-06-27 07:27:41 -05:00
b9ee619e79 Add external OS packages to clean packages.yaml 2024-06-26 04:01:17 -05:00
7 changed files with 637 additions and 236 deletions

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
environments/*/.spack-env/
repos/*/packages/*/__pycache__/

View file

@ -1,43 +1,45 @@
compilers:
- compiler:
spec: aocc@=4.1.0
spec: cce@=18.0.0
paths:
cc: /opt/hlrs/non-spack/release/23.1.0/compiler/aocc/4.1.0/bin/clang
cxx: /opt/hlrs/non-spack/release/23.1.0/compiler/aocc/4.1.0/bin/clang++
f77: /opt/hlrs/non-spack/release/23.1.0/compiler/aocc/4.1.0/bin/flang
fc: /opt/hlrs/non-spack/release/23.1.0/compiler/aocc/4.1.0/bin/flang
flags:
cflags: null
cxxflags: null
fflags: null
operating_system: rocky8
target: x86_64
modules: []
environment: {}
extra_rpaths: []
- compiler:
spec: gcc@=12.3.0
paths:
cc: /opt/hlrs/non-spack/release/23.1.0/compiler/gcc/12.3.0/bin/gcc
cxx: /opt/hlrs/non-spack/release/23.1.0/compiler/gcc/12.3.0/bin/g++
f77: /opt/hlrs/non-spack/release/23.1.0/compiler/gcc/12.3.0/bin/gfortran
fc: /opt/hlrs/non-spack/release/23.1.0/compiler/gcc/12.3.0/bin/gfortran
cc: cc
cxx: CC
f77: ftn
fc: ftn
flags: {}
operating_system: rocky8
operating_system: sles15
target: x86_64
modules: []
modules:
- PrgEnv-cray
- cce/18.0
environment: {}
extra_rpaths: []
- compiler:
spec: gcc@=8.5.0
spec: gcc@=13.2.1
paths:
cc: cc
cxx: CC
f77: ftn
fc: ftn
flags: {}
operating_system: sles15
target: x86_64
modules:
- PrgEnv-gnu
- gcc-native/13.2
environment: {}
extra_rpaths: []
- compiler:
spec: gcc@=7.5.0
paths:
cc: /usr/bin/gcc
cxx: /usr/bin/g++
f77: /usr/bin/gfortran
fc: /usr/bin/gfortran
flags: {}
operating_system: rocky8
operating_system: sles15
target: x86_64
modules: []
environment: {}
extra_rpaths: []

View file

@ -17,6 +17,10 @@ config:
# Directory where licenses should be located
license_dir: $spack/../licenses
# Cache directory for already downloaded source tarballs and archived
# repositories. This can be purged with `spack clean --downloads`.
source_cache: $user_cache_path/cache
# Directory where spack managed environments are created and stored
environments_root: $spack/../environments

View file

@ -1,93 +1,330 @@
packages:
all:
# compiler: [gcc@12.3.0, aocc@4.1.0]
# compiler: [gcc@8.5.0]
providers:
mpi: [mpt, openmpi]
pkgconfig: [pkgconf]
openmpi:
mpi: [cray-mpich]
blas: [cray-libsci]
lapack: [cray-libsci]
scalapack: [cray-libsci]
fftw-api: [cray-fftw]
pkgconfig: [pkg-config]
zlib-api: [zlib-ng+compat]
cray-mpich:
externals:
- spec: openmpi@4.1.6%gcc@=12.3.0~cuda~cxx~cxx_exceptions~java~memchecker+pmi~static~wrapper-rpath
fabrics=ucx schedulers=slurm,tm
prefix: /opt/hlrs/non-spack/release/23.1.0/mpi/openmpi/4.1.6-gcc-12.3.0
- spec: openmpi@4.1.6%aocc@=4.1.0~cuda~cxx~cxx_exceptions~java~memchecker+pmi~static~wrapper-rpath
fabrics=ucx schedulers=slurm,tm
prefix: /opt/hlrs/non-spack/release/23.1.0/mpi/openmpi/4.1.6-aocc-4.1.0
- spec: cray-mpich@8.1.30%gcc
prefix: /opt/cray/pe/mpich/8.1.30/ofi/gnu/12.3
modules:
- libfabric/1.15.2.0
- spec: cray-mpich@8.1.30%cce
prefix: /opt/cray/pe/mpich/8.1.30/ofi/cray/17.0
modules:
- libfabric/1.15.2.0
buildable: false
mpt:
libfabric:
externals:
# We have to generate compiler-specific modulefiles in order to
# e.g. set custom Fortran modules path. It's hence not possible
# to use a single spec based on gcc@8.5.0 although a single spec
# would be meaningful due to the _prebuilt_ fashion of MPT.
- spec: mpt@2.28%gcc@=12.3.0
prefix: /opt/hlrs/non-spack/mpi/mpt/mpt-2.28
- spec: mpt@2.28%aocc@=4.1.0
prefix: /opt/hlrs/non-spack/mpi/mpt/mpt-2.28
buildable: False
binutils:
- spec: libfabric@1.15.2 fabrics=cxi,tcp,udp
prefix: /opt/cray/libfabric/1.15.2.0
buildable: false
cray-libsci:
externals:
- spec: binutils@2.30.123
prefix: /usr
- spec: cray-libsci@24.03.0%gcc
prefix: /opt/cray/pe/libsci/24.03.0/gnu/12.3/x86_64
modules:
- cray-libsci/24.03.0
- spec: cray-libsci@24.03.0%cce
prefix: /opt/cray/pe/libsci/24.03.0/cray/17.0/x86_64
modules:
- cray-libsci/24.03.0
buildable: false
python:
externals:
- spec: python@3.6.8+bz2+crypt+ctypes+dbm+lzma+nis+pyexpat~pythoncmd+readline+sqlite3+ssl~tkinter+uuid+zlib
prefix: /usr
- spec: python@3.11
prefix: /opt/cray/pe/python/3.11.7
modules:
- cray-python/3.11.7
extra_attributes:
environment:
prepend_path: # on Redoak cray-python module does not set PYTHONPATH correctly
PYTHONPATH: /opt/cray/pe/python/3.11.7/lib/python3.11/site-packages
buildable: false
cmake:
py-pip:
externals:
- spec: cmake@3.26.5
prefix: /usr
buildable: false
autoconf:
- spec: py-pip@23.2.1
modules:
- cray-python/3.11.7
py-setuptools:
externals:
- spec: autoconf@2.69
prefix: /usr
buildable: false
automake:
- spec: py-setuptools@69.0.3
modules:
- cray-python/3.11.7
py-mpi4py:
externals:
- spec: automake@1.16.1
prefix: /usr
buildable: false
bash:
- spec: py-mpi4py@3.1.4
modules:
- cray-python/3.11.7
py-numpy:
externals:
- spec: bash@4.4.20
prefix: /usr
buildable: false
berkeley-db:
- spec: py-numpy@1.24.4
modules:
- cray-python/3.11.7
py-dask:
externals:
- spec: berkeley-db@5.3.28
prefix: /usr
buildable: false
bison:
- spec: py-dask@2023.6.1
modules:
- cray-python/3.11.7
py-scipy:
externals:
- spec: bison@3.0.4
prefix: /usr
buildable: false
bzip2:
- spec: py-scipy@1.10.1
modules:
- cray-python/3.11.7
py-pandas:
externals:
- spec: bzip2@1.0.6
prefix: /usr
buildable: false
coreutils:
- spec: py-pandas@1.5.3
modules:
- cray-python/3.11.7
fftw:
externals:
- spec: coreutils@8.30
prefix: /usr
- spec: fftw@3.3.10.7
prefix: /opt/cray/pe/fftw/3.3.10.7/x86_64
modules:
- cray-fftw/3.3.10.7
buildable: false
cpio:
hdf5:
externals:
- spec: cpio@2.12
- spec: hdf5@1.14.3.1%cce
prefix: /opt/cray/pe/hdf5/1.14.3.1/cray/18.0
modules:
- cray-hdf5/1.14.3.1
- spec: hdf5@1.14.3.1%gcc
prefix: /opt/cray/pe/hdf5/1.14.3.1/gnu/12.3
modules:
- cray-hdf5/1.14.3.1
buildable: false
netcdf-c:
externals:
- spec: netcdf-c@4.9.0.13%cce
prefix: /opt/cray/pe/netcdf/4.9.0.13/crayclang/18.0
modules:
- cray-netcdf/4.9.0.13
- spec: netcdf-c@4.9.0.13%gcc
prefix: /opt/cray/pe/netcdf/4.9.0.13/gnu/12.3
modules:
- cray-netcdf/4.9.0.13
buildable: false
netcdf-cxx4:
externals:
- spec: netcdf-cxx4@4.9.0.13%cce
prefix: /opt/cray/pe/netcdf/4.9.0.13/crayclang/18.0
modules:
- cray-netcdf/4.9.0.13
- spec: netcdf-cxx4@4.9.0.13%gcc
prefix: /opt/cray/pe/netcdf/4.9.0.13/gnu/12.3
modules:
- cray-netcdf/4.9.0.13
buildable: false
netcdf-fortran:
externals:
- spec: netcdf-fortran@4.9.0.13%cce
prefix: /opt/cray/pe/netcdf/4.9.0.13/crayclang/18.0
modules:
- cray-netcdf/4.9.0.13
- spec: netcdf-fortran@4.9.0.13%gcc
prefix: /opt/cray/pe/netcdf/4.9.0.13/gnu/12.3
modules:
- cray-netcdf/4.9.0.13
buildable: false
parallel-netcdf:
externals:
- spec: parallel-netcdf@1.12.3.13%cce
prefix: /opt/cray/pe/parallel-netcdf/1.12.3.13/crayclang/18.0
modules:
- cray-parallel-netcdf/1.12.3.13
- spec: parallel-netcdf@1.12.3.13%gcc
prefix: /opt/cray/pe/parallel-netcdf/1.12.3.13/gnu/12.3
modules:
- cray-parallel-netcdf/1.12.3.13
buildable: false
# Rocm/hip packages
# `module load rocm` defaults to v5.5.1 in CPE 24.03, but MI300/gfx942 requires rocm/6+
rocsparse:
externals:
- spec: rocsparse@6.1.1
modules:
- rocm/6.1.1
buildable: false
hipsparse:
externals:
- spec: hipsparse@6.1.1
modules:
- rocm/6.1.1
buildable: false
hipsolver:
externals:
- spec: hipsolver@6.1.1
modules:
- rocm/6.1.1
buildable: false
hip:
externals:
- spec: hip@6.1.1
modules:
- rocm/6.1.1
buildable: false
hipblas:
externals:
- spec: hipblas@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocprofiler-dev:
externals:
- spec: rocprofiler-dev@6.1.1
modules:
- rocm/6.1.1
buildable: false
hiprand:
externals:
- spec: hiprand@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocblas:
externals:
- spec: rocblas@6.1.1
modules:
- rocm/6.1.1
buildable: false
hsa-rocr-dev:
externals:
- spec: hsa-rocr-dev@6.1.1
modules:
- rocm/6.1.1
buildable: false
llvm-amdgpu:
externals:
- spec: llvm-amdgpu@6.1.1
modules:
- rocm/6.1.1
prefix: /opt/rocm-6.1.1/llvm/
extra_attributes:
compilers:
c: /opt/rocm-6.1.1/llvm/bin/clang++
cxx: /opt/rocm-6.1.1/llvm/bin/clang++
buildable: false
rccl:
externals:
- spec: rccl@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocfft:
externals:
- spec: rocfft@6.1.1
modules:
- rocm/6.1.1
buildable: false
comgr:
externals:
- spec: comgr@6.1.1
modules:
- rocm/6.1.1
buildable: false
miopen-hip:
externals:
- spec: miopen-hip@6.1.1
modules:
- rocm/6.1.1
buildable: false
migraphx:
externals:
- spec: migraphx@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocsolver:
externals:
- spec: rocsolver@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocrand:
externals:
- spec: rocrand@6.1.1
modules:
- rocm/6.1.1
buildable: false
roctracer-dev:
externals:
- spec: roctracer-dev@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocm-smi-lib:
externals:
- spec: rocm-smi-lib@6.1.1
modules:
- rocm/6.1.1
buildable: false
miopen-opencl:
externals:
- spec: miopen-opencl@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocthrust:
externals:
- spec: rocthrust@6.1.1
modules:
- rocm/6.1.1
buildable: false
rocprim:
externals:
- spec: rocprim@6.1.1
modules:
- rocm/6.1.1
buildable: false
# Packages which have not been discovered by spack external find
# and packages which are not in the OS image but low-level.
# Declare libs as externals only if a -devel OS package is installed
elfutils:
externals:
- spec: elfutils@0.185
prefix: /usr
buildable: false
numactl:
externals:
- spec: numactl@2.0.14
prefix: /usr
buildable: false
libxml2:
require: '%gcc@7.5'
libdwarf:
require: '%gcc@7.5'
zstd:
require: '%gcc@7.5'
zlib: # zlib@1.2.11 is available but deprecated
require: '%gcc@7.5'
zlib-ng:
require: '%gcc@7.5'
xz:
require: '%gcc@7.5'
binutils:
require:
- '%gcc@7.5'
- '+libiberty'
dbus:
externals:
- spec: dbus@1.12.2
prefix: /usr
buildable: false
# packages which have been discovered by spack external find --all
# python: # not a -devel package
# externals:
# - spec: python@3.6.15+bz2+crypt+ctypes+dbm+lzma+nis+pyexpat~pythoncmd+readline+sqlite3+ssl~tkinter+uuid+zlib
# prefix: /usr
# buildable: false
curl:
externals:
- spec: curl@7.61.1+gssapi+ldap+nghttp2
prefix: /usr
buildable: false
diffutils:
externals:
- spec: diffutils@3.6
- spec: curl@8.0.1+gssapi+ldap+nghttp2
prefix: /usr
buildable: false
dos2unix:
@ -95,39 +332,14 @@ packages:
- spec: dos2unix@7.4.0
prefix: /usr
buildable: false
file:
openssl:
externals:
- spec: file@5.33
- spec: openssl@1.1.1l
prefix: /usr
buildable: false
findutils:
bzip2:
externals:
- spec: findutils@4.6.0
prefix: /usr
buildable: false
flex:
externals:
- spec: flex@2.6.1+lex
prefix: /usr
buildable: false
gawk:
externals:
- spec: gawk@4.2.1
prefix: /usr
buildable: false
gettext:
externals:
- spec: gettext@0.19.8.1
prefix: /usr
buildable: false
ghostscript:
externals:
- spec: ghostscript@9.27
prefix: /usr
buildable: false
git:
externals:
- spec: git@2.39.3~tcltk
- spec: bzip2@1.0.8
prefix: /usr
buildable: false
gmake:
@ -135,116 +347,14 @@ packages:
- spec: gmake@4.2.1
prefix: /usr
buildable: false
groff:
coreutils:
externals:
- spec: groff@1.22.3
prefix: /usr
buildable: false
hwloc:
externals:
- spec: hwloc@2.2.0
prefix: /usr
buildable: false
krb5:
externals:
- spec: krb5@1.18.2
prefix: /usr
buildable: false
libfuse:
externals:
- spec: libfuse@2.9.7
prefix: /usr
- spec: libfuse@3.3.0
prefix: /usr
buildable: false
libtool:
externals:
- spec: libtool@2.4.6
prefix: /usr
buildable: false
lustre:
externals:
- spec: lustre@2.12.9_ddn38
prefix: /usr
buildable: false
m4:
externals:
- spec: m4@1.4.18
prefix: /usr
buildable: false
ncurses:
externals:
- spec: ncurses@6.1.20180224+termlib abi=6
- spec: coreutils@8.32
prefix: /usr
buildable: false
openjdk:
externals:
- spec: openjdk@1.8.0_402-b06
prefix: /usr
buildable: false
openssh:
externals:
- spec: openssh@8.0p1
prefix: /usr
buildable: false
openssl:
externals:
- spec: openssl@1.1.1k
prefix: /usr
buildable: false
perl:
externals:
- spec: perl@5.26.3~cpanm+opcode+open+shared+threads
prefix: /usr
buildable: false
pkgconf:
externals:
- spec: pkgconf@1.4.2
prefix: /usr
buildable: false
rdma-core:
externals:
- spec: rdma-core@43.0
prefix: /usr
buildable: false
rsync:
externals:
- spec: rsync@3.1.3
prefix: /usr
buildable: false
sed:
externals:
- spec: sed@4.5
prefix: /usr
buildable: false
sqlite:
externals:
- spec: sqlite@3.26.0+fts~functions+rtree
prefix: /usr
buildable: false
subversion:
externals:
- spec: subversion@1.10.2
prefix: /usr
buildable: false
swig:
externals:
- spec: swig@3.0.12
prefix: /usr
buildable: false
tar:
externals:
- spec: tar@1.30
prefix: /usr
buildable: false
which:
externals:
- spec: which@2.21
prefix: /usr
buildable: false
xz:
externals:
- spec: xz@5.2.4
- spec: openjdk@11.0.19_0-suse-150000.3.96.1-x8664
prefix: /usr
buildable: false
zip:
@ -252,3 +362,187 @@ packages:
- spec: zip@3.0
prefix: /usr
buildable: false
cpio:
externals:
- spec: cpio@2.13
prefix: /usr
buildable: false
subversion:
externals:
- spec: subversion@1.14.1
prefix: /usr
buildable: false
lustre:
externals:
- spec: lustre@2.15.0.7_rc2_cray_25_ga33b7d9
prefix: /usr
buildable: false
bison:
externals:
- spec: bison@3.0.4
prefix: /usr
buildable: false
git:
externals:
- spec: git@2.35.3+tcltk
prefix: /usr
buildable: false
go:
externals:
- spec: go@1.18.10
prefix: /usr
buildable: false
hwloc:
externals:
- spec: hwloc@2.8.0
prefix: /usr
buildable: false
gnupg:
externals:
- spec: gnupg@2.2.27
prefix: /usr
buildable: false
rdma-core:
externals:
- spec: rdma-core@38.3
prefix: /usr
buildable: false
groff:
externals:
- spec: groff@1.22.4
prefix: /usr
buildable: false
ghostscript:
externals:
- spec: ghostscript@9.52
prefix: /usr
buildable: false
cvs:
externals:
- spec: cvs@1.12.13
prefix: /usr
buildable: false
go-bootstrap:
externals:
- spec: go-bootstrap@1.18.10
prefix: /usr
buildable: false
cmake:
require: '%gcc@7.5'
# externals:
# - spec: cmake@3.20.4
# prefix: /usr
# buildable: false
ncurses:
externals:
- spec: ncurses@6.1.20180317+termlib abi=6
prefix: /usr
buildable: false
bash:
externals:
- spec: bash@4.4.23
prefix: /usr
buildable: false
pkg-config:
externals:
- spec: pkg-config@0.29.2
prefix: /usr
buildable: false
flex:
externals:
- spec: flex@2.6.4+lex
prefix: /usr
buildable: false
rsync:
externals:
- spec: rsync@3.2.3
prefix: /usr
buildable: false
sed:
externals:
- spec: sed@4.4
prefix: /usr
buildable: false
gettext:
externals:
- spec: gettext@0.20.2
prefix: /usr
buildable: false
automake:
externals:
- spec: automake@1.15.1
prefix: /usr
buildable: false
m4:
externals:
- spec: m4@1.4.18
prefix: /usr
buildable: false
which:
externals:
- spec: which@2.21
prefix: /usr
buildable: false
file:
externals:
- spec: file@5.32
prefix: /usr
buildable: false
perl:
externals:
- spec: perl@5.26.1~cpanm+opcode+open+shared+threads
prefix: /usr
buildable: false
ruby:
externals:
- spec: ruby@2.5.9
prefix: /usr
buildable: false
autoconf:
externals:
- spec: autoconf@2.69
prefix: /usr
buildable: false
gawk:
externals:
- spec: gawk@4.2.1
prefix: /usr
buildable: false
diffutils:
externals:
- spec: diffutils@3.6
prefix: /usr
buildable: false
tar:
externals:
- spec: tar@1.34
prefix: /usr
buildable: false
openssh:
externals:
- spec: openssh@8.4p1
prefix: /usr
buildable: false
sqlite:
require: '%gcc@7.5'
# externals:
# - spec: sqlite@3.39.3+fts~functions+rtree # does not provide include files
# prefix: /usr
# buildable: false
findutils:
externals:
- spec: findutils@4.8.0
prefix: /usr
buildable: false
libtool:
externals:
- spec: libtool@2.4.6
prefix: /usr
buildable: false
libfuse:
externals:
- spec: libfuse@2.9.7
prefix: /usr
- spec: libfuse@3.10.5
prefix: /usr
buildable: false

View file

@ -1,10 +1,44 @@
# This is a Spack Environment file.
#
# It describes a set of packages to be installed, along with
# configuration settings.
# This is a Spack Environment file fot he main HLRS software stack
spack:
definitions:
- core_compiler: [gcc@7.5]
- compilers: [gcc@13.2, cce@18.0]
- mpis: [cray-mpich@8.1.30]
- cflags_noerror_implicit: ['cflags="-Wno-error=implicit-function-declaration -Wno-error=implicit-int -Wno-error=int-conversion -Wno-error=incompatible-pointer-types"']
packages:
all:
prefer: ['%gcc@7.5']
# add package specs to the `specs` list
specs: []
specs:
- matrix: # modules for low-level tools
- [libunwind, papi]
- [$%core_compiler]
- matrix:
- [otf-cpt]
- [$^mpis]
- [$%compilers]
exclude:
- otf-cpt%gcc # gcc's OpenMP runtime does not support OMPT
- matrix:
- [mpip, extrae]
- [$cflags_noerror_implicit] # code is not fully C99
- [$^mpis]
- [$%compilers]
- matrix:
- [scorep]
- [~cuda~hip, ~cuda+hip]
- [$^mpis]
- [$%compilers]
exclude: # hip support requires llvm-like compiler
- scorep%gcc +hip
- scorep%cce ~hip
- matrix:
- [scalasca]
- [$^mpis]
- [$%compilers]
- matrix: # build tools
- [meson, ninja, cmake@3.23:]
- [$%core_compiler]
view: false
concretizer:
unify: when_possible

View file

@ -0,0 +1,63 @@
# This is a Spack Environment file fot he main HLRS software stack
spack:
definitions:
- core_compiler: [gcc@7.5]
- compilers: [gcc@13.2, cce@18.0]
- mpis: [cray-mpich@8.1.30]
- cflags_noerror_implicit: ['cflags="-Wno-error=implicit-function-declaration -Wno-error=implicit-int -Wno-error=int-conversion -Wno-error=incompatible-pointer-types"']
- num_integer_types: [~int64]
- num_lib_types: [+shared]
- rocm_variant: [+rocm amdgpu_target=gfx942]
include_concrete:
- $spack/../environments/hlrs
packages:
all:
prefer: ['%gcc@13.2'] # , '+rocm amdgpu_target=gfx942']
# add package specs to the `specs` list
specs:
- matrix:
- [gsl +external-cblas]
- [$num_lib_types]
- [$%compilers]
- matrix:
- [metis]
- [$num_integer_types]
- [$num_lib_types]
- [$%compilers]
- matrix:
- [parmetis, mumps +parmetis]
- [$num_integer_types]
- [$num_lib_types]
- [$^mpis]
- [$%compilers]
# - matrix:
# - [kahip +metis]
# - [$%compilers]
- matrix:
- [parmgridgen]
- [$cflags_noerror_implicit]
- [$%compilers]
- matrix:
- [superlu-dist, sundials, hypre]
- [$rocm_variant]
- [$num_integer_types]
- [$num_lib_types]
- [$^mpis]
- [$%compilers]
- matrix:
- [trilinos@16:]
- [+kokkos]
- [$rocm_variant]
- [$num_lib_types]
- [$^mpis]
- [$%compilers]
- matrix:
- [petsc]
- [$rocm_variant]
- [$num_integer_types]
- [$num_lib_types]
- [$^mpis]
- [$%compilers]
view: false
concretizer:
unify: when_possible

View file

@ -42,6 +42,7 @@ class Extrae(AutotoolsPackage):
license("LGPL-2.1-or-later")
version("4.2.0", sha256="7b83a1ed008440bbc1bda88297d2d0e9256780db1cf8401b3c12718451f8919a")
version("4.1.2", sha256="adbc1d3aefde7649262426d471237dc96f070b93be850a6f15280ed86fd0b952")
version("4.0.6", sha256="b5060336cac57f1345faa09009b1940edf1e6991aae05cc10d0b714d31360a92")
version("4.0.5", sha256="8f5eefa95f2e94a3b5f9b7f7cbaaed523862f190575ee797113b1e97deff1586")
@ -59,10 +60,7 @@ class Extrae(AutotoolsPackage):
depends_on("mpi")
depends_on("libunwind")
# TODO: replace this with an explicit list of components of Boost,
# for instance depends_on('boost +filesystem')
# See https://github.com/spack/spack/pull/22303 for reference
depends_on(Boost.with_default_variants)
depends_on("libdwarf")
depends_on("papi")
depends_on("elf", type="link")
@ -78,6 +76,10 @@ class Extrae(AutotoolsPackage):
variant("dyninst", default=False, description="Use dyninst for dynamic code installation")
depends_on("dyninst@:9", when="+dyninst")
# TODO: replace this with an explicit list of components of Boost,
# for instance depends_on('boost +filesystem')
# See https://github.com/spack/spack/pull/22303 for reference
depends_on(Boost.with_default_variants, when="+dyninst")
variant("papi", default=True, description="Use PAPI to collect performance counters")
depends_on("papi", when="+papi")
@ -99,7 +101,6 @@ class Extrae(AutotoolsPackage):
args = [
"--with-mpi=%s" % mpiroot,
"--with-unwind=%s" % spec["libunwind"].prefix,
"--with-boost=%s" % spec["boost"].prefix,
"--with-dwarf=%s" % spec["libdwarf"].prefix,
"--with-elf=%s" % spec["elf"].prefix,
"--with-xml-prefix=%s" % spec["libxml2"].prefix,
@ -113,9 +114,10 @@ class Extrae(AutotoolsPackage):
)
args += (
["--with-dyninst=%s" % spec["dyninst"].prefix]
["--with-dyninst=%s" % spec["dyninst"].prefix,
"--with-boost=%s" % spec["boost"].prefix]
if "+dyninst" in self.spec
else ["--without-dyninst"]
else ["--without-dyninst", "--without-boost"]
)
args += (