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

_realname=lmdb
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=0.9.31
pkgrel=1
pkgdesc="Lightning Memory-mapped Database (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clangarm64' 'clang32')
url="https://symas.com/mdb/"
license=('custom')
makedepends=("${MINGW_PACKAGE_PREFIX}-cc")
source=("${_realname}-${pkgver}.tar.gz::https://git.openldap.org/openldap/openldap/-/archive/LMDB_${pkgver}/openldap-LMDB_${pkgver}.tar.gz"
        001-mingw-build.patch
        002-fix-stack-allocated-string.patch
        003-fix-clang-build.patch
        lmdb.pc)
sha256sums=('d35d4f6f46313d62fd342c9dcbf574432919ce5e802d2b6cbe2ebd549821e5c4'
            'db1d1934131e8b978b734c156b328d0c8c45b7c3ec6a47d544ece1377d77cd14'
            '9b8c38bf6971eff0d2d8400a5712df4b3fa179fb728657a2fc35673930c157a2'
            '2acd535a802a9563258c30b5073c5108bf02d14a6fda6f75414b4e046c1264a3'
            '4604bf63de206ac99b8f89ab6fa2cf0d52a29fc914411ccd51a357485b6fe699')

prepare() {
  cd "${srcdir}/openldap-LMDB_${pkgver}"
  patch -p1 -i ${srcdir}/001-mingw-build.patch
  patch -p1 -i ${srcdir}/002-fix-stack-allocated-string.patch
  patch -p1 -i ${srcdir}/003-fix-clang-build.patch
}

build() {
  cd "${srcdir}/openldap-LMDB_${pkgver}/libraries/liblmdb"
  make clean
  make
}

check() {
  cd "${srcdir}/openldap-LMDB_${pkgver}/libraries/liblmdb"
  make test
}

package() {
  cd "${srcdir}/openldap-LMDB_${pkgver}/libraries/liblmdb"
  make prefix=${MINGW_PREFIX} DESTDIR="${pkgdir}" install

  sed -s "s|@PREFIX@|${MINGW_PREFIX}|g" -i "${srcdir}"/lmdb.pc
  sed -s "s|@PKGVER@|${pkgver}|g" -i "${srcdir}"/lmdb.pc

  install -Dm644 LICENSE "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE
  install -Dm644 "${srcdir}"/lmdb.pc "${pkgdir}"${MINGW_PREFIX}/lib/pkgconfig/lmdb.pc
}
