module Bindeps
Constants
- VERSION
Public Class Methods
missing(dependencies)
click to toggle source
Check whether all dependencies are installed. Return an array of missing dependencies.
# File lib/bindeps.rb, line 37 def self.missing dependencies if dependencies.is_a? String dependencies = YAML.load_file dependencies end missing = [] Dir.mktmpdir do |tmpdir| Dir.chdir(tmpdir) do dependencies.each_pair do |name, config| unpack = config.key?('unpack') ? config['unpack'] : true; libraries = config.key?('libraries') ? config['libraries'] : [] d = Dependency.new(name, config['binaries'], config['version'], config['url'], unpack, libraries) missing << d unless d.all_installed? end end end missing end
require(dependencies, destdir = '')
click to toggle source
# File lib/bindeps.rb, line 13 def self.require(dependencies, destdir = '') destdir = File.expand_path destdir unless destdir.empty? if dependencies.is_a? String dependencies = YAML.load_file dependencies end Dir.mktmpdir do |tmpdir| Dir.chdir(tmpdir) do dependencies.each_pair do |name, config| unpack = config.key?('unpack') ? config['unpack'] : true; libraries = config.key?('libraries') ? config['libraries'] : [] d = Dependency.new(name, config['binaries'], config['version'], config['url'], unpack, libraries) d.install_missing destdir end end end end