pipelines: extract changes from compiler as nodes (#49222)

* Split requirements to get better error messages in case of unsat solves.
* use list requirements instead of string
* activate static_analysis in a few pipelines

Signed-off-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
This commit is contained in:
Massimiliano Culpo
2025-02-27 12:13:34 +01:00
committed by GitHub
parent 5da4f18188
commit 12fe7aef65
13 changed files with 249 additions and 223 deletions

View File

@@ -52,10 +52,12 @@ spack:
packages:
acfl:
require:
- '%gcc target=aarch64'
- "%gcc"
- "target=aarch64"
gromacs:
require:
- gromacs@2024.3 %gcc ^armpl-gcc ^openmpi
- gromacs@2024.3 ^armpl-gcc ^openmpi
- "%gcc"
libfabric:
buildable: true
externals:
@@ -67,13 +69,14 @@ spack:
variants: ~lldb
mpas-model:
require:
- precision=single %gcc ^parallelio+pnetcdf
- precision=single ^parallelio+pnetcdf
- "%gcc"
mpich:
require:
- mpich pmi=pmi2 device=ch4 netmod=ofi +slurm
nvhpc:
require:
- nvhpc %gcc target=aarch64
- "target=aarch64"
openfoam:
require:
- openfoam ^scotch@6.0.9
@@ -85,7 +88,7 @@ spack:
# require:
# - one_of: ["palace cxxflags=\"-include cstdint\" ^fmt@9.1.0"]
pmix:
require: 'pmix@3:'
require: "pmix@3:"
quantum-espresso:
require:
- quantum-espresso@6.6 %gcc ^armpl-gcc

View File

@@ -82,6 +82,12 @@ spack:
require:
- lammps_sizes=bigbig +molecule +kspace +rigid +asphere +opt +openmp +openmp-package fft=mkl ^intel-oneapi-mkl
- one_of: [+intel target=x86_64_v4, target=x86_64_v3]
bison:
require:
- "%gcc"
boost:
require:
- "%gcc"
libfabric:
buildable: true
externals:

View File

@@ -2,9 +2,10 @@ spack:
view: false
packages:
all:
require: target=x86_64_v3
definitions:
- default_specs:
require:
- target=x86_64_v3
specs:
- 'uncrustify build_system=autotools'
- 'uncrustify build_system=cmake'
- lz4 # MakefilePackage
@@ -14,13 +15,6 @@ spack:
- r-rcpp # RPackage
- ruby-rake # RubyPackage
- perl-data-dumper # PerlPackage
- arch:
- '%gcc'
specs:
- matrix:
- - $default_specs
- - $arch
cdash:
build-group: Build Systems

View File

@@ -2,12 +2,16 @@ spack:
view: false
packages:
all:
require: target=aarch64
require:
- target=aarch64
prefer:
- '%gcc'
concretizer:
unify: true
reuse: false
definitions:
- default_specs:
specs:
# editors
- neovim~no_luajit
- py-pynvim
@@ -68,14 +72,6 @@ spack:
- doxygen
- meson
- arch:
- '%gcc target=aarch64'
specs:
- matrix:
- - $default_specs
- - $arch
ci:
pipeline-gen:
- build-job:

View File

@@ -1,19 +1,20 @@
spack:
view: false
packages:
all:
require:
- target=x86_64_v3
- ~cuda
- ~rocm
prefer:
- "%gcc"
concretizer:
unify: true
reuse: false
static_analysis: true
definitions:
- default_specs:
specs:
# editors
- neovim~no_luajit
- py-pynvim
@@ -74,14 +75,6 @@ spack:
- doxygen
- meson
- arch:
- '%gcc target=x86_64_v3'
specs:
- matrix:
- - $default_specs
- - $arch
ci:
pipeline-gen:
- build-job:

View File

@@ -5,6 +5,7 @@ spack:
view: false
concretizer:
static_analysis: true
reuse: false
unify: false
@@ -14,8 +15,9 @@ spack:
packages:
all:
require: "%cce@18.0.0 target=x86_64_v3"
compiler: [cce]
require:
- target=x86_64_v3
- "%cce"
providers:
blas: [cray-libsci]
lapack: [cray-libsci]
@@ -23,6 +25,21 @@ spack:
tbb: [intel-tbb]
scalapack: [netlib-scalapack]
variants: +mpi
# Virtuals
blas:
require:
- cray-libsci
lapack:
require:
- cray-libsci
mpi:
require:
- cray-mpich
scalapack:
require:
- netlib-scalapack
ncurses:
require: +termlib ldflags=-Wl,--undefined-version
tbb:
@@ -33,21 +50,28 @@ spack:
variants: +python +filesystem +iostreams +system
elfutils:
variants: ~nls
require: "%gcc"
require:
- target=x86_64_v3
- "%gcc"
gcc-runtime:
require: "%gcc"
require:
- target=x86_64_v3
- "%gcc"
hdf5:
variants: +fortran +hl +shared
libfabric:
variants: fabrics=sockets,tcp,udp,rxm
mgard:
require:
- target=x86_64_v3
- "@2023-01-10:"
mpich:
variants: ~wrapperrpath
paraview:
# Don't build GUI support or GLX rendering for HPC/container deployments
require: "~qt ^[virtuals=gl] osmesa"
require:
- "~qt ^[virtuals=gl] osmesa"
- target=x86_64_v3
trilinos:
require:
- one_of: [+amesos +amesos2 +anasazi +aztec +boost +epetra +epetraext +ifpack
@@ -58,6 +82,7 @@ spack:
- one_of: [~ml ~muelu ~zoltan2 ~teko, +ml +muelu +zoltan2 +teko]
- one_of: [+superlu-dist, ~superlu-dist]
- one_of: [+shylu, ~shylu]
- target=x86_64_v3
specs:
# CPU

View File

@@ -7,7 +7,9 @@ spack:
packages:
all:
require: '%gcc target=neoverse_v2'
require:
- "%gcc"
- target=neoverse_v2
providers:
blas: [openblas]
mpi: [mpich]

View File

@@ -4,12 +4,13 @@ spack:
concretizer:
reuse: false
unify: false
static_analysis: false
packages:
all:
require:
- "target=x86_64_v3"
- "%oneapi"
- target=x86_64_v3
- '%oneapi'
providers:
blas: [openblas]
tbb: [intel-tbb]
@@ -45,28 +46,36 @@ spack:
- spec: intel-oneapi-mpi@2021.13.1
prefix: /opt/intel/oneapi
unzip:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
binutils:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
variants: +ld +gold +headers +libiberty ~nls
llvm:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
ruby:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
rust:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
krb5:
require: '%gcc target=x86_64_v3'
papi:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
openssh:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
dyninst:
require: "%gcc target=x86_64_v3"
require:
- '%gcc target=x86_64_v3'
bison:
require: '%gcc target=x86_64_v3'
require:
- '%gcc target=x86_64_v3'
paraview:
require: "+examples %oneapi target=x86_64_v3"
require:
- +examples target=x86_64_v3
specs:
# CPU

View File

@@ -7,7 +7,8 @@ spack:
packages:
all:
require: '%gcc target=x86_64_v3'
require:
- 'target=x86_64_v3'
providers:
blas: [openblas]
variants: +mpi
@@ -21,7 +22,9 @@ spack:
variants: threads=openmp
paraview:
# Don't build GUI support or GLX rendering for HPC/container deployments
require: "@5.11 +examples ~qt ^[virtuals=gl] osmesa %gcc target=x86_64_v3"
require:
- "@5.11 +examples ~qt ^[virtuals=gl] osmesa"
- 'target=x86_64_v3'
# ROCm
comgr:

View File

@@ -9,7 +9,8 @@ spack:
packages:
all:
require:
- '%gcc target=x86_64_v3'
- "%gcc"
- target=x86_64_v3
variants: +mpi
mpi:
require:

View File

@@ -8,7 +8,9 @@ spack:
packages:
all:
require: '%gcc target=x86_64_v3'
require:
- "%gcc"
- target=x86_64_v3
providers:
blas: [openblas]
mpi: [mpich]

View File

@@ -2,17 +2,14 @@ spack:
view: false
packages:
all:
require: target=x86_64_v3
require:
- target=x86_64_v3
- '%gcc@7.5.0'
providers:
mpi: [mvapich2]
definitions:
#- compilers: ['%gcc@8.3.1', '%clang@10.0.0']
- compilers: ['%gcc@7.5.0']
# Note skipping spot since no spack package for it
- radiuss:
specs:
- ascent # ^conduit@0.6.0
- axom
- blt
@@ -21,7 +18,7 @@ spack:
- chai # ~examples
- conduit # ^hdf5+shared
- flux-core
#- flux-sched
# - flux-sched
- hypre
- lbann
- lvarray ~tests # per Spack issue #23192 # ~examples
@@ -36,14 +33,9 @@ spack:
- scr
- sundials
- umpire # ~openmp
#- visit # ^mesa-glu@9.0.0
# - visit # ^mesa-glu@9.0.0
- xbraid
- zfp
specs:
- matrix:
- [$radiuss]
- [$compilers]
cdash:
build-group: RADIUSS

View File

@@ -6,7 +6,7 @@
spack:
view: false
specs:
- vtk~mpi
- "vtk@9: ~mpi"
cdash:
build-group: Windows Visualization (Kitware)