# Maintainer: Alexey Pavlov <alexpux@gmail.com>

_realname=asciidoctor
pkgbase="mingw-w64-${_realname}"
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.0.23
pkgrel=3
pkgdesc="An implementation of AsciiDoc in Ruby (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clangarm64')
msys2_repository_url='https://github.com/asciidoctor/asciidoctor'
url='https://asciidoctor.org/'
msys2_references=(
  'purl: pkg:gem/asciidoctor'
)
license=('spdx:MIT')
depends=("${MINGW_PACKAGE_PREFIX}-ruby")
makedepends=("${MINGW_PACKAGE_PREFIX}-cc")
source=(https://rubygems.org/downloads/${_realname}-${pkgver}.gem)
sha256sums=('52208807f237dfa0ca29882f8b13d60b820496116ad191cf197ca56f2b7fddf3')

check() {
  local _gemdir="$(ruby -e 'puts Gem.default_dir')"
  _gemdir="$(cygpath -u ${_gemdir})"

  gem check --verbose "${_realname}-${pkgver}.gem"
}

package() {
  local _gemdir="$(ruby -e 'puts Gem.default_dir')"
  _gemdir="$(cygpath -u ${_gemdir})"

  gem install --ignore-dependencies --no-user-install --verbose \
    -i "${pkgdir}/${_gemdir}" -n "${pkgdir}${MINGW_PREFIX}/bin" \
    "${_realname}-${pkgver}.gem"

  local _ruby_exe=$(cygpath -m ${MINGW_PREFIX}/bin/ruby.exe)

  # For this conversion, we want the fully qualified ruby.exe path
  # so that we can be sure that we are calling the correct one.
  sed -e "s|${_ruby_exe}|${MINGW_PREFIX}/bin/ruby|g" \
      -i "${pkgdir}"${MINGW_PREFIX}/bin/asciidoctor

  # For Win32 .bat files, we want to drop the path references as the path
  # refs are not needed since it's invoked from the same dir. If we did
  # need fully-qualified paths, they would have to be fully-qualified and
  # in DOS format.
  local _inst_dir=$(cygpath -m "${pkgdir}"${MINGW_PREFIX}/bin/)
  local _w_ruby_exe=$(cygpath -w ${MINGW_PREFIX}/bin/ruby.exe | sed 's/\\/\\\\/g')
  sed  -e "s|${_w_ruby_exe}|ruby.exe|g" \
       -e "s|${_inst_dir}||g" \
       -i "${pkgdir}"${MINGW_PREFIX}/bin/asciidoctor.bat

  install -Dm644 "${pkgdir}/${_gemdir}/gems/${_realname}-${pkgver}/LICENSE" \
    "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
  install -Dm644 "${pkgdir}/${_gemdir}/gems/${_realname}-${pkgver}/man/asciidoctor.1" \
    "${pkgdir}${MINGW_PREFIX}/share/man/man1/asciidoctor.1"

  rm "${pkgdir}/${_gemdir}/cache/${_realname}-${pkgver}.gem"
  rm -rf "${pkgdir}${MINGW_PREFIX}/${_gemdir}/gems/${_realname}-${pkgver}/man"
}
