diff options
author | Carl Smedstad | 2024-04-01 11:14:46 +0200 |
---|---|---|
committer | Carl Smedstad | 2024-04-01 11:18:31 +0200 |
commit | 57398f6d7f1391abdc19ebcdff7ac1765267a8bd (patch) | |
tree | b36a323c9dca6d9e963c17ad80887472fd4a0296 /PKGBUILD | |
parent | ee2be0d58911a13bd2680dd18b58d1426186b5f5 (diff) | |
download | aur-ruby-treetop.tar.gz |
upgpkg: 1.6.12-3
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 111 |
1 files changed, 93 insertions, 18 deletions
@@ -1,28 +1,103 @@ -# Maintainer: Maxime Gauduin <alucryd@gmail@com> +# Maintainer: Carl Smedstad <carsme at archlinux dot org> +# Contributor: Maxime Gauduin <alucryd@gmail@com> # Contributor: Emiliano Vavassori <syntaxerrormmm@gmail.com> # Contributor: Guilherme Nogueira <guilherme@nirev.org> pkgname=ruby-treetop +_pkgname=${pkgname#ruby-} pkgver=1.6.12 -pkgrel=1 -pkgdesc='A Ruby-based text parsing and interpretation DSL' -arch=('any') -url='https://github.com/cjheath/treetop' -license=('MIT') -depends=('ruby-polyglot') -options=('!emptydirs') -source=("https://rubygems.org/downloads/${pkgname#*-}-${pkgver}.gem") -noextract=("${pkgname#*-}-$pkgver.gem") -sha256sums=('ed48add684a2d7a8fd6e3b8b027d8ee5983b50977ae691913131a24f1746ac29') +_commit=b6a60e16e80f288dd25d45e372e5249f190f4561 +pkgrel=3 +pkgdesc="A Ruby-based parsing DSL based on parsing expression grammars" +arch=(any) +url="https://github.com/cjheath/treetop" +license=(MIT) +depends=( + ruby + ruby-polyglot +) +makedepends=( + git + rubygems +) +checkdepends=( + ruby-activesupport + ruby-rr + ruby-rspec +) +options=(!emptydirs) +source=("git+$url.git#commit=$_commit") +sha256sums=('60b44029ded39276145a755981cf9a83a8c09708547390640eb4884d5ebe5685') -package() { - local _gemdir="$(ruby -e'puts Gem.default_dir')" +_archive="$_pkgname" - gem install --ignore-dependencies --no-user-install -N -i "${pkgdir}"/${_gemdir} -n "${pkgdir}"/usr/bin ${pkgname#*-}-${pkgver}.gem - find "${pkgdir}" -type f -name *.gem -delete +pkgver() { + cd "$_archive" - install -dm 755 "${pkgdir}"/usr/share/licenses/${pkgname} - ln -s ${_gemdir}/gems/${pkgname#*-}-${pkgver}/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/ + git describe --tags | sed 's/^v//' } -# vim: ts=2 sw=2 et: +prepare() { + cd "$_archive" + + # Update gemspec/Gemfile to allow newer version of the dependencies + sed -i -E 's|~>|>=|g' "$_pkgname.gemspec" +} + +build() { + cd "$_archive" + + local gemdir="$(gem env gemdir)" + + gem build "$_pkgname.gemspec" + + gem install \ + --local \ + --verbose \ + --ignore-dependencies \ + --no-user-install \ + --install-dir "tmp_install/$gemdir" \ + --bindir "tmp_install/usr/bin" \ + "$_pkgname-$pkgver.gem" + + # Remove unrepreducible files + rm --force --recursive --verbose \ + "tmp_install/$gemdir/cache/" \ + "tmp_install/$gemdir/gems/$_pkgname-$pkgver/vendor/" \ + "tmp_install/$gemdir/doc/$_pkgname-$pkgver/ri/ext/" + + find "tmp_install/$gemdir/gems/" \ + -type f \ + \( \ + -iname "*.o" -o \ + -iname "*.c" -o \ + -iname "*.so" -o \ + -iname "*.time" -o \ + -iname "gem.build_complete" -o \ + -iname "Makefile" \ + \) \ + -delete + + find "tmp_install/$gemdir/extensions/" \ + -type f \ + \( \ + -iname "mkmf.log" -o \ + -iname "gem_make.out" \ + \) \ + -delete +} + +check() { + cd "$_archive" + + GEM_HOME="tmp_install/$(gem env gemdir)" rspec +} + +package() { + cd "$_archive" + + cp -a -t "$pkgdir" tmp_install/* + + install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname" ./*.md + install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE +} |