Class: Gem::Ext::RakeBuilder
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
| Class Chain: 
          self,
           Builder | |
| Instance Chain: | |
| Inherits: | Gem::Ext::Builder 
 | 
| Defined in: | lib/rubygems/ext/rake_builder.rb | 
Class Method Summary
Builder - Inherited
| .class_name, .make, | |
| .new | Creates a new extension builder for  | 
| .ruby, .run, .shelljoin, .shellsplit | |
Instance Attribute Summary
Builder - Inherited
::Gem::DefaultUserInteraction - Included
Instance Method Summary
Builder - Inherited
| #build_extensions | Builds extensions. | 
| #build_error | Logs the build  | 
| #build_extension, | |
| #builder_for | Chooses the extension builder class for  | 
| #write_gem_make_out | Writes  | 
::Gem::UserInteraction - Included
| #alert | Displays an alert  | 
| #alert_error | Displays an error  | 
| #alert_warning | Displays a warning  | 
| #ask | Asks a  | 
| #ask_for_password | Asks for a password with a  | 
| #ask_yes_no | Asks a yes or no  | 
| #choose_from_list | Asks the user to answer  | 
| #say | Displays the given  | 
| #terminate_interaction | Terminates the RubyGems process with the given  | 
| #verbose | Calls  | 
::Gem::DefaultUserInteraction - Included
::Gem::Text - Included
| #clean_text | Remove any non-printable characters and make the text suitable for printing. | 
| #format_text | Wraps  | 
| #levenshtein_distance | Returns a value representing the “cost” of transforming str1 into str2 Vendored version of  | 
| #truncate_text, #min3 | |
Constructor Details
This class inherits a constructor from Gem::Ext::Builder
Class Method Details
.build(extension, dest_path, results, args = [], lib_dir = nil, extension_dir = Dir.pwd, target_rbconfig = Gem.target_rbconfig)
[ GitHub ]# File 'lib/rubygems/ext/rake_builder.rb', line 10
def self.build(extension, dest_path, results, args=[], lib_dir=nil, extension_dir=Dir.pwd, target_rbconfig=Gem.target_rbconfig) if target_rbconfig.path warn "--target-rbconfig is not yet supported for Rake extensions. Ignoring" end if /mkrf_conf/i.match?(File.basename(extension)) run([Gem.ruby, File.basename(extension), *args], results, class_name, extension_dir) end rake = ENV["rake"] if rake rake = shellsplit(rake) else begin rake = ruby << "-rrubygems" << Gem.bin_path("rake", "rake") rescue Gem::Exception rake = [Gem.default_exec_format % "rake"] end end rake_args = ["RUBYARCHDIR=#{dest_path}", "RUBYLIBDIR=#{dest_path}", *args] run(rake + rake_args, results, class_name, extension_dir) results end