1 # -*- encoding: binary -*-
3 ENV["VERSION"] or abort "VERSION= must be specified"
4 manifest = File.readlines('.manifest').map! { |x| x.chomp! }
6 # don't bother with tests that fork, not worth our time to get working
7 # with `gem check -t` ... (of course we care for them when testing with
8 # GNU make when they can run in parallel)
9 test_files = manifest.grep(%r{\Atest/unit/test_.*\.rb\z}).map do |f|
10 File.readlines(f).grep(/\bfork\b/).empty? ? f : nil
13 Gem::Specification.new do |s|
15 s.version = ENV["VERSION"]
17 s.authors = ["Zbatery hackers"]
18 s.date = Time.now.utc.strftime('%Y-%m-%d')
19 s.description = File.read("README").split(/\n\n/)[1]
20 s.email = %q{rainbows-talk@rubyforge.org}
21 s.executables = %w(zbatery)
23 s.extra_rdoc_files = File.readlines('.document').map! do |x|
26 manifest.grep(%r{\A#{x}/})
35 s.homepage = %q{http://zbatery.bogomip.org/}
36 s.summary = %q{Rack HTTP server without a fork stuck in it}
37 s.rdoc_options = [ "-t", "Zbatery - #{s.summary}" ]
38 s.require_paths = %w(lib)
39 s.rubyforge_project = %q{rainbows}
41 s.test_files = test_files
43 # rainbows has a boatload of optional dependencies
47 # revactor + rev + iobuffer
50 # espace-neverblock + eventmachine
51 # async_sinatra + sinatra + eventmachine
53 s.add_dependency(%q<rainbows>, ["~> 2.0.0"])
54 s.add_development_dependency(%q<isolate>, "~> 3.0.0")
56 # s.licenses = %w(GPLv2 Ruby) # accessor not compatible with older RubyGems