Gentoo Archives: gentoo-commits

From: Hans de Graaff <graaff@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/ruby/
Date: Tue, 01 Oct 2019 18:06:04
Message-Id: 1569953141.f946ccd24f0ce5979bc55972e79cf82caf17d11c.graaff@gentoo
1 commit: f946ccd24f0ce5979bc55972e79cf82caf17d11c
2 Author: Hans de Graaff <graaff <AT> gentoo <DOT> org>
3 AuthorDate: Tue Oct 1 17:19:43 2019 +0000
4 Commit: Hans de Graaff <graaff <AT> gentoo <DOT> org>
5 CommitDate: Tue Oct 1 18:05:41 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f946ccd2
7
8 dev-lang/ruby: cleanup
9
10 Package-Manager: Portage-2.3.76, Repoman-2.3.16
11 Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org>
12
13 dev-lang/ruby/Manifest | 3 -
14 dev-lang/ruby/ruby-2.4.6.ebuild | 230 --------------------------------------
15 dev-lang/ruby/ruby-2.5.5.ebuild | 225 --------------------------------------
16 dev-lang/ruby/ruby-2.6.2.ebuild | 237 ----------------------------------------
17 4 files changed, 695 deletions(-)
18
19 diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
20 index 0abfca68499..d19f609f13f 100644
21 --- a/dev-lang/ruby/Manifest
22 +++ b/dev-lang/ruby/Manifest
23 @@ -1,7 +1,4 @@
24 -DIST ruby-2.4.6.tar.xz 10005544 BLAKE2B 2af984d96dad4d7ef4d467b317bd4bb54b0614d96619377bc46f7588cd1c72bee47202b61d6ec54f00113fd25672d2831221dbf0a4491aa271541a34c634ee84 SHA512 eafb2257747f99e2ed262af142e71175b70f7cceaa4d1253b92c8337f075a9a58a2d93b029d75e11a9b124f112a8f0983273b2b30afc147b5cf71a8dbb5fa0ba
25 DIST ruby-2.4.7.tar.xz 10118948 BLAKE2B e85e051e9dbac8e7f87bd6187dc105b89a6bc7197c811bd51bf25b109781b8ec79c02e48887cbac841d38922d278da4ee32d8cf14e180083f4a902d77c4ec2dc SHA512 df637c5803ddd83f759e9c24b0e7ca1f6cae7c7b353409583d92dbffece0d9d02b48905d6552327a1522a4a37d4e2d22c6c11bd991383835be35e2f31739d649
26 -DIST ruby-2.5.5.tar.xz 11459832 BLAKE2B ced1105a87e7df8f82a65ca8d1d329d5a9d110d2f3f88b27a79262c4ac1484dda16d8646c0c03f18c1bb25f8b154075eb03a0614355ec62f677c2fa56ab3c956 SHA512 06b1d58536ebfacb7b56c1e6ed4b8ab816fadc4f48c845a452554cd262e7908199a30e5793f3cbaec2db56a8803aa5c6089abf7bf06c8fc47867e97870b7dfec
27 DIST ruby-2.5.6.tar.xz 11323612 BLAKE2B 5db6d573089a9fba95a1027891a0116c14d495b342ca8f055bd1ad55942f2a15a65a61cc1a0f6f249cd10fe2f6161f3ab0066a6dbce8e480e55b76ca5bdb5cd9 SHA512 4fe5f8bad5d320f8f17b02ce15afee341e7b0074efcfd98d8944e0cb7c448e0660c4553dd5c0328ee3b49fea3247642f85c60bdce431ed57f58b6326dfd48ee1
28 -DIST ruby-2.6.2.tar.xz 11889840 BLAKE2B 817919c078869c2ad8d5c9d8c8b7ee77e8b0e3339c2ef662a94a666a859f762fa63c6f8534027abd368e91fe4e3e1fe68fa984cbf12f76cff8c0c66f0114914f SHA512 13f7d7b483a037378eac4bf4bebddc21d69f4e19e6bbb397dd53e7518037ae9a3aa5b41fc20bf1fe410803c6efc3a6a65a65af47648d3a93713f75cfe885326a
29 DIST ruby-2.6.3.tar.xz 11904360 BLAKE2B 8113e5a19b967cdf995a3c8d3c83aeab3bf89e975d3b039c64259e97f20dbe9ebd96ada093f9d330516d16ef78bb0ecbbac8f3facd467aa13f1f70b23b992f82 SHA512 959a613f5cf5b3185a1d7a7ba0e1921166b3930f30461b391b1c9fcfe396f56dc3c736123dfc7b4e72c32a97dc5a1eb1fd7f09bcc3793a3c5526f6644ba421c8
30 DIST ruby-2.6.4.tar.xz 11727940 BLAKE2B abeff89d50612d6426e1dc5fd7c15c83ef9714ddb38c64ed14bff6331c619b0a55d4a64bff49177576c3fae8cfcee30127e808f49d11b3e64a2230a043e16bd3 SHA512 930a4162fdb008d2446247908c14269fd13db4dc80bd2bb201a65a69c03f5933f97b4c5079ccd2a12db4934ff97b2debaa10a6c6f5c3060e55873f4397747eaa
31
32 diff --git a/dev-lang/ruby/ruby-2.4.6.ebuild b/dev-lang/ruby/ruby-2.4.6.ebuild
33 deleted file mode 100644
34 index 5702839e6bd..00000000000
35 --- a/dev-lang/ruby/ruby-2.4.6.ebuild
36 +++ /dev/null
37 @@ -1,230 +0,0 @@
38 -# Copyright 1999-2019 Gentoo Authors
39 -# Distributed under the terms of the GNU General Public License v2
40 -
41 -EAPI=7
42 -
43 -inherit autotools flag-o-matic multilib
44 -
45 -MY_P="${PN}-$(ver_cut 1-3)"
46 -S=${WORKDIR}/${MY_P}
47 -
48 -SLOT=$(ver_cut 1-2)
49 -MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
50 -RUBYVERSION=${SLOT}.0
51 -
52 -DESCRIPTION="An object-oriented scripting language"
53 -HOMEPAGE="https://www.ruby-lang.org/"
54 -SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz"
55 -
56 -LICENSE="|| ( Ruby-BSD BSD-2 )"
57 -KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
58 -IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
59 -
60 -RDEPEND="
61 - berkdb? ( sys-libs/db:= )
62 - gdbm? ( sys-libs/gdbm:= )
63 - jemalloc? ( dev-libs/jemalloc )
64 - ssl? (
65 - !libressl? ( dev-libs/openssl:0= )
66 - libressl? ( dev-libs/libressl )
67 - )
68 - socks5? ( >=net-proxy/dante-1.1.13 )
69 - tk? (
70 - dev-lang/tcl:0=[threads]
71 - dev-lang/tk:0=[threads]
72 - )
73 - dev-libs/libyaml
74 - virtual/libffi:=
75 - sys-libs/readline:0=
76 - sys-libs/zlib
77 - >=app-eselect/eselect-ruby-20161226
78 - !<dev-ruby/rdoc-3.9.4
79 - !<dev-ruby/rubygems-1.8.10-r1"
80 -
81 -DEPEND="${RDEPEND}"
82 -
83 -BUNDLED_GEMS="
84 - >=dev-ruby/did_you_mean-1.1.0:2.4[ruby_targets_ruby24]
85 - >=dev-ruby/minitest-5.10.1[ruby_targets_ruby24]
86 - >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby24]
87 - >=dev-ruby/power_assert-0.4.1[ruby_targets_ruby24]
88 - >=dev-ruby/rake-12.0.0[ruby_targets_ruby24]
89 - >=dev-ruby/test-unit-3.2.3[ruby_targets_ruby24]
90 - >=dev-ruby/xmlrpc-0.2.1[ruby_targets_ruby24]
91 -"
92 -
93 -PDEPEND="
94 - ${BUNDLED_GEMS}
95 - virtual/rubygems[ruby_targets_ruby24]
96 - >=dev-ruby/json-2.0.2[ruby_targets_ruby24]
97 - rdoc? ( >=dev-ruby/rdoc-5.1.0[ruby_targets_ruby24] )
98 - xemacs? ( app-xemacs/ruby-modes )"
99 -
100 -src_prepare() {
101 - eapply "${FILESDIR}"/${SLOT}/{002,005,009,012}*.patch
102 -
103 - einfo "Unbundling gems..."
104 - cd "$S"
105 - # Remove bundled gems that we will install via PDEPEND, bug
106 - # 539700. Use explicit version numbers to ensure rm fails when they
107 - # change so we can update dependencies accordingly.
108 - rm -f gems/{did_you_mean-1.1.0,minitest-5.10.1,net-telnet-0.1.1,power_assert-0.4.1,rake-12.0.0,test-unit-3.2.3,xmlrpc-0.2.1}.gem || die
109 -
110 - einfo "Removing bundled libraries..."
111 - rm -fr ext/fiddle/libffi-3.2.1 || die
112 -
113 - # Fix a hardcoded lib path in configure script
114 - sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
115 - configure.in || die "sed failed"
116 -
117 - eapply_user
118 -
119 - eautoreconf
120 -}
121 -
122 -src_configure() {
123 - local modules= myconf=
124 -
125 - # -fomit-frame-pointer makes ruby segfault, see bug #150413.
126 - filter-flags -fomit-frame-pointer
127 - # In many places aliasing rules are broken; play it safe
128 - # as it's risky with newer compilers to leave it as it is.
129 - append-flags -fno-strict-aliasing
130 - # SuperH needs this
131 - use sh && append-flags -mieee
132 -
133 - # Socks support via dante
134 - if use socks5 ; then
135 - # Socks support can't be disabled as long as SOCKS_SERVER is
136 - # set and socks library is present, so need to unset
137 - # SOCKS_SERVER in that case.
138 - unset SOCKS_SERVER
139 - fi
140 -
141 - # Increase GC_MALLOC_LIMIT if set (default is 8000000)
142 - if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
143 - append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
144 - fi
145 -
146 - # ipv6 hack, bug 168939. Needs --enable-ipv6.
147 - use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
148 -
149 - # Determine which modules *not* to build depending in the USE flags.
150 - if ! use berkdb ; then
151 - modules="${modules},dbm"
152 - fi
153 - if ! use gdbm ; then
154 - modules="${modules},gdbm"
155 - fi
156 - if ! use ssl ; then
157 - modules="${modules},openssl"
158 - fi
159 - if ! use tk ; then
160 - modules="${modules},tk"
161 - fi
162 -
163 - # Provide an empty LIBPATHENV because we disable rpath but we do not
164 - # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
165 - # #564272
166 - INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
167 - --program-suffix=${MY_SUFFIX} \
168 - --with-soname=ruby${MY_SUFFIX} \
169 - --docdir=${EPREFIX}/usr/share/doc/${P} \
170 - --enable-shared \
171 - --enable-pthread \
172 - --disable-rpath \
173 - --with-out-ext="${modules}" \
174 - $(use_with jemalloc jemalloc) \
175 - $(use_enable socks5 socks) \
176 - $(use_enable doc install-doc) \
177 - --enable-ipv6 \
178 - $(use_enable static-libs static) \
179 - $(use_enable static-libs install-static-library) \
180 - $(use_with static-libs static-linked-ext) \
181 - $(use_enable debug) \
182 - ${myconf} \
183 - --enable-option-checking=no \
184 - || die "econf failed"
185 -}
186 -
187 -src_compile() {
188 - emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
189 -}
190 -
191 -src_test() {
192 - emake -j1 V=1 test || die "make test failed"
193 -
194 - elog "Ruby's make test has been run. Ruby also ships with a make check"
195 - elog "that cannot be run until after ruby has been installed."
196 - elog
197 - if use rubytests; then
198 - elog "You have enabled rubytests, so they will be installed to"
199 - elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
200 - elog "than root, and you must place them into a writeable directory."
201 - elog "Then call: "
202 - elog
203 - elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
204 - else
205 - elog "Enable the rubytests USE flag to install the make check tests"
206 - fi
207 -}
208 -
209 -src_install() {
210 - # Remove the remaining bundled gems. We do this late in the process
211 - # since they are used during the build to e.g. create the
212 - # documentation.
213 - rm -rf ext/json || die
214 -
215 - # Ruby is involved in the install process, we don't want interference here.
216 - unset RUBYOPT
217 -
218 - local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
219 -
220 - LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
221 - RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
222 - for d in $(find "${S}/ext" -type d) ; do
223 - RUBYLIB="${RUBYLIB}:$d"
224 - done
225 - export LD_LIBRARY_PATH RUBYLIB
226 -
227 - emake V=1 DESTDIR="${D}" install || die "make install failed"
228 -
229 - # Remove installed rubygems and rdoc copy
230 - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
231 - rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
232 - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
233 - rm -rf "${ED}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
234 -
235 - if use doc; then
236 - make DESTDIR="${D}" install-doc || die "make install-doc failed"
237 - fi
238 -
239 - if use examples; then
240 - insinto /usr/share/doc/${PF}
241 - doins -r sample
242 - fi
243 -
244 - dodoc ChangeLog NEWS doc/NEWS* README* || die
245 -
246 - if use rubytests; then
247 - pushd test
248 - insinto /usr/share/${PN}-${SLOT}/test
249 - doins -r .
250 - popd
251 - fi
252 -}
253 -
254 -pkg_postinst() {
255 - if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
256 - eselect ruby set ruby${MY_SUFFIX}
257 - fi
258 -
259 - elog
260 - elog "To switch between available Ruby profiles, execute as root:"
261 - elog "\teselect ruby set ruby(23|24|...)"
262 - elog
263 -}
264 -
265 -pkg_postrm() {
266 - eselect ruby cleanup
267 -}
268
269 diff --git a/dev-lang/ruby/ruby-2.5.5.ebuild b/dev-lang/ruby/ruby-2.5.5.ebuild
270 deleted file mode 100644
271 index f316ccd5960..00000000000
272 --- a/dev-lang/ruby/ruby-2.5.5.ebuild
273 +++ /dev/null
274 @@ -1,225 +0,0 @@
275 -# Copyright 1999-2019 Gentoo Authors
276 -# Distributed under the terms of the GNU General Public License v2
277 -
278 -EAPI=7
279 -
280 -inherit autotools flag-o-matic multilib
281 -
282 -MY_P="${PN}-$(ver_cut 1-3)"
283 -S=${WORKDIR}/${MY_P}
284 -
285 -SLOT=$(ver_cut 1-2)
286 -MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
287 -RUBYVERSION=${SLOT}.0
288 -
289 -DESCRIPTION="An object-oriented scripting language"
290 -HOMEPAGE="https://www.ruby-lang.org/"
291 -SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz"
292 -
293 -LICENSE="|| ( Ruby-BSD BSD-2 )"
294 -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
295 -IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
296 -
297 -RDEPEND="
298 - berkdb? ( sys-libs/db:= )
299 - gdbm? ( sys-libs/gdbm:= )
300 - jemalloc? ( dev-libs/jemalloc )
301 - ssl? (
302 - !libressl? ( dev-libs/openssl:0= )
303 - libressl? ( dev-libs/libressl )
304 - )
305 - socks5? ( >=net-proxy/dante-1.1.13 )
306 - tk? (
307 - dev-lang/tcl:0=[threads]
308 - dev-lang/tk:0=[threads]
309 - )
310 - dev-libs/libyaml
311 - virtual/libffi:=
312 - sys-libs/readline:0=
313 - sys-libs/zlib
314 - >=app-eselect/eselect-ruby-20171225
315 -"
316 -
317 -DEPEND="${RDEPEND}"
318 -
319 -BUNDLED_GEMS="
320 - >=dev-ruby/did_you_mean-1.2.0:2.5[ruby_targets_ruby25]
321 - >=dev-ruby/minitest-5.10.3[ruby_targets_ruby25]
322 - >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby25]
323 - >=dev-ruby/power_assert-1.1.1[ruby_targets_ruby25]
324 - >=dev-ruby/rake-12.3.0[ruby_targets_ruby25]
325 - >=dev-ruby/test-unit-3.2.7[ruby_targets_ruby25]
326 - >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby25]
327 -"
328 -
329 -PDEPEND="
330 - ${BUNDLED_GEMS}
331 - virtual/rubygems[ruby_targets_ruby25]
332 - >=dev-ruby/json-2.0.2[ruby_targets_ruby25]
333 - rdoc? ( >=dev-ruby/rdoc-5.1.0[ruby_targets_ruby25] )
334 - xemacs? ( app-xemacs/ruby-modes )"
335 -
336 -src_prepare() {
337 - eapply "${FILESDIR}"/${SLOT}/{001,005,011}*.patch
338 -
339 - einfo "Unbundling gems..."
340 - cd "$S"
341 - # Remove bundled gems that we will install via PDEPEND, bug
342 - # 539700. Use explicit version numbers to ensure rm fails when they
343 - # change so we can update dependencies accordingly.
344 - 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
345 -
346 - einfo "Removing bundled libraries..."
347 - rm -fr ext/fiddle/libffi-3.2.1 || die
348 -
349 - eapply_user
350 -
351 - eautoreconf
352 -}
353 -
354 -src_configure() {
355 - local modules= myconf=
356 -
357 - # -fomit-frame-pointer makes ruby segfault, see bug #150413.
358 - filter-flags -fomit-frame-pointer
359 - # In many places aliasing rules are broken; play it safe
360 - # as it's risky with newer compilers to leave it as it is.
361 - append-flags -fno-strict-aliasing
362 - # SuperH needs this
363 - use sh && append-flags -mieee
364 -
365 - # Socks support via dante
366 - if use socks5 ; then
367 - # Socks support can't be disabled as long as SOCKS_SERVER is
368 - # set and socks library is present, so need to unset
369 - # SOCKS_SERVER in that case.
370 - unset SOCKS_SERVER
371 - fi
372 -
373 - # Increase GC_MALLOC_LIMIT if set (default is 8000000)
374 - if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
375 - append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
376 - fi
377 -
378 - # ipv6 hack, bug 168939. Needs --enable-ipv6.
379 - use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
380 -
381 - # Determine which modules *not* to build depending in the USE flags.
382 - if ! use berkdb ; then
383 - modules="${modules},dbm"
384 - fi
385 - if ! use gdbm ; then
386 - modules="${modules},gdbm"
387 - fi
388 - if ! use ssl ; then
389 - modules="${modules},openssl"
390 - fi
391 - if ! use tk ; then
392 - modules="${modules},tk"
393 - fi
394 -
395 - # Provide an empty LIBPATHENV because we disable rpath but we do not
396 - # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
397 - # #564272
398 - INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
399 - --program-suffix=${MY_SUFFIX} \
400 - --with-soname=ruby${MY_SUFFIX} \
401 - --docdir=${EPREFIX}/usr/share/doc/${P} \
402 - --enable-shared \
403 - --enable-pthread \
404 - --disable-rpath \
405 - --with-out-ext="${modules}" \
406 - $(use_with jemalloc jemalloc) \
407 - $(use_enable socks5 socks) \
408 - $(use_enable doc install-doc) \
409 - --enable-ipv6 \
410 - $(use_enable static-libs static) \
411 - $(use_enable static-libs install-static-library) \
412 - $(use_with static-libs static-linked-ext) \
413 - $(use_enable debug) \
414 - ${myconf} \
415 - --enable-option-checking=no \
416 - || die "econf failed"
417 -}
418 -
419 -src_compile() {
420 - emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
421 -}
422 -
423 -src_test() {
424 - emake -j1 V=1 test || die "make test failed"
425 -
426 - elog "Ruby's make test has been run. Ruby also ships with a make check"
427 - elog "that cannot be run until after ruby has been installed."
428 - elog
429 - if use rubytests; then
430 - elog "You have enabled rubytests, so they will be installed to"
431 - elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
432 - elog "than root, and you must place them into a writeable directory."
433 - elog "Then call: "
434 - elog
435 - elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
436 - else
437 - elog "Enable the rubytests USE flag to install the make check tests"
438 - fi
439 -}
440 -
441 -src_install() {
442 - # Remove the remaining bundled gems. We do this late in the process
443 - # since they are used during the build to e.g. create the
444 - # documentation.
445 - rm -rf ext/json || die
446 -
447 - # Ruby is involved in the install process, we don't want interference here.
448 - unset RUBYOPT
449 -
450 - local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
451 -
452 - LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
453 - RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
454 - for d in $(find "${S}/ext" -type d) ; do
455 - RUBYLIB="${RUBYLIB}:$d"
456 - done
457 - export LD_LIBRARY_PATH RUBYLIB
458 -
459 - emake V=1 DESTDIR="${D}" install || die "make install failed"
460 -
461 - # Remove installed rubygems and rdoc copy
462 - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
463 - rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
464 - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
465 - rm -rf "${ED}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
466 -
467 - if use doc; then
468 - make DESTDIR="${D}" install-doc || die "make install-doc failed"
469 - fi
470 -
471 - if use examples; then
472 - insinto /usr/share/doc/${PF}
473 - doins -r sample
474 - fi
475 -
476 - dodoc ChangeLog NEWS doc/NEWS* README* || die
477 -
478 - if use rubytests; then
479 - pushd test
480 - insinto /usr/share/${PN}-${SLOT}/test
481 - doins -r .
482 - popd
483 - fi
484 -}
485 -
486 -pkg_postinst() {
487 - if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
488 - eselect ruby set ruby${MY_SUFFIX}
489 - fi
490 -
491 - elog
492 - elog "To switch between available Ruby profiles, execute as root:"
493 - elog "\teselect ruby set ruby(23|24|...)"
494 - elog
495 -}
496 -
497 -pkg_postrm() {
498 - eselect ruby cleanup
499 -}
500
501 diff --git a/dev-lang/ruby/ruby-2.6.2.ebuild b/dev-lang/ruby/ruby-2.6.2.ebuild
502 deleted file mode 100644
503 index 6eec8d83e2a..00000000000
504 --- a/dev-lang/ruby/ruby-2.6.2.ebuild
505 +++ /dev/null
506 @@ -1,237 +0,0 @@
507 -# Copyright 1999-2019 Gentoo Authors
508 -# Distributed under the terms of the GNU General Public License v2
509 -
510 -EAPI=7
511 -
512 -inherit autotools flag-o-matic multilib
513 -
514 -MY_P="${PN}-$(ver_cut 1-3)"
515 -S=${WORKDIR}/${MY_P}
516 -
517 -SLOT=$(ver_cut 1-2)
518 -MY_SUFFIX=$(ver_rs 1 '' ${SLOT})
519 -RUBYVERSION=${SLOT}.0
520 -
521 -DESCRIPTION="An object-oriented scripting language"
522 -HOMEPAGE="https://www.ruby-lang.org/"
523 -SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.xz"
524 -
525 -LICENSE="|| ( Ruby-BSD BSD-2 )"
526 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
527 -IUSE="berkdb debug doc examples gdbm ipv6 jemalloc jit libressl +rdoc rubytests socks5 +ssl static-libs tk xemacs"
528 -
529 -RDEPEND="
530 - berkdb? ( sys-libs/db:= )
531 - gdbm? ( sys-libs/gdbm:= )
532 - jemalloc? ( dev-libs/jemalloc )
533 - jit? ( || ( sys-devel/gcc:* sys-devel/clang:* ) )
534 - ssl? (
535 - !libressl? ( dev-libs/openssl:0= )
536 - libressl? ( dev-libs/libressl )
537 - )
538 - socks5? ( >=net-proxy/dante-1.1.13 )
539 - tk? (
540 - dev-lang/tcl:0=[threads]
541 - dev-lang/tk:0=[threads]
542 - )
543 - dev-libs/libyaml
544 - virtual/libffi:=
545 - sys-libs/readline:0=
546 - sys-libs/zlib
547 - >=app-eselect/eselect-ruby-20171225
548 -"
549 -
550 -DEPEND="${RDEPEND}"
551 -
552 -BUNDLED_GEMS="
553 - >=dev-ruby/did_you_mean-1.2.1[ruby_targets_ruby26]
554 - >=dev-ruby/minitest-5.11.3[ruby_targets_ruby26]
555 - >=dev-ruby/net-telnet-0.2.0[ruby_targets_ruby26]
556 - >=dev-ruby/power_assert-1.1.3[ruby_targets_ruby26]
557 - >=dev-ruby/rake-12.3.2[ruby_targets_ruby26]
558 - >=dev-ruby/test-unit-3.2.9[ruby_targets_ruby26]
559 - >=dev-ruby/xmlrpc-0.3.0[ruby_targets_ruby26]
560 -"
561 -
562 -PDEPEND="
563 - ${BUNDLED_GEMS}
564 - virtual/rubygems[ruby_targets_ruby26]
565 - >=dev-ruby/bundler-1.17.2[ruby_targets_ruby26]
566 - >=dev-ruby/json-2.0.2[ruby_targets_ruby26]
567 - rdoc? ( >=dev-ruby/rdoc-5.1.0[ruby_targets_ruby26] )
568 - xemacs? ( app-xemacs/ruby-modes )"
569 -
570 -src_prepare() {
571 - # 005 does not compile bigdecimal and is questionable because it
572 - # compiles ruby in a non-standard way, may be dropped
573 - eapply "${FILESDIR}"/2.6/010*.patch
574 -
575 - einfo "Unbundling gems..."
576 - cd "$S"
577 - # Remove bundled gems that we will install via PDEPEND, bug
578 - # 539700.
579 - rm -fr gems/* || die
580 -
581 - einfo "Removing bundled libraries..."
582 - rm -fr ext/fiddle/libffi-3.2.1 || die
583 -
584 - eapply_user
585 -
586 - eautoreconf
587 -}
588 -
589 -src_configure() {
590 - local modules= myconf=
591 -
592 - # -fomit-frame-pointer makes ruby segfault, see bug #150413.
593 - filter-flags -fomit-frame-pointer
594 - # In many places aliasing rules are broken; play it safe
595 - # as it's risky with newer compilers to leave it as it is.
596 - append-flags -fno-strict-aliasing
597 - # SuperH needs this
598 - use sh && append-flags -mieee
599 -
600 - # Socks support via dante
601 - if use socks5 ; then
602 - # Socks support can't be disabled as long as SOCKS_SERVER is
603 - # set and socks library is present, so need to unset
604 - # SOCKS_SERVER in that case.
605 - unset SOCKS_SERVER
606 - fi
607 -
608 - # Increase GC_MALLOC_LIMIT if set (default is 8000000)
609 - if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
610 - append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
611 - fi
612 -
613 - # ipv6 hack, bug 168939. Needs --enable-ipv6.
614 - use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
615 -
616 - # Determine which modules *not* to build depending in the USE flags.
617 - if ! use berkdb ; then
618 - modules="${modules},dbm"
619 - fi
620 - if ! use gdbm ; then
621 - modules="${modules},gdbm"
622 - fi
623 - if ! use ssl ; then
624 - modules="${modules},openssl"
625 - fi
626 - if ! use tk ; then
627 - modules="${modules},tk"
628 - fi
629 -
630 - # Provide an empty LIBPATHENV because we disable rpath but we do not
631 - # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
632 - # #564272
633 - INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
634 - --program-suffix=${MY_SUFFIX} \
635 - --with-soname=ruby${MY_SUFFIX} \
636 - --docdir=${EPREFIX}/usr/share/doc/${P} \
637 - --enable-shared \
638 - --enable-pthread \
639 - --disable-rpath \
640 - --with-out-ext="${modules}" \
641 - $(use_with jemalloc jemalloc) \
642 - $(use_enable jit jit-support ) \
643 - $(use_enable socks5 socks) \
644 - $(use_enable doc install-doc) \
645 - --enable-ipv6 \
646 - $(use_enable static-libs static) \
647 - $(use_enable static-libs install-static-library) \
648 - $(use_with static-libs static-linked-ext) \
649 - $(use_enable debug) \
650 - ${myconf} \
651 - --enable-option-checking=no \
652 - || die "econf failed"
653 -
654 - # Makefile is broken because it lacks -ldl
655 - rm -rf ext/-test-/popen_deadlock || die
656 -}
657 -
658 -src_compile() {
659 - emake V=1 EXTLDFLAGS="${LDFLAGS}" MJIT_CFLAGS="${CFLAGS}" MJIT_OPTFLAGS="" MJIT_DEBUGFLAGS="" || die "emake failed"
660 -}
661 -
662 -src_test() {
663 - emake -j1 V=1 test || die "make test failed"
664 -
665 - elog "Ruby's make test has been run. Ruby also ships with a make check"
666 - elog "that cannot be run until after ruby has been installed."
667 - elog
668 - if use rubytests; then
669 - elog "You have enabled rubytests, so they will be installed to"
670 - elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
671 - elog "than root, and you must place them into a writeable directory."
672 - elog "Then call: "
673 - elog
674 - elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
675 - else
676 - elog "Enable the rubytests USE flag to install the make check tests"
677 - fi
678 -}
679 -
680 -src_install() {
681 - # Remove the remaining bundled gems. We do this late in the process
682 - # since they are used during the build to e.g. create the
683 - # documentation.
684 - rm -rf ext/json || die
685 - rm -rf lib/bundler* lib/rdoc/rdoc.gemspec || die
686 -
687 - # Ruby is involved in the install process, we don't want interference here.
688 - unset RUBYOPT
689 -
690 - local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
691 -
692 - LD_LIBRARY_PATH="${S}:${ED}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
693 - RUBYLIB="${S}:${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
694 - for d in $(find "${S}/ext" -type d) ; do
695 - RUBYLIB="${RUBYLIB}:$d"
696 - done
697 - export LD_LIBRARY_PATH RUBYLIB
698 -
699 - # Create directory for the default gems
700 - local gem_home="${EPREFIX}/usr/$(get_libdir)/ruby/gems/${RUBYVERSION}"
701 - mkdir -p "${D}/${gem_home}" || die "mkdir gem home failed"
702 -
703 - emake V=1 DESTDIR="${D}" GEM_DESTDIR=${gem_home} install || die "make install failed"
704 -
705 - # Remove installed rubygems and rdoc copy
706 - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
707 - rm -rf "${ED}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
708 - rm -rf "${ED}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
709 - rm -rf "${ED}/usr/bin/"{bundle,bundler,ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
710 -
711 - if use doc; then
712 - emake DESTDIR="${D}" GEM_DESTDIR=${gem_home} install-doc || die "make install-doc failed"
713 - fi
714 -
715 - if use examples; then
716 - insinto /usr/share/doc/${PF}
717 - doins -r sample
718 - fi
719 -
720 - dodoc ChangeLog NEWS doc/NEWS* README* || die
721 -
722 - if use rubytests; then
723 - pushd test
724 - insinto /usr/share/${PN}-${SLOT}/test
725 - doins -r .
726 - popd
727 - fi
728 -}
729 -
730 -pkg_postinst() {
731 - if [[ ! -n $(readlink "${EROOT}"/usr/bin/ruby) ]] ; then
732 - eselect ruby set ruby${MY_SUFFIX}
733 - fi
734 -
735 - elog
736 - elog "To switch between available Ruby profiles, execute as root:"
737 - elog "\teselect ruby set ruby(23|24|...)"
738 - elog
739 -}
740 -
741 -pkg_postrm() {
742 - eselect ruby cleanup
743 -}