Commit graph

7 commits

Author SHA1 Message Date
zimbatm
b8bcbec5fd ruby: fixes rubygems user installs
* Manage patches in git
* Fixes the hook invocation to be more safe. Thanks @Mic92
* Install gems as user by default
* Install gem binaries with the /usr/bin/env shebang
* Fixes a bug where the passthru.libPath and passthru.gemPath would
  point to the wrong directory
* Overhaul ruby version heuristics
2016-10-02 22:07:22 +01:00
zimbatm
62df82efcf buildRubyGem: fixes gemspec UTF-8 loading issue
If a gemspec has UTF-8 characters in it, ruby will fail loading it with

    invalid multibyte char (US-ASCII)

This change forces the encoding to be correct, we assume everyone now
uses UTF-8.
2016-09-06 14:42:58 +01:00
zimbatm
a7cf555e2a buildRubyGem: handle build-time ruby dependencies
For some reason `gem install` unsets the GEM_PATH environment variable
internally unless the install dir is provided. This in turn means that
if it invokes extconf.rb and extconf.rb depends on a gem available on
the GEM_PATH (like pkg-config for nokogiri) then it's not available in
that context.

Proof: d8293c4729/lib/rubygems/commands/install_command.rb (L151)
Blame: 9ea600c9c2

This is a hack that sets the :install_dir to where we would install
anyways (the GEM_HOME is the default installation destination).
2016-08-29 22:17:59 +01:00
zimbatm
a1460473cb buildRubyGem: don't set the GEM_HOME
bundler for example needs to have the GEM_HOME being passed trough to
function properly.

For gems that are loading content dynamically, or can use plugins, use
buildRubyGem.

For executables that are wrapped in their own sealed thing use
bundlerEnv.
2016-08-23 09:30:49 +01:00
zimbatm
838781ce8a buildRubyGem: fix buildFlags default attribute
lib.escapeShellArgs doesn't work well when a null value is provided.

[] is also the correct value since it's really just an empty list of
arguments that we have.
2016-07-21 11:46:16 +01:00
zimbatm
28fa4a2f03 Escape all shell arguments uniformly 2016-06-12 18:11:37 +01:00
zimbatm
5a64bc44ea move all ruby modules to development/ruby-modules 2016-03-19 22:06:26 +00:00