summaryrefslogtreecommitdiff
path: root/bin/rake
diff options
context:
space:
mode:
Diffstat (limited to 'bin/rake')
-rwxr-xr-xbin/rake23
1 files changed, 11 insertions, 12 deletions
diff --git a/bin/rake b/bin/rake
index 47fcb49888..cf4131d5b0 100755
--- a/bin/rake
+++ b/bin/rake
@@ -5,17 +5,16 @@ load File.expand_path("../with_rubygems", __FILE__) if ENV["RGV"]
require "rubygems"
-unless ARGV[0] == "spec:deps"
- bundler_spec = Gem::Specification.load(File.expand_path("../../bundler.gemspec", __FILE__))
- bundler_spec.dependencies.each do |dep|
- begin
- gem dep.name, dep.requirement
- rescue Gem::LoadError => e
- warn "#{e.message} (#{e.class})"
- end
- end
-
- Gem.finish_resolve if Gem.respond_to?(:finish_resolve)
+bundler_spec = Gem::Specification.load(File.expand_path("../../bundler.gemspec", __FILE__))
+rake = bundler_spec.development_dependencies.find do |dep|
+ dep.name == "rake"
end
-load Gem.bin_path("rake", "rake")
+rake_requirement = rake.requirement.to_s
+
+begin
+ gem "rake", rake_requirement
+ load Gem.bin_path("rake", "rake")
+rescue Gem::LoadError
+ warn "We couln't activate rake (#{rake_requirement}). Run `gem install rake:'#{rake_requirement}'`"
+end