summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Legler <a3li@gentoo.org>2009-05-10 18:52:51 +0000
committerAlex Legler <a3li@gentoo.org>2009-05-10 18:52:51 +0000
commitb4e0b39e0aee30b15cd65407d2ce62737e6eb0c3 (patch)
treecfddffd0183c24bc539288ce5c687c389a0abe79 /dev-lang
parentForgot to restore postrm python_mod_cleanup sanity. (diff)
downloadgentoo-2-b4e0b39e0aee30b15cd65407d2ce62737e6eb0c3.tar.gz
gentoo-2-b4e0b39e0aee30b15cd65407d2ce62737e6eb0c3.tar.bz2
gentoo-2-b4e0b39e0aee30b15cd65407d2ce62737e6eb0c3.zip
Removing vulnerable versions (#268515), fixing license (#233747).
(Portage version: 2.2_rc33/cvs/Linux x86_64)
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/ruby/ChangeLog8
-rw-r--r--dev-lang/ruby/ruby-1.8.6_p114.ebuild6
-rw-r--r--dev-lang/ruby/ruby-1.8.6_p287-r13.ebuild185
-rw-r--r--dev-lang/ruby/ruby-1.8.6_p287-r5.ebuild182
-rw-r--r--dev-lang/ruby/ruby-1.8.6_p368.ebuild4
-rw-r--r--dev-lang/ruby/ruby-1.8.7_p160.ebuild4
-rw-r--r--dev-lang/ruby/ruby-1.8.7_p72-r11.ebuild192
7 files changed, 14 insertions, 567 deletions
diff --git a/dev-lang/ruby/ChangeLog b/dev-lang/ruby/ChangeLog
index 48998bf850c6..aa1f184fcc99 100644
--- a/dev-lang/ruby/ChangeLog
+++ b/dev-lang/ruby/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-lang/ruby
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.399 2009/05/09 17:16:16 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.400 2009/05/10 18:52:51 a3li Exp $
+
+ 10 May 2009; Alex Legler <a3li@gentoo.org> ruby-1.8.6_p114.ebuild,
+ -ruby-1.8.6_p287-r5.ebuild, -ruby-1.8.6_p287-r13.ebuild,
+ ruby-1.8.6_p368.ebuild, -ruby-1.8.7_p72-r11.ebuild,
+ ruby-1.8.7_p160.ebuild:
+ Removing vulnerable versions (#268515), fixing license (#233747).
09 May 2009; Jeroen Roovers <jer@gentoo.org> ruby-1.8.6_p368.ebuild:
Stable for HPPA (bug #268515).
diff --git a/dev-lang/ruby/ruby-1.8.6_p114.ebuild b/dev-lang/ruby/ruby-1.8.6_p114.ebuild
index 0b45de6ee654..6c77cdfd6e7f 100644
--- a/dev-lang/ruby/ruby-1.8.6_p114.ebuild
+++ b/dev-lang/ruby/ruby-1.8.6_p114.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2008 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.6_p114.ebuild,v 1.13 2008/12/23 20:20:12 graaff Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.6_p114.ebuild,v 1.14 2009/05/10 18:52:51 a3li Exp $
WANT_AUTOCONF="latest"
WANT_AUTOMAKE="latest"
@@ -20,7 +20,7 @@ HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.bz2
cjk? ( http://www.geocities.jp/kosako3/oniguruma/archive/${ONIGURUMA}.tar.gz )"
-LICENSE="Ruby"
+LICENSE="|| ( Ruby GPL-2 )"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
IUSE="berkdb cjk debug doc emacs examples gdbm ipv6 rubytests socks5 ssl threads tk xemacs"
diff --git a/dev-lang/ruby/ruby-1.8.6_p287-r13.ebuild b/dev-lang/ruby/ruby-1.8.6_p287-r13.ebuild
deleted file mode 100644
index 22755c1e010c..000000000000
--- a/dev-lang/ruby/ruby-1.8.6_p287-r13.ebuild
+++ /dev/null
@@ -1,185 +0,0 @@
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.6_p287-r13.ebuild,v 1.1 2009/04/03 12:26:26 a3li Exp $
-
-ONIGURUMA="onigd2_5_9"
-
-inherit autotools eutils flag-o-matic multilib versionator
-
-MY_P="${PN}-$(replace_version_separator 3 '-')"
-S=${WORKDIR}/${MY_P}
-
-SLOT=$(get_version_component_range 1-2)
-MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="http://www.ruby-lang.org/"
-SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.bz2"
-
-LICENSE="Ruby"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
-IUSE="berkdb debug doc emacs examples gdbm ipv6 rubytests socks5 ssl threads tk xemacs"
-
-RDEPEND="
- berkdb? ( sys-libs/db )
- gdbm? ( sys-libs/gdbm )
- ssl? ( dev-libs/openssl )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? ( dev-lang/tk )
- app-admin/eselect-ruby
- !=dev-lang/ruby-cvs-${SLOT}*
- !dev-ruby/rdoc
- !dev-ruby/rexml"
-DEPEND="${RDEPEND}"
-PDEPEND="emacs? ( app-emacs/ruby-mode )
- xemacs? ( app-xemacs/ruby-modes )"
-
-PROVIDE="virtual/ruby"
-
-pkg_setup() {
- use tk || return
-
- # Note for EAPI-2 lovers: We'd like to show that custom message.
- # *If* you can make USE dependencies show that, too, feel free to migrate.
- if (use threads && ! built_with_use dev-lang/tk threads) \
- || (! use threads && built_with_use dev-lang/tk threads) ; then
- eerror
- eerror "You have Tk support enabled."
- eerror
- eerror "Ruby and Tk need the same 'threads' USE flag settings."
- eerror "Either change the USE flag on dev-lang/ruby or on dev-lang/tk"
- eerror "and recompile tk."
-
- die "threads USE flag mismatch"
- fi
-}
-
-src_unpack() {
- unpack ${A}
-
- cd "${S}/ext/dl"
- epatch "${FILESDIR}/${PN}-1.8.6-memory-leak.diff"
- cd "${S}"
-
- epatch "${FILESDIR}/${P}-entity_expansion_limit.diff"
- epatch "${FILESDIR}/${PN}-1.8.6-shortname_constants.patch"
- epatch "${FILESDIR}/${PN}-1.8.6-openssl.patch"
- epatch "${FILESDIR}/${PN}-mkconfig.patch"
- epatch "${FILESDIR}/${PN}-ossl_ocsp-verification.patch"
- epatch "${FILESDIR}/${PN}${MY_SUFFIX}-mkmf-parallel-install.patch"
- epatch "${FILESDIR}/${PN}-1.8.6-uclibc-udp.patch"
-
- # 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_compile() {
- # -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
-
- # 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
-
- econf --program-suffix=$MY_SUFFIX --enable-shared \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- $(use_enable threads pthread) \
- $(use_enable ipv6) \
- $(use_enable debug) \
- $(use_with berkdb dbm) \
- $(use_with gdbm) \
- $(use_with ssl openssl) \
- $(use_with tk) \
- ${myconf} \
- --with-sitedir=/usr/$(get_libdir)/ruby/site_ruby \
- --enable-option-checking=no \
- || die "econf failed"
-
- emake EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
-}
-
-src_test() {
- emake -j1 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 -C /location/of/tests runner.rb"
- else
- elog "Enable the rubytests USE flag to install the make check tests"
- fi
-}
-
-src_install() {
- LD_LIBRARY_PATH="${D}/usr/$(get_libdir)"
- RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${SLOT}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- emake DESTDIR="${D}" install || die "make install failed"
-
- MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
- keepdir $(${MINIRUBY} -rrbconfig -e "print Config::CONFIG['sitelibdir']")
- keepdir $(${MINIRUBY} -rrbconfig -e "print Config::CONFIG['sitearchdir']")
-
- if use doc; then
- make DESTDIR="${D}" install-doc || die "make install-doc failed"
- fi
-
- if use examples; then
- dodir /usr/share/doc/${PF}
- cp -pPR sample "${D}/usr/share/doc/${PF}"
- 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 README* ToDo
-
- if use rubytests; then
- dodir /usr/share/${PN}-${SLOT}
- cp -pPR test "${D}/usr/share/${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-
- elog
- elog "This ebuild is compatible to eselect-ruby"
- elog "To switch between available Ruby profiles, execute as root:"
- elog "\teselect ruby set ruby(18|19|...)"
- elog
-}
-
-pkg_postrm() {
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-}
diff --git a/dev-lang/ruby/ruby-1.8.6_p287-r5.ebuild b/dev-lang/ruby/ruby-1.8.6_p287-r5.ebuild
deleted file mode 100644
index e077633ef1c0..000000000000
--- a/dev-lang/ruby/ruby-1.8.6_p287-r5.ebuild
+++ /dev/null
@@ -1,182 +0,0 @@
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.6_p287-r5.ebuild,v 1.8 2009/02/25 16:31:29 dertobi123 Exp $
-
-WANT_AUTOCONF="latest"
-WANT_AUTOMAKE="latest"
-
-ONIGURUMA="onigd2_5_9"
-
-inherit autotools eutils flag-o-matic multilib versionator
-
-MY_P="${PN}-$(replace_version_separator 3 '-')"
-S=${WORKDIR}/${MY_P}
-
-SLOT=$(get_version_component_range 1-2)
-MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="http://www.ruby-lang.org/"
-SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.bz2"
-
-LICENSE="Ruby"
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
-IUSE="berkdb debug doc emacs examples gdbm ipv6 rubytests socks5 ssl threads tk xemacs"
-
-RDEPEND="
- berkdb? ( sys-libs/db )
- gdbm? ( sys-libs/gdbm )
- ssl? ( dev-libs/openssl )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? ( dev-lang/tk )
- >=dev-ruby/ruby-config-0.3.1
- !=dev-lang/ruby-cvs-${SLOT}*
- !dev-ruby/rdoc
- !dev-ruby/rexml"
-DEPEND="${RDEPEND}"
-PDEPEND="emacs? ( app-emacs/ruby-mode )
- xemacs? ( app-xemacs/ruby-modes )"
-
-PROVIDE="virtual/ruby"
-
-pkg_setup() {
- use tk || return
-
- if (use threads && ! built_with_use dev-lang/tk threads) \
- || (! use threads && built_with_use dev-lang/tk threads) ; then
- eerror
- eerror "You have Tk support enabled."
- eerror
- eerror "Ruby and Tk need the same 'threads' USE flag settings."
- eerror "Either change the USE flag on dev-lang/ruby or on dev-lang/tk"
- eerror "and recompile tk."
-
- die "threads USE flag mismatch"
- fi
-}
-
-src_unpack() {
- unpack ${A}
-
- cd "${S}/ext/dl"
- epatch "${FILESDIR}/${PN}-1.8.6-memory-leak.diff"
- cd "${S}"
-
- epatch "${FILESDIR}/${P}-entity_expansion_limit.diff"
- epatch "${FILESDIR}/${PN}-1.8.6-shortname_constants.patch"
- epatch "${FILESDIR}/${PN}-1.8.6-openssl.patch"
- epatch "${FILESDIR}/${PN}-mkconfig.patch"
- epatch "${FILESDIR}/${PN}-ossl_ocsp-verification.patch"
-
- # 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_compile() {
- # -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
-
- # 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
-
- econf --program-suffix=$MY_SUFFIX --enable-shared \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- $(use_enable threads pthread) \
- $(use_enable ipv6) \
- $(use_enable debug) \
- $(use_with berkdb dbm) \
- $(use_with gdbm) \
- $(use_with ssl openssl) \
- $(use_with tk) \
- ${myconf} \
- --with-sitedir=/usr/$(get_libdir)/ruby/site_ruby \
- --enable-option-checking=no \
- || die "econf failed"
-
- emake EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
-}
-
-src_test() {
- emake -j1 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 -C /location/of/tests runner.rb"
- else
- elog "Enable the rubytests USE flag to install the make check tests"
- fi
-}
-
-src_install() {
- LD_LIBRARY_PATH="${D}/usr/$(get_libdir)"
- RUBYLIB="${S}:${D}/usr/$(get_libdir)/ruby/${SLOT}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- emake DESTDIR="${D}" install || die "make install failed"
-
- MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
- keepdir $(${MINIRUBY} -rrbconfig -e "print Config::CONFIG['sitelibdir']")
- keepdir $(${MINIRUBY} -rrbconfig -e "print Config::CONFIG['sitearchdir']")
-
- if use doc; then
- make DESTDIR="${D}" install-doc || die "make install-doc failed"
- fi
-
- if use examples; then
- dodir /usr/share/doc/${PF}
- cp -pPR sample "${D}/usr/share/doc/${PF}"
- 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 README* ToDo
-
- if use rubytests; then
- dodir /usr/share/${PN}-${SLOT}
- cp -pPR test "${D}/usr/share/${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
-
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
- "${ROOT}usr/sbin/ruby-config" ruby$MY_SUFFIX
- fi
- elog
- elog "You can change the default ruby interpreter by ${ROOT}usr/sbin/ruby-config"
- elog
-}
-
-pkg_postrm() {
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
- "${ROOT}usr/sbin/ruby-config" ruby$MY_SUFFIX
- fi
-}
diff --git a/dev-lang/ruby/ruby-1.8.6_p368.ebuild b/dev-lang/ruby/ruby-1.8.6_p368.ebuild
index 44e508ab4a48..65e82d4caf24 100644
--- a/dev-lang/ruby/ruby-1.8.6_p368.ebuild
+++ b/dev-lang/ruby/ruby-1.8.6_p368.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.6_p368.ebuild,v 1.7 2009/05/09 17:16:16 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.6_p368.ebuild,v 1.8 2009/05/10 18:52:51 a3li Exp $
ONIGURUMA="onigd2_5_9"
@@ -16,7 +16,7 @@ DESCRIPTION="An object-oriented scripting language"
HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.bz2"
-LICENSE="Ruby"
+LICENSE="|| ( Ruby GPL-2 )"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd"
IUSE="berkdb debug doc emacs examples gdbm ipv6 rubytests socks5 ssl threads tk xemacs"
diff --git a/dev-lang/ruby/ruby-1.8.7_p160.ebuild b/dev-lang/ruby/ruby-1.8.7_p160.ebuild
index 903ecd755ee4..bc9d0d3869a5 100644
--- a/dev-lang/ruby/ruby-1.8.7_p160.ebuild
+++ b/dev-lang/ruby/ruby-1.8.7_p160.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.7_p160.ebuild,v 1.1 2009/05/07 17:01:59 a3li Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.7_p160.ebuild,v 1.2 2009/05/10 18:52:51 a3li Exp $
#PATCHES APPLY, DOESN'T COMPILE THOUGH
#ONIGURUMA="onigd2_5_9"
@@ -18,7 +18,7 @@ HOMEPAGE="http://www.ruby-lang.org/"
SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.bz2"
# cjk? ( http://www.geocities.jp/kosako3/oniguruma/archive/${ONIGURUMA}.tar.gz )"
-LICENSE="Ruby"
+LICENSE="|| ( Ruby GPL-2 )"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
IUSE="berkdb debug doc emacs examples gdbm ipv6 rubytests socks5 ssl threads tk xemacs" #cjk
diff --git a/dev-lang/ruby/ruby-1.8.7_p72-r11.ebuild b/dev-lang/ruby/ruby-1.8.7_p72-r11.ebuild
deleted file mode 100644
index 7f2c7c84f0b8..000000000000
--- a/dev-lang/ruby/ruby-1.8.7_p72-r11.ebuild
+++ /dev/null
@@ -1,192 +0,0 @@
-# Copyright 1999-2009 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.8.7_p72-r11.ebuild,v 1.2 2009/04/03 18:19:18 mr_bones_ Exp $
-
-#PATCHES APPLY, DOESN'T COMPILE THOUGH
-#ONIGURUMA="onigd2_5_9"
-
-inherit autotools eutils flag-o-matic multilib versionator
-
-SLOT=$(get_version_component_range 1-2)
-MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
-
-MY_P="${PN}-$(replace_version_separator 3 '-')"
-S=${WORKDIR}/${MY_P}
-
-DESCRIPTION="An object-oriented scripting language"
-HOMEPAGE="http://www.ruby-lang.org/"
-SRC_URI="mirror://ruby/${SLOT}/${MY_P}.tar.bz2"
-# cjk? ( http://www.geocities.jp/kosako3/oniguruma/archive/${ONIGURUMA}.tar.gz )"
-
-LICENSE="Ruby"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
-IUSE="berkdb debug doc emacs examples gdbm ipv6 rubytests socks5 ssl threads tk xemacs" #cjk
-
-RDEPEND="
- berkdb? ( sys-libs/db )
- gdbm? ( sys-libs/gdbm )
- ssl? ( dev-libs/openssl )
- socks5? ( >=net-proxy/dante-1.1.13 )
- tk? ( dev-lang/tk )
- app-admin/eselect-ruby
- !=dev-lang/ruby-cvs-${SLOT}*
- !dev-ruby/rdoc
- !dev-ruby/rexml"
-DEPEND="${RDEPEND}"
-PDEPEND="emacs? ( app-emacs/ruby-mode )
- xemacs? ( app-xemacs/ruby-modes )"
-
-PROVIDE="virtual/ruby"
-
-pkg_setup() {
- use tk || return
-
- if (use threads && ! built_with_use dev-lang/tk threads) \
- || (! use threads && built_with_use dev-lang/tk threads) ; then
- eerror
- eerror "You have Tk support enabled."
- eerror
- eerror "Ruby and Tk need the same 'threads' USE flag settings."
- eerror "Either change the USE flag on dev-lang/ruby or on dev-lang/tk"
- eerror "and recompile tk."
-
- die "threads USE flag mismatch"
- fi
-}
-
-src_unpack() {
- unpack ${A}
-
-# if use cjk ; then
-# einfo "Applying ${ONIGURUMA}"
-# pushd "${WORKDIR}/oniguruma"
-# econf --with-rubydir="${S}" || die "oniguruma econf failed"
-# emake $MY_SUFFIX || die "oniguruma emake failed"
-# popd
-# fi
-
- cd "${S}/ext/dl"
- epatch "${FILESDIR}/${PN}-1.8.6-memory-leak.diff"
- cd "${S}"
- epatch "${FILESDIR}/${PN}-1.8.6-shortname_constants.patch"
- epatch "${FILESDIR}/${PN}-mkconfig.patch"
- epatch "${FILESDIR}/${PN}-ossl_ocsp-verification.patch"
- epatch "${FILESDIR}/${PN}${MY_SUFFIX}-mkmf-parallel-install.patch"
-
- # 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_compile() {
- # -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
-
- # 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
-
- econf --program-suffix=$MY_SUFFIX --enable-shared \
- $(use_enable socks5 socks) \
- $(use_enable doc install-doc) \
- $(use_enable threads pthread) \
- $(use_enable ipv6) \
- $(use_enable debug) \
- $(use_with berkdb dbm) \
- $(use_with gdbm) \
- $(use_with ssl openssl) \
- $(use_with tk) \
- ${myconf} \
- --with-sitedir=/usr/$(get_libdir)/ruby/site_ruby \
- --enable-option-checking=no \
- || die "econf failed"
-
- emake EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
-}
-
-src_test() {
- emake -j1 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 -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
-
- LD_LIBRARY_PATH="${D}/usr/$(get_libdir)"
- RUBYLIB="${S}:${LD_LIBRARY_PATH}/ruby/${SLOT}"
- for d in $(find "${S}/ext" -type d) ; do
- RUBYLIB="${RUBYLIB}:$d"
- done
- export LD_LIBRARY_PATH RUBYLIB
-
- emake DESTDIR="${D}" install || die "make install failed"
-
- MINIRUBY=$(echo -e 'include Makefile\ngetminiruby:\n\t@echo $(MINIRUBY)'|make -f - getminiruby)
- keepdir $(${MINIRUBY} -rrbconfig -e "print Config::CONFIG['sitelibdir']")
- keepdir $(${MINIRUBY} -rrbconfig -e "print Config::CONFIG['sitearchdir']")
-
- if use doc; then
- make DESTDIR="${D}" install-doc || die "make install-doc failed"
- fi
-
- if use examples; then
- dodir /usr/share/doc/${PF}
- cp -pPR sample "${D}/usr/share/doc/${PF}"
- 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 README* ToDo
-
- if use rubytests; then
- dodir /usr/share/${PN}-${SLOT}
- cp -pPR test "${D}/usr/share/${PN}-${SLOT}"
- fi
-}
-
-pkg_postinst() {
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-
- elog
- elog "This ebuild is compatible to eselect-ruby"
- elog "To switch between available Ruby profiles, execute as root:"
- elog "\teselect ruby set ruby(18|19|...)"
- elog
-}
-
-pkg_postrm() {
- if [[ ! -n $(readlink "${ROOT}"usr/bin/ruby) ]] ; then
- eselect ruby set ruby${MY_SUFFIX}
- fi
-}