Class: Gem::Ext::CmakeBuilder
- Defined in:
- lib/rubygems/ext/cmake_builder.rb
Instance Attribute Summary
Attributes inherited from Builder
Class Method Summary collapse
Methods inherited from Builder
#build_error, #build_extension, #build_extensions, #builder_for, class_name, #initialize, make, ruby, run, #write_gem_make_out
Methods included from UserInteraction
#alert, #alert_error, #alert_warning, #ask, #ask_for_password, #ask_yes_no, #choose_from_list, #say, #terminate_interaction, #verbose
Methods included from DefaultUserInteraction
ui, #ui, ui=, #ui=, use_ui, #use_ui
Methods included from Text
#clean_text, #format_text, #levenshtein_distance, #min3, #truncate_text
Constructor Details
This class inherits a constructor from Gem::Ext::Builder
Class Method Details
permalink .build(extension, dest_path, results, args = [], lib_dir = nil, cmake_dir = Dir.pwd, target_rbconfig = Gem.target_rbconfig) ⇒ Object
[View source]
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/rubygems/ext/cmake_builder.rb', line 4 def self.build(extension, dest_path, results, args=[], lib_dir=nil, cmake_dir=Dir.pwd, target_rbconfig=Gem.target_rbconfig) if target_rbconfig.path warn "--target-rbconfig is not yet supported for CMake extensions. Ignoring" end unless File.exist?(File.join(cmake_dir, "Makefile")) require_relative "../command" cmd = ["cmake", ".", "-DCMAKE_INSTALL_PREFIX=#{dest_path}", *Gem::Command.build_args] run cmd, results, class_name, cmake_dir end make dest_path, results, cmake_dir, target_rbconfig: target_rbconfig results end |