# Maintainer (MSYS2): Michael Hansen <zrax0111@gmail.com>

_variant=-${KF5_VARIANT:-shared}
source "$(dirname ${BASH_SOURCE[0]})"/../mingw-w64-PKGBUILD-common/kde-frameworks5
_kde_f5_init_package "${_variant}" "breeze-icons"
pkgver=5.50.0
pkgrel=1
arch=('any')
pkgdesc="Breeze icon themes (mingw-w64-qt5${_namesuff})"
license=('LGPL')
makedepends=("${MINGW_PACKAGE_PREFIX}-extra-cmake-modules>=${pkgver}")
depends=()
_kde_f5_add_depends "${_variant}" "${MINGW_PACKAGE_PREFIX}-qt5${_namesuff}"
groups=('kf5')
source=("https://download.kde.org/stable/frameworks/${pkgver%.*}/${_basename}-${pkgver}.tar.xz")
sha256sums=('fc41f8e89af68fb7b91a28dcb43d1f57b238657cf24684c5e98307e033f514fe')
noextract=("${_basename}-${pkgver}.tar.xz")

prepare() {
  # bsdtar fails to extract this on Windows because it includes symlinks
  # before the targets.  Worse, it has symlinks to symlinks, so extracting
  # it twice isn't sufficient.  So we must keep trying until everything is
  # resolved :(.  However, we also enforce hard limit at 5 tries -- if it
  # doesn't work after that, it's time to just give up.
  _tries=0
  while ! bsdtar xJf "${_basename}-${pkgver}.tar.xz" ; do
    _tries=$(( $_tries + 1 ))
    if (( $_tries == 5 )); then
      echo "Could not extract ${_basename}-${pkgver}.tar.xz after 5 tries.  Giving up!"
      exit 1
    fi
  done

  mkdir -p build-${CARCH}${_variant}
}

build() {
  local -a extra_config
  cd build-${CARCH}${_variant}
  if [ "${_variant}" = "-static" ]; then
    extra_config+=( -DBUILD_SHARED_LIBS=NO )
  fi

  _kde_f5_build_env
  cmake ../${_basename}-${pkgver} \
    -DCMAKE_BUILD_TYPE=$(_kde_f5_CMAKE_BUILD_TYPE) \
    "${_kde_f5_KDE_INSTALL_DIRS[@]}" \
    -DBUILD_QCH=OFF \
    -DBUILD_TESTING=OFF \
    -DECM_DIR=${MINGW_PREFIX}/share/ECM \
    "${extra_config[@]}" \
    -G'MSYS Makefiles'
  make
}

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

  # KDE apps won't get an icon theme by default on Windows unless it's
  # provided via <QStandardPaths::GenericDataLocation>/icontheme.rcc
  # TODO: Make this better...
  _kde_f5_build_env
  install -Dm644 icons/breeze-icons.rcc "${pkgdir}/${QT5_PREFIX}"/bin/data/icontheme.rcc
}
