class Bundler::Source::Path

def load_spec_files

def load_spec_files
  index = Index.new
  if File.directory?(path)
    Dir["#{path}/#{@glob}"].each do |file|
      file = Pathname.new(file)
      # Eval the gemspec from its parent directory
      spec = Dir.chdir(file.dirname) do
        begin
          Gem::Specification.from_yaml(file.basename)
          # Raises ArgumentError if the file is not valid YAML
        rescue ArgumentError, Gem::EndOfYAMLException, Gem::Exception
          begin
            eval(File.read(file.basename), TOPLEVEL_BINDING, file.expand_path.to_s)
          rescue LoadError
            raise GemspecError, "There was a LoadError while evaluating #{file.basename}.\n" +
              "Does it try to require a relative path? That doesn't work in Ruby 1.9."
          end
        end
      end
      if spec
        spec = Specification.from_gemspec(spec)
        spec.loaded_from = file.to_s
        spec.source = self
        index << spec
      end
    end
    if index.empty? && @name && @version
      index << Specification.new do |s|
        s.name     = @name
        s.source   = self
        s.version  = Gem::Version.new(@version)
        s.summary  = "Fake gemspec for #{@name}"
        s.relative_loaded_from = "#{@name}.gemspec"
        if path.join("bin").exist?
          binaries = path.join("bin").children.map{|c| c.basename.to_s }
          s.executables = binaries
        end
      end
    end
  else
    raise PathError, "The path `#{path}` does not exist."
  end
  index
end