# Maintainer: Mateusz Mikuła <mati865@gmail.com>
# Contributor: Renato Silva <br.renatosilva@gmail.com>

pkgname=ccache
pkgver=4.9.1
pkgrel=2
pkgdesc="A compiler cache (mingw-w64)"
arch=('i686' 'x86_64')
url="https://ccache.samba.org/"
msys2_repository_url="https://github.com/ccache/ccache"
license=("spdx:GPL-3.0-or-later")
replaces=("${pkgname}-git")
makedepends=("cmake"
             "ninja"
             "pkgconf"
             "zlib-devel"
             "libzstd-devel"
             'gcc')
depends=("gcc-libs" "zlib" "libzstd")
options=('staticlibs' 'strip')
install="${pkgname}.install"
source=(https://github.com/ccache/ccache/releases/download/v${pkgver}/ccache-${pkgver}.tar.xz{,.asc}
        "0001-fix-blake3-segfault.patch"
	"0002-Stop-msys2-from-hanging-forever-Problem-MSYS2-symlin.patch")
validpgpkeys=("5A939A71A46792CF57866A51996DDA075594ADB8") #Joel Rosdahl <joel@rosdahl.net>
sha256sums=('4c03bc840699127d16c3f0e6112e3f40ce6a230d5873daa78c60a59c7ef59d25'
            'SKIP'
            '0d9e9f9dd4ff87a010e017091ab503945c40b46766aaee520bca09633ab00927'
            '05723222a62159fdeae0a720bbccab1a873ee931dc6a1c7327ec1317f041bba3')

prepare() {
  cd "${pkgname}-${pkgver}"

  patch -Np1 -i "${srcdir}/0001-fix-blake3-segfault.patch"
  # https://github.com/ccache/ccache/pull/1416
  patch -Np1 -i "${srcdir}/0002-Stop-msys2-from-hanging-forever-Problem-MSYS2-symlin.patch"
}

build() {
  [[ -d build-${CHOST} ]] && rm -rf build-${CHOST}
  mkdir -p build-${CHOST}  && cd build-${CHOST}

  /usr/bin/cmake \
    -GNinja \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=Release \
    -DREDIS_STORAGE_BACKEND=OFF \
    ../${pkgname}-${pkgver}

  cmake --build .
}

check() {
  cd "build-${CHOST}"
  /usr/bin/ctest .
}

package() {
  cd "${srcdir}/build-${CHOST}"
  DESTDIR="${pkgdir}" cmake --build . --target install

  install -Dm644 ${srcdir}/${pkgname}-${pkgver}/GPL-3.0.txt ${pkgdir}/usr/share/licenses/${pkgname}/GPL-3.0.txt
  install -Dm644 ${srcdir}/${pkgname}-${pkgver}/LGPL-3.0.txt ${pkgdir}/usr/share/licenses/${pkgname}/LGPL-3.0.txt
}
