1 |
commit: 565be42bbba57bbb96fd78389a902771d107c768 |
2 |
Author: Aric Belsito <lluixhi <AT> gmail <DOT> com> |
3 |
AuthorDate: Thu Feb 9 19:56:33 2017 +0000 |
4 |
Commit: Aric Belsito <lluixhi <AT> gmail <DOT> com> |
5 |
CommitDate: Thu Feb 9 19:56:33 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=565be42b |
7 |
|
8 |
dev-lang/ruby: Remove |
9 |
|
10 |
ruby-2.0.x is no longer in ::gentoo |
11 |
|
12 |
dev-lang/ruby/Manifest | 8 - |
13 |
dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch | 11 -- |
14 |
dev-lang/ruby/metadata.xml | 25 --- |
15 |
dev-lang/ruby/ruby-2.0.0_p647-r1.ebuild | 231 ------------------------- |
16 |
dev-lang/ruby/ruby-2.0.0_p648.ebuild | 231 ------------------------- |
17 |
5 files changed, 506 deletions(-) |
18 |
|
19 |
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest |
20 |
deleted file mode 100644 |
21 |
index afccef0..0000000 |
22 |
--- a/dev-lang/ruby/Manifest |
23 |
+++ /dev/null |
24 |
@@ -1,8 +0,0 @@ |
25 |
-AUX ruby-add-asm_ioctl_h.patch 338 SHA256 82fa2b35c1a1ae05aaf7e849bd7b6068951f65609a35de1f88fcf83f254666f2 SHA512 eba8f362cda01fed4d38515a1ce03e4c462ddb6adf686de76b3d91bc5d5484661b7be5a9080624a9fa87fffff27b65c746d7ec94d4e27dbef2f9b321fc286be1 WHIRLPOOL 9c1ac98344cd44a3f9523e7dc723ab6dceab3c1c569d2656d03fdbe7677207bbe52ed5436dcd405c33c16d623333219aa6492dcb76d94b0cf833305589312ae2 |
26 |
-DIST ruby-2.0.0-p647.tar.xz 8301008 SHA256 9f793880df1209ea4e5c10ee9d8ef79caa0e73ee769f745f1c191505255e2847 SHA512 38fd2ad631588a0e8adf9a7ae01cb5274eca4fd794c5ed7030e5fae9e53cd8920eaac9d388c73b844a154c7eb56fa6fed8e2ee5df5617efd624b6a568ea4953b WHIRLPOOL c8ec19ed900e6578f1f6e08d1e2a5c015cfa6e81379fb0437a1167ffb8bc56561d02b4b5b35a674039f7adcd2c43b222b89e139cb0ea702e8bfec886872c8e6a |
27 |
-DIST ruby-2.0.0-p648.tar.xz 8303584 SHA256 22fe97739110ba9171b13fc4dcd1a92e767f16769de3593ee41ef1283d218402 SHA512 95df515d37f04193eaceaded4a4f568f83041683349cd44767803f77361a66533226d83eac6586ac894ae61d79bd36ce047f951aed43f9a8356dbb3244280774 WHIRLPOOL ef78b838d061b1707219453a70c8b4a503d46e9f95797007555943a837de21f22c0c93039c75172d7df4fe9b5eca38472ee7177f98785cb5993c7e80140a1d27 |
28 |
-DIST ruby-patches-2.0.0_p647-r1.tar.bz2 3341 SHA256 7d82403fed6216baed59ac1fbba888e2b9a4a9cb742ffd01531753bae07ab6b8 SHA512 40d07275a391df3e0a7a0c2705913c8120a548e223032dc39993f8f873c8d0639646cf728dc95f1400352a13766623ac6d69a1b1ff03183df6fabf32946dd7a6 WHIRLPOOL ed7ea6b1c1fd3570ea85b885f7455d8273cff2a9db2540c9e89faca867bd5eed2b4de52c7d21a96bb33ae0beedce113c68bb6c8cee4688650ff5169bd9c265fd |
29 |
-DIST ruby-patches-2.0.0_p648.tar.bz2 3341 SHA256 7d82403fed6216baed59ac1fbba888e2b9a4a9cb742ffd01531753bae07ab6b8 SHA512 40d07275a391df3e0a7a0c2705913c8120a548e223032dc39993f8f873c8d0639646cf728dc95f1400352a13766623ac6d69a1b1ff03183df6fabf32946dd7a6 WHIRLPOOL ed7ea6b1c1fd3570ea85b885f7455d8273cff2a9db2540c9e89faca867bd5eed2b4de52c7d21a96bb33ae0beedce113c68bb6c8cee4688650ff5169bd9c265fd |
30 |
-EBUILD ruby-2.0.0_p647-r1.ebuild 6412 SHA256 d5bfabf7ad24f4949309d1df34bed8c6bd298c0824ca75911a1e3845c7f542d6 SHA512 4de5183f102cd7444e3b1be8d08f7668655459d9dd1f41788e68888b1f37695bfb98e38bbac5f7495c9aa5e6b14f0482fa378ee41f056767c3c25c27b86344d4 WHIRLPOOL e8f5d0889c507e9bdf6f4003d405a5b44b26f5f5627646a8e16f1f59e313f7fcee39ef4f47cee8b95c5abd73aca7ad1e9c2bc061b275a7fdbeca1a76f644f136 |
31 |
-EBUILD ruby-2.0.0_p648.ebuild 6412 SHA256 d5bfabf7ad24f4949309d1df34bed8c6bd298c0824ca75911a1e3845c7f542d6 SHA512 4de5183f102cd7444e3b1be8d08f7668655459d9dd1f41788e68888b1f37695bfb98e38bbac5f7495c9aa5e6b14f0482fa378ee41f056767c3c25c27b86344d4 WHIRLPOOL e8f5d0889c507e9bdf6f4003d405a5b44b26f5f5627646a8e16f1f59e313f7fcee39ef4f47cee8b95c5abd73aca7ad1e9c2bc061b275a7fdbeca1a76f644f136 |
32 |
-MISC metadata.xml 882 SHA256 feab32eb8b2abb19f1771f3edeea5e30f881a439d2b6a5a4d4da9fd930c02ae4 SHA512 b4b426ee40a50f304f4e3db9245c6ef2877efb670fcd9c261e43fc1794956f38be69ede80f5951cc157ea95ef3bb52c1a6bbcf654962b8a42b2e19a1f7dfc435 WHIRLPOOL 2e31319568d5b7ff3df506d77e38f5eff0ffbbbcce69bdbb938fd333c229ce7e036a55c396ae27facff61d9a4f584bb01c391c6ef03955ef036f3b4b750ebce1 |
33 |
|
34 |
diff --git a/dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch b/dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch |
35 |
deleted file mode 100644 |
36 |
index 9fef9e8..0000000 |
37 |
--- a/dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch |
38 |
+++ /dev/null |
39 |
@@ -1,11 +0,0 @@ |
40 |
-diff -Nuar ruby-2.0.0-p353.orig/io.c ruby-2.0.0-p353/io.c |
41 |
---- ruby-2.0.0-p353.orig/io.c 2013-10-04 17:30:50.000000000 +0000 |
42 |
-+++ ruby-2.0.0-p353/io.c 2014-02-23 13:22:06.038406133 +0000 |
43 |
-@@ -19,6 +19,7 @@ |
44 |
- #include "id.h" |
45 |
- #include <ctype.h> |
46 |
- #include <errno.h> |
47 |
-+#include <asm/ioctl.h> |
48 |
- #include "ruby_atomic.h" |
49 |
- |
50 |
- #define free(x) xfree(x) |
51 |
|
52 |
diff --git a/dev-lang/ruby/metadata.xml b/dev-lang/ruby/metadata.xml |
53 |
deleted file mode 100644 |
54 |
index f5f5cf7..0000000 |
55 |
--- a/dev-lang/ruby/metadata.xml |
56 |
+++ /dev/null |
57 |
@@ -1,25 +0,0 @@ |
58 |
-<?xml version="1.0" encoding="UTF-8"?> |
59 |
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
60 |
-<pkgmetadata> |
61 |
- <maintainer type="project"> |
62 |
- <email>ruby@g.o</email> |
63 |
- <name>Gentoo Ruby Project</name> |
64 |
- </maintainer> |
65 |
- <use> |
66 |
- <flag name="rubytests"> |
67 |
- Install ruby tests that can only be run after ruby is installed |
68 |
- </flag> |
69 |
- <flag name="readline"> |
70 |
- Use the <pkg>sys-libs/readline</pkg> library to provide the |
71 |
- readline extension, used for instance by the irb tool. This flag |
72 |
- is meaningful only if the libedit USE flag is disabled. |
73 |
- |
74 |
- If neither libedit nor readline USE flags are enabled, the |
75 |
- readline extension will not be built (and irb will lose line |
76 |
- editing functionality). |
77 |
- </flag> |
78 |
- <flag name="rdoc"> |
79 |
- Install <pkg>dev-ruby/rdoc</pkg> after installing Ruby. |
80 |
- </flag> |
81 |
- </use> |
82 |
-</pkgmetadata> |
83 |
|
84 |
diff --git a/dev-lang/ruby/ruby-2.0.0_p647-r1.ebuild b/dev-lang/ruby/ruby-2.0.0_p647-r1.ebuild |
85 |
deleted file mode 100644 |
86 |
index a7c256d..0000000 |
87 |
--- a/dev-lang/ruby/ruby-2.0.0_p647-r1.ebuild |
88 |
+++ /dev/null |
89 |
@@ -1,231 +0,0 @@ |
90 |
-# Copyright 1999-2016 Gentoo Foundation |
91 |
-# Distributed under the terms of the GNU General Public License v2 |
92 |
-# $Id$ |
93 |
- |
94 |
-EAPI=5 |
95 |
- |
96 |
-#PATCHSET=1 |
97 |
- |
98 |
-inherit autotools eutils flag-o-matic multilib versionator |
99 |
- |
100 |
-RUBYPL=$(get_version_component_range 4) |
101 |
- |
102 |
-MY_P="${PN}-$(get_version_component_range 1-3)-${RUBYPL:-0}" |
103 |
-S=${WORKDIR}/${MY_P} |
104 |
- |
105 |
-SLOT=$(get_version_component_range 1-2) |
106 |
-MY_SUFFIX=$(delete_version_separator 1 ${SLOT}) |
107 |
-RUBYVERSION=2.0.0 |
108 |
- |
109 |
-if [[ -n ${PATCHSET} ]]; then |
110 |
- if [[ ${PVR} == ${PV} ]]; then |
111 |
- PATCHSET="${PV}-r0.${PATCHSET}" |
112 |
- else |
113 |
- PATCHSET="${PVR}.${PATCHSET}" |
114 |
- fi |
115 |
-else |
116 |
- PATCHSET="${PVR}" |
117 |
-fi |
118 |
- |
119 |
-DESCRIPTION="An object-oriented scripting language" |
120 |
-HOMEPAGE="http://www.ruby-lang.org/" |
121 |
-SRC_URI="mirror://ruby/2.0/${MY_P}.tar.xz |
122 |
- https://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2" |
123 |
- |
124 |
-LICENSE="|| ( Ruby-BSD BSD-2 )" |
125 |
-KEYWORDS="amd64 arm ~mips ppc x86" |
126 |
-IUSE="berkdb debug doc examples gdbm ipv6 +rdoc rubytests socks5 ssl xemacs ncurses +readline cpu_flags_x86_sse2" |
127 |
- |
128 |
-RDEPEND=" |
129 |
- berkdb? ( sys-libs/db:= ) |
130 |
- gdbm? ( sys-libs/gdbm ) |
131 |
- ssl? ( dev-libs/openssl:0 ) |
132 |
- socks5? ( >=net-proxy/dante-1.1.13 ) |
133 |
- ncurses? ( sys-libs/ncurses:0= ) |
134 |
- readline? ( sys-libs/readline:0 ) |
135 |
- dev-libs/libyaml |
136 |
- virtual/libffi |
137 |
- sys-libs/zlib |
138 |
- >=app-eselect/eselect-ruby-20100402 |
139 |
- !<dev-ruby/rdoc-3.9.4 |
140 |
- !<dev-ruby/rubygems-1.8.10-r1" |
141 |
- |
142 |
-DEPEND="${RDEPEND}" |
143 |
-PDEPEND=" |
144 |
- virtual/rubygems[ruby_targets_ruby20] |
145 |
- >=dev-ruby/json-1.7.7[ruby_targets_ruby20] |
146 |
- >=dev-ruby/rake-0.9.6[ruby_targets_ruby20] |
147 |
- rdoc? ( >=dev-ruby/rdoc-4.0.0[ruby_targets_ruby20] ) |
148 |
- xemacs? ( app-xemacs/ruby-modes )" |
149 |
- |
150 |
-src_prepare() { |
151 |
- if use cpu_flags_x86_sse2 ; then |
152 |
- excluded_patches="012_no_forced_sse2.patch" |
153 |
- fi |
154 |
- |
155 |
- EPATCH_EXCLUDE="${excluded_patches}" EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \ |
156 |
- epatch "${WORKDIR}/patches" |
157 |
- |
158 |
- epatch "${FILESDIR}"/${PN}-add-asm_ioctl_h.patch |
159 |
- # We can no longer unbundle all of rake because rubygems now depends |
160 |
- # on this. We leave the actual rake code around to bootstrap |
161 |
- # rubygems, but remove the bits that would cause a file collision. |
162 |
- einfo "Unbundling gems..." |
163 |
- cd "$S" |
164 |
- rm -r \ |
165 |
- {bin,lib}/rake lib/rake.rb man/rake.1 \ |
166 |
- bin/gem || die "removal failed" |
167 |
- |
168 |
- # Fix a hardcoded lib path in configure script |
169 |
- sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \ |
170 |
- configure.in || die "sed failed" |
171 |
- |
172 |
- eautoreconf |
173 |
-} |
174 |
- |
175 |
-src_configure() { |
176 |
- local myconf= |
177 |
- |
178 |
- # The Tk module can no longer be built because the module code is no |
179 |
- # longer compatible with newer stable versions. |
180 |
- # https://bugs.gentoo.org/show_bug.cgi?id=500894 |
181 |
- local modules="tk" |
182 |
- |
183 |
- # -fomit-frame-pointer makes ruby segfault, see bug #150413. |
184 |
- filter-flags -fomit-frame-pointer |
185 |
- # In many places aliasing rules are broken; play it safe |
186 |
- # as it's risky with newer compilers to leave it as it is. |
187 |
- append-flags -fno-strict-aliasing |
188 |
- # SuperH needs this |
189 |
- use sh && append-flags -mieee |
190 |
- |
191 |
- # Socks support via dante |
192 |
- if use socks5 ; then |
193 |
- # Socks support can't be disabled as long as SOCKS_SERVER is |
194 |
- # set and socks library is present, so need to unset |
195 |
- # SOCKS_SERVER in that case. |
196 |
- unset SOCKS_SERVER |
197 |
- fi |
198 |
- |
199 |
- # Increase GC_MALLOC_LIMIT if set (default is 8000000) |
200 |
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then |
201 |
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}" |
202 |
- fi |
203 |
- |
204 |
- # ipv6 hack, bug 168939. Needs --enable-ipv6. |
205 |
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET" |
206 |
- |
207 |
- # Determine which modules *not* to build depending in the USE flags. |
208 |
- if ! use readline ; then |
209 |
- modules="${modules},readline" |
210 |
- fi |
211 |
- if ! use berkdb ; then |
212 |
- modules="${modules},dbm" |
213 |
- fi |
214 |
- if ! use gdbm ; then |
215 |
- modules="${modules},gdbm" |
216 |
- fi |
217 |
- if ! use ssl ; then |
218 |
- modules="${modules},openssl" |
219 |
- fi |
220 |
- if ! use ncurses ; then |
221 |
- modules="${modules},curses" |
222 |
- fi |
223 |
- |
224 |
- INSTALL="${EPREFIX}/usr/bin/install -c" econf \ |
225 |
- --program-suffix=${MY_SUFFIX} \ |
226 |
- --with-soname=ruby${MY_SUFFIX} \ |
227 |
- --docdir=${EPREFIX}/usr/share/doc/${P} \ |
228 |
- --enable-shared \ |
229 |
- --enable-pthread \ |
230 |
- --disable-rpath \ |
231 |
- --with-out-ext="${modules}" \ |
232 |
- $(use_enable socks5 socks) \ |
233 |
- $(use_enable doc install-doc) \ |
234 |
- --enable-ipv6 \ |
235 |
- $(use_enable debug) \ |
236 |
- ${myconf} \ |
237 |
- --enable-option-checking=no \ |
238 |
- || die "econf failed" |
239 |
-} |
240 |
- |
241 |
-src_compile() { |
242 |
- emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed" |
243 |
-} |
244 |
- |
245 |
-src_test() { |
246 |
- emake -j1 V=1 test || die "make test failed" |
247 |
- |
248 |
- elog "Ruby's make test has been run. Ruby also ships with a make check" |
249 |
- elog "that cannot be run until after ruby has been installed." |
250 |
- elog |
251 |
- if use rubytests; then |
252 |
- elog "You have enabled rubytests, so they will be installed to" |
253 |
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other" |
254 |
- elog "than root, and you must place them into a writeable directory." |
255 |
- elog "Then call: " |
256 |
- elog |
257 |
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb" |
258 |
- else |
259 |
- elog "Enable the rubytests USE flag to install the make check tests" |
260 |
- fi |
261 |
-} |
262 |
- |
263 |
-src_install() { |
264 |
- # Remove the remaining bundled gems. We do this late in the process |
265 |
- # since they are used during the build to e.g. create the |
266 |
- # documentation. |
267 |
- rm -rf ext/json || die |
268 |
- |
269 |
- # Ruby is involved in the install process, we don't want interference here. |
270 |
- unset RUBYOPT |
271 |
- |
272 |
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby) |
273 |
- |
274 |
- LD_LIBRARY_PATH="${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}" |
275 |
- RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}" |
276 |
- for d in $(find "${S}/ext" -type d) ; do |
277 |
- RUBYLIB="${RUBYLIB}:$d" |
278 |
- done |
279 |
- export LD_LIBRARY_PATH RUBYLIB |
280 |
- |
281 |
- emake V=1 DESTDIR="${D}" install || die "make install failed" |
282 |
- |
283 |
- # Remove installed rubygems copy |
284 |
- rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed" |
285 |
- rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed" |
286 |
- rm -r "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed" |
287 |
- |
288 |
- if use doc; then |
289 |
- make DESTDIR="${D}" install-doc || die "make install-doc failed" |
290 |
- fi |
291 |
- |
292 |
- if use examples; then |
293 |
- insinto /usr/share/doc/${PF} |
294 |
- doins -r sample |
295 |
- fi |
296 |
- |
297 |
- dodoc ChangeLog NEWS doc/NEWS* README* || die |
298 |
- |
299 |
- if use rubytests; then |
300 |
- pushd test |
301 |
- insinto /usr/share/${PN}-${SLOT}/test |
302 |
- doins -r . |
303 |
- popd |
304 |
- fi |
305 |
-} |
306 |
- |
307 |
-pkg_postinst() { |
308 |
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then |
309 |
- eselect ruby set ruby${MY_SUFFIX} |
310 |
- fi |
311 |
- |
312 |
- elog |
313 |
- elog "To switch between available Ruby profiles, execute as root:" |
314 |
- elog "\teselect ruby set ruby(19|20|...)" |
315 |
- elog |
316 |
-} |
317 |
- |
318 |
-pkg_postrm() { |
319 |
- eselect ruby cleanup |
320 |
-} |
321 |
|
322 |
diff --git a/dev-lang/ruby/ruby-2.0.0_p648.ebuild b/dev-lang/ruby/ruby-2.0.0_p648.ebuild |
323 |
deleted file mode 100644 |
324 |
index a7c256d..0000000 |
325 |
--- a/dev-lang/ruby/ruby-2.0.0_p648.ebuild |
326 |
+++ /dev/null |
327 |
@@ -1,231 +0,0 @@ |
328 |
-# Copyright 1999-2016 Gentoo Foundation |
329 |
-# Distributed under the terms of the GNU General Public License v2 |
330 |
-# $Id$ |
331 |
- |
332 |
-EAPI=5 |
333 |
- |
334 |
-#PATCHSET=1 |
335 |
- |
336 |
-inherit autotools eutils flag-o-matic multilib versionator |
337 |
- |
338 |
-RUBYPL=$(get_version_component_range 4) |
339 |
- |
340 |
-MY_P="${PN}-$(get_version_component_range 1-3)-${RUBYPL:-0}" |
341 |
-S=${WORKDIR}/${MY_P} |
342 |
- |
343 |
-SLOT=$(get_version_component_range 1-2) |
344 |
-MY_SUFFIX=$(delete_version_separator 1 ${SLOT}) |
345 |
-RUBYVERSION=2.0.0 |
346 |
- |
347 |
-if [[ -n ${PATCHSET} ]]; then |
348 |
- if [[ ${PVR} == ${PV} ]]; then |
349 |
- PATCHSET="${PV}-r0.${PATCHSET}" |
350 |
- else |
351 |
- PATCHSET="${PVR}.${PATCHSET}" |
352 |
- fi |
353 |
-else |
354 |
- PATCHSET="${PVR}" |
355 |
-fi |
356 |
- |
357 |
-DESCRIPTION="An object-oriented scripting language" |
358 |
-HOMEPAGE="http://www.ruby-lang.org/" |
359 |
-SRC_URI="mirror://ruby/2.0/${MY_P}.tar.xz |
360 |
- https://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2" |
361 |
- |
362 |
-LICENSE="|| ( Ruby-BSD BSD-2 )" |
363 |
-KEYWORDS="amd64 arm ~mips ppc x86" |
364 |
-IUSE="berkdb debug doc examples gdbm ipv6 +rdoc rubytests socks5 ssl xemacs ncurses +readline cpu_flags_x86_sse2" |
365 |
- |
366 |
-RDEPEND=" |
367 |
- berkdb? ( sys-libs/db:= ) |
368 |
- gdbm? ( sys-libs/gdbm ) |
369 |
- ssl? ( dev-libs/openssl:0 ) |
370 |
- socks5? ( >=net-proxy/dante-1.1.13 ) |
371 |
- ncurses? ( sys-libs/ncurses:0= ) |
372 |
- readline? ( sys-libs/readline:0 ) |
373 |
- dev-libs/libyaml |
374 |
- virtual/libffi |
375 |
- sys-libs/zlib |
376 |
- >=app-eselect/eselect-ruby-20100402 |
377 |
- !<dev-ruby/rdoc-3.9.4 |
378 |
- !<dev-ruby/rubygems-1.8.10-r1" |
379 |
- |
380 |
-DEPEND="${RDEPEND}" |
381 |
-PDEPEND=" |
382 |
- virtual/rubygems[ruby_targets_ruby20] |
383 |
- >=dev-ruby/json-1.7.7[ruby_targets_ruby20] |
384 |
- >=dev-ruby/rake-0.9.6[ruby_targets_ruby20] |
385 |
- rdoc? ( >=dev-ruby/rdoc-4.0.0[ruby_targets_ruby20] ) |
386 |
- xemacs? ( app-xemacs/ruby-modes )" |
387 |
- |
388 |
-src_prepare() { |
389 |
- if use cpu_flags_x86_sse2 ; then |
390 |
- excluded_patches="012_no_forced_sse2.patch" |
391 |
- fi |
392 |
- |
393 |
- EPATCH_EXCLUDE="${excluded_patches}" EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \ |
394 |
- epatch "${WORKDIR}/patches" |
395 |
- |
396 |
- epatch "${FILESDIR}"/${PN}-add-asm_ioctl_h.patch |
397 |
- # We can no longer unbundle all of rake because rubygems now depends |
398 |
- # on this. We leave the actual rake code around to bootstrap |
399 |
- # rubygems, but remove the bits that would cause a file collision. |
400 |
- einfo "Unbundling gems..." |
401 |
- cd "$S" |
402 |
- rm -r \ |
403 |
- {bin,lib}/rake lib/rake.rb man/rake.1 \ |
404 |
- bin/gem || die "removal failed" |
405 |
- |
406 |
- # Fix a hardcoded lib path in configure script |
407 |
- sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \ |
408 |
- configure.in || die "sed failed" |
409 |
- |
410 |
- eautoreconf |
411 |
-} |
412 |
- |
413 |
-src_configure() { |
414 |
- local myconf= |
415 |
- |
416 |
- # The Tk module can no longer be built because the module code is no |
417 |
- # longer compatible with newer stable versions. |
418 |
- # https://bugs.gentoo.org/show_bug.cgi?id=500894 |
419 |
- local modules="tk" |
420 |
- |
421 |
- # -fomit-frame-pointer makes ruby segfault, see bug #150413. |
422 |
- filter-flags -fomit-frame-pointer |
423 |
- # In many places aliasing rules are broken; play it safe |
424 |
- # as it's risky with newer compilers to leave it as it is. |
425 |
- append-flags -fno-strict-aliasing |
426 |
- # SuperH needs this |
427 |
- use sh && append-flags -mieee |
428 |
- |
429 |
- # Socks support via dante |
430 |
- if use socks5 ; then |
431 |
- # Socks support can't be disabled as long as SOCKS_SERVER is |
432 |
- # set and socks library is present, so need to unset |
433 |
- # SOCKS_SERVER in that case. |
434 |
- unset SOCKS_SERVER |
435 |
- fi |
436 |
- |
437 |
- # Increase GC_MALLOC_LIMIT if set (default is 8000000) |
438 |
- if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then |
439 |
- append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}" |
440 |
- fi |
441 |
- |
442 |
- # ipv6 hack, bug 168939. Needs --enable-ipv6. |
443 |
- use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET" |
444 |
- |
445 |
- # Determine which modules *not* to build depending in the USE flags. |
446 |
- if ! use readline ; then |
447 |
- modules="${modules},readline" |
448 |
- fi |
449 |
- if ! use berkdb ; then |
450 |
- modules="${modules},dbm" |
451 |
- fi |
452 |
- if ! use gdbm ; then |
453 |
- modules="${modules},gdbm" |
454 |
- fi |
455 |
- if ! use ssl ; then |
456 |
- modules="${modules},openssl" |
457 |
- fi |
458 |
- if ! use ncurses ; then |
459 |
- modules="${modules},curses" |
460 |
- fi |
461 |
- |
462 |
- INSTALL="${EPREFIX}/usr/bin/install -c" econf \ |
463 |
- --program-suffix=${MY_SUFFIX} \ |
464 |
- --with-soname=ruby${MY_SUFFIX} \ |
465 |
- --docdir=${EPREFIX}/usr/share/doc/${P} \ |
466 |
- --enable-shared \ |
467 |
- --enable-pthread \ |
468 |
- --disable-rpath \ |
469 |
- --with-out-ext="${modules}" \ |
470 |
- $(use_enable socks5 socks) \ |
471 |
- $(use_enable doc install-doc) \ |
472 |
- --enable-ipv6 \ |
473 |
- $(use_enable debug) \ |
474 |
- ${myconf} \ |
475 |
- --enable-option-checking=no \ |
476 |
- || die "econf failed" |
477 |
-} |
478 |
- |
479 |
-src_compile() { |
480 |
- emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed" |
481 |
-} |
482 |
- |
483 |
-src_test() { |
484 |
- emake -j1 V=1 test || die "make test failed" |
485 |
- |
486 |
- elog "Ruby's make test has been run. Ruby also ships with a make check" |
487 |
- elog "that cannot be run until after ruby has been installed." |
488 |
- elog |
489 |
- if use rubytests; then |
490 |
- elog "You have enabled rubytests, so they will be installed to" |
491 |
- elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other" |
492 |
- elog "than root, and you must place them into a writeable directory." |
493 |
- elog "Then call: " |
494 |
- elog |
495 |
- elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb" |
496 |
- else |
497 |
- elog "Enable the rubytests USE flag to install the make check tests" |
498 |
- fi |
499 |
-} |
500 |
- |
501 |
-src_install() { |
502 |
- # Remove the remaining bundled gems. We do this late in the process |
503 |
- # since they are used during the build to e.g. create the |
504 |
- # documentation. |
505 |
- rm -rf ext/json || die |
506 |
- |
507 |
- # Ruby is involved in the install process, we don't want interference here. |
508 |
- unset RUBYOPT |
509 |
- |
510 |
- local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby) |
511 |
- |
512 |
- LD_LIBRARY_PATH="${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}" |
513 |
- RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}" |
514 |
- for d in $(find "${S}/ext" -type d) ; do |
515 |
- RUBYLIB="${RUBYLIB}:$d" |
516 |
- done |
517 |
- export LD_LIBRARY_PATH RUBYLIB |
518 |
- |
519 |
- emake V=1 DESTDIR="${D}" install || die "make install failed" |
520 |
- |
521 |
- # Remove installed rubygems copy |
522 |
- rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed" |
523 |
- rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed" |
524 |
- rm -r "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed" |
525 |
- |
526 |
- if use doc; then |
527 |
- make DESTDIR="${D}" install-doc || die "make install-doc failed" |
528 |
- fi |
529 |
- |
530 |
- if use examples; then |
531 |
- insinto /usr/share/doc/${PF} |
532 |
- doins -r sample |
533 |
- fi |
534 |
- |
535 |
- dodoc ChangeLog NEWS doc/NEWS* README* || die |
536 |
- |
537 |
- if use rubytests; then |
538 |
- pushd test |
539 |
- insinto /usr/share/${PN}-${SLOT}/test |
540 |
- doins -r . |
541 |
- popd |
542 |
- fi |
543 |
-} |
544 |
- |
545 |
-pkg_postinst() { |
546 |
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then |
547 |
- eselect ruby set ruby${MY_SUFFIX} |
548 |
- fi |
549 |
- |
550 |
- elog |
551 |
- elog "To switch between available Ruby profiles, execute as root:" |
552 |
- elog "\teselect ruby set ruby(19|20|...)" |
553 |
- elog |
554 |
-} |
555 |
- |
556 |
-pkg_postrm() { |
557 |
- eselect ruby cleanup |
558 |
-} |