# Comment line(s) preceding each configuration document the main
# intent behind that configuration, so that we can correctly judge
# whether to preserve that during maintenance decisions.
#
# Other configurations might coincidentally test such configurations
# (e.g. because they are the current default), but it is appropriate
# to intend to teach each feature (or a feature combination) exactly
# once, and for the intent to be reflected precisely in the
# configuration syntax, so that the configurations are stable even
# if the defaults change in future.
#
# The phrase "at time of release" refers to either the initial
# GROMACS release from that branch, or the next expected release
# from that branch. (We will tend not to retroactively support
# newer infrastructure in CI, unless it's either easy or of
# high impact.)

# Test clang on ARM v8
# Test ARM_NEON SIMD
clang-3.9 no-openmp simd=ARM_NEON_ASIMD release-with-assert

# Test AVX2_256 SIMD
# Test icc with SIMD in mixed precision in release mode
# Test icc with MPI
icc-19 mpi release simd=avx2_256 no-hwloc

# Test AVX_128_FMA SIMD in mixed precision
# Test build of downloaded FFTW
gcc-5 openmp simd=avx_128_fma cmake-3.11.4 buildfftw

# Test with SSE2 + double
gcc-9 simd=sse2 fftpack double

# Test OpenMP with clang-tidy
# Test AVX2_256 SIMD with clang-tidy
# Test OpenCL build with clang-tidy
# Test offline OpenCL kernel build with clang-tidy
clang-8 simd=avx2_256 opencl-1.2 cmake-3.14.5 tidy
