projects/aports·blob master · refs

100 lines · 2.7 KiB

1# Contributor: Jakub Jirutka <[email protected]>
2# Maintainer: Jakub Jirutka <[email protected]>
3pkgname=ruby-concurrent-ruby
4_gemname=${pkgname#ruby-}
5pkgver=1.3.5
6pkgrel=0
7pkgdesc="Modern concurrency tools for Ruby"
8url="http://www.concurrent-ruby.com"
9arch="all"
10license="MIT"
11depends="ruby"
12makedepends="ruby-dev ruby-rake ruby-rake-compiler"
13checkdepends="ruby-rspec ruby-timecop"
14subpackages="$pkgname-ext"
15source="$pkgname-$pkgver.tar.gz::https://github.com/ruby-concurrency/$_gemname/archive/v$pkgver.tar.gz
16 gemspecs.patch
17 rakefile-remove-dock.patch
18 "
19builddir="$srcdir/$_gemname-$pkgver"
20
21# limited by jruby and openjdk
22case "$CARCH" in x86_64 | aarch64)
23 makedepends="$makedepends jruby java-jdk"
24 subpackages="$subpackages $pkgname-java::noarch"
25
26 export JRUBY_HOME="/usr/share/jruby"
27esac
28
29build() {
30 rake repackage
31
32 RUBYLIB="$(pwd)/lib" gem install --local \
33 --install-dir dist-ext \
34 --ignore-dependencies \
35 --no-document \
36 --verbose \
37 pkg/$_gemname-ext-$pkgver.gem
38}
39
40check() {
41 gem install --local \
42 --install-dir .gems \
43 --ignore-dependencies \
44 --no-document \
45 --verbose \
46 pkg/$_gemname-*.gem
47
48 GEM_PATH=".gems" rspec --tag ~unfinished --tag ~buggy --tag ~edge spec
49}
50
51package() {
52 local gemdir="$pkgdir/$(ruby -e 'puts Gem.default_dir')"
53
54 gem install --local \
55 --install-dir "$gemdir" \
56 --ignore-dependencies \
57 --no-document \
58 --verbose \
59 pkg/$_gemname-$pkgver.gem
60
61 # Remove unnecessary files.
62 rm -r "$gemdir"/cache \
63 "$gemdir"/build_info \
64 "$gemdir"/doc
65 cd "$gemdir"/gems/$_gemname-$pkgver
66 rm -rf ext Gemfile Rakefile *.md
67}
68
69java() {
70 pkgdesc="$pkgdesc (Java extension)"
71 depends="$pkgname=$pkgver-r$pkgrel"
72 install_if="$pkgname=$pkgver-r$pkgrel jruby"
73 local gemdir="$(ruby -e 'puts Gem.default_dir')"
74
75 amove ${gemdir#/}/gems/$_gemname-$pkgver/lib/$_gemname/*/*.jar
76}
77
78ext() {
79 pkgdesc="$pkgdesc (C extension)"
80 depends="$pkgname=$pkgver-r$pkgrel"
81
82 local gemdir="$subpkgdir/$(ruby -e 'puts Gem.default_dir')"
83
84 cd "$builddir"/dist-ext
85
86 mkdir -p "$gemdir"
87 cp -r extensions gems specifications "$gemdir"/
88
89 # Remove unnecessary files and rubbish...
90 find "$gemdir"/extensions/ -name mkmf.log -delete
91 cd "$gemdir"/gems/$_gemname-ext-$pkgver
92 rm -r ext/ lib/concurrent/*.so *.md
93 rmdir -p --ignore-fail-on-non-empty "$(pwd)/lib/concurrent"
94}
95
96sha512sums="
970bf85fb3d9c5b1107768e2175c9f6958449de4033be403ef92d73f3f665ce04fca1a6d1437493b83ce7a1928c79ec89bda7ec47d9d7053435b7de0b5158afba7 ruby-concurrent-ruby-1.3.5.tar.gz
982db9dbd791f52647c7ba66b6537575ccbaa402de0316169cfc887f8f25093f0507e144eca86a4f1baaefc9cd268474460ed1ea09713b5ffb354642c036bc46f0 gemspecs.patch
99964384305dbe7d0578e80117587235acd2ab8e812aaa9353a13157ad92574b6db632fe96b144950e64377f94af26fa2ec1bad1c829493c48d379c0c91e1282b7 rakefile-remove-dock.patch
100"