#!/bin/bash

# ICON
#
# ------------------------------------------
# Copyright (C) 2004-2026, DWD, MPI-M, DKRZ, KIT, ETH, MeteoSwiss
# Contact information: icon-model.org
# See AUTHORS.TXT for a list of authors
# See LICENSES/ for license information
# SPDX-License-Identifier: BSD-3-Clause
# ------------------------------------------

set -eu

unset CDPATH
script_dir=$(cd "$(dirname "$0")"; pwd)
icon_dir=$(cd "${script_dir}/../.."; pwd)

if test -n "${BB_NAME-}"; then
  job_count=${SLURM_NTASKS:-22}
else
  job_count=8
fi

# Make sure we run serially:
config_args='--disable-mpi --disable-openmp'

# Make sure we disable all features that require MPI:
config_args+=' --disable-parallel-netcdf --disable-coupling --disable-yaxt --disable-cdi-pio --disable-comin'

# Additionally, check whether we can build without NWP:
config_args+=' --disable-nwp'

unset MAKEFLAGS
makeflags="--jobs=${job_count} --no-print-directory --output-sync=target V=1"

set -x

${icon_dir}/config/dkrz/levante.nag ${config_args}

make ${makeflags}

if test -n "${BB_NAME-}"; then
  "${icon_dir}/scripts/buildbot_scripts/build_checks/check_nompi.sh"
  "${icon_dir}/scripts/buildbot_scripts/build_checks/check_depgen_warnings.sh"
  "${icon_dir}/scripts/buildbot_scripts/build_checks/check_remake.sh"
  "${icon_dir}/scripts/buildbot_scripts/build_checks/check_git_untracked.sh"
fi
