Commit graph

267 commits

Author SHA1 Message Date
Mislav Marohnić
f118b173af Extra definitions paths via RUBY_BUILD_DEFINITIONS
This is a colon-separated list of directories that will get searched for
build definition in order from left to right.
2014-08-17 12:20:53 -07:00
Mislav Marohnić
ff75ca7204 Support changing RUBY_BUILD_ROOT
This is to allow specifying an alternate path where `share/ruby-build/*`
definitions reside. Useful in tests as well.
2014-08-17 12:20:53 -07:00
Erik Michaels-Ober
c819790848 ruby-build 20140702 2014-07-02 08:37:09 +02:00
Yamashita Yuu
07ef88d7c8 Surely update local git working copy 2014-06-07 01:27:49 +09:00
Yamashita Yuu
01e8767560 Fix fetch_git with --keep
Update existing git repo if exists, or clone if not exists.
The destination repo might exist if the `--keep` was supplied for `ruby-build`.
2014-06-07 01:27:49 +09:00
Mislav Marohnić
273be046b1 ruby-build 20140524 2014-05-24 22:41:15 +07:00
Mislav Marohnić
5dc9233199 Merge remote-tracking branch 'origin' into shasum 2014-05-23 14:40:48 +07:00
Thomas Johansen
b4154d11e8 Re-introduce legacy MD5 checksum verification based on checksum length
This is so any 3rd-party definitions continue to work even if they have
MD5 checksums embedded.
2014-05-23 14:39:41 +07:00
Thomas Johansen
fb5e2b1ae6 Replace MD5 commands with SHA2 equivalents
A more secure hashing algorithm makes it less feasible to serve up a
modified tarball that matches the same checksum.

See the discussion in #548
2014-05-23 14:34:37 +07:00
Mislav Marohnić
c79dcb379e Merge branch 'patch-galore' 2014-05-23 14:14:53 +07:00
SHIBATA Hiroshi
846cad88ee Revert "Merge pull request #535 from Fleurer/patch/1"
This reverts commit d45f145197, reversing
changes made to 13de51105b.
2014-05-12 10:15:53 +09:00
Erik Michaels-Ober
6da69089fb ruby-build 20140509 2014-05-09 01:15:24 +02:00
SHIBATA Hiroshi
d45f145197 Merge pull request #535 from Fleurer/patch/1
link the latest log to /tmp/ruby-build.latest.log
2014-05-06 18:17:23 +09:00
Chris Seaton
6953313c04 Make the downloading message print the actual file name, not just the package name plus .tar.gz. 2014-04-26 16:15:10 +01:00
Mislav Marohnić
210ceef8a3 More portable invocation of mktemp
`mktemp -t ruby-patch`, although working on OS X, fails on Travis CI
with the message "too few X's in template".

https://travis-ci.org/sstephenson/ruby-build/builds/23436088
2014-04-21 17:24:11 +02:00
Mislav Marohnić
c76cde673e Make --patch compatible with git diff patches
Filenames in git diff patches are prefixed by default by "a/" (source)
and "b/" destination. Such patches don't work with ruby-builds `--patch`
option since it internally uses `patch -p0`.

Prior workarounds were to use either an intermediate step:

    filterdiff --strip=1

or to generate the patch without the prefix in the first place:

    git diff --no-prefix ...

Now, git diff patches are detected by searching for this pattern:

    diff --git a/...

And `patch -p1` is used by default in such cases to strip the 1st
component of filename paths.

Fixes #521, closes #484
2014-04-21 16:01:06 +02:00
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
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
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
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
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