Commit graph

194 commits

Author SHA1 Message Date
Mislav Marohnić
51000d5e56 Add test for automatic fetching of rake gem 2013-10-26 18:28:53 +02:00
Mislav Marohnić
9aab127f75 Install Rake and Bundler in isolation when missing
Some Rubies need Rake or Bundler for the installation process. However,
since the host Ruby version might not have those gems installed, install
them in a temporary GEM_HOME and add their executables to PATH.

Fixes #426
2013-10-26 17:39:55 +02:00
Mislav Marohnić
730a8164d5 Use rake from the current bundle for Rubinius
Rake might not be available on the system, but if there is a Gemfile,
assume that it bundles rake.
2013-10-26 15:48:25 +02:00
Mislav Marohnić
f27c561388 Recursive copying fixes and tests
Use the `cp -f` flag to force unlinking non-writable files.

Closes #384
2013-10-26 08:20:44 +02:00
Jeremy Stephens
273bc17fe7 Force copying files for mruby
When installing mruby-dev, the cp command doesn't use the force flag.
This causes an issue when using a custom build configuration (via
MRUBY_CONFIG environment variable) and installing mrbgems from Github,
as the pack files in the git repositories are read-only.
2013-10-26 08:05:06 +02:00
Mislav Marohnić
51d8e5125c Prefer control flow to chaining grouped expressions
Helps avoid the pitfall where ERR trap has no effect.
See 262eb1658c
2013-10-26 06:43:54 +02:00
Mislav Marohnić
262eb1658c Clearer error message when HTTP download fails
Previously, if `http get` failed, the `download_tarball` function would
still continue since the ERR trap had no effect at that point.

Given a script in the form of `{ ... } || return 1`, the expressions
that are the part of the first group are not subject to ERR trap since
they are non-last in a chain of expressions.

However, since we still can't count on the ERR trap taking effect in
this phase, better just rewrite the function to manually abort.

Fixes #394
2013-10-26 06:32:03 +02:00
Fabian M. Borschel
e466bfeab0 Set default MAKE=gmake on FreeBSD 2013-10-26 05:33:57 +02:00
Mislav Marohnić
b37427b688 Support relative path as install prefix
Fixes #110
2013-10-26 05:24:25 +02:00
Mislav Marohnić
42aa6ccfcc Merge master into docwhat-homebrew-yaml
Conflicts:
	share/ruby-build/1.9.1-p378
	share/ruby-build/1.9.1-p430
	share/ruby-build/1.9.2-p0
	share/ruby-build/1.9.2-p180
	share/ruby-build/1.9.2-p290
	share/ruby-build/1.9.2-p318
	share/ruby-build/1.9.2-p320
	share/ruby-build/1.9.3-p0
	share/ruby-build/1.9.3-p125
	share/ruby-build/1.9.3-p194
	share/ruby-build/1.9.3-p286
	share/ruby-build/1.9.3-p327
	share/ruby-build/1.9.3-p362
	share/ruby-build/1.9.3-p374
	share/ruby-build/1.9.3-p385
	share/ruby-build/1.9.3-p392
	share/ruby-build/1.9.3-p429
	share/ruby-build/1.9.3-p448
	share/ruby-build/1.9.3-preview1
	share/ruby-build/1.9.3-rc1
	share/ruby-build/2.0.0-preview1
2013-10-24 22:28:57 +02:00
Erik Michaels-Ober
59df40be9e ruby-build 20131024 2013-10-24 06:51:38 -07:00
Mislav Marohnić
9f77dfc4d5 Merge pull request #433 from sstephenson/rbx-fix
Fix Rubinius gem binstubs path
2013-10-23 07:39:30 -07:00
Mislav Marohnić
f859d9a3b4 Fix Rubinius 2.1.x on Linux by supporting bz2 archives
`tar` on OS X auto-detects the type of compression used, so it doesn't
care whether `-z` or `-j` flags were passed to it for extraction.
However, since latest Rubinius archives are compressed with bzip2, we
must handle this distinction explicitly for the sake of other platforms.

fixes #470
2013-10-23 16:27:49 +02:00
Mislav Marohnić
dbd8c71d17 Fix Rubinius gem binstubs path
Rubinius 2 insists that it installs RubyGems binstubs into
`PREFIX/gems/bin` instead of `PREFIX/bin`.

This creates complexity for rbenv rehash and exec processes, so we
symlink `gems/bin` into `bin` and have RubyGems create binstubs at a
location that is consistent with other Ruby implementations.

See sstephenson/rbenv#178, sstephenson/rbenv#461
2013-10-20 02:18:29 +02:00
Erik Michaels-Ober
ed5d33ee39 ruby-build 20131008 2013-10-08 14:39:37 +02:00
Sergey Pchelincev
985c0160eb run bundle before configure rubinius 2013-10-05 16:43:28 +03:00
Erik Michaels-Ober
463e15b4ee ruby-build 20130923 2013-09-23 09:26:52 +02:00
Erik Michaels-Ober
b6b002e743 ruby-build 20130907 2013-09-07 11:21:44 +02:00
Erik Michaels-Ober
3f0576b9e0 ruby-build 20130901 2013-09-01 13:26:49 +01:00
Dirkjan Bussink
b002d92c4a Don't set the Rubinius gems directory to the prefix
This causes tricky issues with Bundler. Bundler assumes that the
configure gem path *only* contains gems. When using this configuration
option, this is not the case.

