Commit graph

885 commits

Author SHA1 Message Date
Mislav Marohnić
74b21936a1 Use patch --force to ignore missing files when patching
From patch(1):

    -f  or  --force
       Assume that the user knows exactly what he or she is doing, and do  not
       ask any questions.  Skip patches whose headers do not say which file is
       to be patched; patch files even though they have the wrong version  for
       the Prereq: line in the patch; and assume that patches are not reversed
       even if they look like they are.  This option does not suppress commen-
       tary; use -s for that.

Fixes #555
2014-04-21 15:32:34 +02:00
Erik Michaels-Ober
5bce29be00 ruby-build 20140420 2014-04-20 10:24:23 +02:00
Adam Harvey
2e6e100a2e Prefer ggrep for grep invocations that use GNU extensions. 2014-04-18 10:51:26 +10:00
Erik Michaels-Ober
0a9b5e3a1e ruby-build 20140408 2014-04-08 13:56:12 +02:00
Mislav Marohnić
09a52d30c2 ruby-build 20140405 2014-04-05 22:02:06 +02:00
Mislav Marohnić
a4c3dbc573 Avoid sed with extended regexp
Seems like sed 4.1.5 on RHEL 5.3 doesn't support `-E`, and sed on OS X doesn't
support `-r` to activate the extended regexp mode. Best to avoid extended regexp
altogether for compatibility.

Fixes #495
2014-04-05 21:29:38 +02:00
Kristofer White
c114885731 Add rbenv install --skip-existing <VERSION> option
The `-f` option allows for forcing installation of versions that already
exist in the environment. If that option isn't used, then an interactive
prompt is created which causes problems for non-interactive execution of
the command.

This change adds the `-s/--skip-existing` option to not install versions
that already exist, while still exiting as success.

Closes #543
2014-04-04 19:18:14 +02:00
Li Yazhou
da2ae30bc1 link the latest ruby-build.$SEED.log and ruby-build.$SEED/ to ruby-build.latest.log and ruby-build.latest/ respectively 2014-03-27 12:28:22 +08:00
Mislav Marohnić
1bcd249ffa Avoid re-downloading if there's a valid tarball in build location
If there already exists a valid tarball in the build location, e.g. as
artefact of a previous install using `--keep`, don't re-download the
file, as there is no need.

References #487
2014-03-25 04:15:50 +01:00
Mislav Marohnić
a3009b4641 Fix re-downloading tarball when destination file already exists
Previously, curl and wget were instructed to try to resume the download
if the destination file already exists. This is supposed to be done via
the "Range" HTTP header, but doesn't work well with CloudFront:

    HTTP server doesn't seem to support byte ranges. Cannot resume.

CloudFront is supposed to support ranges, so I don't know what's going
on here. It might be failing only in case the existing file is a fully
downloaded tarball?

In any case, this disables resuming downloads and resorts to simply
re-downloading the tarball always, overwriting the existing file.

Fixes #487
2014-03-25 03:21:27 +01:00
Dan Poggi
7b62fcff58 Fixes check for user-specified definition
Better to use -f than -e to check for a user-specified definition file.
With -e, if the user accidentally types the name of a directory (or, far
less likely, a device file) with the same name as the Ruby they're
trying to install, they end up with ruby-build doing absolutely nothing
at best, or an error message that could be pretty confusing at worst.
2014-02-26 04:23:56 -05:00
Erik Michaels-Ober
9951b22bcb ruby-build 20140225 2014-02-26 11:06:40 +09:00
Chris Seaton
dcdccd76e4 Add support for JRuby 9000 bundled with the Graal VM
JRuby 9000 (the next major release) includes a backend that supports a
new JVM JIT compiler called Graal. Graal is based on OpenJDK but hasn't
been released yet.

http://openjdk.java.net/projects/graal/
2014-02-26 01:23:04 +01:00
Christian Höltje
e1470752d7 OS X: Fixes check for OpenSSL version
We only care about Apple's OpenSSL when checking the version.  Any
other OpenSSL that happens to be in the PATH doesn't matter.
2014-02-25 19:04:36 -05:00
Erik Michaels-Ober
7710db5777 ruby-build 20140224.1 2014-02-24 23:42:31 +09:00
Erik Michaels-Ober
089523b937 ruby-build 20140224 2014-02-24 20:23:44 +09:00
Colin Mattson
060f50fcd8 Improve Java 7 detection
Java on most (all?) platforms directs `-version` output to STDERR.
2014-02-17 19:44:49 -07:00
Erik Michaels-Ober
36cb25d2a0 ruby-build 20140214 💘 2014-02-14 09:49:06 +01:00
Mislav Marohnić
1c6251073d Use colorize helper for require_gcc
Ensures that color is off if the stderr stream is not a terminal
2014-02-10 20:12:21 +01:00
Mislav Marohnić
047953e125 Simplify Java 7 detection and error message 2014-02-10 20:11:22 +01:00
Chris Seaton
484782aa89 Require Java 7 for jruby-9000-dev. 2014-02-10 15:22:21 +00:00
Erik Michaels-Ober
c78eb9db6c ruby-build 20140210 2014-02-10 12:53:30 +01:00
Chris Seaton
2c07eaf2d4 Add JRuby 9000 snapshot. 2014-02-09 15:25:42 +00:00
Erik Michaels-Ober
cbc33aaa5f ruby-build 20140204 2014-02-04 11:53:40 +01:00
Eric Lindvall
37c9a0465d Add test for MAKE_INSTALL_OPTS
Also fix the ordering of make install arguments
2014-01-22 11:55:01 -08:00
Eric Lindvall
93828a2d16 Add MAKE_INSTALL_OPTS configuration option 2014-01-21 19:29:02 -08:00
Eric Lindvall
60f2b2cd79 Add MAKE_INSTALL_OPTS for packages
Allows for passing environment variables specifically to the "make install"
step of package building.

