# Maintainer: Diego Sogari <diego.sogari@falker.com.br>

_realname=ceres-solver
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=1.14.0
pkgrel=3
pkgdesc="A large scale non-linear optimization library (mingw-w64)"
arch=('any')
url="http://ceres-solver.org/"
license=('New BSD license')
makedepends=("${MINGW_PACKAGE_PREFIX}-gcc" "${MINGW_PACKAGE_PREFIX}-cmake")
depends=("${MINGW_PACKAGE_PREFIX}-eigen3"
         "${MINGW_PACKAGE_PREFIX}-glog"
         "${MINGW_PACKAGE_PREFIX}-suitesparse")
checkdepends=("${MINGW_PACKAGE_PREFIX}-gflags")
source=("${url}${_realname}-${pkgver}.tar.gz"
        "${_realname}-1.13.0-CMakefiles.patch"
        "${_realname}-1.13.0-fix-testcode-failed.patch")
        
#sha256sums=('745bfed55111e086954126b748eb9efe20e30be5b825c6dec3c525cf20afc895'
#            '96ced94af2eb0137ce628c568cef32e03db6b30c5668162e64c7046470203ae1')

sha256sums=('4744005fc3b902fed886ea418df70690caa8e2ff6b5a90f3dd88a3d291ef8e8e'
            '608c8e1ec137d391a4f4367365400214054f44657a17c8231280d731210732c9'
            '2253dd60b5f95a1937a2818bf0b724bf1c4870705f312648e3e06b45433a4b47')

prepare() {
  cd "${srcdir}/${_realname}-${pkgver}"
  patch -Np1 -i "../${_realname}-1.13.0-CMakefiles.patch"
  patch -Np1 -i "../${_realname}-1.13.0-fix-testcode-failed.patch"
}

build() {
  rm -rf "${srcdir}/build-${MINGW_CHOST}"
  mkdir "${srcdir}/build-${MINGW_CHOST}"
  cd "${srcdir}/build-${MINGW_CHOST}"

  MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
  ${MINGW_PREFIX}/bin/cmake.exe \
    -G"MSYS Makefiles" \
    -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
    -DBUILD_SHARED_LIBS=YES \
    "../${_realname}-${pkgver}"

  make
}

check() {
  cd "${srcdir}/build-${MINGW_CHOST}"
  make test
}

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