# Maintainer: Olivier Xillo <oxillo++dev@mailo.com>

_realname=concurrentqueue
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.0.4
pkgrel=1
pkgdesc="A fast multi-producer, multi-consumer lock-free concurrent queue for C++11"
arch=('any')
mingw_arch=('ucrt64' 'clang64' 'clangarm64')
url="https://github.com/cameron314/concurrentqueue"
msys2_repository_url='https://github.com/cameron314/concurrentqueue'
license=('spdx:BSD-2-Clause AND Zlib' 'spdx:BSL-1.0 AND Zlib')
makedepends=("git"
             "${MINGW_PACKAGE_PREFIX}-cmake"
             "${MINGW_PACKAGE_PREFIX}-cc"
             "${MINGW_PACKAGE_PREFIX}-ninja"
             )

source=("${_realname}"::"git+https://github.com/cameron314/concurrentqueue.git#tag=v${pkgver}")
sha256sums=('7e5f18adc97a264b667a54530f9164dc5f0f2d4e339763ef8c86d7c48bc5713c')

build() {
  MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
  cmake                                         \
    -B "${srcdir}/build-${MSYSTEM}"             \
    -DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}"    \
    -S ${_realname}

  cmake --build "build-${MSYSTEM}"
}

check() {
  cd "${srcdir}/${_realname}/build"
  make bin/unittests.exe
  bin/unittests.exe <<< "
  "
}

package() {
  cd "${srcdir}/build-${MSYSTEM}"

  DESTDIR="${pkgdir}" cmake --install "${srcdir}/build-${MSYSTEM}"

  install -vDm644 "${srcdir}/${_realname}/LICENSE.md" \
    "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE.md"
}