This can be helpful for providing a different DESTDIR= to a ruby install from
the --prefix that is used
2014-01-21 16:03:46 -08:00
Marc Bellingrath
eed9b53d35 Run sed without the -E flag.
GNU sed version 4.1.5 on CentOS 5.8 does not support the -E flag:
$ sed -E
sed: invalid option -- E
2014-01-17 10:06:38 -05:00
Erik Michaels-Ober
9cd77be141 ruby-build 20140110.1 2014-01-09 22:03:06 +01:00
Erik Michaels-Ober
46720ecb0d ruby-build 20140110 2014-01-09 21:46:56 +01:00
Erik Michaels-Ober
7fbe5af432 ruby-build 20131226 2014-01-07 16:43:04 +01:00
Mislav Marohnić
4d8319bde7 Call rbenv-* subcommands directly, not through the rbenv executable
Benefits:
- makes it easier to stub `rbenv-*` subcommands in tests
- speeds up subcommands because it skips the main `rbenv` executable

Caveats:
- users are no longer able to call `bin/rbenv-install` or
  `rbenv-uninstall` directly
2014-01-05 18:58:57 +01:00
Mislav Marohnić
24ff49ccc0 Support rbenv hook paths that have spaces
Same approach taken in rbenv: sstephenson/rbenv@baf7656d
2014-01-05 18:58:57 +01:00
Yamashita Yuu
92b32f545b Add before/after hooks for rbenv uninstall 2014-01-05 18:58:57 +01:00
Erik Michaels-Ober
69f8dcc8b7 ruby-build 20131225.1 2013-12-25 12:13:58 -05:00
Erik Michaels-Ober
7f398380ba ruby-build 20131225 2013-12-25 11:32:51 -05:00
Mislav Marohnić
963d33f5e6 ruby-build 20131220.1 2013-12-21 02:20:46 +01:00
Phil Smith
85b64c4a52 Fix JRuby install on systems with non-BSD sed
There doesn't seem to be a way to construct a sed invocation for
in-place editing that is compatible with both BSD and GNU sed.

http://stackoverflow.com/q/5694228/11687

Fixes #475
2013-12-21 02:07:06 +01:00
Mislav Marohnić
578f0c5c1c ruby-build 20131220 2013-12-20 19:28:36 +01:00
Thomas Seliger
76b632892b Transform JRuby shebangs to absolute paths, fixing recursion within rbenv
The default shebang for binstubs in a JRuby installation is
`#!/usr/bin/env jruby`. On a rbenv-managed JRuby, this will execute the
`jruby` rbenv shim. In a situation where a JRuby tool like `gem` is
executed from within a running rbenv by a rbenv plugin, (e.g.
rbenv-gemset) this can trigger another rbenv run to resolve the shim.
This can lead to endless recursion of rbenv calls.

Fixes #471, closes #473
References jf/rbenv-gemset#56
2013-12-20 19:23:36 +01:00
Mislav Marohnić
8ebfd1d0a9 Merge branch 'apply-patch'
Closes #469
2013-12-20 19:07:34 +01:00
Mislav Marohnić
57cb1e98c6 ruby-build 20131211 2013-12-12 00:42:15 +01:00
Mislav Marohnić
dc1a77590c Clarify which rbenv install flags get forwarded to ruby-build 2013-12-12 00:35:31 +01:00
Mislav Marohnić
94c15a54f0 Auto-detect and link to Homebrew's readline
I thought this was not necessary, but a number of people had problems
when linking to OS X's "readline" (actually Editline wrapper):

- Some components of Pry wouldn't work
- Writing literal Unicode characters was not possible #379
- The compilation would downright fail in some cases #82 #461

Fixes #461
2013-12-12 00:03:47 +01:00
Mislav Marohnić
2d6d676586 Shorten rbenv install usage synopsis
It was getting out of hand, so just use the single-character flags which
are documented below anyway.
2013-12-11 21:33:32 +01:00
Mislav Marohnić
4351c46923 Add --patch flag to apply a Ruby patch from stdin
If `-p|--patch` flag was set while invoking `ruby-build` or
`rbenv install`, ruby-build will use `patch -p0 -i -` to apply a patch
from stdin to Ruby, Rubinius, or JRuby source code before running the
rest of `build_package_*` commands.

References #443
2013-12-11 21:16:47 +01:00
Mislav Marohnić
6f9647d7de Fix irb on rbx-2.2.1
Install the missing `rubysl-tracer` gem

References rubinius/rubinius#2780
2013-12-11 18:38:53 +01:00
Mislav Marohnić
392679a7fb Fix irb, rake, rdoc, ri for rbx-2.2.1
We symlink Rubinius' `PREFIX/gems/bin` into `PREFIX/bin` so that new
RubyGems binstubs get added to the main bin directory and therefore
become available to rbenv.

However, by throwing away `irb`, `rake`, `rdoc`, and `ri` binstubs
during this process (which are non-executable and have an invalid
shebang), we break the same commands in latest versions of Rubinius.

This change ensures that these binstubs get preserved, their shebang
corrected to `#!PREFIX/bin/rbx`, their executable bit flipped on, and
copied over to the main bin directory.

Fixes #468
2013-12-11 18:38:49 +01:00
Erik Michaels-Ober
a2d9ac49d1 ruby-build 20131206 2013-12-07 10:15:04 +01:00
Sam Stephenson
458d333167 ruby-build 20131122.1 2013-11-22 19:13:46 -06:00