# File lib/bundler/dsl.rb, line 23
    def gemspec(opts = nil)
      path              = opts && opts[:path] || '.'
      name              = opts && opts[:name] || '*'
      development_group = opts && opts[:development_group] || :development
      path              = File.expand_path(path, Bundler.default_gemfile.dirname)
      gemspecs = Dir[File.join(path, "#{name}.gemspec")]

      case gemspecs.size
      when 1
        spec = Gem::Specification.load(gemspecs.first)
        raise InvalidOption, "There was an error loading the gemspec at #{gemspecs.first}." unless spec
        gem spec.name, :path => path
        spec.runtime_dependencies.each do |dep|
          gem dep.name, *dep.requirement.as_list
        end
        group(development_group) do
          spec.development_dependencies.each do |dep|
            gem dep.name, *dep.requirement.as_list
          end
        end
      when 0
        raise InvalidOption, "There are no gemspecs at #{path}."
      else
        raise InvalidOption, "There are multiple gemspecs at #{path}. Please use the :name option to specify which one."
      end
    end