summaryrefslogtreecommitdiff
path: root/lib/rubygems/ext/cmake_builder.rb
blob: 829b88d1bbb10152cbb2207b3e402f0fef1ffda9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# frozen_string_literal: true
require 'rubygems/command'

class Gem::Ext::CmakeBuilder < Gem::Ext::Builder

  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

end