# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Maintainer: Bruno Pagani <archange@archlinux.org>
# Contributor: damir <damir@archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - disable CDFS for 32-bit ARM

pkgname=netcdf
pkgver=4.9.2
pkgrel=2
pkgdesc="network Common Data Form interface for array-oriented data access and corresponding library"
arch=(x86_64)
url="https://www.unidata.ucar.edu/software/netcdf/"
depends=(hdf5 curl libxml2 libaec blosc bzip2 libzip zstd)
makedepends=(cmake)
checkdepends=(unzip)
optdepends=('netcdf-fortran: fortran bindings' 'netcdf-cxx: c++ bindings')
options=(!makeflags)
license=(custom)
source=(https://github.com/Unidata/netcdf-c/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz)
sha256sums=('bc104d101278c68b303359b3dc4192f81592ae8640f1aee486921138f7f88cb7')

prepare() {
  # https://github.com/Unidata/netcdf-c/issues/2188 https://github.com/Unidata/netcdf-c/issues/2242
  sed -i "/tst_remote3/d" ${pkgname}-c-${pkgver}/ncdap_test/CMakeLists.txt
}

build() {
  [[ $CARCH != "aarch64" ]] && CDFS="OFF" || CDFS="ON"
  cmake -B build -S ${pkgname}-c-${pkgver} \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_INSTALL_LIBDIR=lib \
    -DCMAKE_BUILD_TYPE=Release \
    -DENABLE_BYTERANGE=ON \
    -DENABLE_CDF5=${CDFS} \
    -DENABLE_DAP_LONG_TESTS=ON \
    -DENABLE_DAP_REMOTE_TESTS=ON \
    -DENABLE_EXAMPLE_TESTS=ON \
    -DENABLE_EXTRA_TESTS=ON \
    -DENABLE_FILTER_TESTING=ON \
    -DENABLE_LARGE_FILE_TESTS=ON \
    -DENABLE_UNIT_TESTS=ON
  make -C build
}

check() {
  make -C build test
}

package() {
  make -C build DESTDIR="${pkgdir}" install
  install -Dm644 ${pkgname}-c-${pkgver}/COPYRIGHT -t "${pkgdir}"/usr/share/licenses/${pkgname}/
}