diff options
author | Alex Legler <a3li@gentoo.org> | 2009-05-10 18:52:51 +0000 |
---|---|---|
committer | Alex Legler <a3li@gentoo.org> | 2009-05-10 18:52:51 +0000 |
commit | b4e0b39e0aee30b15cd65407d2ce62737e6eb0c3 (patch) | |
tree | cfddffd0183c24bc539288ce5c687c389a0abe79 /dev-lang | |
parent | Forgot to restore postrm python_mod_cleanup sanity. (diff) | |
download | gentoo-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/ChangeLog | 8 | ||||
-rw-r--r-- | dev-lang/ruby/ruby-1.8.6_p114.ebuild | 6 | ||||
-rw-r--r-- | dev-lang/ruby/ruby-1.8.6_p287-r13.ebuild | 185 | ||||
-rw-r--r-- | dev-lang/ruby/ruby-1.8.6_p287-r5.ebuild | 182 | ||||
-rw-r--r-- | dev-lang/ruby/ruby-1.8.6_p368.ebuild | 4 | ||||
-rw-r--r-- | dev-lang/ruby/ruby-1.8.7_p160.ebuild | 4 | ||||
-rw-r--r-- | dev-lang/ruby/ruby-1.8.7_p72-r11.ebuild | 192 |
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 -} |