summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-emulation/xen-pvgrub/xen-pvgrub-4.7.1-r1.ebuild2
-rw-r--r--app-emulation/xen-tools/xen-tools-4.7.1-r4.ebuild2
-rw-r--r--dev-lang/ruby/Manifest2
-rw-r--r--dev-lang/ruby/ruby-2.4.0.ebuild238
-rw-r--r--dev-ruby/did_you_mean/Manifest1
-rw-r--r--dev-ruby/did_you_mean/did_you_mean-1.1.0.ebuild23
-rw-r--r--dev-ruby/json/json-2.0.2.ebuild2
-rw-r--r--dev-ruby/kpeg/kpeg-1.1.0.ebuild4
-rw-r--r--dev-ruby/minitest/minitest-4.7.5-r2.ebuild12
-rw-r--r--dev-ruby/minitest/minitest-5.10.1.ebuild2
-rw-r--r--dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild2
-rw-r--r--dev-ruby/power_assert/power_assert-0.4.1.ebuild2
-rw-r--r--dev-ruby/racc/racc-1.4.14.ebuild4
-rw-r--r--dev-ruby/rake/rake-12.0.0.ebuild2
-rw-r--r--dev-ruby/rdoc/rdoc-5.0.0-r1.ebuild90
-rw-r--r--dev-ruby/rubygems/rubygems-2.6.8.ebuild5
-rw-r--r--dev-ruby/test-unit/test-unit-3.2.3.ebuild4
-rw-r--r--dev-ruby/xmlrpc/Manifest1
-rw-r--r--dev-ruby/xmlrpc/metadata.xml11
-rw-r--r--dev-ruby/xmlrpc/xmlrpc-0.2.1.ebuild27
-rw-r--r--eclass/ruby-ng.eclass1
-rw-r--r--eclass/ruby-utils.eclass8
-rw-r--r--profiles/base/use.stable.mask3
-rw-r--r--profiles/desc/ruby_targets.desc3
-rw-r--r--sys-devel/gcc/Manifest1
-rw-r--r--sys-devel/gcc/gcc-5.4.0-r1.ebuild45
-rw-r--r--virtual/rubygems/rubygems-12.ebuild33
27 files changed, 510 insertions, 20 deletions
diff --git a/app-emulation/xen-pvgrub/xen-pvgrub-4.7.1-r1.ebuild b/app-emulation/xen-pvgrub/xen-pvgrub-4.7.1-r1.ebuild
index 59fdc66a1876..ae3c84ce6284 100644
--- a/app-emulation/xen-pvgrub/xen-pvgrub-4.7.1-r1.ebuild
+++ b/app-emulation/xen-pvgrub/xen-pvgrub-4.7.1-r1.ebuild
@@ -33,7 +33,7 @@ DESCRIPTION="allows to boot Xen domU kernels from a menu.lst laying inside guest
HOMEPAGE="http://xen.org/"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="amd64 x86"
IUSE="custom-cflags"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/app-emulation/xen-tools/xen-tools-4.7.1-r4.ebuild b/app-emulation/xen-tools/xen-tools-4.7.1-r4.ebuild
index ff4e58b610ba..234e1978028c 100644
--- a/app-emulation/xen-tools/xen-tools-4.7.1-r4.ebuild
+++ b/app-emulation/xen-tools/xen-tools-4.7.1-r4.ebuild
@@ -19,7 +19,7 @@ if [[ $PV == *9999 ]]; then
EGIT_REPO_URI="git://xenbits.xen.org/${REPO}"
S="${WORKDIR}/${REPO}"
else
- KEYWORDS="amd64 ~arm ~arm64 ~x86"
+ KEYWORDS="amd64 ~arm ~arm64 x86"
UPSTREAM_VER=0
SECURITY_VER=19
# xen-tools's gentoo patches tarball
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
index 5bba2b00eb3b..0fae516bddbb 100644
--- a/dev-lang/ruby/Manifest
+++ b/dev-lang/ruby/Manifest
@@ -6,6 +6,7 @@ DIST ruby-2.2.6.tar.xz 10487776 SHA256 9414ecc0d09cf71c9a24e8dc82fcc87919ac7359f
DIST ruby-2.3.1.tar.xz 11407048 SHA256 6725b5534d5a3a21ec4f14d6d7b9921a0d00d08acb88fd04cd50b47b70496338 SHA512 e9d89aeefb1b1e72cee9d3d414b27c793cf09ff3ed5e0ea5277a2b6ae1cae9fdbf6b404a84b42c0c6835754eb04674fc4f1470fbfedabeee3f57e518f13db633 WHIRLPOOL ddfad0f36d61e75209bdc69da0ec549a3443ecb3ed8e1347bb3d0b54ec34073eb05fc8bb78843d59b8b65ec92b8df47f001f5f28f00f685bd2ab60b1ce557558
DIST ruby-2.3.2.tar.xz 11420276 SHA256 5c78f311045ce48160092160444dec2744941a5e37d7865032978bd5bf392f0c SHA512 f2e602281cbcfad81b8197b9555bf637a1ef34f51dbc7548e5e0c5996ab1b7db5bd9eeb902128d37eed90f39b559c569aa75f2b29fe5f65085be65a63206fd72 WHIRLPOOL a8206b08b27c45e237069804d03d2250f561c588dfbb65aeb4e3f394b8d843d08abddc65fbf56b4f943dcc25cc2a60b3967cc1a50af4fdce4b8eb5eb1ebe5b95
DIST ruby-2.3.3.tar.xz 11444164 SHA256 1a4fa8c2885734ba37b97ffdb4a19b8fba0e8982606db02d936e65bac07419dc SHA512 73dd6ed896ff52d953b153b2cab359c87953ea77521878f1ee16c1e217cc46bcb253100debe61ba631e6ffa0bc773e592d603a374508ed5189a311136ccd8d20 WHIRLPOOL aa368a2d0f067ac9d0c6fed62c0e1bdfac0d49c473cd49be9b2774ed3097b76286d091a0887528227f36307b8c1217a2493c5c48fb462db52a3e23cb251a7f79
+DIST ruby-2.4.0.tar.xz 9906880 SHA256 3a87fef45cba48b9322236be60c455c13fd4220184ce7287600361319bb63690 SHA512 975a5388592adc038461e0acebb6c0efee242891b2ea8621476401458efe2bc0fdd317d3bf99beb745b0b3808410efdff33862da29c95c027f457943721e3ab6 WHIRLPOOL 5e0594aa853f9a8a64837d6c34d7110f32471bda719df3ae724643cbe9722b5003cf014ac10130b5a1d59c3f4cc65967c4c00edeea47801e389241be7fe0b53f
DIST ruby-patches-2.0.0_p648.tar.bz2 3341 SHA256 7d82403fed6216baed59ac1fbba888e2b9a4a9cb742ffd01531753bae07ab6b8 SHA512 40d07275a391df3e0a7a0c2705913c8120a548e223032dc39993f8f873c8d0639646cf728dc95f1400352a13766623ac6d69a1b1ff03183df6fabf32946dd7a6 WHIRLPOOL ed7ea6b1c1fd3570ea85b885f7455d8273cff2a9db2540c9e89faca867bd5eed2b4de52c7d21a96bb33ae0beedce113c68bb6c8cee4688650ff5169bd9c265fd
DIST ruby-patches-2.1.10.tar.bz2 1931 SHA256 7e02c1b6a6352693bfd5828c9d1a7633a52baa57d8770df182ed0d8b450a3341 SHA512 85928207db4f76e58925e50d39d73db2d521674385ce3232828377e7d7bb4252aafb9f93d6045d4c159bf094b472af61ef9307203db313bf28918fe35e0f3a21 WHIRLPOOL 17a698b0a09be15f444ea34b33e9aa1d029fbd572c565072a92480bf7b6b21f1b6b88b0da3183a486bae30e7e65f3172cd72b7336be1dc5974b62bd8e2b9ef7a
DIST ruby-patches-2.1.9.tar.bz2 1931 SHA256 7e02c1b6a6352693bfd5828c9d1a7633a52baa57d8770df182ed0d8b450a3341 SHA512 85928207db4f76e58925e50d39d73db2d521674385ce3232828377e7d7bb4252aafb9f93d6045d4c159bf094b472af61ef9307203db313bf28918fe35e0f3a21 WHIRLPOOL 17a698b0a09be15f444ea34b33e9aa1d029fbd572c565072a92480bf7b6b21f1b6b88b0da3183a486bae30e7e65f3172cd72b7336be1dc5974b62bd8e2b9ef7a
@@ -14,3 +15,4 @@ DIST ruby-patches-2.2.6.tar.bz2 2272 SHA256 f54373704ce8df732490e8d1e7e35188503f
DIST ruby-patches-2.3.1.tar.bz2 2223 SHA256 f0a803173564368e5cf31162e1dba901c46640f9e861255f6cbe14256d18f3eb SHA512 bb47000e516017c1fedf7c5313b0628fa734030e69bd0fed1c06a38dd115b8c50837e3dd917f272e24abf5609c4c12793ae4570bfd7d6210290785bf2f8287bd WHIRLPOOL 0b0d4dcf7df4ff3ff11610bfe7a7b29ed621b45b412cb7618a6572f98a568ac67419bd852b193cfc3aa0968382cf9400a578511e9e8fb8b2125bc876e733bd64
DIST ruby-patches-2.3.2.tar.bz2 2223 SHA256 f0a803173564368e5cf31162e1dba901c46640f9e861255f6cbe14256d18f3eb SHA512 bb47000e516017c1fedf7c5313b0628fa734030e69bd0fed1c06a38dd115b8c50837e3dd917f272e24abf5609c4c12793ae4570bfd7d6210290785bf2f8287bd WHIRLPOOL 0b0d4dcf7df4ff3ff11610bfe7a7b29ed621b45b412cb7618a6572f98a568ac67419bd852b193cfc3aa0968382cf9400a578511e9e8fb8b2125bc876e733bd64
DIST ruby-patches-2.3.3.tar.bz2 2223 SHA256 f0a803173564368e5cf31162e1dba901c46640f9e861255f6cbe14256d18f3eb SHA512 bb47000e516017c1fedf7c5313b0628fa734030e69bd0fed1c06a38dd115b8c50837e3dd917f272e24abf5609c4c12793ae4570bfd7d6210290785bf2f8287bd WHIRLPOOL 0b0d4dcf7df4ff3ff11610bfe7a7b29ed621b45b412cb7618a6572f98a568ac67419bd852b193cfc3aa0968382cf9400a578511e9e8fb8b2125bc876e733bd64
+DIST ruby-patches-2.4.0.tar.bz2 2047 SHA256 9560b8e8dc4a5517814df07aa635c9269f5e7cff5a15827a25a9f0811194e450 SHA512 b35db875a7e4a226e75eb6f7bc68b4bc97cc699bdc5f6930015e55cdc324b67b9883a2aa574c9c9a8b5dc5345c4df8a5ca8ace5b794b3e4de6517f3eefd25745 WHIRLPOOL fc5d226f46fe4ee1c86f6fff51ec9184b8c0ec08a1793eab365437d4ce2fd573cfc8857386cd10932f7dde05254bc975eff5b7986aea429730c606147fae2a5c
diff --git a/dev-lang/ruby/ruby-2.4.0.ebuild b/dev-lang/ruby/ruby-2.4.0.ebuild
new file mode 100644
index 000000000000..5cfbc17e0ef9
--- /dev/null
+++ b/dev-lang/ruby/ruby-2.4.0.ebuild
@@ -0,0 +1,238 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+#PATCHSET=1
+
+inherit autotools eutils flag-o-matic multilib versionator
+
+MY_P="${PN}-$(get_version_component_range 1-3)"
+S=${WORKDIR}/${MY_P}
+
+SLOT=$(get_version_component_range 1-2)
+MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
+RUBYVERSION=2.3.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/${SLOT}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~graaff/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 jemalloc libressl +rdoc rubytests socks5 ssl tk xemacs"
+
+RDEPEND="
+ berkdb? ( sys-libs/db:= )
+ gdbm? ( sys-libs/gdbm )
+ jemalloc? ( dev-libs/jemalloc )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl )
+ )
+ socks5? ( >=net-proxy/dante-1.1.13 )
+ tk? (
+ dev-lang/tcl:0=[threads]
+ dev-lang/tk:0=[threads]
+ )
+ dev-libs/libyaml
+ virtual/libffi
+ sys-libs/zlib
+ >=app-eselect/eselect-ruby-20161226
+ !<dev-ruby/rdoc-3.9.4
+ !<dev-ruby/rubygems-1.8.10-r1"
+
+DEPEND="${RDEPEND}"
+
+BUNDLED_GEMS="
+ >=dev-ruby/did_you_mean-1.1.0:2.4[ruby_targets_ruby24]
+ >=dev-ruby/minitest-5.10.1[ruby_targets_ruby24]
+ >=dev-ruby/net-telnet-0.1.1[ruby_targets_ruby24]
+ >=dev-ruby/power_assert-0.4.1[ruby_targets_ruby24]
+ >=dev-ruby/rake-12.0.0[ruby_targets_ruby24]
+ >=dev-ruby/test-unit-3.2.3[ruby_targets_ruby24]
+ >=dev-ruby/xmlrpc-0.2.1[ruby_targets_ruby24]
+"
+
+PDEPEND="
+ ${BUNDLED_GEMS}
+ virtual/rubygems[ruby_targets_ruby24]
+ >=dev-ruby/json-2.0.2[ruby_targets_ruby24]
+ rdoc? ( >=dev-ruby/rdoc-5.0.0[ruby_targets_ruby24] )
+ xemacs? ( app-xemacs/ruby-modes )"
+
+src_prepare() {
+ EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
+ epatch "${WORKDIR}/patches"
+
+ einfo "Unbundling gems..."
+ cd "$S"
+ # Remove bundled gems that we will install via PDEPEND, bug
+ # 539700. Use explicit version numbers to ensure rm fails when they
+ # change so we can update dependencies accordingly.
+ 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
+
+ # 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"
+
+ eapply_user
+
+ eautoreconf
+}
+
+src_configure() {
+ local modules= myconf=
+
+ # -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 berkdb ; then
+ modules="${modules},dbm"
+ fi
+ if ! use gdbm ; then
+ modules="${modules},gdbm"
+ fi
+ if ! use ssl ; then
+ modules="${modules},openssl"
+ fi
+ if ! use tk ; then
+ modules="${modules},tk"
+ fi
+
+ # Provide an empty LIBPATHENV because we disable rpath but we do not
+ # need LD_LIBRARY_PATH by default since that breaks USE=multitarget
+ # #564272
+ INSTALL="${EPREFIX}/usr/bin/install -c" LIBPATHENV="" 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 jemalloc jemalloc) \
+ $(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="${S}:${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 and rdoc copy
+ rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}/rubygems" || die "rm rubygems failed"
+ rm -rf "${D}/usr/bin/"gem"${MY_SUFFIX}" || die "rm rdoc bins failed"
+ rm -rf "${D}/usr/$(get_libdir)/ruby/${RUBYVERSION}"/rdoc* || die "rm rdoc failed"
+ rm -rf "${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-ruby/did_you_mean/Manifest b/dev-ruby/did_you_mean/Manifest
index 9285ba59838e..ec46e734c850 100644
--- a/dev-ruby/did_you_mean/Manifest
+++ b/dev-ruby/did_you_mean/Manifest
@@ -1 +1,2 @@
DIST did_you_mean-1.0.2.gem 30720 SHA256 caa50332c6de39d5452f85f1efa9e9080d9073591edf7be8cb1b9b333a63fd6a SHA512 a6b19dd909423505553759d6470266680056b6804f9c42452eecf9104a8de71a460a4baa53111ccfe830e3dbdc04bad9382d77f9098d1e114aecdc34a4ef57b6 WHIRLPOOL c4786a6dc7216727f63c1f128f277776289395eaa5e2ae845aae5d06cd7449f46eb53fd003b4c4d1a39632c77b647719a919f0716593bd18fe08740cb84fd257
+DIST did_you_mean-1.1.0.gem 30720 SHA256 893791a7e8723e6d5e221a5832ff50a6cb7eed577d54cf0ca92e97364704cdf0 SHA512 73ce86f1c6163dcbd7e02e75b347b0a66b862be1fda3356f763a183df45093629714751157b7fbbe10f1655caf97b64efe67938a24eaa3355f34814e644bdf96 WHIRLPOOL e2090e5c2c8d6aa3e735e99de46aee697acb80ce7cd941631c1db603b4ed4692c0441a7d12a61f2a1553158a6b3c98bbbc3f271d273a80082b659affe8207fa0
diff --git a/dev-ruby/did_you_mean/did_you_mean-1.1.0.ebuild b/dev-ruby/did_you_mean/did_you_mean-1.1.0.ebuild
new file mode 100644
index 000000000000..121664538c55
--- /dev/null
+++ b/dev-ruby/did_you_mean/did_you_mean-1.1.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+USE_RUBY="ruby24"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="'did you mean?'experience in Ruby"
+HOMEPAGE="https://github.com/yuki24/did_you_mean"
+
+LICENSE="MIT"
+SLOT="2.4"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/json/json-2.0.2.ebuild b/dev-ruby/json/json-2.0.2.ebuild
index 6b1f6c5b24e4..7e85ba0bc9dc 100644
--- a/dev-ruby/json/json-2.0.2.ebuild
+++ b/dev-ruby/json/json-2.0.2.ebuild
@@ -3,7 +3,7 @@
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
diff --git a/dev-ruby/kpeg/kpeg-1.1.0.ebuild b/dev-ruby/kpeg/kpeg-1.1.0.ebuild
index bb2e377f39c7..edaf2eb42860 100644
--- a/dev-ruby/kpeg/kpeg-1.1.0.ebuild
+++ b/dev-ruby/kpeg/kpeg-1.1.0.ebuild
@@ -3,7 +3,7 @@
# $Id$
EAPI=5
-USE_RUBY="ruby21 ruby22 ruby23"
+USE_RUBY="ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
@@ -14,7 +14,7 @@ HOMEPAGE="https://github.com/evanphx/kpeg"
LICENSE="MIT"
SLOT="1"
-KEYWORDS="~amd64"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
IUSE=""
each_ruby_test() {
diff --git a/dev-ruby/minitest/minitest-4.7.5-r2.ebuild b/dev-ruby/minitest/minitest-4.7.5-r2.ebuild
index 1a6d448001dc..a1f2ece7d860 100644
--- a/dev-ruby/minitest/minitest-4.7.5-r2.ebuild
+++ b/dev-ruby/minitest/minitest-4.7.5-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
@@ -20,6 +20,14 @@ SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc test"
+each_ruby_prepare() {
+ case ${RUBY} in
+ *ruby24)
+ sed -i -e 's/Fixnum/Integer/' test/minitest/test_minitest_spec.rb || die
+ ;;
+ esac
+}
+
each_ruby_test() {
${RUBY} -Ilib:bin:test:. -e 'Dir["test/**/test_*.rb"].each{|f| require f}' || die
}
diff --git a/dev-ruby/minitest/minitest-5.10.1.ebuild b/dev-ruby/minitest/minitest-5.10.1.ebuild
index 4723351641fb..6dbfa255c51d 100644
--- a/dev-ruby/minitest/minitest-5.10.1.ebuild
+++ b/dev-ruby/minitest/minitest-5.10.1.ebuild
@@ -3,7 +3,7 @@
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
diff --git a/dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild b/dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild
index e8ec8a4f8b10..c65492cab268 100644
--- a/dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild
+++ b/dev-ruby/net-telnet/net-telnet-0.1.1-r1.ebuild
@@ -3,7 +3,7 @@
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_EXTRADOC="README.md"
diff --git a/dev-ruby/power_assert/power_assert-0.4.1.ebuild b/dev-ruby/power_assert/power_assert-0.4.1.ebuild
index 59d58547cfa8..a4c013f9cd2a 100644
--- a/dev-ruby/power_assert/power_assert-0.4.1.ebuild
+++ b/dev-ruby/power_assert/power_assert-0.4.1.ebuild
@@ -3,7 +3,7 @@
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_EXTRADOC="README.rdoc"
diff --git a/dev-ruby/racc/racc-1.4.14.ebuild b/dev-ruby/racc/racc-1.4.14.ebuild
index 7cbe7bf0761d..da50026d04c9 100644
--- a/dev-ruby/racc/racc-1.4.14.ebuild
+++ b/dev-ruby/racc/racc-1.4.14.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_RECIPE_DOC="rdoc"
RUBY_FAKEGEM_TASK_DOC="docs"
diff --git a/dev-ruby/rake/rake-12.0.0.ebuild b/dev-ruby/rake/rake-12.0.0.ebuild
index 6413fb8ca1fb..f78580297df1 100644
--- a/dev-ruby/rake/rake-12.0.0.ebuild
+++ b/dev-ruby/rake/rake-12.0.0.ebuild
@@ -3,7 +3,7 @@
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_EXTRADOC="CHANGES README.rdoc TODO"
diff --git a/dev-ruby/rdoc/rdoc-5.0.0-r1.ebuild b/dev-ruby/rdoc/rdoc-5.0.0-r1.ebuild
new file mode 100644
index 000000000000..d58e1be93595
--- /dev/null
+++ b/dev-ruby/rdoc/rdoc-5.0.0-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_DOCDIR="doc"
+RUBY_FAKEGEM_EXTRADOC="History.rdoc README.rdoc RI.rdoc TODO.rdoc"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_EXTRAINSTALL="exe"
+
+inherit ruby-fakegem eutils
+
+DESCRIPTION="An extended version of the RDoc library from Ruby 1.8"
+HOMEPAGE="https://github.com/rdoc/rdoc/"
+SRC_URI="https://github.com/rdoc/rdoc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Ruby MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+SLOT="0"
+IUSE=""
+
+ruby_add_bdepend "
+ dev-ruby/kpeg
+ dev-ruby/racc
+ test? (
+ >=dev-ruby/minitest-5.8:5
+ )"
+
+ruby_add_rdepend "dev-ruby/json:2"
+
+all_ruby_prepare() {
+ # Other packages also have use for a nonexistent directory, bug 321059
+ sed -i -e 's#/nonexistent#/nonexistent_rdoc_tests#g' test/test_rdoc*.rb || die
+
+ # Avoid unneeded dependency on bundler, bug 603696
+ sed -i -e '/bundler/ s:^:#:' \
+ -e 's/Bundler::GemHelper.gemspec.full_name/"rdoc"/' Rakefile || die
+
+ # Remove test that is depending on the locale, which we can't garantuee.
+ sed -i -e '/def test_encode_with/,/^ end/ s:^:#:' test/test_rdoc_options.rb || die
+
+ # Remove test depending on FEATURES=userpriv, bug 361959
+ sed -i -e '/def test_check_files/,/^ end/ s:^:#:' test/test_rdoc_options.rb || die
+
+ # Remove tests for code that is not included and not listed in Manifest.txt
+ rm -f test/test_rdoc_i18n_{locale,text}.rb \
+ test/test_rdoc_generator_pot* || die
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use doc ; then
+ ruby -Ilib -S exe/rdoc || die
+ fi
+}
+
+each_ruby_compile() {
+ ${RUBY} -S rake generate || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:. -e 'gem "json", "~>2.0"; Dir["test/test_*.rb"].each{|f| require f}' || die
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ for bin in rdoc ri; do
+ ruby_fakegem_binwrapper $bin /usr/bin/$bin-2
+
+ for version in 20 21 22 23; do
+ if use ruby_targets_ruby${version}; then
+ ruby_fakegem_binwrapper $bin /usr/bin/${bin}${version}
+ sed -i -e "1s/env ruby/ruby${version}/" \
+ "${ED}/usr/bin/${bin}${version}" || die
+ fi
+ done
+ done
+}
+
+pkg_postinst() {
+ if [[ ! -n $(readlink "${ROOT}"usr/bin/rdoc) ]] ; then
+ eselect ruby set $(eselect --brief --colour=no ruby show | head -n1)
+ fi
+}
diff --git a/dev-ruby/rubygems/rubygems-2.6.8.ebuild b/dev-ruby/rubygems/rubygems-2.6.8.ebuild
index fb6765e19cb7..107dce8b7ddb 100644
--- a/dev-ruby/rubygems/rubygems-2.6.8.ebuild
+++ b/dev-ruby/rubygems/rubygems-2.6.8.ebuild
@@ -4,7 +4,7 @@
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
inherit ruby-ng prefix
@@ -54,6 +54,9 @@ all_ruby_prepare() {
# Avoid test requiring network access
sed -i -e '/test_download_to_cache/askip "requires network access"' test/rubygems/test_gem_remote_fetcher.rb || die
+
+ # Avoid test failing on ruby 2.4
+ sed -i -e '/test_initialize_copy_broken/askip "fails on ruby 2.4"' test/rubygems/test_gem_specification.rb || die
}
each_ruby_compile() {
diff --git a/dev-ruby/test-unit/test-unit-3.2.3.ebuild b/dev-ruby/test-unit/test-unit-3.2.3.ebuild
index c1ac970024ba..5f8fa3f3bdb6 100644
--- a/dev-ruby/test-unit/test-unit-3.2.3.ebuild
+++ b/dev-ruby/test-unit/test-unit-3.2.3.ebuild
@@ -3,7 +3,7 @@
# $Id$
EAPI=5
-USE_RUBY="ruby20 ruby21 ruby22 ruby23"
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24"
RUBY_FAKEGEM_TASK_DOC=""
RUBY_FAKEGEM_DOCDIR="doc"
@@ -15,7 +15,7 @@ inherit ruby-fakegem
# depend on yard for the other ruby implementations. Without this
# assumption bootstrapping ruby23 won't be possible due to the yard
# dependency tree.
-USE_RUBY="${USE_RUBY/ruby23/}" ruby_add_bdepend "doc? ( dev-ruby/yard )"
+USE_RUBY="${USE_RUBY/ruby23 ruby24/}" ruby_add_bdepend "doc? ( dev-ruby/yard )"
DESCRIPTION="An xUnit family unit testing framework for Ruby"
HOMEPAGE="https://rubygems.org/gems/test-unit"
diff --git a/dev-ruby/xmlrpc/Manifest b/dev-ruby/xmlrpc/Manifest
new file mode 100644
index 000000000000..996a96530161
--- /dev/null
+++ b/dev-ruby/xmlrpc/Manifest
@@ -0,0 +1 @@
+DIST xmlrpc-0.2.1.tar.gz 33980 SHA256 0254f899373e9151bc10bf0f71144a7530ec05b7041daa96702a3371bebe06f8 SHA512 20a156acd70df7bcca649fa7962855ee645b4348cf8d64109e5e7409fc2f89e53c18c28b871365e424bbbe8d7ca92cacaf9ceda6cf485bf55b717ee0040d8491 WHIRLPOOL 78a317b72936b5cb3fb642f622da248bebbe174d359e43000cc9f169b39b4c959663d257c05fe0b935bed691e92df3fefdd0fa76bb140fb806fbcee28669511c
diff --git a/dev-ruby/xmlrpc/metadata.xml b/dev-ruby/xmlrpc/metadata.xml
new file mode 100644
index 000000000000..3256ec25dd0c
--- /dev/null
+++ b/dev-ruby/xmlrpc/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ruby@gentoo.org</email>
+ <name>Gentoo Ruby Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ruby/xmlrpc</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-ruby/xmlrpc/xmlrpc-0.2.1.ebuild b/dev-ruby/xmlrpc/xmlrpc-0.2.1.ebuild
new file mode 100644
index 000000000000..c66b687f42aa
--- /dev/null
+++ b/dev-ruby/xmlrpc/xmlrpc-0.2.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+USE_RUBY="ruby24"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_BINWRAP=""
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="XMLRPC is a lightweight protocol that enables remote procedure calls over HTTP"
+HOMEPAGE="https://github.com/ruby/xmlrpc"
+SRC_URI="https://github.com/ruby/xmlrpc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Ruby"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+IUSE=""
+
+all_ruby_prepare() {
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index f144c9ecc351..c83778de876a 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -20,6 +20,7 @@
# * ruby21 - Ruby (MRI) 2.1.x
# * ruby22 - Ruby (MRI) 2.2.x
# * ruby23 - Ruby (MRI) 2.3.x
+# * ruby24 - Ruby (MRI) 2.4.x
# * jruby - JRuby
# * rbx - Rubinius
#
diff --git a/eclass/ruby-utils.eclass b/eclass/ruby-utils.eclass
index 9e16d4ac9bc4..e3c60b4ea941 100644
--- a/eclass/ruby-utils.eclass
+++ b/eclass/ruby-utils.eclass
@@ -28,10 +28,10 @@ if [[ ! ${_RUBY_UTILS} ]]; then
# provide for a better first installation experience.
# All RUBY_TARGETS
-RUBY_TARGETS_PREFERENCE="ruby20 ruby19 "
+RUBY_TARGETS_PREFERENCE="ruby21 "
# All other active ruby targets
-RUBY_TARGETS_PREFERENCE+="ruby21 ruby22 ruby23"
+RUBY_TARGETS_PREFERENCE+="ruby22 ruby23 ruby24"
_ruby_implementation_depend() {
@@ -63,6 +63,10 @@ _ruby_implementation_depend() {
rubypn="dev-lang/ruby"
rubyslot=":2.3"
;;
+ ruby24)
+ rubypn="dev-lang/ruby"
+ rubyslot=":2.4"
+ ;;
ree18)
rubypn="dev-lang/ruby-enterprise"
rubyslot=":1.8"
diff --git a/profiles/base/use.stable.mask b/profiles/base/use.stable.mask
index b52758a58d8d..76a79005b03d 100644
--- a/profiles/base/use.stable.mask
+++ b/profiles/base/use.stable.mask
@@ -32,10 +32,11 @@ python_single_target_python3_5
curl_ssl_libressl
libressl
-# Hans de Graaff <graaff@gentoo.org> (26 Dec 2015)
+# Hans de Graaff <graaff@gentoo.org> (25 Dec 2016)
# Currently in testing and not ready to go stable yet.
ruby_targets_ruby22
ruby_targets_ruby23
+ruby_targets_ruby24
# Patrick Lauer <patrick@gentoo.org> (28 Apr 2015)
# dependencies not stable yet
diff --git a/profiles/desc/ruby_targets.desc b/profiles/desc/ruby_targets.desc
index b9f246241e61..b122ad8cda90 100644
--- a/profiles/desc/ruby_targets.desc
+++ b/profiles/desc/ruby_targets.desc
@@ -1,4 +1,4 @@
-# Copyright 1999-2014 Gentoo Foundation.
+# Copyright 1999-2016 Gentoo Foundation.
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -11,3 +11,4 @@ ruby20 - Build with MRI Ruby 2.0.x
ruby21 - Build with MRI Ruby 2.1.x
ruby22 - Build with MRI Ruby 2.2.x
ruby23 - Build with MRI Ruby 2.3.x
+ruby24 - Build with MRI Ruby 2.4.x
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 5539cf381509..fa6d5d2eaae8 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -61,6 +61,7 @@ DIST gcc-5.3.0-piepatches-v0.6.5.tar.bz2 14552 SHA256 01bb0408eee2b97c4605b10b4d
DIST gcc-5.3.0-uclibc-patches-1.0.tar.bz2 2534 SHA256 4b03623b614b42308420e3036886ab58cf29fe52a238e67013fa82c568f22c82 SHA512 243d063a42ebef0428c43434d5ba3623ee66b1678746ab4c2efd129004614efecb8fe145bf4dc54d6daef03dfd656deb874b0b49213ec1e13490128d91714de2 WHIRLPOOL ba6db27fc0e19b120761b411da33d1925527a3a79cc686300d581ee3de8bbad788fe722c6c3c6b512a96e755c407e220bf509a1ca4f0ca02f1cc5485990bf249
DIST gcc-5.3.0.tar.bz2 95441837 SHA256 b84f5592e9218b73dbae612b5253035a7b34a9a1f7688d2e1bfaaf7267d5c4db SHA512 d619847383405fd389f5a2d7225f97fedb01f81478dbb8339047ccba7561a5c20045ab500a8744bffd19ea51892ce09fc37f862f2cfcb42de0f0f8cd8f8da37a WHIRLPOOL 63c10c65dcd9eaca7a426113fb593744829b00093eb57eb02603fb5387a81af20f3576c4d61d32c351e46cc79db20b445a5630e54e328c9771c92cff980661f5
DIST gcc-5.4.0-patches-1.0.tar.bz2 28227 SHA256 ff600369f150129754108322338c3f4f0064d222843a2d82778537f94a22ecbb SHA512 70cd83b142abaa3c22d67d5d58185da2cfa178737ec963e230cc03ea8dc6dc757665c711fae91af4cd91062d3136c6f31a5ee3c4c7440ed9485c6f3632731940 WHIRLPOOL 84a69d2dde582fd486f6c60f78ce9f8c7cc5b480c2989cc1804617eb6526a4a17d20d2ed010bd9fc78019d69caa665428970234090b21f9d4b97217011d4fcd6
+DIST gcc-5.4.0-patches-1.1.tar.bz2 1379980 SHA256 bf9aa4f33907e9bb91bb916416c797293d1c9137640a94395ab8ea01764ccf96 SHA512 5f5821e248e5be3726d31beacbb8f200625f3c13f6a8111f482ea7fd2417e594da750963ee720e3b7f2b51f39607c070cfd2f1b08120c3964ab4f3fde48d4e38 WHIRLPOOL d3ae28872add3381c86728e6344a48c864e401f564056ff623163d0da7b1a05c1ac92bdf2a1a407320cfcde3023b3671a84e702f7e09c3d3194d27de00ff0882
DIST gcc-5.4.0-piepatches-v0.6.5.tar.bz2 14551 SHA256 495eb9110244dac17408cd0eb6977a593577eeb0437e72b60339b8ec394f2fb0 SHA512 4890f0713d261982ab81a20f93c5f65193aa1dfa171e3f9e5867f0b80ec7c1e76c5a997b1a4e6f47f8ce36af54ac91125c5bff8bf6d971b7d77c65a57a40a3c0 WHIRLPOOL 13b74b1ca75cc94f9624fe1b52221a953962c918c2cb932302a3078b6deba4f3e501647ad8a2915edef6301e64c820ed612a6fbb9e1178cf1711fe0045686969
DIST gcc-5.4.0-uclibc-patches-1.0.tar.bz2 3731 SHA256 a3145faa6c81c0753ba754b735834c38987c356dadaa7c4a625c738e374604b5 SHA512 009f34197e79c5e8c6497a0db01ac45cc657e92e56a663b4f3281661d108b2a129cd977fab5f0064f225d6812ae91e82bab22a2b10ae02c486881eeed85ec7a3 WHIRLPOOL a3598ce0aad7e9110db156005190739abc5b4ceea3c327cb9c747c4cf1b99589c1a9fac170aea346eae030b09ee563f9f990e031ad7dfa1aa19b895898bf2608
DIST gcc-5.4.0.tar.bz2 95661481 SHA256 608df76dec2d34de6558249d8af4cbee21eceddbcb580d666f7a5a583ca3303a SHA512 2941cc950c8f2409a314df497631f9b0266211aa74746c1839c46e04f1c7c299afe2528d1ef16ea39def408a644ba48f97519ec7a7dd37d260c3e9423514265b WHIRLPOOL ec81c8143e48bc8d9d0bbdc0fa3ca553c805193f53ac46c86127b54565894780dd97281485e396a130567464c753f043458c8e450018c957813f50ff90a40708
diff --git a/sys-devel/gcc/gcc-5.4.0-r1.ebuild b/sys-devel/gcc/gcc-5.4.0-r1.ebuild
new file mode 100644
index 000000000000..1730b19efefd
--- /dev/null
+++ b/sys-devel/gcc/gcc-5.4.0-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+PATCH_VER="1.1"
+UCLIBC_VER="1.0"
+
+# Hardened gcc 4 stuff
+PIE_VER="0.6.5"
+SPECS_VER="0.2.0"
+SPECS_GCC_VER="4.4.3"
+# arch/libc configurations known to be stable with {PIE,SSP}-by-default
+PIE_GLIBC_STABLE="x86 amd64 mips ppc ppc64 arm ia64"
+PIE_UCLIBC_STABLE="x86 arm amd64 mips ppc ppc64"
+SSP_STABLE="amd64 x86 mips ppc ppc64 arm"
+# uclibc need tls and nptl support for SSP support
+# uclibc need to be >= 0.9.33
+SSP_UCLIBC_STABLE="x86 amd64 mips ppc ppc64 arm"
+#end Hardened stuff
+
+inherit toolchain
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ elibc_glibc? ( >=sys-libs/glibc-2.8 )
+ >=${CATEGORY}/binutils-2.20"
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ PDEPEND="${PDEPEND} elibc_glibc? ( >=sys-libs/glibc-2.8 )"
+fi
+
+src_prepare() {
+ if has_version '<sys-libs/glibc-2.12' ; then
+ ewarn "Your host glibc is too old; disabling automatic fortify."
+ ewarn "Please rebuild gcc after upgrading to >=glibc-2.12 #362315"
+ EPATCH_EXCLUDE+=" 10_all_default-fortify-source.patch"
+ fi
+ is_crosscompile && EPATCH_EXCLUDE+=" 05_all_gcc-spec-env.patch"
+
+ toolchain_src_prepare
+}
diff --git a/virtual/rubygems/rubygems-12.ebuild b/virtual/rubygems/rubygems-12.ebuild
new file mode 100644
index 000000000000..e8df5bc73b8c
--- /dev/null
+++ b/virtual/rubygems/rubygems-12.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+USE_RUBY="ruby20 ruby21 ruby22 ruby23 ruby24 rbx"
+
+inherit ruby-ng
+
+DESCRIPTION="Virtual ebuild for rubygems"
+HOMEPAGE=""
+SRC_URI=""
+
+LICENSE=""
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+RDEPEND="
+ ruby_targets_rbx? ( dev-lang/rubinius )
+ ruby_targets_ruby20? ( >=dev-ruby/rubygems-2.0.2[ruby_targets_ruby20] )
+ ruby_targets_ruby21? ( >=dev-ruby/rubygems-2.0.14[ruby_targets_ruby21] )
+ ruby_targets_ruby22? ( >=dev-ruby/rubygems-2.4.2[ruby_targets_ruby22] )
+ ruby_targets_ruby23? ( >=dev-ruby/rubygems-2.5.1[ruby_targets_ruby23] )
+ ruby_targets_ruby24? ( >=dev-ruby/rubygems-2.6.8[ruby_targets_ruby24] )"
+
+pkg_setup() { :; }
+src_unpack() { :; }
+src_prepare() { :; }
+src_compile() { :; }
+src_install() { :; }
+pkg_preinst() { :; }
+pkg_postinst() { :; }