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

pkgname=netcdf
pkgver=4.9.3
pkgrel=3
pkgdesc="network Common Data Form interface for array-oriented data access and corresponding library"
arch=(x86_64 aarch64)
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=('990f46d49525d6ab5dc4249f8684c6deeaf54de6fec63a187e9fb382cc0ffdff')

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() {
  cmake -B build -S ${pkgname}-c-${pkgver} \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=Release \
    -DNETCDF_WITH_PLUGIN_DIR=/usr/lib/netcdf/plugin \
    -DENABLE_BYTERANGE=ON \
    -DENABLE_CDF5=ON \
    -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 \
    -DNETCDF_ENABLE_LOGGING=ON \
    -DENABLE_PLUGIN_INSTALL=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}/
}
