Skip to content

Commit ca39dba

Browse files
committed
Fixes
1 parent 4ebc6a6 commit ca39dba

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

.github/workflows/ci.yml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,14 @@ jobs:
108108
spack -e cxx add py-fenics-ufl@main commit=$UFL_SHA
109109
spack -e cxx add fenics-ufcx@main commit=$FFCX_SHA
110110
spack -e cxx add py-fenics-ffcx@main commit=$FFCX_SHA
111+
# NOTE: adios2~sz drops the SZ2 compression dependency. 'sz'
112+
# installs its own unversioned libzstd.so, which interposes on the
113+
# real zstd once libdolfinx is loaded; a ZSTD_DCtx then gets
114+
# allocated in one zstd and freed in the other. This segfaults
115+
# Mesa's llvmpipe shader disk cache, so any PyVista render
116+
# following 'import dolfinx' crashes (see 'Run Python demos').
111117
spack -e cxx add fenics-dolfinx@main+petsc+slepc+adios2 commit=${{ github.sha }} build_type=Developer partitioners=parmetis \
112-
^petsc+mpi+mumps+superlu-dist+hypre ^adios2~libcatalyst~fortran
118+
^petsc+mpi+mumps+superlu-dist+hypre ^adios2~libcatalyst~fortran~sz
113119
spack -e cxx add catch2 ninja
114120
spack -e cxx concretize -j 4
115121
spack -e cxx install -j 4 --use-buildcache auto
@@ -162,13 +168,16 @@ jobs:
162168
spack -e py add py-fenics-ufl@main commit=$UFL_SHA
163169
spack -e py add fenics-ufcx@main commit=$FFCX_SHA
164170
spack -e py add py-fenics-ffcx@main commit=$FFCX_SHA
171+
# NOTE: see the 'Build library (C++)' step for why adios2~sz is
172+
# required -- without it the PyVista demos segfault.
165173
spack -e py add fenics-dolfinx@main+petsc+slepc+adios2 commit=${{ github.sha }} build_type=Developer partitioners=parmetis \
166-
^petsc+mpi+mumps+superlu-dist+hypre ^adios2~libcatalyst~fortran
174+
^petsc+mpi+mumps+superlu-dist+hypre ^adios2~libcatalyst~fortran~sz
167175
spack -e py add py-fenics-dolfinx@main+petsc4py+slepc4py commit=${{ github.sha }} build_type=Developer
168176
spack -e py add py-gmsh ^gmsh~med~fltk+external ^opencascade~draw py-pyamg py-matplotlib \
169177
py-networkx \
170178
py-numba ^llvm~clang~lldb~lld~offload~libomptarget~polly targets=x86 \
171-
py-pytest py-pytest-xdist py-scipy py-pyvista ^mesa~llvm
179+
py-pytest py-pytest-xdist py-scipy \
180+
"py-pyvista ^[virtuals=gl] osmesa"
172181
spack -e py concretize -j 4
173182
spack -e py install -j 4 --use-buildcache auto
174183

0 commit comments

Comments
 (0)