diff --git a/railties/CHANGELOG b/railties/CHANGELOG index dfa80e1e82..0a3c34dbd7 100644 --- a/railties/CHANGELOG +++ b/railties/CHANGELOG @@ -1,6 +1,6 @@ *SVN* -* Flesh out rake gems:unpack to unpack all gems, and add rake gems:build for native extensions. [ddollar] +* Flesh out rake gems:unpack to unpack all gems, and add rake gems:build for native extensions. #11513 [ddollar] rake gems:unpack # unpacks all gems rake gems:unpack GEM=mygem # unpacks only the gem 'mygem' diff --git a/railties/lib/rails/gem_builder.rb b/railties/lib/rails/gem_builder.rb new file mode 100644 index 0000000000..629726a5c6 --- /dev/null +++ b/railties/lib/rails/gem_builder.rb @@ -0,0 +1,20 @@ +require 'rubygems/installer' + +module Rails + + # this class hijacks the functionality of Gem::Installer by overloading its + # initializer to only provide the information needed by + # Gem::Installer#build_extensions (which happens to be what we have) + class GemBuilder < Gem::Installer + + def initialize(spec, gem_dir) + @spec = spec + @gem_dir = gem_dir + end + + # silence the underlying builder + def say(message) + end + + end +end \ No newline at end of file