# Maintainer: Sergey Popov <popov.sa@gmail.com>

_realname=mlpack
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.0.12
pkgrel=2
pkgdesc='An intuitive, fast, scalable C++ machine learning library (mingw-w64)'
arch=('any')
url='http://mlpack.org/'
license=('BSD')
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
         "${MINGW_PACKAGE_PREFIX}-armadillo"
         "${MINGW_PACKAGE_PREFIX}-boost"
         "${MINGW_PACKAGE_PREFIX}-libxml2")
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc"
             "${MINGW_PACKAGE_PREFIX}-cmake"
             "${MINGW_PACKAGE_PREFIX}-doxygen")
source=("https://github.com/mlpack/mlpack/archive/${_realname}-${pkgver}.tar.gz"
        "0001-mingw-w64-cmake.patch")
sha256sums=('54843d9f976b61a43b87561dd13eb8d414cda43106c458818a694a8e5a2d2be1'
            '75e799d7f0d2cbfda7d0a6cf673032f210564d3cffbc11f07ec8c183fec91d3b')
_src="mlpack-mlpack-${pkgver}"

prepare() {
  cd "${srcdir}/${_src}"
  patch -Np1 -i "${srcdir}/0001-mingw-w64-cmake.patch"
}

build() {
  CFLAGS+=" ${CPPFLAGS}"
  CXXFLAGS+=" ${CPPFLAGS} -std=gnu++11"

  [[ -d "${srcdir}/build-${CARCH}" ]] && rm -rf "${srcdir}/build-${CARCH}"
  mkdir -p "${srcdir}/build-${CARCH}" && cd "${srcdir}/build-${CARCH}"

  MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
  ${MINGW_PREFIX}/bin/cmake.exe -Wno-dev \
    -G"MSYS Makefiles" \
    -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
    -DCMAKE_BUILD_TYPE=Release \
    -DBUILD_SHARED_LIBS=ON \
    ../${_src}

  make
}

package() {
  cd "${srcdir}/build-${CARCH}"
  make DESTDIR=${pkgdir} -j1 install

  pushd "${pkgdir}${MINGW_PREFIX}" > /dev/null
  install -Dm644 "${srcdir}/${_src}/COPYRIGHT.txt" "share/licenses/${_realname}/COPYRIGHT.txt"
  install -Dm644 "${srcdir}/${_src}/LICENSE.txt" "share/licenses/${_realname}/LICENSE.txt"
  popd > /dev/null
}
