# Maintainer: Torsten Keßler <tpkessler@archlinux.org>
# Contributor: Carl Smedstad <carl.smedstad at protonmail dot com>
# Contributor: Chih-Hsuan Yen <yan12125@gmail.com>

pkgname=nsync
pkgver=1.27.0
pkgrel=1
pkgdesc='A C library that exports various synchronization primitives, such as mutexes'
arch=('x86_64' 'aarch64')
url='https://github.com/google/nsync'
license=('Apache-2.0')
depends=('gcc-libs')
makedepends=('cmake')
source=("$pkgname-$pkgver.tar.gz::$url/archive/$pkgver/$pkgname-$pkgver.tar.gz"
        "$pkgname-export.patch")
sha256sums=('e8e552a358f4a28e844207a7c5cb51767e4aeb0b29e22d23ac2a09924130f761'
            '7733d2979d9ec4ec7a9e7af8814544bdd68b5482ebaea1f00011ac8e1ea44258')

prepare() {
  cd $pkgname-$pkgver
  # Based on https://github.com/msys2/MINGW-packages/blob/master/mingw-w64-nsync/0001-nsync-mingw-w64.patch
  patch -Np1 -i ../$pkgname-export.patch
}

build() {
  local cmake_args=(
    -Wno-dev
    -B build
    -S $pkgname-$pkgver
    -D CMAKE_BUILD_TYPE=None
    -D CMAKE_INSTALL_PREFIX=/usr
    -D BUILD_SHARED_LIBS=ON
  )
  cmake "${cmake_args[@]}"
  cmake --build build
}

check() {
  ctest --test-dir build --output-on-failure
}

package() {
  DESTDIR="$pkgdir" cmake --install build
}
