123456789_123456789_123456789_123456789_123456789_

Class: RubyInstaller::Build::Components::DevTools

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
self, Base, Rake::Task
Instance Chain:
Inherits: RubyInstaller::Build::Components::Base
Defined in: lib/ruby_installer/build/components/03_dev_tools.rb

Constant Summary

::RubyInstaller::Build::Colors - Included

ColorMap, ESC, NND

Class Method Summary

Base - Inherited

Instance Attribute Summary

Instance Method Summary

Constructor Details

This class inherits a constructor from RubyInstaller::Build::Components::Base

Class Method Details

.depends

[ GitHub ]

  
# File 'lib/ruby_installer/build/components/03_dev_tools.rb', line 5

def self.depends
  %w[msys2]
end

Instance Method Details

#description

[ GitHub ]

  
# File 'lib/ruby_installer/build/components/03_dev_tools.rb', line 9

def description
  "MSYS2 and MINGW development toolchain"
end

#execute(args)

[ GitHub ]

  
# File 'lib/ruby_installer/build/components/03_dev_tools.rb', line 57

def execute(args)
  msys.with_msys_apps_enabled do
    puts "Install #{description} ..."
    packages = PACKAGES.fetch(msys.mingwarch).map do |package|
      package.sub(/^mingw-w64/, msys.mingw_package_prefix)
    end
    res = run_verbose("pacman", "-S", *pacman_args, *packages)
    puts "Install #{description} #{res ? green("succeeded") : red("failed")}"
    raise "pacman failed" unless res

    puts
    puts green("You can use 'ridk enable' to activate the MSYS2 tools on the command prompt.")

    autorebase
  end
end