1 |
commit: b48853449cfcf11e60cbfd95a7bc5f8492d69240 |
2 |
Author: Hans de Graaff <graaff <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon May 28 05:08:29 2018 +0000 |
4 |
Commit: Hans de Graaff <graaff <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon May 28 05:08:29 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4885344 |
7 |
|
8 |
dev-lang/ruby: cleanup |
9 |
|
10 |
Package-Manager: Portage-2.3.36, Repoman-2.3.9 |
11 |
|
12 |
dev-lang/ruby/Manifest | 3 - |
13 |
dev-lang/ruby/ruby-2.5.0-r1.ebuild | 238 ------------------------------------- |
14 |
dev-lang/ruby/ruby-2.5.0-r2.ebuild | 238 ------------------------------------- |
15 |
3 files changed, 479 deletions(-) |
16 |
|
17 |
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest |
18 |
index 2e2b63a5467..3d2711b5231 100644 |
19 |
--- a/dev-lang/ruby/Manifest |
20 |
+++ b/dev-lang/ruby/Manifest |
21 |
@@ -4,7 +4,6 @@ DIST ruby-2.3.6.tar.xz 11445628 BLAKE2B 052f09fef806581824b14196abecde7def7c4ebc |
22 |
DIST ruby-2.3.7.tar.xz 11438124 BLAKE2B 4f7e0422291794b254cb80edd2f0841bbc1e85cd62635024b6d43b23b1bcdc512d92b57d8885b253465cc8ef3c6cbcec97a6ef239dc11cc8b252e941d25e0487 SHA512 fd91c8db3d3aa4cc962a62f27b4d1a71f6b5567ab836e6dbfbbb1553eb269d11e12faf9e36af6c489c33b54fd89dab99bfe81a563158b704877f0628d6f5bc5a |
23 |
DIST ruby-2.4.3.tar.xz 10040072 BLAKE2B 87ad9700312a104a60b079f4ef95804d2a9e01109e9fef6e83e593464f1d2c5077af54cbbaff6e0d25a925d05f513cade6c76f05960d9bcc1817bdee51ad4a0f SHA512 8bcf60c994a96787da5d743c66f5609a5a6d834d6d61243cdea7fd059197c3b10da43c99e5649be85e2f2329eedcbb1dd76e89ce3ac586be9056348f7449ed09 |
24 |
DIST ruby-2.4.4.tar.xz 10049304 BLAKE2B 76bb2c3f63cda8e6f3814c74dded23568b2f7f12036d745bf55fc4a68e281ef3ae0fe29bf8e194db71f72e724ffe750a31bec9246ad1c01eb05ed93512a6422e SHA512 4dc112a149273d4221484ccbf1260c6c5fcad7e0a6e4bc91e4ef69cbc093d3191f7abd71420f80d680f8ea5d111e6803ba2af32166aa501913639e6d5696fde0 |
25 |
-DIST ruby-2.5.0.tar.xz 11292472 BLAKE2B 852ce003a79d9d77e72928353382962440e99ed1d03558c89a928e8f4a582b27357ef63e3ef45f3b30009f7a95f356100941bd84151571ade3a88b2d0595f8ad SHA512 55714a33d7661fe8b432f73c34fd67b49699f8b79df1cbd680a74899124d31111ab0f444677672aac1ba725820182940d485efb2db0bf2bc96737c5d40c54578 |
26 |
DIST ruby-2.5.1.tar.xz 11348108 BLAKE2B ea1019a81f96169ab8d435215362b36b098df373ac4f53ecda328686ec2c13204a38c66bb1bf9504d18e1762e7e6ae277bab3b16bb53b8e628962df715769f3b SHA512 31bacf58469953282cd5d8b51862dcf4b84dedb927c1871bc3fca32fc157fe49187631575a70838705fe246f4555647577a7ecc26894445a7d64de5503dc11b4 |
27 |
DIST ruby-patches-2.2.10.tar.bz2 5764 BLAKE2B f50729480a4231db51de7981acb04dafa09d5fde592cf4a824a6fefe8ae3189ab9e82857e7ca41f1bb32dff1c4057ac37badf971c1b8f2981189e13d42dd38d2 SHA512 296387ec7f2ff82ad55f147d8f9568de544403d286ad24bb60aca916215d7ff6e1d6aca5a31c00a1999504989cda2bbd3260cae96c18ba73f9ffdcfd6b2695bd |
28 |
DIST ruby-patches-2.2.9.tar.bz2 5764 BLAKE2B f50729480a4231db51de7981acb04dafa09d5fde592cf4a824a6fefe8ae3189ab9e82857e7ca41f1bb32dff1c4057ac37badf971c1b8f2981189e13d42dd38d2 SHA512 296387ec7f2ff82ad55f147d8f9568de544403d286ad24bb60aca916215d7ff6e1d6aca5a31c00a1999504989cda2bbd3260cae96c18ba73f9ffdcfd6b2695bd |
29 |
@@ -12,6 +11,4 @@ DIST ruby-patches-2.3.6.tar.bz2 3030 BLAKE2B 7c1e80ff0569a03672f53820c665933056b |
30 |
DIST ruby-patches-2.3.7.tar.bz2 3030 BLAKE2B 7c1e80ff0569a03672f53820c665933056b46bcf791c9132cb9f358f72df693749f02da65ca7469c3dd0f652d7dc7bfaa03dccd4eb900562361876023fb65b42 SHA512 54cc3f2bfd1967b8558736e5a5240b886a56b22defca5813f45b1f4dca9af169b4d59d60b327ec8411e824970ac6da1cec53cfc31833403742e9d6941e5a78f1 |
31 |
DIST ruby-patches-2.4.3.tar.bz2 2898 BLAKE2B e46502dbb0aa25c3d71693a6c04b433bd4de60f194cdd283517c4b08da190356885d9bca4a6765402088185fa8ec681156e8e8eecf0703a2c1ea7bb81adc0bf9 SHA512 d767d43c7df737469247e42e1c4205b8c6850c8f335a2869c884f145c037e9bab10492cc7cd2903f5c33e232cdc5bbdabb3e8da837c7bf420b9d58d1d33149ed |
32 |
DIST ruby-patches-2.4.4.tar.bz2 2898 BLAKE2B e46502dbb0aa25c3d71693a6c04b433bd4de60f194cdd283517c4b08da190356885d9bca4a6765402088185fa8ec681156e8e8eecf0703a2c1ea7bb81adc0bf9 SHA512 d767d43c7df737469247e42e1c4205b8c6850c8f335a2869c884f145c037e9bab10492cc7cd2903f5c33e232cdc5bbdabb3e8da837c7bf420b9d58d1d33149ed |
33 |
-DIST ruby-patches-2.5.0-r1.tar.bz2 1888 BLAKE2B 38358c4d10a5c825ad1d50aa9e538fbfb0875deffaecf2064be3c52d593539f37b83bf726437922b1f13bd3d5c63e30ae071cd75c891e7083d3a363c4b49c905 SHA512 39068008cd7050a6787cfe35ef0a21ebeb5128226153b80f8d34e89bc77d6159f32e6980dfd8f3e38fc748cf3d648d102b3dcfcb79a484a517a5008bfd8161b9 |
34 |
-DIST ruby-patches-2.5.0-r2.tar.bz2 2986 BLAKE2B 64d64eda19bff94f205a6314c2af59896064fb64c118e0f3859d82aeb7e58478170b9160804ab8faf569054b65228abeecc5900e568e17133c21e9aed9bdf589 SHA512 c2bca3f98c7bb1de267b9f07eb1b0903c499c79e9c9d0166a6924e88e837434f27ddedd7aead7ebbe32f0530f751601ac5486a0db46ee28b94d7cea13e0e7924 |
35 |
DIST ruby-patches-2.5.1.tar.bz2 2986 BLAKE2B 64d64eda19bff94f205a6314c2af59896064fb64c118e0f3859d82aeb7e58478170b9160804ab8faf569054b65228abeecc5900e568e17133c21e9aed9bdf589 SHA512 c2bca3f98c7bb1de267b9f07eb1b0903c499c79e9c9d0166a6924e88e837434f27ddedd7aead7ebbe32f0530f751601ac5486a0db46ee28b94d7cea13e0e7924 |
36 |
|
37 |
diff --git a/dev-lang/ruby/ruby-2.5.0-r1.ebuild b/dev-lang/ruby/ruby-2.5.0-r1.ebuild |
38 |
deleted file mode 100644 |
39 |
index a6c97c1a736..00000000000 |
40 |
--- a/dev-lang/ruby/ruby-2.5.0-r1.ebuild |
41 |
+++ /dev/null |
42 |
@@ -1,238 +0,0 @@ |
43 |
-# Copyright 1999-2018 Gentoo Foundation |
44 |
-# Distributed under the terms of the GNU General Public License v2 |
45 |
- |
46 |
-EAPI=6 |
47 |
- |
48 |
-#PATCHSET=1 |
49 |
- |
50 |
-inherit autotools eutils flag-o-matic multilib versionator |
51 |
- |
52 |
-MY_P="${PN}-$(get_version_component_range 1-3)" |
53 |
-S=${WORKDIR}/${MY_P} |
54 |
- |
55 |
-SLOT=$(get_version_component_range 1-2) |
56 |
-MY_SUFFIX=$(delete_version_separator 1 ${SLOT}) |
57 |
-RUBYVERSION=${SLOT}.0 |
58 |
- |
59 |
-if [[ -n ${PATCHSET} ]]; then |
60 |
- if [[ ${PVR} == ${PV} ]]; then |
61 |
- PATCHSET="${PV}-r0.${PATCHSET}" |
62 |
- else |
63 |
- PATCHSET="${PVR}.${PATCHSET}" |
64 |
- fi |
65 |
-else |
66 |
- PATCHSET="${PVR}" |
67 |
-fi |
68 |
- |
69 |
-DESCRIPTION="An object-oriented scripting language" |
70 |
-HOMEPAGE="http://www.ruby-lang.org/" |
71 |
-SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz |
72 |
- https://dev.gentoo.org/~graaff/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2" |
73 |
- |
74 |
-LICENSE="|| ( Ruby-BSD BSD-2 )" |
75 |
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" |
76 |
-IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl static-libs tk xemacs" |
77 |
- |
78 |
-RDEPEND=" |
79 |
- berkdb? ( sys-libs/db:= ) |
80 |
- gdbm? ( sys-libs/gdbm:= ) |
81 |
- jemalloc? ( dev-libs/jemalloc ) |
82 |
- ssl? ( |
83 |
- !libressl? ( dev-libs/openssl:0= ) |
84 |
- libressl? ( dev-libs/libressl ) |
85 |
- ) |
86 |
- socks5? ( >=net-proxy/dante-1.1.13 ) |
87 |
- tk? ( |
88 |
- dev-lang/tcl:0=[threads] |
89 |
- dev-lang/tk:0=[threads] |
90 |
- ) |
91 |
- dev-libs/libyaml |
92 |
- virtual/libffi |
93 |
- sys-libs/zlib |
94 |
- >=app-eselect/eselect-ruby-20171225 |
95 |
-" |
96 |
- |
97 |
-DEPEND="${RDEPEND}" |
98 |
- |
99 |
-BUNDLED_GEMS=" |
100 |
- >=dev-ruby/did_you_mean-1.2.0:2.5[ruby_targets_ruby25] |
101 |
- >=dev-ruby/minitest-5.10.3[ruby_targets_ruby25] |
102 |
- >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby25] |
103 |
- >=dev-ruby/power_assert-1.1.1[ruby_targets_ruby25] |
104 |
- >=dev-ruby/rake-12.3.0[ruby_targets_ruby25] |
105 |
- >=dev-ruby/test-unit-3.2.7[ruby_targets_ruby25] |
106 |
- >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby25] |
107 |
-" |
108 |
- |
109 |
-PDEPEND=" |
110 |
- ${BUNDLED_GEMS} |
111 |
- virtual/rubygems[ruby_targets_ruby25] |
112 |
- >=dev-ruby/json-2.0.2[ruby_targets_ruby25] |
113 |
- rdoc? ( >=dev-ruby/rdoc-5.1.0[ruby_targets_ruby25] ) |
114 |
- xemacs? ( app-xemacs/ruby-modes )" |
115 |
- |
116 |
-src_prepare() { |
117 |
- EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \ |
118 |
- epatch "${WORKDIR}/patches" |
119 |
- |
120 |
- einfo "Unbundling gems..." |
121 |
- cd "$S" |
122 |
- # Remove bundled gems that we will install via PDEPEND, bug |
123 |
- # 539700. Use explicit version numbers to ensure rm fails when they |
124 |
- # change so we can update dependencies accordingly. |
125 |
- rm -f gems/{did_you_mean-1.2.0,minitest-5.10.3,net-telnet-0.1.1,power_assert-1.1.1,rake-12.3.0,test-unit-3.2.7,xmlrpc-0.3.0}.gem || die |
126 |
- |
127 |
- einfo "Removing bundled libraries..." |
128 |
- rm -fr ext/fiddle/libffi-3.2.1 || die |
129 |
- |
130 |
- eapply_user |
131 |
- |
132 |
- eautoreconf |
133 |
-} |
134 |
- |
135 |
-src_configure() { |
136 |
- local modules= myconf= |
137 |
- |
138 |
- # -fomit-frame-pointer makes ruby segfault, see bug #150413. |
139 |
- filter-flags -fomit-frame-pointer |
140 |
- # In many places aliasing rules are broken; play it safe |
141 |
- # as it's risky with newer compilers to leave it as it is. |
142 |
- append-flags -fno-strict-aliasing |
143 |
- # SuperH needs this |
144 |
- use sh && append-flags -mieee |
145 |
- |
146 |
- # Socks support via dante |
147 |
- if use socks5 ; then |
148 |
- # Socks support can't be disabled as long as SOCKS_SERVER is |
149 |
- # set and socks library is present, so need to unset |
150 |
- # SOCKS_SERVER in that case. |
151 |
- unset SOCKS_SERVER |
152 |
- fi |
153 |
- |
154 |
- # Increase GC_MALLOC_LIMIT if set (default is 8000000) |
155 |
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then |
156 |
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}" |
157 |
- fi |
158 |
- |
159 |
- # ipv6 hack, bug 168939. Needs --enable-ipv6. |
160 |
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET" |
161 |
- |
162 |
- # Determine which modules *not* to build depending in the USE flags. |
163 |
- if ! use berkdb ; then |
164 |
- modules="${modules},dbm" |
165 |
- fi |
166 |
- if ! use gdbm ; then |
167 |
- modules="${modules},gdbm" |
168 |
- fi |
169 |
- if ! use ssl ; then |
170 |
- modules="${modules},openssl" |
171 |
- fi |
172 |
- if ! use tk ; then |
173 |
- modules="${modules},tk" |
174 |
- fi |
175 |
- |
176 |
- # Provide an empty LIBPATHENV because we disable rpath but we do not |
177 |
- # need LD_LIBRARY_PATH by default since that breaks USE=multitarget |
178 |
- # #564272 |
179 |
- INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \ |
180 |
- --program-suffix=${MY_SUFFIX} \ |
181 |
- --with-soname=ruby${MY_SUFFIX} \ |
182 |
- --docdir=${EPREFIX}/usr/share/doc/${P} \ |
183 |
- --enable-shared \ |
184 |
- --enable-pthread \ |
185 |
- --disable-rpath \ |
186 |
- --with-out-ext="${modules}" \ |
187 |
- $(use_with jemalloc jemalloc) \ |
188 |
- $(use_enable socks5 socks) \ |
189 |
- $(use_enable doc install-doc) \ |
190 |
- --enable-ipv6 \ |
191 |
- $(use_enable static-libs static) \ |
192 |
- $(use_enable static-libs install-static-library) \ |
193 |
- $(use_with static-libs static-linked-ext) \ |
194 |
- $(use_enable debug) \ |
195 |
- ${myconf} \ |
196 |
- --enable-option-checking=no \ |
197 |
- || die "econf failed" |
198 |
-} |
199 |
- |
200 |
-src_compile() { |
201 |
- emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed" |
202 |
-} |
203 |
- |
204 |
-src_test() { |
205 |
- emake -j1 V=1 test || die "make test failed" |
206 |
- |
207 |
- elog "Ruby's make test has been run. Ruby also ships with a make check" |
208 |
- elog "that cannot be run until after ruby has been installed." |
209 |
- elog |
210 |
- if use rubytests; then |
211 |
- elog "You have enabled rubytests, so they will be installed to" |
212 |
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other" |
213 |
- elog "than root, and you must place them into a writeable directory." |
214 |
- elog "Then call: " |
215 |
- elog |
216 |
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb" |
217 |
- else |
218 |
- elog "Enable the rubytests USE flag to install the make check tests" |
219 |
- fi |
220 |
-} |
221 |
- |
222 |
-src_install() { |
223 |
- # Remove the remaining bundled gems. We do this late in the process |
224 |
- # since they are used during the build to e.g. create the |
225 |
- # documentation. |
226 |
- rm -rf ext/json || die |
227 |
- |
228 |
- # Ruby is involved in the install process, we don't want interference here. |
229 |
- unset RUBYOPT |
230 |
- |
231 |
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby) |
232 |
- |
233 |
- LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}" |
234 |
- RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}" |
235 |
- for d in $(find "${S}/ext" -type d) ; do |
236 |
- RUBYLIB="${RUBYLIB}:$d" |
237 |
- done |
238 |
- export LD_LIBRARY_PATH RUBYLIB |
239 |
- |
240 |
- emake V=1 DESTDIR="${D}" install || die "make install failed" |
241 |
- |
242 |
- # Remove installed rubygems and rdoc copy |
243 |
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed" |
244 |
- rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed" |
245 |
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed" |
246 |
- rm -rf "${ED}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed" |
247 |
- |
248 |
- if use doc; then |
249 |
- make DESTDIR="${D}" install-doc || die "make install-doc failed" |
250 |
- fi |
251 |
- |
252 |
- if use examples; then |
253 |
- insinto /usr/share/doc/${PF} |
254 |
- doins -r sample |
255 |
- fi |
256 |
- |
257 |
- dodoc ChangeLog NEWS doc/NEWS* README* || die |
258 |
- |
259 |
- if use rubytests; then |
260 |
- pushd test |
261 |
- insinto /usr/share/${PN}-${SLOT}/test |
262 |
- doins -r . |
263 |
- popd |
264 |
- fi |
265 |
-} |
266 |
- |
267 |
-pkg_postinst() { |
268 |
- if [[ ! -n $(readlink "${EROOT}"usr/bin/ruby) ]] ; then |
269 |
- eselect ruby set ruby${MY_SUFFIX} |
270 |
- fi |
271 |
- |
272 |
- elog |
273 |
- elog "To switch between available Ruby profiles, execute as root:" |
274 |
- elog "\teselect ruby set ruby(23|24|...)" |
275 |
- elog |
276 |
-} |
277 |
- |
278 |
-pkg_postrm() { |
279 |
- eselect ruby cleanup |
280 |
-} |
281 |
|
282 |
diff --git a/dev-lang/ruby/ruby-2.5.0-r2.ebuild b/dev-lang/ruby/ruby-2.5.0-r2.ebuild |
283 |
deleted file mode 100644 |
284 |
index a6c97c1a736..00000000000 |
285 |
--- a/dev-lang/ruby/ruby-2.5.0-r2.ebuild |
286 |
+++ /dev/null |
287 |
@@ -1,238 +0,0 @@ |
288 |
-# Copyright 1999-2018 Gentoo Foundation |
289 |
-# Distributed under the terms of the GNU General Public License v2 |
290 |
- |
291 |
-EAPI=6 |
292 |
- |
293 |
-#PATCHSET=1 |
294 |
- |
295 |
-inherit autotools eutils flag-o-matic multilib versionator |
296 |
- |
297 |
-MY_P="${PN}-$(get_version_component_range 1-3)" |
298 |
-S=${WORKDIR}/${MY_P} |
299 |
- |
300 |
-SLOT=$(get_version_component_range 1-2) |
301 |
-MY_SUFFIX=$(delete_version_separator 1 ${SLOT}) |
302 |
-RUBYVERSION=${SLOT}.0 |
303 |
- |
304 |
-if [[ -n ${PATCHSET} ]]; then |
305 |
- if [[ ${PVR} == ${PV} ]]; then |
306 |
- PATCHSET="${PV}-r0.${PATCHSET}" |
307 |
- else |
308 |
- PATCHSET="${PVR}.${PATCHSET}" |
309 |
- fi |
310 |
-else |
311 |
- PATCHSET="${PVR}" |
312 |
-fi |
313 |
- |
314 |
-DESCRIPTION="An object-oriented scripting language" |
315 |
-HOMEPAGE="http://www.ruby-lang.org/" |
316 |
-SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz |
317 |
- https://dev.gentoo.org/~graaff/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2" |
318 |
- |
319 |
-LICENSE="|| ( Ruby-BSD BSD-2 )" |
320 |
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" |
321 |
-IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl static-libs tk xemacs" |
322 |
- |
323 |
-RDEPEND=" |
324 |
- berkdb? ( sys-libs/db:= ) |
325 |
- gdbm? ( sys-libs/gdbm:= ) |
326 |
- jemalloc? ( dev-libs/jemalloc ) |
327 |
- ssl? ( |
328 |
- !libressl? ( dev-libs/openssl:0= ) |
329 |
- libressl? ( dev-libs/libressl ) |
330 |
- ) |
331 |
- socks5? ( >=net-proxy/dante-1.1.13 ) |
332 |
- tk? ( |
333 |
- dev-lang/tcl:0=[threads] |
334 |
- dev-lang/tk:0=[threads] |
335 |
- ) |
336 |
- dev-libs/libyaml |
337 |
- virtual/libffi |
338 |
- sys-libs/zlib |
339 |
- >=app-eselect/eselect-ruby-20171225 |
340 |
-" |
341 |
- |
342 |
-DEPEND="${RDEPEND}" |
343 |
- |
344 |
-BUNDLED_GEMS=" |
345 |
- >=dev-ruby/did_you_mean-1.2.0:2.5[ruby_targets_ruby25] |
346 |
- >=dev-ruby/minitest-5.10.3[ruby_targets_ruby25] |
347 |
- >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby25] |
348 |
- >=dev-ruby/power_assert-1.1.1[ruby_targets_ruby25] |
349 |
- >=dev-ruby/rake-12.3.0[ruby_targets_ruby25] |
350 |
- >=dev-ruby/test-unit-3.2.7[ruby_targets_ruby25] |
351 |
- >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby25] |
352 |
-" |
353 |
- |
354 |
-PDEPEND=" |
355 |
- ${BUNDLED_GEMS} |
356 |
- virtual/rubygems[ruby_targets_ruby25] |
357 |
- >=dev-ruby/json-2.0.2[ruby_targets_ruby25] |
358 |
- rdoc? ( >=dev-ruby/rdoc-5.1.0[ruby_targets_ruby25] ) |
359 |
- xemacs? ( app-xemacs/ruby-modes )" |
360 |
- |
361 |
-src_prepare() { |
362 |
- EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \ |
363 |
- epatch "${WORKDIR}/patches" |
364 |
- |
365 |
- einfo "Unbundling gems..." |
366 |
- cd "$S" |
367 |
- # Remove bundled gems that we will install via PDEPEND, bug |
368 |
- # 539700. Use explicit version numbers to ensure rm fails when they |
369 |
- # change so we can update dependencies accordingly. |
370 |
- rm -f gems/{did_you_mean-1.2.0,minitest-5.10.3,net-telnet-0.1.1,power_assert-1.1.1,rake-12.3.0,test-unit-3.2.7,xmlrpc-0.3.0}.gem || die |
371 |
- |
372 |
- einfo "Removing bundled libraries..." |
373 |
- rm -fr ext/fiddle/libffi-3.2.1 || die |
374 |
- |
375 |
- eapply_user |
376 |
- |
377 |
- eautoreconf |
378 |
-} |
379 |
- |
380 |
-src_configure() { |
381 |
- local modules= myconf= |
382 |
- |
383 |
- # -fomit-frame-pointer makes ruby segfault, see bug #150413. |
384 |
- filter-flags -fomit-frame-pointer |
385 |
- # In many places aliasing rules are broken; play it safe |
386 |
- # as it's risky with newer compilers to leave it as it is. |
387 |
- append-flags -fno-strict-aliasing |
388 |
- # SuperH needs this |
389 |
- use sh && append-flags -mieee |
390 |
- |
391 |
- # Socks support via dante |
392 |
- if use socks5 ; then |
393 |
- # Socks support can't be disabled as long as SOCKS_SERVER is |
394 |
- # set and socks library is present, so need to unset |
395 |
- # SOCKS_SERVER in that case. |
396 |
- unset SOCKS_SERVER |
397 |
- fi |
398 |
- |
399 |
- # Increase GC_MALLOC_LIMIT if set (default is 8000000) |
400 |
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then |
401 |
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}" |
402 |
- fi |
403 |
- |
404 |
- # ipv6 hack, bug 168939. Needs --enable-ipv6. |
405 |
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET" |
406 |
- |
407 |
- # Determine which modules *not* to build depending in the USE flags. |
408 |
- if ! use berkdb ; then |
409 |
- modules="${modules},dbm" |
410 |
- fi |
411 |
- if ! use gdbm ; then |
412 |
- modules="${modules},gdbm" |
413 |
- fi |
414 |
- if ! use ssl ; then |
415 |
- modules="${modules},openssl" |
416 |
- fi |
417 |
- if ! use tk ; then |
418 |
- modules="${modules},tk" |
419 |
- fi |
420 |
- |
421 |
- # Provide an empty LIBPATHENV because we disable rpath but we do not |
422 |
- # need LD_LIBRARY_PATH by default since that breaks USE=multitarget |
423 |
- # #564272 |
424 |
- INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \ |
425 |
- --program-suffix=${MY_SUFFIX} \ |
426 |
- --with-soname=ruby${MY_SUFFIX} \ |
427 |
- --docdir=${EPREFIX}/usr/share/doc/${P} \ |
428 |
- --enable-shared \ |
429 |
- --enable-pthread \ |
430 |
- --disable-rpath \ |
431 |
- --with-out-ext="${modules}" \ |
432 |
- $(use_with jemalloc jemalloc) \ |
433 |
- $(use_enable socks5 socks) \ |
434 |
- $(use_enable doc install-doc) \ |
435 |
- --enable-ipv6 \ |
436 |
- $(use_enable static-libs static) \ |
437 |
- $(use_enable static-libs install-static-library) \ |
438 |
- $(use_with static-libs static-linked-ext) \ |
439 |
- $(use_enable debug) \ |
440 |
- ${myconf} \ |
441 |
- --enable-option-checking=no \ |
442 |
- || die "econf failed" |
443 |
-} |
444 |
- |
445 |
-src_compile() { |
446 |
- emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed" |
447 |
-} |
448 |
- |
449 |
-src_test() { |
450 |
- emake -j1 V=1 test || die "make test failed" |
451 |
- |
452 |
- elog "Ruby's make test has been run. Ruby also ships with a make check" |
453 |
- elog "that cannot be run until after ruby has been installed." |
454 |
- elog |
455 |
- if use rubytests; then |
456 |
- elog "You have enabled rubytests, so they will be installed to" |
457 |
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other" |
458 |
- elog "than root, and you must place them into a writeable directory." |
459 |
- elog "Then call: " |
460 |
- elog |
461 |
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb" |
462 |
- else |
463 |
- elog "Enable the rubytests USE flag to install the make check tests" |
464 |
- fi |
465 |
-} |
466 |
- |
467 |
-src_install() { |
468 |
- # Remove the remaining bundled gems. We do this late in the process |
469 |
- # since they are used during the build to e.g. create the |
470 |
- # documentation. |
471 |
- rm -rf ext/json || die |
472 |
- |
473 |
- # Ruby is involved in the install process, we don't want interference here. |
474 |
- unset RUBYOPT |
475 |
- |
476 |
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby) |
477 |
- |
478 |
- LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}" |
479 |
- RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}" |
480 |
- for d in $(find "${S}/ext" -type d) ; do |
481 |
- RUBYLIB="${RUBYLIB}:$d" |
482 |
- done |
483 |
- export LD_LIBRARY_PATH RUBYLIB |
484 |
- |
485 |
- emake V=1 DESTDIR="${D}" install || die "make install failed" |
486 |
- |
487 |
- # Remove installed rubygems and rdoc copy |
488 |
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed" |
489 |
- rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed" |
490 |
- rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed" |
491 |
- rm -rf "${ED}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed" |
492 |
- |
493 |
- if use doc; then |
494 |
- make DESTDIR="${D}" install-doc || die "make install-doc failed" |
495 |
- fi |
496 |
- |
497 |
- if use examples; then |
498 |
- insinto /usr/share/doc/${PF} |
499 |
- doins -r sample |
500 |
- fi |
501 |
- |
502 |
- dodoc ChangeLog NEWS doc/NEWS* README* || die |
503 |
- |
504 |
- if use rubytests; then |
505 |
- pushd test |
506 |
- insinto /usr/share/${PN}-${SLOT}/test |
507 |
- doins -r . |
508 |
- popd |
509 |
- fi |
510 |
-} |
511 |
- |
512 |
-pkg_postinst() { |
513 |
- if [[ ! -n $(readlink "${EROOT}"usr/bin/ruby) ]] ; then |
514 |
- eselect ruby set ruby${MY_SUFFIX} |
515 |
- fi |
516 |
- |
517 |
- elog |
518 |
- elog "To switch between available Ruby profiles, execute as root:" |
519 |
- elog "\teselect ruby set ruby(23|24|...)" |
520 |
- elog |
521 |
-} |
522 |
- |
523 |
-pkg_postrm() { |
524 |
- eselect ruby cleanup |
525 |
-} |