diff options
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/rubinius/Manifest | 1 | ||||
-rw-r--r-- | dev-lang/rubinius/rubinius-3.43.ebuild | 89 |
2 files changed, 90 insertions, 0 deletions
diff --git a/dev-lang/rubinius/Manifest b/dev-lang/rubinius/Manifest index 71c8a2d2e09..d780d9e812d 100644 --- a/dev-lang/rubinius/Manifest +++ b/dev-lang/rubinius/Manifest @@ -1,2 +1,3 @@ DIST rubinius-2.5.3.tar.bz2 11636033 SHA256 9af4d6e9d1e78a586579c86b9eb9a082cb863885d4a7cf33989d73280461e5fc SHA512 b923446d325dc3ce5ad28af9ee527607fae3259b85e85aeff97c1bebbb4520daf70616957b1c0ded900ed19e59025826dee66977c19cd2a2d4e9a0296811eb20 WHIRLPOOL 9ec26e62fde5d55153ce8f7fc8b57297fc365f94fc43d18c1a99c94823999494653e5d44ad1a27e31ae0803fc0c2d23d04fea7c7669210754236a9aa38e68b19 DIST rubinius-2.5.5.tar.bz2 11659850 SHA256 217659849ca2c67322d24ce7167e760dc835f32a701ca6e558703914ca82d02f SHA512 a862146ddbbdcd4439eb64e78bfe6d09ae4cca540d19869618426d3f451544658713fe8eb7d46493785eb0cc721077e624293cc44d68eea3ef584967b43a18d7 WHIRLPOOL 82e45406f330339a3dc06ee26cb0baf39bd4ab10147ebbfbe2eaf12c72e44fe683d3eff3156af0f09feee4bc3d50334d041f497727a6ae86fd24347f75a658ae +DIST rubinius-3.43.tar.bz2 13013106 SHA256 2c573257518774e464036515cc7283bc934a41566599afe94612c605844481ad SHA512 80ca70f1aeea2f48e9f4bbd9dc646e0fdabf266cde879fd6acb46bcc38140a2738fddf7d63fa72c386f0411046f457af02deb1162b249c7942bdc0e4a8138023 WHIRLPOOL 63f53a69a16772cfaa560cb5c8ed21dafe5b2eae221948be56f34b4a4755f878f3f9ff5ae7d181479770c1e9ca9c9be48a521d5e9465d1dc15c0641aca803d34 diff --git a/dev-lang/rubinius/rubinius-3.43.ebuild b/dev-lang/rubinius/rubinius-3.43.ebuild new file mode 100644 index 00000000000..a5ff3276f10 --- /dev/null +++ b/dev-lang/rubinius/rubinius-3.43.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils flag-o-matic multilib versionator + +DESCRIPTION="A re-implementation of the Ruby VM designed for speed" +HOMEPAGE="http://rubini.us" +SRC_URI="https://rubinius-releases-rubinius-com.s3.amazonaws.com/${P}.tar.bz2" + +LICENSE="BSD" +KEYWORDS="~amd64" +SLOT="0" +IUSE="+llvm" + +RDEPEND=" + llvm? ( >=sys-devel/llvm-3.6 ) + dev-libs/openssl:0 + sys-libs/ncurses + sys-libs/readline:0 + dev-libs/libyaml + virtual/libffi + sys-libs/zlib +" + +DEPEND="${RDEPEND} + =dev-ruby/rake-10* + dev-ruby/bundler +" + +pkg_setup() { + unset RUBYOPT +} + +src_prepare() { + # src_test will wait until all processes are reaped, so tune down + # the long sleep process a bit. + sed -i -e 's/sleep 1000/sleep 300/' spec/ruby/core/io/popen_spec.rb || die + + # Avoid specs that cannot work in the portage context + rm -f spec/ruby/core/argf/read_nonblock_spec.rb || die + + # Drop error CFLAGS per Gentoo policy. + sed -i -e '/Werror/ s:^:#:' rakelib/blueprint.rb || die + + bundle --local || die +} + +src_configure() { + conf="" + if ! use llvm ; then + conf+="--disable-llvm " + fi + + #Rubinius uses a non-autoconf ./configure script which balks at econf + INSTALL="${EPREFIX}/usr/bin/install -c" ./configure \ + --prefix /usr/$(get_libdir) \ + --mandir /usr/share/man \ + --without-rpath \ + --with-vendor-zlib \ + ${conf} \ + || die "Configure failed" +} + +src_compile() { + RBXOPT="-Xsystem.log=syslog" rake build || die "Compilation failed" +} + +src_test() { + rake spec || die "Tests failed" + einfo "Waiting for forked processes to die" +} + +src_install() { + # The install phase tries to determine if there are relevant + addpredict /usr/local/lib64/ruby + + local minor_version=$(get_version_component_range 1-2) + local librbx="usr/$(get_libdir)/rubinius" + + RBXOPT="-Xsystem.log=syslog" DESTDIR="${D}" rake install || die "Installation failed" + + dosym /${librbx}/bin/rbx /usr/bin/rbx || die "Couldn't make rbx symlink" + + insinto /${librbx}/${minor_version}/site + doins "${FILESDIR}/auto_gem.rb" || die "Couldn't install rbx auto_gem.rb" + RBXOPT="-Xsystem.log=syslog" RBX_RUNTIME="${S}/runtime" RBX_LIB="${S}/lib" bin/rbx compile "${D}/${librbx}/${minor_version}/site/auto_gem.rb" || die "Couldn't bytecompile auto_gem.rb" +} |