# Maintainer: Alexey Pavlov <Alexpux@gmail.com>
# Contributor: Renato Silva <br.renatosilva@gmail.com>

_realname=libiconv
pkgbase=mingw-w64-${_realname}
pkgname=(${MINGW_PACKAGE_PREFIX}-${_realname}
         ${MINGW_PACKAGE_PREFIX}-iconv)
pkgver=1.15
pkgrel=1
arch=('any')
url='https://www.gnu.org/software/libiconv/'
source=("https://ftp.gnu.org/pub/gnu/${_realname}/${_realname}-${pkgver}.tar.gz"
        0001-compile-relocatable-in-gnulib.mingw.patch
        0002-fix-cr-for-awk-in-configure.all.patch)
sha256sums=('ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178'
            '7e905d21d670672b8a6a3bd80e5b8244b38bb7021a15fc7bdd0229125a3a68ee'
            'a649f925223addc44966624c5fe630fdb46e04ceaf94ed6b965a8d18ca55b5a0')
options=('!libtool' 'staticlibs')
makedepends=(${MINGW_PACKAGE_PREFIX}-gcc)

prepare() {
  cd $srcdir/${_realname}-${pkgver}
  patch -p1 -i ${srcdir}/0001-compile-relocatable-in-gnulib.mingw.patch
  patch -p1 -i ${srcdir}/0002-fix-cr-for-awk-in-configure.all.patch
}

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

  ../${_realname}-${pkgver}/configure --prefix=${MINGW_PREFIX} \
    --build=${MINGW_CHOST} \
    --host=${MINGW_CHOST} \
    --target=${MINGW_CHOST} \
    --docdir=${MINGW_PREFIX}/share/doc/libiconv \
    --enable-static \
    --enable-shared \
    --enable-extra-encodings \
    --enable-relocatable \
    --disable-rpath \
    --enable-silent-rules \
    --enable-nls

  make
}

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

_package_libiconv() {
  pkgdesc='Character encoding conversion library (mingw-w64)'
  license=(LGPL2 documentation:'GPL3') # This is LGPL except for documentation, see README

  cd "${srcdir}/build-${MINGW_CHOST}"
  make install DESTDIR="${pkgdir}"
  rm -fr "${pkgdir}${MINGW_PREFIX}"/bin/*.exe
  rm -f  "${pkgdir}${MINGW_PREFIX}"/lib/charset.alias
  rm -fr "${pkgdir}${MINGW_PREFIX}"/share/locale
  rm -f  "${pkgdir}${MINGW_PREFIX}"/share/doc/libiconv/*.1.*
  rm -fr "${pkgdir}${MINGW_PREFIX}"/share/man/man1

  # Licenses
  install -Dm644 "${srcdir}/${_realname}-${pkgver}/README"                 "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/README"
  install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING"                "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING"
  install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING.LIB"            "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING.LIB"
  install -Dm644 "${srcdir}/${_realname}-${pkgver}/libcharset/COPYING.LIB" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/libcharset/COPYING.LIB"
}

_package_iconv() {
  pkgdesc='Character encoding conversion utility (mingw-w64)'
  depends=("${MINGW_PACKAGE_PREFIX}-libiconv=${pkgver}-${pkgrel}"
           "${MINGW_PACKAGE_PREFIX}-gettext")
  license=('GPL3')

  cd "${srcdir}/build-${MINGW_CHOST}"
  make install DESTDIR="${pkgdir}"
  rm -f  "${pkgdir}${MINGW_PREFIX}"/bin/*.dll
  rm -fr "${pkgdir}${MINGW_PREFIX}"/include
  rm -fr "${pkgdir}${MINGW_PREFIX}"/lib
  rm -f  "${pkgdir}${MINGW_PREFIX}"/share/doc/libiconv/*.3.*
  rm -fr "${pkgdir}${MINGW_PREFIX}"/share/man/man3

  # Licenses
  install -Dm644 "${srcdir}/${_realname}-${pkgver}/README"  "${pkgdir}${MINGW_PREFIX}/share/licenses/iconv/README"
  install -Dm644 "${srcdir}/${_realname}-${pkgver}/COPYING" "${pkgdir}${MINGW_PREFIX}/share/licenses/iconv/COPYING"
}

package_mingw-w64-i686-iconv()      { _package_iconv;    }
package_mingw-w64-i686-libiconv()   { _package_libiconv; }
package_mingw-w64-x86_64-iconv()    { _package_iconv;    }
package_mingw-w64-x86_64-libiconv() { _package_libiconv; }
