# Maintainer: Andrew Sun <adsun701@gmail.com>

_realname=FileZilla
_wx_basever=3.2
pkgbase=mingw-w64-filezilla
pkgname=("${MINGW_PACKAGE_PREFIX}-filezilla")
pkgver=3.67.0
pkgrel=1
pkgdesc="Fast and reliable FTP, FTPS and SFTP client (mingw-w64)"
arch=('any')
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
url="https://filezilla-project.org/"
msys2_repository_url="https://svn.filezilla-project.org/filezilla/FileZilla3/"
msys2_documentation_url="https://wiki.filezilla-project.org/Documentation"
msys2_references=(
  'archlinux: filezilla'
  "cpe: cpe:/a:filezilla:filezilla"
  "cpe: cpe:/a:filezilla-project:filezilla_client"
)
license=('spdx:GPL-2.0-or-later')
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
         "${MINGW_PACKAGE_PREFIX}-gnutls"
         "${MINGW_PACKAGE_PREFIX}-libfilezilla"
         "${MINGW_PACKAGE_PREFIX}-sqlite3"
         "${MINGW_PACKAGE_PREFIX}-wxwidgets${_wx_basever}-msw-libs")
makedepends=("${MINGW_PACKAGE_PREFIX}-boost"
             "${MINGW_PACKAGE_PREFIX}-cc"
             "${MINGW_PACKAGE_PREFIX}-autotools"
             "${MINGW_PACKAGE_PREFIX}-wxwidgets${_wx_basever}-msw")
source=("https://download.filezilla-project.org/client/${_realname}_${pkgver}_src.tar.xz"
        "0002-fix-mingw-compiler-detection.patch"
        "0003-fix-build.patch")
sha256sums=('e5dadc807db999ceb464984f974d3ef59b562c59546658057e9b201183adaf9a'
            'b19da8c59e9010cd08034090a64348d30e2e9d14a8cefa87da994825197f58ba'
            'd6477d4482afc4fa9d09ca03aa90e26d3b740aea536fac649c49f8f01137a37e')

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

  patch -Np1 -i "${srcdir}/0002-fix-mingw-compiler-detection.patch"

  # https://trac.filezilla-project.org/ticket/13099
  patch -Np1 -i "${srcdir}/0003-fix-build.patch"
  autoreconf -fiv
}

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

  if [[ $MINGW_PACKAGE_PREFIX != *-clang-* ]]; then
    CFLAGS+=" -Wno-incompatible-pointer-types"
    CXXFLAGS+=" -Wno-incompatible-pointer-types"
  fi

  ../${_realname}-${pkgver}/configure \
    --prefix=${MINGW_PREFIX} \
    --build=${MINGW_CHOST} \
    --host=${MINGW_CHOST} \
    --target=${MINGW_CHOST} \
    --disable-manualupdatecheck \
    --disable-autoupdatecheck \
    --with-pugixml=builtin \
    --with-wx-config=${MINGW_PREFIX}/bin/wx-config-${_wx_basever}

  make
}

check() {
  cd "${srcdir}"/build-${MSYSTEM}
  # LANG needed to fix string_test::test_conversion2
  LANG=en_US.UTF-8 make check || true
}

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

  install -Dm644 ${srcdir}/${_realname}-${pkgver}/COPYING ${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/COPYING
}
