summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2015-06-24 12:10:59 -0400
committerAnthony G. Basile <blueness@gentoo.org>2015-06-24 12:10:59 -0400
commit4b32c33ed06f4eaac1e01b22a53164885c628003 (patch)
tree8162ffb83f488ddbb542c926e35b516c1d06dbca /dev-lang/ruby
parentAdd DEPRECATED notice. (diff)
downloadhardened-dev-musl.tar.gz
hardened-dev-musl.tar.bz2
hardened-dev-musl.zip
Clear out the repo to discourage its use. See DEPRECATED.musl
Diffstat (limited to 'dev-lang/ruby')
-rw-r--r--dev-lang/ruby/Manifest10
-rw-r--r--dev-lang/ruby/files/ruby-1.9.3_p484-add-asm_ioctl_h.patch11
-rw-r--r--dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch11
-rw-r--r--dev-lang/ruby/files/ruby-uclibc-isnan-isinf.patch24
-rw-r--r--dev-lang/ruby/metadata.xml30
-rw-r--r--dev-lang/ruby/ruby-1.9.3_p484.ebuild220
-rw-r--r--dev-lang/ruby/ruby-2.0.0_p353.ebuild228
7 files changed, 0 insertions, 534 deletions
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
deleted file mode 100644
index 1e2c57c3..00000000
--- a/dev-lang/ruby/Manifest
+++ /dev/null
@@ -1,10 +0,0 @@
-AUX ruby-1.9.3_p484-add-asm_ioctl_h.patch 320 SHA256 d9f2357a68dfee36e5c3b428dce82234d4bcd42cf134b24d01150946e1af8c9d SHA512 8f55b2749ca63ff1b3f3b0dd0ac548f7de29bc470871637ffb666a534910b089c4290b71df57108a380b22fd92c9c230c65354d0dbad81e70a654b4a94134d89 WHIRLPOOL b4c2aff2ce64ede5cdd0b2c70180067b0c9a8300d6d7d88ca9c3bb3645053c27229c27ed9ea67b243598c7671465e1d5ab5d2e3bec85977fac7eb421733ea8a7
-AUX ruby-add-asm_ioctl_h.patch 338 SHA256 82fa2b35c1a1ae05aaf7e849bd7b6068951f65609a35de1f88fcf83f254666f2 SHA512 eba8f362cda01fed4d38515a1ce03e4c462ddb6adf686de76b3d91bc5d5484661b7be5a9080624a9fa87fffff27b65c746d7ec94d4e27dbef2f9b321fc286be1 WHIRLPOOL 9c1ac98344cd44a3f9523e7dc723ab6dceab3c1c569d2656d03fdbe7677207bbe52ed5436dcd405c33c16d623333219aa6492dcb76d94b0cf833305589312ae2
-AUX ruby-uclibc-isnan-isinf.patch 720 SHA256 5e49c26f78079c1252cafee1cd91707a051f0d3c88e78900cfed05e159b25385 SHA512 ded0075f00121ba7ad3f9927534f870a61d8270d145d603a32c6cb60160a66d8afe7257904a1f787fe8af33a459c51679dbb87a3a1a16681eda434a386300750 WHIRLPOOL ab4eab44b70d5cea0f26a585b5d57ce9461bb273059107121aaa96eaa00bb507d89bc3c17aed24f1909d4ce1bee9fbb185f4f0a789c42ecdd79a96693308b05b
-DIST ruby-1.9.3-p484.tar.bz2 10041514 SHA256 0fdc6e860d0023ba7b94c7a0cf1f7d32908b65b526246de9dfd5bb39d0d7922b SHA512 2c3ef8b6022027d444bd709b1a5db96a7a692e2e3aa895df4fceae101f9689a31f02583703bb0483d80659bbd4555fbb4b9b57ceb2351508fab8cd10ff28f14d WHIRLPOOL 1b1174e012bff8d047db2da654dcf535486bfd1593b8e2f6fc888603c8ed6b41bd72625ff4eeaaa645ae01a81f7edbf62f0345b61eeda02d73743572af3f6b85
-DIST ruby-2.0.0-p353.tar.bz2 10730412 SHA256 3de4e4d9aff4682fa4f8ed2b70bd0d746fae17452fc3d3a8e8f505ead9105ad9 SHA512 52aa64c5991e61cc49c2062672554353bc88ab563da93a1d1591257153c2f6d8de02417a33d7a585eb0102f1079a993e46671fb6c97c62eac8615de567b575f2 WHIRLPOOL 8d3b616838290095ab389d32caa48941e9146676730975f2868d42cf43dd5f6ff6a26bb6ca1499a164a5c743e4f5c3ad122c1bed18556d85da98b821d66caf89
-DIST ruby-patches-1.9.3_p484.tar.bz2 2154 SHA256 c1c40f2b1f186a05774fd15c3566d722a5ab1af5b93a7c73f2d3c247d604fd73 SHA512 fdb07393439dfcc97e5d4ecd12059ef69983b23588079e1292cec1c93544524a67265e4f61f75d20ac540ee9f9ace730a584462f94bea4919124a3264e6f0ae1 WHIRLPOOL 422b7bfcbdb564fd89ae9536c15d78442ad5597c7728f84f2523a751a862807a92a77779cfdd42fcdd20569726f401e391e33c1666b0455432ddff228ea674fc
-DIST ruby-patches-2.0.0_p353.tar.bz2 1929 SHA256 4feee409319dbcac7525fb9c1c76c36888a62ee0623c117ae532bf765845f0f9 SHA512 95cf20e26e43a1515843d74c558e3344ae33b7383362c1742a115c1b3e6d09e1ed947df8ab7fee6275e96c920bd0ef880647da70165ddccd40d0995ff43aae64 WHIRLPOOL 869055dd0e14af0dc285a11d95a891ab4686e1d16960d46728ddf680eee58d42570f64d058b88d30805b732b082c354a36dac5a816a7ce5f3034d1b22237aa5a
-EBUILD ruby-1.9.3_p484.ebuild 6114 SHA256 e49b4636f44f156aeb7d3b62e29400d4513438826b99a7256e85a6a2317f9423 SHA512 a2cfc5448ed98f7471e3b204a1756f0825866ab3ff317590887be1c193699cbbd9ba038da0c6ab7637a382494b9ec159dc9eaad744b7ff7f5315f18c3b067142 WHIRLPOOL 17a52f969ecb0883a30c84611cf7e7e69887d67eead030de08b837785452471c989b401348d2cc66f99cf8b27e672523d3b330ee0b243f6c4fb4146d71465111
-EBUILD ruby-2.0.0_p353.ebuild 6547 SHA256 7c4861a783a86c578aedad435ec5d0946743fcdfc2a38f4435f19328dcc700c3 SHA512 87311b5499308f23dadbcf592f9f4b7b7cd0e4e3e21912276165daeb882e4f8f0707fecc077f0d7c4e2eb818bc1528845d9d3341669a352ca0b84dbe5ac34058 WHIRLPOOL b5ff381030b0e2fc89e717c6bce42bfa99d31d7304d5dd31791a87e9acd0b0564603e500ac552d46a125dfadd5ea66ba1b3e90d21b0a33ef7164ded542ec882c
-MISC metadata.xml 995 SHA256 b802a8c15353181ea4a0f93666e89dbf1cc3f01947311ef9a8cb1663281f257a SHA512 d9aac8c61fcec88cb5ab856bc9f2f16b5e428d8df610b5d56edc6f908ad178790423c1fdebd23e3ff3b210d78389e775b684e9c2a973d86cd701dafa81b51442 WHIRLPOOL 2a28317957c87d390479e4a6ac8ab121200dbaa2bd7de98f58031c17e670c8f096a2c8d9909cc2ca0d02b437ca0b1c61a789a66b39b32ffd731454c2a6e4b65e
diff --git a/dev-lang/ruby/files/ruby-1.9.3_p484-add-asm_ioctl_h.patch b/dev-lang/ruby/files/ruby-1.9.3_p484-add-asm_ioctl_h.patch
deleted file mode 100644
index a15fe991..00000000
--- a/dev-lang/ruby/files/ruby-1.9.3_p484-add-asm_ioctl_h.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Nuar ruby-1.9.3-p484.orig/io.c ruby-1.9.3-p484/io.c
---- ruby-1.9.3-p484.orig/io.c 2013-10-31 14:03:20.000000000 +0000
-+++ ruby-1.9.3-p484/io.c 2014-02-23 13:43:42.508302443 +0000
-@@ -17,6 +17,7 @@
- #include "internal.h"
- #include <ctype.h>
- #include <errno.h>
-+#include <asm/ioctl.h>
-
- #define free(x) xfree(x)
-
diff --git a/dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch b/dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch
deleted file mode 100644
index 9fef9e8e..00000000
--- a/dev-lang/ruby/files/ruby-add-asm_ioctl_h.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Nuar ruby-2.0.0-p353.orig/io.c ruby-2.0.0-p353/io.c
---- ruby-2.0.0-p353.orig/io.c 2013-10-04 17:30:50.000000000 +0000
-+++ ruby-2.0.0-p353/io.c 2014-02-23 13:22:06.038406133 +0000
-@@ -19,6 +19,7 @@
- #include "id.h"
- #include <ctype.h>
- #include <errno.h>
-+#include <asm/ioctl.h>
- #include "ruby_atomic.h"
-
- #define free(x) xfree(x)
diff --git a/dev-lang/ruby/files/ruby-uclibc-isnan-isinf.patch b/dev-lang/ruby/files/ruby-uclibc-isnan-isinf.patch
deleted file mode 100644
index 47ecb2fe..00000000
--- a/dev-lang/ruby/files/ruby-uclibc-isnan-isinf.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -Naur ruby-2.0.0-p247.orig/missing/isinf.c ruby-2.0.0-p247/missing/isinf.c
---- ruby-2.0.0-p247.orig/missing/isinf.c 2011-05-15 07:55:52.000000000 -0400
-+++ ruby-2.0.0-p247/missing/isinf.c 2013-09-09 15:28:47.750452951 -0400
-@@ -52,6 +52,8 @@
- static double one (void) { return 1.0; }
- static double inf (void) { return one() / zero(); }
-
-+#undef isinf
-+
- int
- isinf(double n)
- {
-diff -Naur ruby-2.0.0-p247.orig/missing/isnan.c ruby-2.0.0-p247/missing/isnan.c
---- ruby-2.0.0-p247.orig/missing/isnan.c 2010-07-28 04:12:01.000000000 -0400
-+++ ruby-2.0.0-p247/missing/isnan.c 2013-09-09 15:28:32.791451837 -0400
-@@ -4,6 +4,8 @@
-
- static int double_ne(double n1, double n2);
-
-+#undef isnan
-+
- int
- isnan(double n)
- {
diff --git a/dev-lang/ruby/metadata.xml b/dev-lang/ruby/metadata.xml
deleted file mode 100644
index e46ab14c..00000000
--- a/dev-lang/ruby/metadata.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <herd>ruby</herd>
- <use>
- <flag name='rubytests'>
- Install ruby tests that can only be run after ruby is installed
- </flag>
-
- <flag name='readline'>
- Use the <pkg>sys-libs/readline</pkg> library to provide the
- readline extension, used for instance by the irb tool. This flag
- is meaningful only if the libedit USE flag is disabled.
-
- If neither libedit nor readline USE flags are enabled, the
- readline extension will not be built (and irb will lose line
- editing functionality).
- </flag>
-
- <flag name='yaml'>
- Use the <pkg>dev-libs/libyaml</pkg> library to build the psych
- extension, available since Ruby 1.9.2_rc2, in alternative to the
- bundled syck-based parser.
- </flag>
-
- <flag name='rdoc'>
- Install <pkg>dev-ruby/rdoc</pkg> after installing Ruby.
- </flag>
- </use>
-</pkgmetadata>
diff --git a/dev-lang/ruby/ruby-1.9.3_p484.ebuild b/dev-lang/ruby/ruby-1.9.3_p484.ebuild
deleted file mode 100644
index d860a042..00000000
--- a/dev-lang/ruby/ruby-1.9.3_p484.ebuild
+++ /dev/null
@@ -1,220 +0,0 @@
-# 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-1.9.3_p484.ebuild,v 1.12 2014/01/26 09:27:14 jlec Exp $
-
-EAPI=4
-
-#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})
-# 1.9.3 still uses 1.9.1
-RUBYVERSION=1.9.1
-
-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/1.9/${MY_P}.tar.bz2
- http://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-KEYWORDS="amd64 arm ~mips ppc x86"
-IUSE="berkdb debug doc examples gdbm ipv6 +rdoc rubytests socks5 ssl tk xemacs ncurses +readline +yaml" #libedit
-
-# libedit support is removed everywhere because of this upstream bug:
-# http://redmine.ruby-lang.org/issues/show/3698
-
-RDEPEND="
- berkdb? ( sys-libs/db )
- gdbm? ( sys-libs/gdbm )
- ssl? ( dev-libs/openssl )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? (
- <dev-lang/tcl-8.6[threads]
- <dev-lang/tk-8.6[threads]
- )
- ncurses? ( sys-libs/ncurses )
- readline? ( sys-libs/readline )
- yaml? ( dev-libs/libyaml )
- virtual/libffi
- sys-libs/zlib
- >=app-eselect/eselect-ruby-20100402
- !<dev-ruby/rdoc-3.9.4
- !<dev-ruby/rubygems-1.8.10-r1"
-# libedit? ( dev-libs/libedit )
-# !libedit? ( readline? ( sys-libs/readline ) )
-
-DEPEND="${RDEPEND}"
-PDEPEND="
- >=dev-ruby/rubygems-1.8.10-r1[ruby_targets_ruby19]
- rdoc? ( >=dev-ruby/rdoc-3.9.4[ruby_targets_ruby19] )
- xemacs? ( app-xemacs/ruby-modes )"
-
-src_prepare() {
- EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
- epatch "${WORKDIR}/patches"
-
- epatch "${FILESDIR}"/${P}-add-asm_ioctl_h.patch
- einfo "Unbundling gems..."
- cd "$S"
- rm -r \
- {bin,lib}/rake lib/rake.rb man/rake.1 \
- ext/json \
- 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=
-
- # -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"
-
-# if use libedit; then
-# einfo "Using libedit to provide readline extension"
-# myconf="${myconf} --enable-libedit --with-readline"
-# elif use readline; then
-# einfo "Using readline to provide readline extension"
-# myconf="${myconf} --with-readline"
-# else
-# myconf="${myconf} --without-readline"
-# fi
- myconf="${myconf} $(use_with readline)"
-
- INSTALL="${EPREFIX}/usr/bin/install -c" econf \
- --program-suffix=${MY_SUFFIX} \
- --with-soname=ruby${MY_SUFFIX} \
- --enable-shared \
- --enable-pthread \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- --enable-ipv6 \
- $(use_enable debug) \
- $(use_with berkdb dbm) \
- $(use_with gdbm) \
- $(use_with ssl openssl) \
- $(use_with tk) \
- $(use_with ncurses curses) \
- $(use_with yaml psych) \
- ${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() {
- # 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* ToDo || 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(18|19|...)"
- elog
-}
-
-pkg_postrm() {
- eselect ruby cleanup
-}
diff --git a/dev-lang/ruby/ruby-2.0.0_p353.ebuild b/dev-lang/ruby/ruby-2.0.0_p353.ebuild
deleted file mode 100644
index abdcc8ea..00000000
--- a/dev-lang/ruby/ruby-2.0.0_p353.ebuild
+++ /dev/null
@@ -1,228 +0,0 @@
-# Copyright 1999-2013 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_p353.ebuild,v 1.6 2013/12/15 17:44:01 ago 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.bz2
- http://dev.gentoo.org/~flameeyes/ruby-team/${PN}-patches-${PATCHSET}.tar.bz2"
-
-LICENSE="|| ( Ruby-BSD BSD-2 )"
-KEYWORDS="amd64 arm ~mips ppc x86"
-IUSE="berkdb debug doc examples gdbm ipv6 +rdoc rubytests socks5 ssl tk xemacs ncurses +readline"
-
-RDEPEND="
- berkdb? ( sys-libs/db )
- gdbm? ( sys-libs/gdbm )
- ssl? ( dev-libs/openssl )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? ( dev-lang/tk[threads] )
- ncurses? ( sys-libs/ncurses )
- readline? ( sys-libs/readline )
- dev-libs/libyaml
- virtual/libffi
- sys-libs/zlib
- >=app-eselect/eselect-ruby-20100402
- !<dev-ruby/rdoc-3.9.4
- !<dev-ruby/rubygems-1.8.10-r1"
-
-DEPEND="${RDEPEND}"
-PDEPEND="
- >=dev-ruby/rubygems-2.0.2[ruby_targets_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() {
- EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
- epatch "${WORKDIR}/patches"
-
- epatch "${FILESDIR}"/${PN}-uclibc-isnan-isinf.patch
- epatch "${FILESDIR}"/${PN}-add-asm_ioctl_h.patch
-
- # 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=
-
- # -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"
-
-# if use libedit; then
-# einfo "Using libedit to provide readline extension"
-# myconf="${myconf} --enable-libedit --with-readline"
-# elif use readline; then
-# einfo "Using readline to provide readline extension"
-# myconf="${myconf} --with-readline"
-# else
-# myconf="${myconf} --without-readline"
-# fi
- myconf="${myconf} $(use_with readline)"
-
- INSTALL="${EPREFIX}/usr/bin/install -c" econf \
- --program-suffix=${MY_SUFFIX} \
- --with-soname=ruby${MY_SUFFIX} \
- --enable-shared \
- --enable-pthread \
- --enable-psych \
- --disable-rpath \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- --enable-ipv6 \
- $(use_enable debug) \
- $(use_with berkdb dbm) \
- $(use_with gdbm) \
- $(use_with ssl openssl) \
- $(use_with tk) \
- $(use_with ncurses curses) \
- ${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
-
- dosym "libruby${MY_SUFFIX}$(get_libname ${PV%_*})" \
- "/usr/$(get_libdir)/libruby$(get_libname ${PV%.*})"
- dosym "libruby${MY_SUFFIX}$(get_libname ${PV%_*})" \
- "/usr/$(get_libdir)/libruby$(get_libname ${PV%_*})"
-
- 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(18|19|...)"
- elog
-}
-
-pkg_postrm() {
- eselect ruby cleanup
-}