autoproj 1.9.7.rc23 → 1.10.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  #! /usr/bin/ruby
2
2
 
3
- if RUBY_VERSION < "1.8.7"
4
- STDERR.puts "autoproj requires Ruby >= 1.8.7"
3
+ if RUBY_VERSION < "1.9.2"
4
+ STDERR.puts "autoproj requires Ruby >= 1.9.2"
5
5
  exit 1
6
6
  end
7
7
 
@@ -639,7 +639,7 @@ fi
639
639
  Autobuild::ORIGINAL_ENV['GEM_PATH'] = orig_gem_path.join(File::PATH_SEPARATOR)
640
640
 
641
641
  Autoproj.manifest.each_reused_autoproj_installation do |p|
642
- p_gems = File.join(Autoproj.root_dir, '.gems')
642
+ p_gems = File.join(p, '.gems')
643
643
  if File.directory?(p_gems)
644
644
  Autobuild.env_add_path 'GEM_PATH', p_gems
645
645
  end
@@ -2206,8 +2206,7 @@ module Autoproj
2206
2206
  @user_config.has_key?(name)
2207
2207
  end
2208
2208
 
2209
- def self.load_config
2210
- config_file = File.join(Autoproj.config_dir, "config.yml")
2209
+ def self.load_config(config_file = File.join(Autoproj.config_dir, "config.yml"))
2211
2210
  if File.exists?(config_file)
2212
2211
  config = YAML.load(File.read(config_file))
2213
2212
  if !config
@@ -1,7 +1,7 @@
1
1
  #! /usr/bin/ruby
2
2
 
3
- if RUBY_VERSION < "1.8.7"
4
- STDERR.puts "autoproj requires Ruby >= 1.8.7"
3
+ if RUBY_VERSION < "1.9.2"
4
+ STDERR.puts "autoproj requires Ruby >= 1.9.2"
5
5
  exit 1
6
6
  end
7
7
 
@@ -136,7 +136,7 @@ module Autoproj
136
136
  load_autoprojrc
137
137
 
138
138
  Autoproj.manifest.each_reused_autoproj_installation do |p|
139
- Autoproj.manifest.reuse(path)
139
+ Autoproj.manifest.reuse(p)
140
140
  end
141
141
 
142
142
  # We load the local init.rb first so that the manifest loading
@@ -208,7 +208,7 @@ module Autoproj
208
208
 
209
209
  def self.update_myself(options = Hash.new)
210
210
  options = Kernel.validate_options options,
211
- :force => false
211
+ force: false, restart_on_update: true
212
212
  return if !options[:force] && !Autoproj::CmdLine.update_os_dependencies?
213
213
 
214
214
  handle_ruby_version
@@ -237,7 +237,7 @@ module Autoproj
237
237
  end
238
238
 
239
239
  # First things first, see if we need to update ourselves
240
- if did_update
240
+ if did_update && options[:restart_on_update]
241
241
  puts
242
242
  Autoproj.message 'autoproj and/or autobuild has been updated, restarting autoproj'
243
243
  puts
@@ -1567,6 +1567,29 @@ where 'mode' is one of:
1567
1567
  end
1568
1568
  end
1569
1569
 
1570
+ reuse = []
1571
+ parser = lambda do |opt|
1572
+ opt.on '--reuse DIR', 'reuse the given autoproj installation (can be given multiple times)' do |path|
1573
+ path = File.expand_path(path)
1574
+ if !File.directory?(path) || !File.directory?(File.join(path, 'autoproj'))
1575
+ raise ConfigError.new, "#{path} does not look like an autoproj installation"
1576
+ end
1577
+ reuse << path
1578
+ end
1579
+ end
1580
+ args = parse_arguments(args, false, &parser)
1581
+ if current_root = ENV['AUTOPROJ_CURRENT_ROOT']
1582
+ # Allow having a current root only if it is being reused
1583
+ if (current_root != Dir.pwd) && !reuse.include?(current_root)
1584
+ STDERR.puts "the env.sh from #{ENV['AUTOPROJ_CURRENT_ROOT']} seem to already be sourced"
1585
+ STDERR.puts "start a new shell and try to bootstrap again"
1586
+ STDERR.puts
1587
+ STDERR.puts "you are allowed to boostrap from another autoproj installation"
1588
+ STDERR.puts "only if you reuse it with the --reuse flag"
1589
+ exit 1
1590
+ end
1591
+ end
1592
+
1570
1593
  Autoproj.root_dir = Dir.pwd
1571
1594
  Autobuild.prefix = Autoproj.build_dir
1572
1595
  Autobuild.srcdir = Autoproj.root_dir
@@ -1583,19 +1606,7 @@ where 'mode' is one of:
1583
1606
  end
1584
1607
  osdeps.osdeps_mode
1585
1608
 
1586
- update_myself :force => true
1587
-
1588
- reuse = []
1589
- parser = lambda do |opt|
1590
- opt.on '--reuse DIR', 'reuse the given autoproj installation (can be given multiple times)' do |path|
1591
- path = File.expand_path(path)
1592
- if !File.directory?(path) || !File.directory?(File.join(path, 'autoproj'))
1593
- raise ConfigError.new, "#{path} does not look like an autoproj installation"
1594
- end
1595
- reuse << path
1596
- end
1597
- end
1598
- args = parse_arguments(args, false, &parser)
1609
+ update_myself :force => true, :restart_on_update => false
1599
1610
  Autoproj.change_option 'reused_autoproj_installations', reuse, true
1600
1611
  Autoproj.export_env_sh
1601
1612
 
@@ -187,8 +187,7 @@ module Autoproj
187
187
  @user_config.has_key?(name)
188
188
  end
189
189
 
190
- def self.load_config
191
- config_file = File.join(Autoproj.config_dir, "config.yml")
190
+ def self.load_config(config_file = File.join(Autoproj.config_dir, "config.yml"))
192
191
  if File.exists?(config_file)
193
192
  config = YAML.load(File.read(config_file))
194
193
  if !config
@@ -512,7 +512,7 @@ fi
512
512
  Autobuild::ORIGINAL_ENV['GEM_PATH'] = orig_gem_path.join(File::PATH_SEPARATOR)
513
513
 
514
514
  Autoproj.manifest.each_reused_autoproj_installation do |p|
515
- p_gems = File.join(Autoproj.root_dir, '.gems')
515
+ p_gems = File.join(p, '.gems')
516
516
  if File.directory?(p_gems)
517
517
  Autobuild.env_add_path 'GEM_PATH', p_gems
518
518
  end
@@ -1,3 +1,3 @@
1
1
  module Autoproj
2
- VERSION = "1.9.7.rc23"
2
+ VERSION = "1.10.rc1"
3
3
  end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autoproj
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.7.rc23
5
- prerelease: 6
4
+ version: 1.10.rc1
5
+ prerelease: 5
6
6
  platform: ruby
7
7
  authors:
8
8
  - Rock Core Developers
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-06-15 00:00:00.000000000 Z
12
+ date: 2014-06-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: autobuild