What happens is that Bundler then removes the path for the Ruby stdlib
from the load path, because it is located inside what is configured as
the gems directory. This then breaks for example Rails applications when
using ruby-build to build Rubinius.

Also see: https://github.com/rubinius/rubinius/issues/2544
2013-08-12 10:56:00 +02:00
Erik Michaels-Ober
1d254ef671 ruby-build 20130806 2013-08-06 08:43:06 +02:00
Christian Höltje
50dc0c9931 Use Homebrew libyaml if it is available
This checks for Homebrew's yaml to see if it
is available and that `--with-libyaml-dir` hasn't
been specified.

Related issue: #379
2013-07-09 20:40:45 -04:00
Erik Michaels-Ober
86daa42931 ruby-build 20130628
Closes #375.
2013-06-28 05:16:10 +02:00
Mislav Marohnić
ae6a8378d9 use Homebrew openssl if available
Fixes #343, references #367
2013-06-28 01:38:11 +02:00
katiepru
edf384653f making checksum comparison case insensitive 2013-06-19 21:19:51 -04:00
Sam Stephenson
d5663b780b Fix OpenSSL version pattern (#365) 2013-05-29 09:12:21 -05:00
Yi Gu
7d538a3fdd Treat the openssl 0.9.8(r|x) bundled with OS X as broken library. So the ruby-build will download and build the latest one. 2013-05-29 22:50:41 +09:00
Erik Michaels-Ober
1b170ee85a ruby-build 20130518 2013-05-18 05:52:58 -07:00
Erik Michaels-Ober
ff950802ef ruby-build 20130514 2013-05-14 23:35:18 -07:00
Cyril Mougel
3e61f76a67 Allow define RUBY_CONFIGURE_OPTS on rbx configure
The configure of rbx can take a RUBY_CONFIGURE_OPTS. You can by example
use the `--skip-prebuilt` OPTS
2013-05-07 23:09:35 +02:00
Sam Stephenson
b6f1d2498d Typo (#353) 2013-05-06 19:44:35 -05:00
Sam Stephenson
5c47714acd Avoid touching CFLAGS unless explicitly requested (#352) 2013-05-06 18:03:54 -05:00
Erik Michaels-Ober
9f8d53365a ruby-build 20130501 2013-05-01 07:38:43 -07:00
Jeremy Kemper
b219192020 Restore -O3 default when we build with clang 2013-04-26 15:06:43 -07:00
Sam Stephenson
353246926c Build REE --without-tk on Darwin if X11 is missing
Fixes #267
2013-04-19 11:46:13 -05:00
Sam Stephenson
5f12964089 Pass $RUBY_CONFIGURE_OPTS to REE installer with -c 2013-04-19 11:46:12 -05:00
Sam Stephenson
b4fd8e94e3 Extract sanitize helper 2013-04-19 11:46:12 -05:00
Sam Ruby
3064886674 Address some feedback from Jeremy
* Decrease likelihood of cache collisions
* Avoid file:// urls (and therefore the need to escape)
2013-04-19 11:46:12 -05:00
Sam Ruby
394d8aaa08 cache git clone directory
if RUBY_BUILD_CACHE_PATH is set, create and maintain a local bare git
repository in this location.  The name of the git repository is based
on the git URL, so it will be shared between branches.
2013-04-19 11:46:12 -05:00
Erik Michaels-Ober
5273fb325e ruby-build 20130408 2013-04-08 03:10:21 -07:00
Konstantin Haase
127cd1dcff add topaz-dev 2013-04-07 11:14:44 +02:00
Erik Michaels-Ober
73ad8ac371 Merge pull request #341 from statianzo/mruby
Added mruby
2013-04-06 04:53:49 -07:00
Sam Stephenson
c557723792 Mention homebrew/dupes/apple-gcc42 if Homebrew is installed 2013-04-05 12:19:39 -05:00
Jason Staten
b193b49c6b mruby-dev 2013-04-05 08:23:34 -06:00
Greg Price
9c3e1644e9 Better target the shorten-64-to-32 workaround (#325, #319)
The previous version of this logic was causing us to
pass the flag when
 * clang is on the PATH, and
 * $CC, or 'clang' if CC unset, accepts the flag.
But this is totally wrong if we have clang installed,
haven't set $CC, and are going to end up using gcc.
We end up passing the flag to gcc, which rejects it.

The real fix is to put this in the autoconf goo in MRI
upstream -- the only correct way to decide whether to pass
this flag is after we know exactly what compiler we're using
and can test if that compiler accepts the flag.  But we can
do better than before by approximating autoconf's choice of
compiler as $CC if set, 'cc' otherwise (which will typically
be a symlink to gcc or clang or another.)

Fixes: https://github.com/sstephenson/ruby-build/issues/319
  and #325, which is a dupe.
2013-04-01 19:21:17 -07:00
Erik Michaels-Ober
1fb955eead Merge pull request #326 from quark-zju/keep-downloaded-tarball
Keep downloaded tarball sometimes
2013-03-24 19:48:51 -07:00
Sam Stephenson
386b37613f rbenv install 1.9.3 lists matching definitions 2013-03-21 12:40:53 -05:00
WU Jun
3d2f1a7277 keep source tarball if '--keep' or 'tar xf' fails 2013-03-18 14:11:09 +08:00
WU Jun
d0912e4fb5 use --continue when downloading tarball 2013-03-12 16:40:13 +08:00
Erik Michaels-Ober
28bdf54ef4 ruby-build 20130227 2013-02-27 16:05:26 -08:00