summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Legler <a3li@gentoo.org>2010-05-01 10:25:23 +0000
committerAlex Legler <a3li@gentoo.org>2010-05-01 10:25:23 +0000
commit5f0c55c98f52e19295cfa6d793c18d3d954c1f24 (patch)
tree212e60612d8b84d775aa22f0b92d15d2f6d496cf /dev-lang
parentRevision bump enabling support for Ruby 1.9. Improve automatic gem symlink se... (diff)
downloadhistorical-5f0c55c98f52e19295cfa6d793c18d3d954c1f24.tar.gz
historical-5f0c55c98f52e19295cfa6d793c18d3d954c1f24.tar.bz2
historical-5f0c55c98f52e19295cfa6d793c18d3d954c1f24.zip
Version bump. Fixes security bugs 296052 and 300468. No longer installs rubygems or auto_gem.rb. Use dev-ruby/rubygems[ruby_targets_ruby19] instead.
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/ruby/ChangeLog9
-rw-r--r--dev-lang/ruby/Manifest11
-rw-r--r--dev-lang/ruby/ruby-1.9.1_p376.ebuild180
3 files changed, 195 insertions, 5 deletions
diff --git a/dev-lang/ruby/ChangeLog b/dev-lang/ruby/ChangeLog
index 8f4289d79982..c2f2381f2f9c 100644
--- a/dev-lang/ruby/ChangeLog
+++ b/dev-lang/ruby/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-lang/ruby
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.444 2010/01/13 19:55:54 a3li Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.445 2010/05/01 10:25:23 a3li Exp $
+
+*ruby-1.9.1_p376 (01 May 2010)
+
+ 01 May 2010; Alex Legler <a3li@gentoo.org> +ruby-1.9.1_p376.ebuild:
+ Version bump. Fixes security bugs 296052 and 300468. No longer installs
+ rubygems or auto_gem.rb. Use dev-ruby/rubygems[ruby_targets_ruby19]
+ instead.
13 Jan 2010; Alex Legler <a3li@gentoo.org> -ruby-1.8.6_p369.ebuild,
-ruby-1.8.7_p174-r1.ebuild:
diff --git a/dev-lang/ruby/Manifest b/dev-lang/ruby/Manifest
index bcc3ab564391..1e972233fd5c 100644
--- a/dev-lang/ruby/Manifest
+++ b/dev-lang/ruby/Manifest
@@ -9,18 +9,21 @@ AUX ruby18-mkmf-parallel-install.patch 527 RMD160 1cb49132c4b1e6d9d9870b69a2fde7
DIST ruby-1.8.6-p388.tar.bz2 3973412 RMD160 9f451182ef4fb485109d96953e6af388151cadc8 SHA1 175e7f1571761e522e88cc8a8ed123f000c99c59 SHA256 8536b18413f2475698fa275b356daff6ceab5232bc503496f4afbee64e8b4abc
DIST ruby-1.8.7-p249.tar.bz2 4153461 RMD160 96b238bd7194652ec194a505c2e5911441c5c5ee SHA1 2947f21f22e9345a3e94d84e6f88e7d0fc98a871 SHA256 8b89448fc79df6862660e9f77e884f06c76da28f078d8edd2f17567a615f3af5
DIST ruby-1.9.1-p243.tar.bz2 7191348 RMD160 3af130d692f9813501ccc570d6492b8003b1e6f9 SHA1 f9ec27a17d4f2f5be000d1bd46170344be0b6dfb SHA256 39c9850841c0dd5d368f96b854f97c19b21eb28a02200f8b4e151f608092e687
+DIST ruby-1.9.1-p376.tar.bz2 7293106 RMD160 0aa585333d337c030c93a8b405e46d990514709d SHA1 878e18719099b742c9353e0fe054a9d602568d2e SHA256 79164e647e23bb7c705195e0075ce6020c30dd5ec4f8c8a12a100fe0eb0d6783
DIST ruby-patches-1.8.6_p388.tar.bz2 3137 RMD160 6c9b3099687aef29bf9881f11c2915fbd0ba8196 SHA1 7222102440156b9fd0b461bd23828301aa62a5ad SHA256 93053c8fe2e9fcf9fba714780466678c78b42be59547f76055ffea53aef4c4e5
DIST ruby-patches-1.8.7_p249.tar.bz2 1499 RMD160 98670658db00a1c4ad563e68bf25263fd7f317fd SHA1 d371f7f25a75ac8626e2e87a570bb52a60579fb8 SHA256 b35ba05fb07c0264a9232e756cd80ff7f284fb8aa464368ce028d67fa11f31af
DIST ruby-patches-1.9.1_p243.tar.bz2 2460 RMD160 06f23fc2c3483cb3f552eabaa4fe22624522c6cc SHA1 7d32d38f8bccd1e230231091cfd161768624ab78 SHA256 5d9e1b8a61c9f08230e05ec91802adbee437f91ac772f679200815c1ee1a3f30
+DIST ruby-patches-1.9.1_p376.tar.bz2 2091 RMD160 b3a899bb98481081ff2de01c5c9e89549b28ebc8 SHA1 cea557a7732b3bc7c8140c3405dd193eb1c10714 SHA256 c2de7c1c0efb7e4f22d1a771931c886e8e76011cc02aab82652b6f71f4b613c6
EBUILD ruby-1.8.6_p388.ebuild 5327 RMD160 ad570153923670ac2f088a22bd4d65281889979f SHA1 5272b564e2f9146f9d4944e0537d2678aad1db70 SHA256 ba953e47f50eb97c4226d253166d92691e18ddbe3e5002c798a3b7d0eb11bcef
EBUILD ruby-1.8.7_p249.ebuild 5342 RMD160 f3fcfad0990c79ea3c051ca95fc67e819ae4a3ae SHA1 5d47a9e72df769e867b4ce10dbb3de6edd548b59 SHA256 3ef9f9ca68645f2656eb239c89697a848d22d56ed17794aac9b0d5846d356d16
EBUILD ruby-1.9.1_p243.ebuild 5497 RMD160 9db9da631e007585ab84671e76bcc9a11f9605d8 SHA1 bb7de8ddae0384fba148ead615fe306ed4d69ba3 SHA256 366d33e7d0d5d0bab6a8e744c85b6ea0b6fb886b75c7ae029a8e04cb0faad783
-MISC ChangeLog 67944 RMD160 d75bc90928e0a937f08930e1ed09319c29d10f3c SHA1 612a3c9390359c6e6772ca28dd8caaf858f57e44 SHA256 aa1a05c25676859e803c4c1ac816109e46e75376d5a76eb08c7f15a96b66a27d
+EBUILD ruby-1.9.1_p376.ebuild 5091 RMD160 6929424fff1510ed883dc70ac968b13cc5d603de SHA1 5ff2cb4b34b5f4d26027e2f5af8f0a9b0763577b SHA256 3d6070028fd5e38c2e8cab32d8b9c41c8930019dac36cb726ac1de2d709708e7
+MISC ChangeLog 68202 RMD160 4d9edcadd2a9c3b0e4e2200c1226ec330e1f1c36 SHA1 4526e797ee106bb6be641441155f7047efef71c3 SHA256 8fdcc97632b46ca245eb7614c01992380081fdb4c51dc9d6e667e07e7db75c96
MISC metadata.xml 262 RMD160 f8642aa78425fe09dc0e0660cb20a5bd4233d5bb SHA1 64def0369477ecf76b9285fb9c1cf0e6a4f334e5 SHA256 5ee3c0cfedcb966505e4fafcfc5321a8ee20c128da9bbcafff5aa268df588d59
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
-iEYEARECAAYFAktOJVAACgkQ+tgfDpkAy6Ab+QCgld8nad//ETeAZAICDLlwHw4Z
-/AIAn2d88fG8kscrI0XELPOX62nmEyee
-=RWLA
+iEYEARECAAYFAkvcAZoACgkQ+tgfDpkAy6BIMgCfYGEzW6j4noynPzj2vQRdIt6T
+qIQAn3wM2e9LHLI8ce5cys3DPrQq6MMc
+=Fbhg
-----END PGP SIGNATURE-----
diff --git a/dev-lang/ruby/ruby-1.9.1_p376.ebuild b/dev-lang/ruby/ruby-1.9.1_p376.ebuild
new file mode 100644
index 000000000000..673ef7c3782b
--- /dev/null
+++ b/dev-lang/ruby/ruby-1.9.1_p376.ebuild
@@ -0,0 +1,180 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ruby-1.9.1_p376.ebuild,v 1.1 2010/05/01 10:25:23 a3li Exp $
+
+EAPI=2
+
+inherit autotools eutils flag-o-matic multilib versionator
+
+# Add patchlevel
+MY_P="${P/_/-}"
+
+# 1.9.1.0 -> 1.9
+SLOT=$(get_version_component_range 1-2)
+
+# 1.9.1.0 -> 1.9.1 (used in libdirs)
+RUBYVERSION=$(get_version_component_range 1-3)
+
+# 1.9 -> 19
+MY_SUFFIX=$(delete_version_separator 1 ${SLOT})
+
+DESCRIPTION="An object-oriented scripting language"
+HOMEPAGE="http://www.ruby-lang.org/"
+SRC_URI="mirror://ruby/${MY_P}.tar.bz2
+ http://dev.a3li.li/gentoo/distfiles/${PN}-patches-${PVR}.tar.bz2"
+
+LICENSE="|| ( Ruby GPL-2 )"
+KEYWORDS="~amd64 ~hppa ~x86 ~x86-fbsd"
+IUSE="berkdb debug doc emacs examples gdbm ipv6 rubytests socks5 ssl 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[threads] )
+ >=app-admin/eselect-ruby-20100402
+ !=dev-lang/ruby-cvs-${SLOT}*
+ !<dev-ruby/rdoc-2
+ !dev-ruby/rexml"
+DEPEND="${RDEPEND}"
+PDEPEND="
+ emacs? ( app-emacs/ruby-mode )
+ xemacs? ( app-xemacs/ruby-modes )"
+
+PROVIDE="virtual/ruby"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ cd "${S}"
+
+ EPATCH_FORCE="yes" EPATCH_SUFFIX="patch" \
+ epatch "${WORKDIR}/patches-${PVR}"
+
+ einfo "Removing rake and rubygems..."
+ # Strip rake and rubygems
+ rm -rf bin/rake lib/rake.rb lib/rake || die "rm rake failed"
+ rm -rf bin/gem || die "rm gem 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() {
+ # -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
+
+ # ipv6 hack, bug 168939. Needs --enable-ipv6.
+ use ipv6 || myconf="--with-lookup-order-hack=INET"
+
+ econf --program-suffix=${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) \
+ ${myconf} \
+ --enable-option-checking=no \
+ || die "econf failed"
+}
+
+src_compile() {
+ emake EXTLDFLAGS="${LDFLAGS}" || die "emake failed"
+}
+
+src_test() {
+ emake 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}-${RUBYVERSION}/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 "ruby19 -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
+
+ # Creating the rubygems directories, bug #230163 once more.
+ 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 DESTDIR="${D}" install || die "make install failed"
+
+ 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 doc/NEWS-1.8.7 README* ToDo
+
+ if use rubytests; then
+ dodir /usr/share/${PN}-${RUBYVERSION}
+ cp -pPR test "${D}/usr/share/${PN}-${RUBYVERSION}"
+ 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
+}