# Maintainer: J. Peter Mugaas <jpmugaas@suddenlink.net>

_realname=rake-compiler
pkgbase="mingw-w64-ruby-${_realname}"
pkgname="${MINGW_PACKAGE_PREFIX}-ruby-${_realname}"
pkgver=1.3.0
pkgrel=1
pkgdesc="Rake-based Ruby Extension (C, Java) task generator (mingw-w64)"
arch=('any')
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
url='https://github.com/rake-compiler/rake-compiler'
msys2_references=(
  'purl: pkg:gem/rake-compiler'
)
license=('spdx:MIT')
depends=("${MINGW_PACKAGE_PREFIX}-ruby")
source=(https://rubygems.org/downloads/${_realname}-${pkgver}.gem)
noextract=(${_realname}-$pkgver.gem)
sha256sums=('eec272ef6d4dad27b36f5cdcf5b9ee4df2193751f4082b095f981ebf9cdf4127')

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

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

package() {
  local _gemdir="$(${MINGW_PREFIX}/bin/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/${_realname}

  # 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/${_realname}.bat

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

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