summaryrefslogtreecommitdiff
path: root/Rakefile
diff options
context:
space:
mode:
authorRyan Fitzgerald <rwfitzge@gmail.com>2013-01-01 02:38:08 -0800
committerRyan Fitzgerald <rwfitzge@gmail.com>2013-01-01 02:38:08 -0800
commitfcad0a41f13f805c068c9423f075d622337b6223 (patch)
tree8a439957534af10a297b338cd5cd0628ff3aa8bc /Rakefile
parent46439ca4b627d135a131aa437a85fda40c2e9de9 (diff)
downloadpry-fcad0a41f13f805c068c9423f075d622337b6223.tar.gz
Make the .gemspec canonical instead of generated
Diffstat (limited to 'Rakefile')
-rw-r--r--Rakefile44
1 files changed, 6 insertions, 38 deletions
diff --git a/Rakefile b/Rakefile
index 7cc776ac..e4aabb26 100644
--- a/Rakefile
+++ b/Rakefile
@@ -7,30 +7,6 @@ require 'pry/version'
CLOBBER.include('**/*~', '**/*#*', '**/*.log')
CLEAN.include('**/*#*', '**/*#*.*', '**/*_flymake*.*', '**/*_flymake', '**/*.rbc', '**/.#*.*')
-def apply_spec_defaults(s)
- s.name = 'pry'
- s.summary = "An IRB alternative and runtime developer console"
- s.version = Pry::VERSION
- s.date = Time.now.strftime '%Y-%m-%d'
- s.authors = ["John Mair (banisterfiend)", "Conrad Irwin", "Ryan Fitzgerald"]
- s.email = ['jrmair@gmail.com', 'conrad.irwin@gmail.com', 'rwfitzge@gmail.com']
- s.description = s.summary
- s.homepage = 'http://pry.github.com'
- s.executables = ['pry']
- s.files = `git ls-files`.split("\n")
- s.test_files = `git ls-files -- spec/*`.split("\n")
- s.add_dependency('coderay', '~> 1.0.5')
- s.add_dependency('slop', ['~> 3.3.1'])
- s.add_dependency('method_source','~> 0.8')
- s.add_development_dependency('bacon', '~> 1.2')
- s.add_development_dependency('open4', '~> 1.3')
- s.add_development_dependency('rake', '~> 0.9')
- s.add_development_dependency('guard', '~> 1.3.2')
- s.add_development_dependency('mocha', '~> 0.13.1')
- # TODO: make this a plain dependency:
- s.add_development_dependency('bond', '~> 0.4.2')
-end
-
def check_dependencies
require 'bundler'
Bundler.definition.missing_specs
@@ -96,12 +72,12 @@ task :profile do
Pry.start(TOPLEVEL_BINDING, :input => StringIO.new('exit'))
end
-desc "Build the gemspec file"
-task :gemspec => "ruby:gemspec"
+def modify_base_gemspec
+ eval(File.read('pry.gemspec')).tap { |s| yield s }
+end
namespace :ruby do
- spec = Gem::Specification.new do |s|
- apply_spec_defaults(s)
+ spec = modify_base_gemspec do |s|
s.platform = Gem::Platform::RUBY
end
@@ -109,17 +85,10 @@ namespace :ruby do
pkg.need_zip = false
pkg.need_tar = false
end
-
- task :gemspec do
- File.open("#{spec.name}.gemspec", "w") do |f|
- f << spec.to_ruby
- end
- end
end
namespace :jruby do
- spec = Gem::Specification.new do |s|
- apply_spec_defaults(s)
+ spec = modify_base_gemspec do |s|
s.add_dependency('spoon', '~> 0.0')
s.platform = 'java'
end
@@ -133,8 +102,7 @@ end
[:mingw32, :mswin32].each do |v|
namespace v do
- spec = Gem::Specification.new do |s|
- apply_spec_defaults(s)
+ spec = modify_base_gemspec do |s|
s.add_dependency('win32console', '~> 1.3')
s.platform = "i386-#{v}"
end