Class: Gem::Ext::CmakeBuilder

Inherits:
Builder
  • Object
show all
Defined in:
lib/rubygems/ext/cmake_builder.rb

Constant Summary

Constants inherited from Builder

Builder::CHDIR_MUTEX

Instance Attribute Summary

Attributes inherited from Builder

#build_args

Class Method Summary collapse

Methods inherited from Builder

#build_error, #build_extension, #build_extensions, #builder_for, class_name, #initialize, make, 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

.build(extension, dest_path, results, args = [], lib_dir = nil) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/rubygems/ext/cmake_builder.rb', line 6

def self.build(extension, dest_path, results, args=[], lib_dir=nil)
  unless File.exist?('Makefile')
    cmd = "cmake . -DCMAKE_INSTALL_PREFIX=#{dest_path}"
    cmd << " #{Gem::Command.build_args.join ' '}" unless Gem::Command.build_args.empty?

    run cmd, results
  end

  make dest_path, results

  results
end