Top Level Namespace
Defined Under Namespace
Modules: ExtconfTaskVersion Classes: ExtconfTask
Instance Method Summary collapse
Instance Method Details
#find_header_in_gem(header, gem_name, *paths_from_gem_root) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/extconf_task/mkmf_utils.rb', line 6 def find_header_in_gem(header, gem_name, *paths_from_gem_root) header_dirs = nil begin require "rubygems" spec = Gem::Specification.find_by_name(gem_name) if paths_from_gem_root.empty? if header_path = Dir.glob(File.join(spec.full_gem_path, "**", header)).first header_dirs = [File.dirname(header_path)] else return false end else header_dirs = paths_from_gem_root.map do |path| File.join(spec.full_gem_path, path) end end rescue LoadError end find_header(header, *header_dirs) end |