summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Graaff <graaff@gentoo.org>2014-11-10 18:30:26 +0000
committerHans de Graaff <graaff@gentoo.org>2014-11-10 18:30:26 +0000
commit08630d3bb68d80ce34971ab834b721f0127ceed3 (patch)
tree070587d792e562d27f3b44b196ac4eaa444306a6 /dev-lang/ruby
parentDon't install spurious COPYING files. Remove previous snapshot. (diff)
downloadhistorical-08630d3bb68d80ce34971ab834b721f0127ceed3.tar.gz
historical-08630d3bb68d80ce34971ab834b721f0127ceed3.tar.bz2
historical-08630d3bb68d80ce34971ab834b721f0127ceed3.zip
Add sse2 patch backported by Ted Marston from the 2.1.x version, and make the patch conditional on USE=sse2 for both the 2.0 and 2.1 series. Bug 526876.
Package-Manager: portage-2.2.8-r2/cvs/Linux x86_64 Manifest-Sign-Key: 0x8883FA56A308A8D7!
Diffstat (limited to 'dev-lang/ruby')
-rw-r--r--dev-lang/ruby/ChangeLog10
-rw-r--r--dev-lang/ruby/Manifest22
-rw-r--r--dev-lang/ruby/ruby-2.0.0_p594-r1.ebuild230
-rw-r--r--dev-lang/ruby/ruby-2.1.4-r1.ebuild231
4 files changed, 478 insertions, 15 deletions
diff --git a/dev-lang/ruby/ChangeLog b/dev-lang/ruby/ChangeLog
index f03f8d579b07..35f532454fa6 100644
--- a/dev-lang/ruby/ChangeLog
+++ b/dev-lang/ruby/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-lang/ruby
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.677 2014/11/10 10:47:22 ago Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.678 2014/11/10 18:30:19 graaff Exp $
+
+*ruby-2.1.4-r1 (10 Nov 2014)
+*ruby-2.0.0_p594-r1 (10 Nov 2014)
+
+ 10 Nov 2014; Hans de Graaff <graaff@gentoo.org> +ruby-2.0.0_p594-r1.ebuild,
+ +ruby-2.1.4-r1.ebuild:
+ Add sse2 patch backported by Ted Marston from the 2.1.x version, and make the
+ patch conditional on USE=sse2 for both the 2.0 and 2.1 series. Bug 526876.
10 Nov 2014; Agostino Sarubbo <ago@gentoo.org> ruby-1.9.3_p550.ebuild,
ruby-2.0.0_p594.ebuild:
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
index e5d6c5e18eab..247da0d3052d 100644
--- a/dev-lang/ruby/Manifest
+++ b/dev-lang/ruby/Manifest
@@ -17,9 +17,11 @@ DIST ruby-patches-1.9.3_p550.tar.bz2 2154 SHA256 c1c40f2b1f186a05774fd15c3566d72
DIST ruby-patches-2.0.0_p353.tar.bz2 1929 SHA256 4feee409319dbcac7525fb9c1c76c36888a62ee0623c117ae532bf765845f0f9 SHA512 95cf20e26e43a1515843d74c558e3344ae33b7383362c1742a115c1b3e6d09e1ed947df8ab7fee6275e96c920bd0ef880647da70165ddccd40d0995ff43aae64 WHIRLPOOL 869055dd0e14af0dc285a11d95a891ab4686e1d16960d46728ddf680eee58d42570f64d058b88d30805b732b082c354a36dac5a816a7ce5f3034d1b22237aa5a
DIST ruby-patches-2.0.0_p481.tar.bz2 2525 SHA256 9842526b161105af36bf67d22ad578a5c4f82bd1feaf78eee72e674df594d997 SHA512 6c844bd7930ee0d6b62759f5217508f5267c857ed1ff0fc857d6077c17ecb5733d949aa9154fa22e51f8f973719749360a6b821832f2e59c37e65c080fa0c292 WHIRLPOOL 2c302058886d9bc06a5e5febd54e2419a362ca141dd18f70bf7d4c4be65484fc95c9cd432717f6f97f5949f7cf69bb9f5df6e99ae94e14df1802a6f9244a2a7a
DIST ruby-patches-2.0.0_p576.tar.bz2 2525 SHA256 9842526b161105af36bf67d22ad578a5c4f82bd1feaf78eee72e674df594d997 SHA512 6c844bd7930ee0d6b62759f5217508f5267c857ed1ff0fc857d6077c17ecb5733d949aa9154fa22e51f8f973719749360a6b821832f2e59c37e65c080fa0c292 WHIRLPOOL 2c302058886d9bc06a5e5febd54e2419a362ca141dd18f70bf7d4c4be65484fc95c9cd432717f6f97f5949f7cf69bb9f5df6e99ae94e14df1802a6f9244a2a7a
+DIST ruby-patches-2.0.0_p594-r1.tar.bz2 2947 SHA256 dc173fe94af215fd2c1823f46140e4f11892dec59ce55b10ffad26b622bb6e4e SHA512 423a4fddfc8d7fd4f5b041989da343bc96ce0c3f22a448cab8cec47d4c458f4deeb83b167a0a3ae71d3be57df9b41151d1cafadd191bd3d3e9b08b32732e36cd WHIRLPOOL 9c728e95cf01abdb48afc2ff008dc73d341096b253c664297b6780b32821c1ec406c388ce5860b5dd2ce2de862fb80b2ae45d03750045aaf13c371743f97c92e
DIST ruby-patches-2.0.0_p594.tar.bz2 2525 SHA256 9842526b161105af36bf67d22ad578a5c4f82bd1feaf78eee72e674df594d997 SHA512 6c844bd7930ee0d6b62759f5217508f5267c857ed1ff0fc857d6077c17ecb5733d949aa9154fa22e51f8f973719749360a6b821832f2e59c37e65c080fa0c292 WHIRLPOOL 2c302058886d9bc06a5e5febd54e2419a362ca141dd18f70bf7d4c4be65484fc95c9cd432717f6f97f5949f7cf69bb9f5df6e99ae94e14df1802a6f9244a2a7a
DIST ruby-patches-2.1.2.tar.bz2 2237 SHA256 785c1682ef146d45ae9748c20792fb27de89b32afa84e2463c39e72b226b9ca4 SHA512 73df725134d12f437a9505d8345be8b55887e9b6b75ffaf2e983f375d0e5aff9fcd25624d8df79919256340e097bcf90e8656cb36073f55a00d0e00354fc40d2 WHIRLPOOL cc7d9968a58c9eddb881cf3830dd9c9532c0267c45f802733aa55f6d5c410f78a226e4e5916215bde4c2765b08a93661d5633579cbbd1830dcce89908ac88e94
DIST ruby-patches-2.1.3.tar.bz2 2310 SHA256 1743dc0cec0adc1a0b5d90b0ed7908f888b8251b7a414049a57e6e32e01e4ad6 SHA512 b695621d210a7afc6704dd480bf3e7fc559174ebf240d2287338d60537ba45e5bf0f5defac6b254064d4b28077e2b97ef23b7eadc1bfa1a6bf2c616e828f937c WHIRLPOOL e9fde062fc04e4e22aec2dc55250f9007c64b07c7d03875b4073c19af9cfb0ae735d6dcb2b65bd1465a457cf0ff0602866600b5af1d520df3efc8a418763ab5b
+DIST ruby-patches-2.1.4-r1.tar.bz2 2310 SHA256 1743dc0cec0adc1a0b5d90b0ed7908f888b8251b7a414049a57e6e32e01e4ad6 SHA512 b695621d210a7afc6704dd480bf3e7fc559174ebf240d2287338d60537ba45e5bf0f5defac6b254064d4b28077e2b97ef23b7eadc1bfa1a6bf2c616e828f937c WHIRLPOOL e9fde062fc04e4e22aec2dc55250f9007c64b07c7d03875b4073c19af9cfb0ae735d6dcb2b65bd1465a457cf0ff0602866600b5af1d520df3efc8a418763ab5b
DIST ruby-patches-2.1.4.tar.bz2 2310 SHA256 1743dc0cec0adc1a0b5d90b0ed7908f888b8251b7a414049a57e6e32e01e4ad6 SHA512 b695621d210a7afc6704dd480bf3e7fc559174ebf240d2287338d60537ba45e5bf0f5defac6b254064d4b28077e2b97ef23b7eadc1bfa1a6bf2c616e828f937c WHIRLPOOL e9fde062fc04e4e22aec2dc55250f9007c64b07c7d03875b4073c19af9cfb0ae735d6dcb2b65bd1465a457cf0ff0602866600b5af1d520df3efc8a418763ab5b
EBUILD ruby-1.9.3_p484.ebuild 6125 SHA256 34b0d6bc3ecd8b5517bb3a478a1b7948e3908ab959b3259986fdecf7ebf070c5 SHA512 153a01aa0843d548ccf90ced39cb0d331fcfec8c433b86b2d20debf06c6d7a500568e47398669356342cf4f612b059a3ab869b5eb333fadc8a2d65c235c448e2 WHIRLPOOL aab05acdf893b0d44a5ca4e2402aa8810b353571ff3009ee9ee2f37e326c07218601164c540f408d3f8ff4cb429029ced67454106de6dd8864a3be3eaed68286
EBUILD ruby-1.9.3_p547.ebuild 6157 SHA256 33561cc00decb6e8f952c3c576b410ac74949f7739689cbc3dc0e36404023675 SHA512 7abac4e16422933f4dbdc3c8b0f034aab8ddd2323ad7a8a8ea6d8697504285b27142b5166c9db28203a02be749099d45b9dee97e68d44774cde5f6772ca5ba62 WHIRLPOOL 459fa67789521f27d3330da536bd4a77f26e7be545ce45952778c156da5ed3cfb7c182acf19604d6eae5056efd0f3c509cfe4044623778e21b3902c013506cdc
@@ -27,26 +29,18 @@ EBUILD ruby-1.9.3_p550.ebuild 6159 SHA256 5adef6c46ea70b247521fc91d9e28204ce60c7
EBUILD ruby-2.0.0_p353.ebuild 6505 SHA256 dd29cdfec77df7e0d811375d6e52deb0e3a9b9a118ab272fd869dab48e82b430 SHA512 7a3e163f81e99646f1eb30605b37a98ea639d4af0525dcd7d103ef816957369b4cfa831555005748b084c029f3f11876b090fd5e329d68055877a6b7bac4da76 WHIRLPOOL 725734370ef5cb4f5fe870e8649bfe759ad94029fef88a33c04e487ae3f7e9573fd873a17691ef6c5069d3f1f5d82dccab177b6093bba4028855863895bd7e1c
EBUILD ruby-2.0.0_p481.ebuild 6359 SHA256 95025a622d9ba6841d8eccae12cb73962d12c9db7063c143cea170a27e022304 SHA512 9569446c66d934534ee041a6f578ee0d6c3778a7347d87dcd281c4be4f7ba90d9021137c67d5a0334485c8e89a1b4cc9ddcb1dcd7e8a29a4acbc0908887b649e WHIRLPOOL 3a06a4d5a21478854c16564cef952b64f239627af0b58fc77fdae63706e8023f3e87fa4ffc0722e699c804eb1d5aa2160946fc898cdb544943a97f287a792965
EBUILD ruby-2.0.0_p576.ebuild 6369 SHA256 ae60b61814260b422a0b9ae6975ba48a53aa5314f7b518b13abba082a5996c26 SHA512 c62672b91842f9e24b518bf3d0f0ff90bd4943cd9515f4ea863eb981b104abe9bcd21a4beaaaa910a1c37b6511d59b71e4e51b753cbb1f08319d8355e2f61d7d WHIRLPOOL 6476211aeaac939e9cf208154f802a24004ae1fb4f57a53ec26f866c5e5ad689a1dee3d2bd3bbc670857c7f3aee470d5d8b999326464e071f197856fb22f5e15
+EBUILD ruby-2.0.0_p594-r1.ebuild 6484 SHA256 18cebc82a1f2bb1e23fe62fdb0549e5d5b7a00d156888f6d6e2423285f2192f6 SHA512 8de97b7e63027a176195ed9bda04f82e82bc6096b84a387a1c636ff677e0c641c4990ad7418e8c6dc90e3497bf2dc200ac56994068aa63e15a40d9a8bb78946f WHIRLPOOL 19a607cbed861310bfe3054b158c5b2f530aa6aaf4fd998044742b99eef4346e365c1015bcdbf2ad6012afe4acb04a532a9d99f3a747500865c1f817e27104c3
EBUILD ruby-2.0.0_p594.ebuild 6359 SHA256 94073079ff1832445ff1a13f5b89f83f0d66c120faa946d078bdb77648baf68d SHA512 8fb04d867a42c8c267677a44983daa1967ed33ca34f4ea153981933426ea641071ae7f8f6f04f58b0ac92b1f1b9bb85033a4012827559f9aa78fdb44757029cc WHIRLPOOL 10d1186308027bdaedd7b2ef5b72d19433668b4373076133fe534b3f44fd21ec790283c26789e5aa706eab561556d995c1409b5b61e4241206217f948475cf05
EBUILD ruby-2.1.2.ebuild 6413 SHA256 dd9b5262aeb99daae4c6b118f14634111c62d23ae24a360d2f703b0d2426dfee SHA512 445109c83d7be28de25f565538fc314ed76feeaaf74bba9b34850d059b9a853ddc505e7682a689d196d5d0e0f47239cad83b1f3470a5f6e28348cc3251f3b17d WHIRLPOOL 871140dab3da4f30901096bcc663828363fee3b275716f7b4e88d3e76de951b1707aa62151bdcaf4fc24e43090ce68e136be72f2c2f2d958d7f7c8ea25528cf5
EBUILD ruby-2.1.3.ebuild 6413 SHA256 5a735563d5c024f2b6974c39da1c565f09324d5bd0ba2d9786f77039152043ae SHA512 465bfe7e74849a09ee958918e5dfa7614c164a24e557692d34e711973b84f07ac2b8f760f5775d4d8d28a906c13765032a6ffbece5f506e9b96d0db04b773750 WHIRLPOOL 70bd33eab95d4835b1cca0fc99b452b996279f0467f8d67c1b1cb1b00f239411462a674f8ccf9b6e1ae5436f74a54faeeae4a2df171888806e19fc8583b5b48a
+EBUILD ruby-2.1.4-r1.ebuild 6528 SHA256 92f2be25f8a22ac2750d5ad019f18abd653adebf30cfce0105eead557908060d SHA512 a94245ab21ad361c01b67dfc794404667d923bb9522c632e3f5b96e9fc50051951e43b9050cae8a2945c2c18678137a7dc4e0ff6f1bbced1459c7bb085ce1bcc WHIRLPOOL 57f91412482fa0a30f169089df9307eb7b5bfa34607aa10661d2385a420d816688bd246d7789a6fb5df907a224b28520f1169f5df9bd66a183f3f00d76fa77f4
EBUILD ruby-2.1.4.ebuild 6412 SHA256 a42f9c7089fd48df5f5ff0d0ca6696350f0ab8320bad0c2746140f16a62e46c5 SHA512 6de495b26f1e503f26c17b867a77c7501da8035c8e9e8e9c44a0a1e6738f62f287bbefa0a432287fc3bafc8b1d7045b6038d81fc077c482314d67c22e4931823 WHIRLPOOL 0aec2a90247656fef17081938bad7be83cbe43b39c339fb92048bdf5f9268f7c6676433e217470daaf237e102c9c986bad22b9853ab5314e4557fa13fb4eb5ac
-MISC ChangeLog 101391 SHA256 32d475da7109c1ee0fabeda3aeb3e070770002e32b6b5aeb2f54c4c460cbb90e SHA512 6d13d9dd42fba0cd63199fa6a5ef3c0a90920026555a71bf4d74ca6facffb45346c9ce2b8c240e82961a8b0ee647db423a1c86d5f3ab01571702e09e0fd5cc7e WHIRLPOOL 74281a2ae6048b7f235a496a3c3712f98b1fccb1931545538ad53d782fb6eeb06cc076b26ab21e4b3f7f48b969449538a304b1657765026e39ac5124c6b614e6
+MISC ChangeLog 101719 SHA256 20b8edc82095e3f7a463e22657e787e14e2e5b71d015ed8550276973e1d98b2e SHA512 f3174980faad692425b1a7a9e555e29b93930136ea43d475886bdcb20136f36a330384995b2d2fe3cbb53b22072c14b0c60a6bc3dea1a0acc498f65a84d94020 WHIRLPOOL 4bbae0c7657cbae872676a2e0527b36377d3944cbd85cbb615527166197647228dd0327e9d7e59babc6fba564a210d3299c50adec2cf611d005be289d65c2526
MISC metadata.xml 992 SHA256 dd9e9c8252fc245f4f3c75c901e84faaceebcc1025742244871e49e7090d8a86 SHA512 7894c050d0b4dd875cd380e5db759ad7ed8c23edfff79accb169f4cbb185aed9b65c0d81e1cea3c53ef8f639423614a48de5265b069ec1ea11ef41498b1cd4f4 WHIRLPOOL e651f88aea9f39d9dcd9e6e5547699ec06568c99737948e7bee1554bdb6c45defbd7f98e435ad7c31305763e078d904b14aa14ddce084cd9c5b83dacd47c0402
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
-iQIcBAEBCAAGBQJUYJe7AAoJELp701BxlEWfxEEP/3gquSr6NH8YjCb4/QheVsKj
-Gv0+/yLPbPHf3LHEJyqkhvNL4TdmH3Hwd7DTA/TT0oLgAiqbMWlsq/OydGcJ7Egn
-R09qu3NGOrEpEZvIxHPgO6+8i36P5uNz1CW62ZRc9j/zMRogGpbdNA4rX2IVmu5m
-zZY1hxM9K19qEZqMbwzEBWr8+Dx1s0y5ZmO7PVXWz1Z2X9Re3mzHOzuBRwBpExPP
-jpbWgMSAhIxX6QzChsKM1mfBJwXnNNErpdqkllBauk10eIL9aDZpwhEl88yYDwRI
-uUpD1bBIoTJwPOaxCePSB1sFUFXVBxtPUCFIzG4pjAVbTaoa/BaqZsbHHnpzas8l
-3F7+4CgnvDWyZx5+gSBx3aFGI4o8FzxlroUkssUutw5OkSXsaPWAqFp8cWc5lufO
-ukKPVjDArEq+HXiQGoHv2hB4w2sJ1jSF2etza1E1hF2mPpVGUn14btl5w46OAyBS
-7VTUjAjsDjUSQ97n4l3CStQxk57ZSiWlFxQZkGvZfcTzpjGxM5qRW2hgfrR1fXpB
-IILqKcOjzB2HReHXHVm5wr+ZzpO+S3leWV5fuTpBwfcgj97GgsWNl1etYxWSn1+w
-bdMDvhTSWsWJVAzaO2wjUYc1vaub2waJ7svwjmsH4MNBkeIcMHFwF7kFzuz2D2US
-esqhNFnbE5udLBJtDI6D
-=Z25j
+iF4EAREIAAYFAlRhBEIACgkQiIP6VqMIqNfGjgD/Rd6s0tAU0yts+QKXiObC7bpZ
+ZgKGN3WNSezEajyGpLoA/1G3orNhl3pAaxXoIYIg6AzkmbwsIrfncrqOMb/E+YJf
+=uv4K
-----END PGP SIGNATURE-----
diff --git a/dev-lang/ruby/ruby-2.0.0_p594-r1.ebuild b/dev-lang/ruby/ruby-2.0.0_p594-r1.ebuild
new file mode 100644
index 000000000000..acea8e160cf8
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.0.0_p594-r1.ebuild
@@ -0,0 +1,230 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-2.0.0_p594-r1.ebuild,v 1.1 2014/11/10 18:30:19 graaff Exp $
+
+EAPI=5
+
+#PATCHSET=1
+
+inherit autotools eutils flag-o-matic multilib versionator
+
+RUBYPL=$(get_version_component_range 4)
+
+MY_P="${PN}-$(get_version_component_range 1-3)-${RUBYPL:-0}"
+S=${WORKDIR}/${MY_P}
+
+SLOT=$(get_version_component_range 1-2)
+MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
+RUBYVERSION=2.0.0
+
+if [[ -n ${PATCHSET} ]]; then
+ if [[ ${PVR} == ${PV} ]]; then
+ PATCHSET="${PV}-r0.${PATCHSET}"
+ else
+ PATCHSET="${PVR}.${PATCHSET}"
+ fi
+else
+ PATCHSET="${PVR}"
+fi
+
+DESCRIPTION="An object-oriented scripting language"
+HOMEPAGE="http://www.ruby-lang.org/"
+SRC_URI="mirror://ruby/2.0/${MY_P}.tar.xz
+ http://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+IUSE="berkdb debug doc examples gdbm ipv6 +rdoc rubytests socks5 ssl xemacs ncurses +readline sse2"
+
+RDEPEND="
+ berkdb? ( sys-libs/db )
+ gdbm? ( sys-libs/gdbm )
+ ssl? ( dev-libs/openssl )
+ socks5? ( >=net-proxy/dante-1.1.13 )
+ ncurses? ( sys-libs/ncurses )
+ readline? ( sys-libs/readline )
+ dev-libs/libyaml
+ virtual/libffi
+ sys-libs/zlib
+ >=app-admin/eselect-ruby-20100402
+ !<dev-ruby/rdoc-3.9.4
+ !<dev-ruby/rubygems-1.8.10-r1"
+
+DEPEND="${RDEPEND}"
+PDEPEND="
+ virtual/rubygems:ruby20
+ >=dev-ruby/json-1.7.7[ruby_targets_ruby20]
+ >=dev-ruby/rake-0.9.6[ruby_targets_ruby20]
+ rdoc? ( >=dev-ruby/rdoc-4.0.0[ruby_targets_ruby20] )
+ xemacs? ( app-xemacs/ruby-modes )"
+
+src_prepare() {
+ if use sse2 ; then
+ excluded_patches="012_no_forced_sse2.patch"
+ fi
+
+ EPATCH_EXCLUDE="${excluded_patches}" EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
+ epatch "${WORKDIR}/patches"
+
+ # We can no longer unbundle all of rake because rubygems now depends
+ # on this. We leave the actual rake code around to bootstrap
+ # rubygems, but remove the bits that would cause a file collision.
+ einfo "Unbundling gems..."
+ cd "$S"
+ rm -r \
+ {bin,lib}/rake lib/rake.rb man/rake.1 \
+ bin/gem || die "removal failed"
+
+ # Fix a hardcoded lib path in configure script
+ sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
+ configure.in || die "sed failed"
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=
+
+ # The Tk module can no longer be built because the module code is no
+ # longer compatible with newer stable versions.
+ # https://bugs.gentoo.org/show_bug.cgi?id=500894
+ local modules="tk"
+
+ # -fomit-frame-pointer makes ruby segfault, see bug #150413.
+ filter-flags -fomit-frame-pointer
+ # In many places aliasing rules are broken; play it safe
+ # as it's risky with newer compilers to leave it as it is.
+ append-flags -fno-strict-aliasing
+ # SuperH needs this
+ use sh && append-flags -mieee
+
+ # Socks support via dante
+ if use socks5 ; then
+ # Socks support can't be disabled as long as SOCKS_SERVER is
+ # set and socks library is present, so need to unset
+ # SOCKS_SERVER in that case.
+ unset SOCKS_SERVER
+ fi
+
+ # Increase GC_MALLOC_LIMIT if set (default is 8000000)
+ if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
+ append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
+ fi
+
+ # ipv6 hack, bug 168939. Needs --enable-ipv6.
+ use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
+
+ # Determine which modules *not* to build depending in the USE flags.
+ if ! use readline ; then
+ modules="${modules},readline"
+ fi
+ if ! use berkdb ; then
+ modules="${modules},dbm"
+ fi
+ if ! use gdbm ; then
+ modules="${modules},gdbm"
+ fi
+ if ! use ssl ; then
+ modules="${modules},openssl"
+ fi
+ if ! use ncurses ; then
+ modules="${modules},curses"
+ fi
+
+ INSTALL="${EPREFIX}/usr/bin/install -c" econf \
+ --program-suffix=${MY_SUFFIX} \
+ --with-soname=ruby${MY_SUFFIX} \
+ --docdir=${EPREFIX}/usr/share/doc/${P} \
+ --enable-shared \
+ --enable-pthread \
+ --disable-rpath \
+ --with-out-ext="${modules}" \
+ $(use_enable socks5 socks) \
+ $(use_enable doc install-doc) \
+ --enable-ipv6 \
+ $(use_enable debug) \
+ ${myconf} \
+ --enable-option-checking=no \
+ || die "econf failed"
+}
+
+src_compile() {
+ emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
+}
+
+src_test() {
+ emake -j1 V=1 test || die "make test failed"
+
+ elog "Ruby's make test has been run. Ruby also ships with a make check"
+ elog "that cannot be run until after ruby has been installed."
+ elog
+ if use rubytests; then
+ elog "You have enabled rubytests, so they will be installed to"
+ elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
+ elog "than root, and you must place them into a writeable directory."
+ elog "Then call: "
+ elog
+ elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
+ else
+ elog "Enable the rubytests USE flag to install the make check tests"
+ fi
+}
+
+src_install() {
+ # Remove the remaining bundled gems. We do this late in the process
+ # since they are used during the build to e.g. create the
+ # documentation.
+ rm -rf ext/json || die
+
+ # Ruby is involved in the install process, we don't want interference here.
+ unset RUBYOPT
+
+ local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
+
+ LD_LIBRARY_PATH="${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
+ RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
+ for d in $(find "${S}/ext" -type d) ; do
+ RUBYLIB="${RUBYLIB}:$d"
+ done
+ export LD_LIBRARY_PATH RUBYLIB
+
+ emake V=1 DESTDIR="${D}" install || die "make install failed"
+
+ # Remove installed rubygems copy
+ rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
+ rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
+ rm -r "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
+
+ if use doc; then
+ make DESTDIR="${D}" install-doc || die "make install-doc failed"
+ fi
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r sample
+ fi
+
+ dodoc ChangeLog NEWS doc/NEWS* README* || die
+
+ if use rubytests; then
+ pushd test
+ insinto /usr/share/${PN}-${SLOT}/test
+ doins -r .
+ popd
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
+ eselect ruby set ruby${MY_SUFFIX}
+ fi
+
+ elog
+ elog "To switch between available Ruby profiles, execute as root:"
+ elog "\teselect ruby set ruby(19|20|...)"
+ elog
+}
+
+pkg_postrm() {
+ eselect ruby cleanup
+}
diff --git a/dev-lang/ruby/ruby-2.1.4-r1.ebuild b/dev-lang/ruby/ruby-2.1.4-r1.ebuild
new file mode 100644
index 000000000000..7fb5c76a0721
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.1.4-r1.ebuild
@@ -0,0 +1,231 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-2.1.4-r1.ebuild,v 1.1 2014/11/10 18:30:19 graaff Exp $
+
+EAPI=5
+
+#PATCHSET=1
+
+inherit autotools eutils flag-o-matic multilib versionator
+
+RUBYPL=$(get_version_component_range 4)
+
+MY_P="${PN}-$(get_version_component_range 1-3)"
+#MY_P="${PN}-$(get_version_component_range 1-3)-${RUBYPL:-0}"
+S=${WORKDIR}/${MY_P}
+
+SLOT=$(get_version_component_range 1-2)
+MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
+RUBYVERSION=2.1.0
+
+if [[ -n ${PATCHSET} ]]; then
+ if [[ ${PVR} == ${PV} ]]; then
+ PATCHSET="${PV}-r0.${PATCHSET}"
+ else
+ PATCHSET="${PVR}.${PATCHSET}"
+ fi
+else
+ PATCHSET="${PVR}"
+fi
+
+DESCRIPTION="An object-oriented scripting language"
+HOMEPAGE="http://www.ruby-lang.org/"
+SRC_URI="mirror://ruby/2.1/${MY_P}.tar.xz
+ http://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+IUSE="berkdb debug doc examples gdbm ipv6 +rdoc rubytests socks5 ssl xemacs ncurses +readline sse2"
+
+RDEPEND="
+ berkdb? ( sys-libs/db )
+ gdbm? ( sys-libs/gdbm )
+ ssl? ( dev-libs/openssl )
+ socks5? ( >=net-proxy/dante-1.1.13 )
+ ncurses? ( sys-libs/ncurses )
+ readline? ( sys-libs/readline )
+ dev-libs/libyaml
+ virtual/libffi
+ sys-libs/zlib
+ >=app-admin/eselect-ruby-20131227
+ !<dev-ruby/rdoc-3.9.4
+ !<dev-ruby/rubygems-1.8.10-r1"
+
+DEPEND="${RDEPEND}"
+PDEPEND="
+ virtual/rubygems:ruby21
+ >=dev-ruby/json-1.8.1[ruby_targets_ruby21]
+ >=dev-ruby/rake-0.9.6[ruby_targets_ruby21]
+ rdoc? ( >=dev-ruby/rdoc-4.0.1[ruby_targets_ruby21] )
+ xemacs? ( app-xemacs/ruby-modes )"
+
+src_prepare() {
+ if use sse2 ; then
+ excluded_patches="012_no_forced_sse2.patch"
+ fi
+
+ EPATCH_EXCLUDE="${excluded_patches}" EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
+ epatch "${WORKDIR}/patches"
+
+ # We can no longer unbundle all of rake because rubygems now depends
+ # on this. We leave the actual rake code around to bootstrap
+ # rubygems, but remove the bits that would cause a file collision.
+ einfo "Unbundling gems..."
+ cd "$S"
+ rm -r \
+ {bin,lib}/rake lib/rake.rb man/rake.1 \
+ bin/gem || die "removal failed"
+
+ # Fix a hardcoded lib path in configure script
+ sed -i -e "s:\(RUBY_LIB_PREFIX=\"\${prefix}/\)lib:\1$(get_libdir):" \
+ configure.in || die "sed failed"
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=
+
+ # The Tk module can no longer be built because the module code is no
+ # longer compatible with newer stable versions.
+ # https://bugs.gentoo.org/show_bug.cgi?id=500894
+ local modules="tk"
+
+ # -fomit-frame-pointer makes ruby segfault, see bug #150413.
+ filter-flags -fomit-frame-pointer
+ # In many places aliasing rules are broken; play it safe
+ # as it's risky with newer compilers to leave it as it is.
+ append-flags -fno-strict-aliasing
+ # SuperH needs this
+ use sh && append-flags -mieee
+
+ # Socks support via dante
+ if use socks5 ; then
+ # Socks support can't be disabled as long as SOCKS_SERVER is
+ # set and socks library is present, so need to unset
+ # SOCKS_SERVER in that case.
+ unset SOCKS_SERVER
+ fi
+
+ # Increase GC_MALLOC_LIMIT if set (default is 8000000)
+ if [ -n "${RUBY_GC_MALLOC_LIMIT}" ] ; then
+ append-flags "-DGC_MALLOC_LIMIT=${RUBY_GC_MALLOC_LIMIT}"
+ fi
+
+ # ipv6 hack, bug 168939. Needs --enable-ipv6.
+ use ipv6 || myconf="${myconf} --with-lookup-order-hack=INET"
+
+ # Determine which modules *not* to build depending in the USE flags.
+ if ! use readline ; then
+ modules="${modules},readline"
+ fi
+ if ! use berkdb ; then
+ modules="${modules},dbm"
+ fi
+ if ! use gdbm ; then
+ modules="${modules},gdbm"
+ fi
+ if ! use ssl ; then
+ modules="${modules},openssl"
+ fi
+ if ! use ncurses ; then
+ modules="${modules},curses"
+ fi
+
+ INSTALL="${EPREFIX}/usr/bin/install -c" econf \
+ --program-suffix=${MY_SUFFIX} \
+ --with-soname=ruby${MY_SUFFIX} \
+ --docdir=${EPREFIX}/usr/share/doc/${P} \
+ --enable-shared \
+ --enable-pthread \
+ --disable-rpath \
+ --with-out-ext="${modules}" \
+ $(use_enable socks5 socks) \
+ $(use_enable doc install-doc) \
+ --enable-ipv6 \
+ $(use_enable debug) \
+ ${myconf} \
+ --enable-option-checking=no \
+ || die "econf failed"
+}
+
+src_compile() {
+ emake V=1 EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
+}
+
+src_test() {
+ emake -j1 V=1 test || die "make test failed"
+
+ elog "Ruby's make test has been run. Ruby also ships with a make check"
+ elog "that cannot be run until after ruby has been installed."
+ elog
+ if use rubytests; then
+ elog "You have enabled rubytests, so they will be installed to"
+ elog "/usr/share/${PN}-${SLOT}/test. To run them you must be a user other"
+ elog "than root, and you must place them into a writeable directory."
+ elog "Then call: "
+ elog
+ elog "ruby${MY_SUFFIX} -C /location/of/tests runner.rb"
+ else
+ elog "Enable the rubytests USE flag to install the make check tests"
+ fi
+}
+
+src_install() {
+ # Remove the remaining bundled gems. We do this late in the process
+ # since they are used during the build to e.g. create the
+ # documentation.
+ rm -rf ext/json || die
+
+ # Ruby is involved in the install process, we don't want interference here.
+ unset RUBYOPT
+
+ local MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
+
+ LD_LIBRARY_PATH="${D}/usr/$(get_libdir)${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
+ RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"
+ for d in $(find "${S}/ext" -type d) ; do
+ RUBYLIB="${RUBYLIB}:$d"
+ done
+ export LD_LIBRARY_PATH RUBYLIB
+
+ emake V=1 DESTDIR="${D}" install || die "make install failed"
+
+ # Remove installed rubygems copy
+ rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
+ rm -r "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
+ rm -r "${D}/usr/bin/"{ri,rdoc}"${MY_SUFFIX}" || die "rm rdoc bins failed"
+
+ if use doc; then
+ make DESTDIR="${D}" install-doc || die "make install-doc failed"
+ fi
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r sample
+ fi
+
+ dodoc ChangeLog NEWS doc/NEWS* README* || die
+
+ if use rubytests; then
+ pushd test
+ insinto /usr/share/${PN}-${SLOT}/test
+ doins -r .
+ popd
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
+ eselect ruby set ruby${MY_SUFFIX}
+ fi
+
+ elog
+ elog "To switch between available Ruby profiles, execute as root:"
+ elog "\teselect ruby set ruby(19|20|...)"
+ elog
+}
+
+pkg_postrm() {
+ eselect ruby cleanup
+}