[rubygems/rubygems] Use a constant empty tar header to avoid extra allocations
[ruby.git] / lib / singleton.gemspec
blob7646914905c09ba246f7f67e0bcb0b2e57763fe7
1 # frozen_string_literal: true
3 name = File.basename(__FILE__, ".gemspec")
4 version = ["lib", Array.new(name.count("-")+1, ".").join("/")].find do |dir|
5   break File.foreach(File.join(__dir__, dir, "#{name.tr('-', '/')}.rb")) do |line|
6     /^\s*VERSION\s*=\s*"(.*)"/ =~ line and break $1
7   end rescue nil
8 end
10 Gem::Specification.new do |spec|
11   spec.name          = name
12   spec.version       = version
13   spec.authors       = ["Yukihiro Matsumoto"]
14   spec.email         = ["matz@ruby-lang.org"]
16   spec.summary       = %q{The Singleton module implements the Singleton pattern.}
17   spec.description   = spec.summary
18   spec.homepage      = "https://github.com/ruby/singleton"
19   spec.licenses      = ["Ruby", "BSD-2-Clause"]
21   spec.metadata["homepage_uri"] = spec.homepage
22   spec.metadata["source_code_uri"] = spec.homepage
24   spec.files         = Dir.chdir(File.expand_path('..', __FILE__)) do
25     `git ls-files -z 2>#{IO::NULL}`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
26   end
27   spec.bindir        = "exe"
28   spec.executables   = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
29   spec.require_paths = ["lib"]
30 end