graaff      15/04/14 05:42:58

  Modified:             ChangeLog
  Added:                ruby-1.9.3_p551-r1.ebuild
  Log:
  New revision with backported fix for security bug 546042.
  
  (Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 
0x8883FA56A308A8D7!)

Revision  Changes    Path
1.705                dev-lang/ruby/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/ruby/ChangeLog?rev=1.705&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/ruby/ChangeLog?rev=1.705&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/ruby/ChangeLog?r1=1.704&r2=1.705

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v
retrieving revision 1.704
retrieving revision 1.705
diff -u -r1.704 -r1.705
--- ChangeLog   14 Apr 2015 05:26:56 -0000      1.704
+++ ChangeLog   14 Apr 2015 05:42:58 -0000      1.705
@@ -1,6 +1,11 @@
 # ChangeLog for dev-lang/ruby
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.704 2015/04/14 
05:26:56 graaff Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/ruby/ChangeLog,v 1.705 2015/04/14 
05:42:58 graaff Exp $
+
+*ruby-1.9.3_p551-r1 (14 Apr 2015)
+
+  14 Apr 2015; Hans de Graaff <[email protected]> +ruby-1.9.3_p551-r1.ebuild:
+  New revision with backported fix for security bug 546042.
 
 *ruby-2.2.2 (14 Apr 2015)
 *ruby-2.1.6 (14 Apr 2015)



1.1                  dev-lang/ruby/ruby-1.9.3_p551-r1.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/ruby/ruby-1.9.3_p551-r1.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/ruby/ruby-1.9.3_p551-r1.ebuild?rev=1.1&content-type=text/plain

Index: ruby-1.9.3_p551-r1.ebuild
===================================================================
# Copyright 1999-2015 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_p551-r1.ebuild,v 
1.1 2015/04/14 05:42:58 graaff 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="~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 +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 )
        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="
        virtual/rubygems[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"

        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)"

        # Always disable tk because the module is no longer compatible with
        # stable tcl/tk: https://bugs.gentoo.org/show_bug.cgi?id=500894
        INSTALL="${EPREFIX}/usr/bin/install -c" econf \
                --program-suffix=${MY_SUFFIX} \
                --with-soname=ruby${MY_SUFFIX} \
                --enable-shared \
                --enable-pthread \
                --without-tk \
                $(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 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(19|20|...)"
        elog
}

pkg_postrm() {
        eselect ruby cleanup
}




Reply via email to