blob: 0d065625525bea62ed5fa20cb6804207797be9b6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
# Maintainer: Anatol Pomozov <anatol.pomozov@gmail.com>
# Maintainer: Andreas 'Segaja' Schleifer <segaja at archlinux dot org>
# Maintainer: Tim Meusel <tim@bastelfreak.de>
# Contributor: Thomas Dziedzic <gostrc@gmail.com>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: John Proctor <jproctor@prium.net>
# Contributor: Jeramy Rutley <jrutley@gmail.com>
pkgname=(ruby-bootstrap ruby-stdlib-bootstrap ruby-bundledgems-bootstrap)
pkgver=3.0.4
pkgrel=9
arch=(i486 i686 pentium4 x86_64)
url='https://www.ruby-lang.org/en/'
license=(BSD custom)
makedepends=(gdbm openssl libffi doxygen graphviz libyaml ttf-dejavu tk)
options=(debug !emptydirs !lto) # Disable LTO until fixes for https://bugs.ruby-lang.org/issues/18062 released
source=(https://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.xz)
sha512sums=('53bf7dd403b0c68af9691882ad8ed7422c8d1f496627428fb4c3caf0b0313715524b744c5f453aced2d49e16e55f3f45b46b9a77aa3097dbfcae7caa0208194b')
build() {
cd ruby-${pkgver}
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--sharedstatedir=/var/lib \
--libexecdir=/usr/lib/ruby \
--enable-shared \
--disable-rpath \
--with-dbm-type=gdbm_compat
make
}
check() {
cd ruby-${pkgver}
# make test
}
package_ruby-bootstrap() {
pkgdesc='An object-oriented language for quick and easy programming'
depends=(gdbm openssl libffi libyaml libxcrypt gmp zlib rubygems ruby-stdlib-bootstrap ruby-bundledgems-bootstrap)
optdepends=(
'ruby-docs: Ruby documentation'
'tk: for Ruby/TK'
)
cd ruby-${pkgver}
make DESTDIR="${pkgdir}" install-nodoc
install -D -m644 COPYING "${pkgdir}/usr/share/licenses/ruby/LICENSE"
install -D -m644 BSDL "${pkgdir}/usr/share/licenses/ruby/BSDL"
rubyver=${pkgver:0:3}.0
# remove rubygems as it shipped as a separate package
rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{rubygems,rubygems.rb}
rm "${pkgdir}"/usr/bin/gem
# remove bundler as it shipped as a separate package
rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{bundler,bundler.rb}
rm "${pkgdir}"/usr/bin/{bundle,bundler}
# remove bundled rdoc gem
rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{rdoc,rdoc.rb}
rm "${pkgdir}"/usr/bin/{rdoc,ri}
rm "${pkgdir}"/usr/share/man/man1/ri.1
# remove irb as it is a separate package now
rm -r "${pkgdir}"/usr/lib/ruby/${rubyver}/{irb,irb.rb}
rm "${pkgdir}"/usr/bin/irb
rm "${pkgdir}"/usr/share/man/man1/irb.1
# remove other binaries that are shipped as separate packages
rm "${pkgdir}"/usr/bin/{rake,rbs,typeprof,erb,racc}
rm "${pkgdir}"/usr/share/man/man1/erb.1
# remove all bundled gems to avoid conflicts with ruby-* Arch packages
rm -r "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/gems/*
rm "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/specifications/*.gemspec
rm "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/cache/*.gem
# remove already packaged stdlib gems (needs to be as dependency in ruby-stdlib)
local stdlib_gems=(
abbrev
base64
benchmark
bigdecimal
bundler
cgi
csv
date
delegate
did_you_mean
digest
drb
english
erb
etc
fcntl
fiddle
fileutils
find
forwardable
getoptlong
io-console
io-nonblock
io-wait
ipaddr
irb
json
logger
mutex_m
net-http
open-uri
psych
rdoc
reline
stringio
time
tmpdir
uri
)
for stdlib_gem in "${stdlib_gems[@]}"; do
rm -v "${pkgdir}"/usr/lib/ruby/gems/${rubyver}/specifications/default/${stdlib_gem}-*.gemspec
done
}
package_ruby-stdlib-bootstrap() {
# upstream list of gems contained in stdlib ( https://github.com/ruby/ruby/tree/master/{ext,lib} )
pkgdesc='A vast collection of classes and modules that you can require in your code for additional features'
depends=(
)
}
package_ruby-bundledgems-bootstrap() {
# upstream list of bundled gems ( https://github.com/ruby/ruby/blob/master/gems/bundled_gems )
pkgdesc='Ruby Gems (third-party libraries) that are installed by default when Ruby is installed'
depends=(
)
}
|