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: Mon, 29 Jan 2018 08:47:45
Message-Id: 1517215586.bb747b2fd9350789380d9a8512efd9f4a9452b0a.graaff@gentoo
1 commit: bb747b2fd9350789380d9a8512efd9f4a9452b0a
2 Author: Hans de Graaff <graaff <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 29 08:44:09 2018 +0000
4 Commit: Hans de Graaff <graaff <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 29 08:46:26 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bb747b2f
7
8 dev-lang/ruby: cleanup vulnerable version, bug 641090
9
10 Package-Manager: Portage-2.3.19, Repoman-2.3.6
11
12 dev-lang/ruby/Manifest | 2 -
13 dev-lang/ruby/ruby-2.2.8.ebuild | 245 ----------------------------------------
14 2 files changed, 247 deletions(-)
15
16 diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
17 index 6a961e280f0..6221126b820 100644
18 --- a/dev-lang/ruby/Manifest
19 +++ b/dev-lang/ruby/Manifest
20 @@ -1,9 +1,7 @@
21 -DIST ruby-2.2.8.tar.xz 10520648 BLAKE2B 96c483786b1a7e0b1483c337a13fe7e07e740bb21b507b518e142dc9ac8cf19ba00c094b4357db4305c645d370d776269145b699ad11429aa56a0de78abfbf83 SHA512 e21004bee537f0c706f4ac9526507b414ddb6a8d721e8fad8d7fe88992a4f048eb5eb79f8d8b8af2a8b331dcfa74b560490218a1acb3532c2cdb4fb4909da3c9
22 DIST ruby-2.2.9.tar.xz 10511456 BLAKE2B aeb631c47def96e8dd19e4f7281ef95833d9d0cde0912ffccd341032d2be22d6eebf259b0926f248298a5a290fd4d99b7ec38e29b805c9d77d4f3f4481fc0edb SHA512 c4ef84cd00f72f60d6c168f0726d9d7e9573549c2bbae83893e1a9d5e64fc7938f4c9d50a47147b28b37cbf36263f95e10a810c0797bad941775a48d75a8c933
23 DIST ruby-2.3.6.tar.xz 11445628 BLAKE2B 052f09fef806581824b14196abecde7def7c4ebc922c8af75281fe26ec2a7a2a325d1702a382b29e91b302064ab55972b63430248813b24b591fe74b7bc18e30 SHA512 a09c8715097d16190ee17ee39e7a74438cefc9013add350217b7e3fb4d60aa9dcb30595adf832b0d67a5c45b1fe9d4effb767c995af2759420859f8d763c693a
24 DIST ruby-2.4.3.tar.xz 10040072 BLAKE2B 87ad9700312a104a60b079f4ef95804d2a9e01109e9fef6e83e593464f1d2c5077af54cbbaff6e0d25a925d05f513cade6c76f05960d9bcc1817bdee51ad4a0f SHA512 8bcf60c994a96787da5d743c66f5609a5a6d834d6d61243cdea7fd059197c3b10da43c99e5649be85e2f2329eedcbb1dd76e89ce3ac586be9056348f7449ed09
25 DIST ruby-2.5.0.tar.xz 11292472 BLAKE2B 852ce003a79d9d77e72928353382962440e99ed1d03558c89a928e8f4a582b27357ef63e3ef45f3b30009f7a95f356100941bd84151571ade3a88b2d0595f8ad SHA512 55714a33d7661fe8b432f73c34fd67b49699f8b79df1cbd680a74899124d31111ab0f444677672aac1ba725820182940d485efb2db0bf2bc96737c5d40c54578
26 -DIST ruby-patches-2.2.8.tar.bz2 5764 BLAKE2B f50729480a4231db51de7981acb04dafa09d5fde592cf4a824a6fefe8ae3189ab9e82857e7ca41f1bb32dff1c4057ac37badf971c1b8f2981189e13d42dd38d2 SHA512 296387ec7f2ff82ad55f147d8f9568de544403d286ad24bb60aca916215d7ff6e1d6aca5a31c00a1999504989cda2bbd3260cae96c18ba73f9ffdcfd6b2695bd
27 DIST ruby-patches-2.2.9.tar.bz2 5764 BLAKE2B f50729480a4231db51de7981acb04dafa09d5fde592cf4a824a6fefe8ae3189ab9e82857e7ca41f1bb32dff1c4057ac37badf971c1b8f2981189e13d42dd38d2 SHA512 296387ec7f2ff82ad55f147d8f9568de544403d286ad24bb60aca916215d7ff6e1d6aca5a31c00a1999504989cda2bbd3260cae96c18ba73f9ffdcfd6b2695bd
28 DIST ruby-patches-2.3.6.tar.bz2 3030 BLAKE2B 7c1e80ff0569a03672f53820c665933056b46bcf791c9132cb9f358f72df693749f02da65ca7469c3dd0f652d7dc7bfaa03dccd4eb900562361876023fb65b42 SHA512 54cc3f2bfd1967b8558736e5a5240b886a56b22defca5813f45b1f4dca9af169b4d59d60b327ec8411e824970ac6da1cec53cfc31833403742e9d6941e5a78f1
29 DIST ruby-patches-2.4.3.tar.bz2 2898 BLAKE2B e46502dbb0aa25c3d71693a6c04b433bd4de60f194cdd283517c4b08da190356885d9bca4a6765402088185fa8ec681156e8e8eecf0703a2c1ea7bb81adc0bf9 SHA512 d767d43c7df737469247e42e1c4205b8c6850c8f335a2869c884f145c037e9bab10492cc7cd2903f5c33e232cdc5bbdabb3e8da837c7bf420b9d58d1d33149ed
30
31 diff --git a/dev-lang/ruby/ruby-2.2.8.ebuild b/dev-lang/ruby/ruby-2.2.8.ebuild
32 deleted file mode 100644
33 index 250a6659e40..00000000000
34 --- a/dev-lang/ruby/ruby-2.2.8.ebuild
35 +++ /dev/null
36 @@ -1,245 +0,0 @@
37 -# Copyright 1999-2017 Gentoo Foundation
38 -# Distributed under the terms of the GNU General Public License v2
39 -
40 -EAPI=5
41 -
42 -#PATCHSET=1
43 -
44 -inherit autotools eutils flag-o-matic multilib versionator
45 -
46 -MY_P="${PN}-$(get_version_component_range 1-3)"
47 -S=${WORKDIR}/${MY_P}
48 -
49 -SLOT=$(get_version_component_range 1-2)
50 -MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
51 -RUBYVERSION=2.2.0
52 -
53 -if [[ -n ${PATCHSET} ]]; then
54 - if [[ ${PVR} == ${PV} ]]; then
55 - PATCHSET="${PV}-r0.${PATCHSET}"
56 - else
57 - PATCHSET="${PVR}.${PATCHSET}"
58 - fi
59 -else
60 - PATCHSET="${PVR}"
61 -fi
62 -
63 -DESCRIPTION="An object-oriented scripting language"
64 -HOMEPAGE="http://www.ruby-lang.org/"
65 -SRC_URI="mirror://ruby/2.2/${MY_P}.tar.xz
66 - https://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
67 -
68 -LICENSE="|| ( Ruby-BSD BSD-2 )"
69 -KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
70 -IUSE="berkdb debug doc examples gdbm ipv6 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs ncurses +readline"
71 -
72 -RDEPEND="
73 - berkdb? ( sys-libs/db:= )
74 - gdbm? ( sys-libs/gdbm )
75 - jemalloc? ( dev-libs/jemalloc )
76 - ssl? (
77 - !libressl? ( dev-libs/openssl:0= )
78 - libressl? ( dev-libs/libressl )
79 - )
80 - socks5? ( >=net-proxy/dante-1.1.13 )
81 - tk? (
82 - dev-lang/tcl:0=[threads]
83 - dev-lang/tk:0=[threads]
84 - )
85 - ncurses? ( sys-libs/ncurses:0= )
86 - readline? ( sys-libs/readline:0= )
87 - dev-libs/libyaml
88 - virtual/libffi
89 - sys-libs/zlib
90 - >=app-eselect/eselect-ruby-20141227
91 - !<dev-ruby/rdoc-3.9.4
92 - !<dev-ruby/rubygems-1.8.10-r1"
93 -
94 -DEPEND="${RDEPEND}"
95 -
96 -BUNDLED_GEMS="
97 - >=dev-ruby/minitest-5.4.3[ruby_targets_ruby22]
98 - >=dev-ruby/power_assert-0.2.2[ruby_targets_ruby22]
99 - >=dev-ruby/test-unit-3.0.8[ruby_targets_ruby22]
100 -"
101 -
102 -PDEPEND="
103 - ${BUNDLED_GEMS}
104 - virtual/rubygems[ruby_targets_ruby22]
105 - >=dev-ruby/json-1.8.1[ruby_targets_ruby22]
106 - >=dev-ruby/rake-0.9.6[ruby_targets_ruby22]
107 - rdoc? ( >=dev-ruby/rdoc-4.0.1[ruby_targets_ruby22] )
108 - xemacs? ( app-xemacs/ruby-modes )"
109 -
110 -src_prepare() {
111 - EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
112 - epatch "${WORKDIR}/patches"
113 -
114 - # We can no longer unbundle all of rake because rubygems now depends
115 - # on this. We leave the actual rake code around to bootstrap
116 - # rubygems, but remove the bits that would cause a file collision.
117 - einfo "Unbundling gems..."
118 - cd "$S"
119 - rm -rf \
120 - {bin,lib}/rake lib/rake.rb man/rake.1 \
121 - bin/gem || die "removal failed"
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 gems/{minitest-5.4.3,power_assert-0.2.2,test-unit-3.0.8}.gem || die
126 -
127 - # Fix a hardcoded lib path in configure script
128 - sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
129 - configure.in || die "sed failed"
130 -
131 - eautoreconf
132 -}
133 -
134 -src_configure() {
135 - local modules= myconf=
136 -
137 - # -fomit-frame-pointer makes ruby segfault, see bug #150413.
138 - filter-flags -fomit-frame-pointer
139 - # In many places aliasing rules are broken; play it safe
140 - # as it's risky with newer compilers to leave it as it is.
141 - append-flags -fno-strict-aliasing
142 - # SuperH needs this
143 - use sh && append-flags -mieee
144 -
145 - # Socks support via dante
146 - if use socks5 ; then
147 - # Socks support can't be disabled as long as SOCKS_SERVER is
148 - # set and socks library is present, so need to unset
149 - # SOCKS_SERVER in that case.
150 - unset SOCKS_SERVER
151 - fi
152 -
153 - # Increase GC_MALLOC_LIMIT if set (default is 8000000)
154 - if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
155 - append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
156 - fi
157 -
158 - # ipv6 hack, bug 168939. Needs --enable-ipv6.
159 - use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
160 -
161 - # Determine which modules *not* to build depending in the USE flags.
162 - if ! use readline ; then
163 - modules="${modules},readline"
164 - fi
165 - if ! use berkdb ; then
166 - modules="${modules},dbm"
167 - fi
168 - if ! use gdbm ; then
169 - modules="${modules},gdbm"
170 - fi
171 - if ! use ssl ; then
172 - modules="${modules},openssl"
173 - fi
174 - if ! use ncurses ; then
175 - modules="${modules},curses"
176 - fi
177 - if ! use tk ; then
178 - modules="${modules},tk"
179 - fi
180 -
181 - # Provide an empty LIBPATHENV because we disable rpath but we do not
182 - # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
183 - # #564272
184 - INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" econf \
185 - --program-suffix=${MY_SUFFIX} \
186 - --with-soname=ruby${MY_SUFFIX} \
187 - --docdir=${EPREFIX}/usr/share/doc/${P} \
188 - --enable-shared \
189 - --enable-pthread \
190 - --disable-rpath \
191 - --with-out-ext="${modules}" \
192 - $(use_with jemalloc jemalloc) \
193 - $(use_enable socks5 socks) \
194 - $(use_enable doc install-doc) \
195 - --enable-ipv6 \
196 - $(use_enable debug) \
197 - ${myconf} \
198 - --enable-option-checking=no \
199 - || die "econf failed"
200 -}
201 -
202 -src_compile() {
203 - emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
204 -}
205 -
206 -src_test() {
207 - emake -j1 V=1 test || die "make test failed"
208 -
209 - elog "Ruby's make test has been run. Ruby also ships with a make check"
210 - elog "that cannot be run until after ruby has been installed."
211 - elog
212 - if use rubytests; then
213 - elog "You have enabled rubytests, so they will be installed to"
214 - elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
215 - elog "than root, and you must place them into a writeable directory."
216 - elog "Then call: "
217 - elog
218 - elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
219 - else
220 - elog "Enable the rubytests USE flag to install the make check tests"
221 - fi
222 -}
223 -
224 -src_install() {
225 - # Remove the remaining bundled gems. We do this late in the process
226 - # since they are used during the build to e.g. create the
227 - # documentation.
228 - rm -rf ext/json || die
229 -
230 - # Ruby is involved in the install process, we don't want interference here.
231 - unset RUBYOPT
232 -
233 - local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
234 -
235 - LD_LIBRARY_PATH="${S}:${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
236 - RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
237 - for d in $(find "${S}/ext" -type d) ; do
238 - RUBYLIB="${RUBYLIB}:$d"
239 - done
240 - export LD_LIBRARY_PATH RUBYLIB
241 -
242 - emake V=1 DESTDIR="${D}" install || die "make install failed"
243 -
244 - # Remove installed rubygems copy
245 - rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
246 - rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
247 - rm -rf "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
248 -
249 - if use doc; then
250 - make DESTDIR="${D}" install-doc || die "make install-doc failed"
251 - fi
252 -
253 - if use examples; then
254 - insinto /usr/share/doc/${PF}
255 - doins -r sample
256 - fi
257 -
258 - dodoc ChangeLog NEWS doc/NEWS* README* || die
259 -
260 - if use rubytests; then
261 - pushd test
262 - insinto /usr/share/${PN}-${SLOT}/test
263 - doins -r .
264 - popd
265 - fi
266 -}
267 -
268 -pkg_postinst() {
269 - if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
270 - eselect ruby set ruby${MY_SUFFIX}
271 - fi
272 -
273 - elog
274 - elog "To switch between available Ruby profiles, execute as root:"
275 - elog "\teselect ruby set ruby(21|22|...)"
276 - elog
277 -}
278 -
279 -pkg_postrm() {
280 - eselect ruby cleanup
281 -}