# Maintainer: Tim Meusel <tim@bastelfreak.de>
# Contributor: Christian Rebischke <chris.rebischke@archlinux.org>

_gemname='hashdiff'
pkgname="ruby-${_gemname}"
pkgver=1.1.2
pkgrel=3
pkgdesc='Library to compute the smallest difference between two hashes'
arch=('any')
url="https://github.com/liufengyun/${_gemname}"
license=('MIT')
makedepends=('ruby-rdoc' 'ruby-bundler')
checkdepends=('ruby-rake' 'ruby-rspec')
depends=('ruby')
options=(!emptydirs)
source=("${url}/archive/v${pkgver}/${pkgname}-v${pkgver}.tar.gz")
sha512sums=('477593786887414819b0d98fd062fc6cb7a98b96c0154c6a23585636d0b27d6f6202f555d3e1ee83a2572640fc70c60bfc13e7c7d80880565966629b1396f0ad')

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

  # use `find` instead of `git`, since we have a tar ball and not a VCS repository
  sed --in-place 's/git ls-files.*`/find`/g' "${_gemname}.gemspec"
  sed --in-place '/test_files/d' "${_gemname}.gemspec"

  # rubocop would test if the code works on a legay ruby platform
  sed --in-place '/rubocop/d' Rakefile
  sed --in-place '/RuboCop/d' Rakefile

  # loading bundler isn't required and often triggers side effects
  # because it wants *all* gems from gemspec + Gemfile
  sed --in-place '/Bundler/d' Rakefile
  sed --in-place '/Bundler/d' Rakefile

  # the project has a few dependencies for releasing
  sed --in-place '/bluecloth/d' "${_gemname}.gemspec"
  sed --in-place '/rubocop/d' "${_gemname}.gemspec"
  sed --in-place '/yard/d' "${_gemname}.gemspec"
  # delete CI configs
  rm -rf \.*
}

build() {
  cd "${srcdir}/${_gemname}-${pkgver}"
  gem build "${_gemname}.gemspec"
}

check() {
  cd "${srcdir}/${_gemname}-${pkgver}"
  rake spec
}

package() {
  cd "${srcdir}/${_gemname}-${pkgver}"
  local _gemdir="$(gem env gemdir)"
  gem install --verbose --ignore-dependencies --no-user-install --install-dir "${pkgdir}/${_gemdir}" --bindir "${pkgdir}/usr/bin" "${_gemname}-${pkgver}.gem"

  install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}/"

  rm -rf "${pkgdir}/${_gemdir}/cache"
}

# vim: ts=2 sw=2 et:
