# Maintainer: Alexey Pavlov <alexpux@gmail.com>
# Contributor: Ray Donnelly <mingw.android@gmail.com>

_realname=cmake
pkgbase=mingw-w64-${_realname}-bootstrap
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}-bootstrap")
pkgver=4.4.0
pkgrel=1
pkgdesc="A cross-platform open-source make system"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clangarm64')
url="https://www.cmake.org/"
msys2_repository_url="https://gitlab.kitware.com/cmake/cmake"
msys2_references=(
  'archlinux: cmake'
  "cpe: cpe:2.3:a:cmake_project:cmake"
)
msys2_ignore_vulnerabilities=(
  'CVE-2016-10642' # Only the npm package is affected
)
license=("spdx:MIT")
depends=(
  "${MINGW_PACKAGE_PREFIX}-cc-libs"
  "${MINGW_PACKAGE_PREFIX}-pkgconf"
)
makedepends=("${MINGW_PACKAGE_PREFIX}-cc")
conflicts=(
  "${MINGW_PACKAGE_PREFIX}-cmake"
  "${MINGW_PACKAGE_PREFIX}-cmake-cmcldeps"
  "${MINGW_PACKAGE_PREFIX}-cmake-docs"
)
provides=("${MINGW_PACKAGE_PREFIX}-cmake=${pkgver}")
source=("https://github.com/Kitware/CMake/releases/download/v${pkgver}/${_realname}-${pkgver}.tar.gz"
        "0003-fix-find-python-on-mingw-aarch64.patch"
        "0005-Default-to-ninja-generator.patch")
sha256sums=('65757f442fdd242e27f1728fc26dc0cba4164f7a0791a5c788631c00080369bc'
            '934fedcea30e57fcf590d777d25decd8fa5d62166186cf464b089d5f59bf4f9d'
            '426818278090704d2a12f62ef3dfd94c47b11fa2784bb842989b7f6a09ee7aa2')

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

  patch -Np1 -i "${srcdir}/0003-fix-find-python-on-mingw-aarch64.patch"
  patch -Np1 -i "${srcdir}/0005-Default-to-ninja-generator.patch"

  find . -name "*.orig" -exec rm -f {} \;
}

build() {
  mkdir -p "${srcdir}/build-${MSYSTEM}" && cd "${srcdir}/build-${MSYSTEM}"

  MSYSTEM=MINGW MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX="\
    "${srcdir}/${_realname}-${pkgver}"/configure \
    --prefix=${MINGW_PREFIX} \
    --datadir=share/cmake \
    --docdir=share/doc/cmake \
    --mandir=share/man \
    --no-system-libs \
    --no-qt-gui \
    --parallel=${NUMBER_OF_PROCESSORS} \
    -- \
    -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX}

  make
}

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

  make install DESTDIR="${pkgdir}"
}
