A TargetConfig is a wrapper around an RbConfig object that provides a consistent interface for querying configuration for *deployment target platform*, where the gem being installed is intended to run on.
The TargetConfig is typically created from the RbConfig of the running Ruby process, but can also be created from an RbConfig file on disk for cross- compiling gems.
Attributes
Read
No documentation available
Class Methods
dev
View on GitHub
# File tmp/rubies/ruby-master/lib/rubygems/target_rbconfig.rb, line 25
def self.for_running_ruby
new(::RbConfig, nil)
end
Creates a TargetRbConfig for the platform that RubyGems is running on.
dev
View on GitHub
# File tmp/rubies/ruby-master/lib/rubygems/target_rbconfig.rb, line 33
def self.from_path(rbconfig_path)
namespace = Module.new do |m|
# Load the rbconfig.rb file within a new anonymous module to avoid
# conflicts with the rbconfig for the running platform.
Kernel.load rbconfig_path, m
end
rbconfig = namespace.const_get(:RbConfig)
new(rbconfig, rbconfig_path)
end
Creates a TargetRbConfig from the RbConfig file at the given path. Typically used for cross-compiling gems.
dev
View on GitHub
# File tmp/rubies/ruby-master/lib/rubygems/target_rbconfig.rb, line 17
def initialize(rbconfig, path)
@rbconfig = rbconfig
@path = path
end
No documentation available
Instance Methods
#
dev
View on GitHub
# File tmp/rubies/ruby-master/lib/rubygems/target_rbconfig.rb, line 47
def [](key)
@rbconfig::CONFIG[key]
end
Queries the configuration for the given key.