autoproj 1.10.2 → 1.11.0.b1
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.
- checksums.yaml +4 -4
- data/Manifest.txt +9 -0
- data/Rakefile +4 -0
- data/bin/aup +5 -1
- data/bin/autolocate +1 -82
- data/bin/autoproj +6 -56
- data/bin/autoproj-bootstrap +31 -3
- data/bin/autoproj-cache +3 -60
- data/bin/autoproj-clean +1 -1
- data/bin/autoproj-create-set +0 -0
- data/bin/autoproj-doc +1 -1
- data/bin/autoproj-envsh +0 -0
- data/bin/autoproj-list +1 -1
- data/bin/autoproj-locate +17 -16
- data/bin/autoproj-query +0 -0
- data/bin/autoproj-show +0 -0
- data/bin/autoproj-switch-config +23 -0
- data/bin/autoproj-test +2 -2
- data/bin/autoproj_bootstrap +354 -210
- data/bin/autoproj_bootstrap.in +8 -0
- data/bin/autoproj_stress_test +1 -1
- data/lib/autoproj.rb +7 -0
- data/lib/autoproj/autobuild.rb +14 -35
- data/lib/autoproj/build_option.rb +104 -0
- data/lib/autoproj/cmdline.rb +62 -355
- data/lib/autoproj/configuration.rb +161 -0
- data/lib/autoproj/gitorious.rb +31 -20
- data/lib/autoproj/installation_manifest.rb +7 -1
- data/lib/autoproj/manifest.rb +124 -342
- data/lib/autoproj/ops/build.rb +107 -0
- data/lib/autoproj/ops/cache.rb +82 -0
- data/lib/autoproj/ops/configuration.rb +302 -0
- data/lib/autoproj/ops/loader.rb +97 -0
- data/lib/autoproj/ops/main_config_switcher.rb +271 -0
- data/lib/autoproj/ops/tools.rb +54 -0
- data/lib/autoproj/options.rb +26 -178
- data/lib/autoproj/osdeps.rb +49 -9
- data/lib/autoproj/package_set.rb +168 -87
- data/lib/autoproj/system.rb +6 -23
- data/lib/autoproj/variable_expansion.rb +0 -1
- data/lib/autoproj/vcs_definition.rb +23 -0
- data/lib/autoproj/version.rb +1 -1
- metadata +17 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a6d9f944537d588d5d919fd531860f93dea6f072
|
|
4
|
+
data.tar.gz: 899edc4f1296f7b0b57e94005b713d6f0f8b05e2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2509de689250e5d00dfb76fa57617c558a793db9f0d81b75c94e1eb31ff9e0f9a55a9dd4aff8b9f5d5ed23ab1491eaded5b7ba2912ed66174599e442d0d709a8
|
|
7
|
+
data.tar.gz: db15a52b8ea0e89aa58e64586b4e39c6079a290e8d4f583ed91991c567bad18a9f4f35ecbf934bdc410af894de5aaca74d1c5b88857fd1015851d08261d7e883
|
data/Manifest.txt
CHANGED
|
@@ -18,6 +18,7 @@ bin/autoproj-locate
|
|
|
18
18
|
bin/autoproj-query
|
|
19
19
|
bin/autoproj-show
|
|
20
20
|
bin/autoproj-snapshot
|
|
21
|
+
bin/autoproj-switch-config
|
|
21
22
|
bin/autoproj-test
|
|
22
23
|
bin/autoproj_bootstrap
|
|
23
24
|
bin/autoproj_bootstrap.in
|
|
@@ -25,13 +26,21 @@ bin/autoproj_stress_test
|
|
|
25
26
|
lib/autoproj.rb
|
|
26
27
|
lib/autoproj/autobuild.rb
|
|
27
28
|
lib/autoproj/base.rb
|
|
29
|
+
lib/autoproj/build_option.rb
|
|
28
30
|
lib/autoproj/cmdline.rb
|
|
31
|
+
lib/autoproj/configuration.rb
|
|
29
32
|
lib/autoproj/default.osdeps
|
|
30
33
|
lib/autoproj/environment.rb
|
|
31
34
|
lib/autoproj/gitorious.rb
|
|
32
35
|
lib/autoproj/installation_manifest.rb
|
|
33
36
|
lib/autoproj/manifest.rb
|
|
34
37
|
lib/autoproj/metapackage.rb
|
|
38
|
+
lib/autoproj/ops/main_config_switcher.rb
|
|
39
|
+
lib/autoproj/ops/build.rb
|
|
40
|
+
lib/autoproj/ops/cache.rb
|
|
41
|
+
lib/autoproj/ops/configuration.rb
|
|
42
|
+
lib/autoproj/ops/loader.rb
|
|
43
|
+
lib/autoproj/ops/tools.rb
|
|
35
44
|
lib/autoproj/options.rb
|
|
36
45
|
lib/autoproj/osdeps.rb
|
|
37
46
|
lib/autoproj/package_definition.rb
|
data/Rakefile
CHANGED
|
@@ -29,6 +29,8 @@ namespace 'dist' do
|
|
|
29
29
|
desc "generate the bootstrap script"
|
|
30
30
|
task 'bootstrap' do
|
|
31
31
|
require 'yaml'
|
|
32
|
+
build_option_code = File.read(File.join(Dir.pwd, 'lib', 'autoproj', 'build_option.rb'))
|
|
33
|
+
config_code = File.read(File.join(Dir.pwd, 'lib', 'autoproj', 'configuration.rb'))
|
|
32
34
|
osdeps_code = File.read(File.join(Dir.pwd, 'lib', 'autoproj', 'osdeps.rb'))
|
|
33
35
|
options_code = File.read(File.join(Dir.pwd, 'lib', 'autoproj', 'options.rb'))
|
|
34
36
|
system_code = File.read(File.join(Dir.pwd, 'lib', 'autoproj', 'system.rb'))
|
|
@@ -54,6 +56,8 @@ namespace 'dist' do
|
|
|
54
56
|
end
|
|
55
57
|
|
|
56
58
|
bootstrap_code = File.read(File.join(Dir.pwd, 'bin', 'autoproj_bootstrap.in')).
|
|
59
|
+
gsub('BUILD_OPTION_CODE', build_option_code).
|
|
60
|
+
gsub('CONFIG_CODE', config_code).
|
|
57
61
|
gsub('OSDEPS_CODE', osdeps_code).
|
|
58
62
|
gsub('OPTIONS_CODE', options_code).
|
|
59
63
|
gsub('SYSTEM_CODE', system_code).
|
data/bin/aup
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#! /usr/bin/env ruby
|
|
2
2
|
require 'optparse'
|
|
3
|
+
require 'autoproj'
|
|
3
4
|
|
|
4
|
-
build_all =
|
|
5
|
+
build_all = (Dir.pwd == Autoproj.root_dir)
|
|
5
6
|
parser = OptionParser.new do |opt|
|
|
6
7
|
opt.banner = "aup [options] [dir_or_package]
|
|
7
8
|
Runs autoproj update for the given directory or package name.
|
|
@@ -34,8 +35,11 @@ while !options.empty?
|
|
|
34
35
|
end
|
|
35
36
|
end
|
|
36
37
|
|
|
38
|
+
|
|
37
39
|
# If --all is not given *and* there is no non-option argument (i.e. no directory
|
|
38
40
|
# / package name), add the current directory to the command line
|
|
41
|
+
#
|
|
42
|
+
# BUT make running 'aup' in the root directory the equivalent of aup --all
|
|
39
43
|
if remaining.grep(/^-/).size == remaining.size && !build_all
|
|
40
44
|
remaining.push '.'
|
|
41
45
|
end
|
data/bin/autolocate
CHANGED
|
@@ -1,84 +1,3 @@
|
|
|
1
1
|
#! /usr/bin/env ruby
|
|
2
|
-
|
|
3
|
-
require 'autoproj'
|
|
4
|
-
require 'autoproj/cmdline'
|
|
5
|
-
|
|
6
|
-
Autoproj.silent = true
|
|
7
|
-
root_dir = Autoproj::CmdLine.initialize_root_directory
|
|
8
|
-
selection = Autoproj::CmdLine.initialize_and_load(ARGV)
|
|
9
|
-
if selection.empty?
|
|
10
|
-
puts root_dir
|
|
11
|
-
exit 0
|
|
12
|
-
elsif selection.size > 1
|
|
13
|
-
STDERR.puts Autoproj.console.color("more than one name given on the command line", :red)
|
|
14
|
-
exit 1
|
|
15
|
-
end
|
|
16
|
-
selection = selection.first
|
|
17
|
-
|
|
18
|
-
selection_rx = Regexp.new(Regexp.quote(selection))
|
|
19
|
-
candidates = []
|
|
20
|
-
Autoproj.manifest.each_package do |pkg|
|
|
21
|
-
name = pkg.name
|
|
22
|
-
next if !Autoproj.manifest.package_enabled?(name)
|
|
23
|
-
|
|
24
|
-
srcdir = Autobuild::Package[name].srcdir
|
|
25
|
-
if name == selection
|
|
26
|
-
puts srcdir
|
|
27
|
-
exit(0)
|
|
28
|
-
elsif name =~ selection_rx
|
|
29
|
-
candidates << srcdir
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
if candidates.empty?
|
|
34
|
-
# Try harder. Match directory prefixes
|
|
35
|
-
directories = selection.split('/')
|
|
36
|
-
rx = directories.
|
|
37
|
-
map { |d| "#{Regexp.quote(d)}\\w*" }.
|
|
38
|
-
join("/")
|
|
39
|
-
rx = Regexp.new(rx)
|
|
40
|
-
|
|
41
|
-
rx_strict = directories[0..-2].
|
|
42
|
-
map { |d| "#{Regexp.quote(d)}\\w*" }.
|
|
43
|
-
join("/")
|
|
44
|
-
rx_strict = Regexp.new("#{rx_strict}/#{Regexp.quote(directories.last)}$")
|
|
45
|
-
|
|
46
|
-
candidates_strict = []
|
|
47
|
-
Autoproj.manifest.each_package do |pkg|
|
|
48
|
-
name = pkg.name
|
|
49
|
-
next if !Autoproj.manifest.package_enabled?(name)
|
|
50
|
-
|
|
51
|
-
srcdir = Autobuild::Package[name].srcdir
|
|
52
|
-
if name =~ rx
|
|
53
|
-
candidates << srcdir
|
|
54
|
-
end
|
|
55
|
-
if name =~ rx_strict
|
|
56
|
-
candidates_strict << srcdir
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
if candidates.size > 1 && candidates_strict.size == 1
|
|
61
|
-
candidates = candidates_strict
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
if candidates.size > 1
|
|
66
|
-
# If there is more than one candidate, check if there are some that are not
|
|
67
|
-
# present on disk
|
|
68
|
-
present = candidates.find_all { |dir| File.directory?(dir) }
|
|
69
|
-
if present.size == 1
|
|
70
|
-
candidates = present
|
|
71
|
-
end
|
|
72
|
-
end
|
|
73
|
-
|
|
74
|
-
if candidates.empty?
|
|
75
|
-
STDERR.puts Autoproj.console.color("cannot find #{selection} in the current autoproj installation", :bold, :red)
|
|
76
|
-
exit 1
|
|
77
|
-
elsif candidates.size > 1
|
|
78
|
-
STDERR.puts Autoproj.console.color("multiple packages match #{selection} in the current autoproj installation: #{candidates.join(", ")}", :bold, :red)
|
|
79
|
-
exit 1
|
|
80
|
-
else
|
|
81
|
-
puts candidates.first
|
|
82
|
-
exit(0)
|
|
83
|
-
end
|
|
2
|
+
load File.expand_path('autoproj-locate', File.dirname(__FILE__))
|
|
84
3
|
|
data/bin/autoproj
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#! /usr/bin/env ruby
|
|
2
2
|
|
|
3
|
-
if RUBY_VERSION < "1.
|
|
4
|
-
STDERR.puts "autoproj requires Ruby >= 1.
|
|
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
|
|
|
@@ -18,15 +18,9 @@ def color(*args)
|
|
|
18
18
|
Autoproj.color(*args)
|
|
19
19
|
end
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
Encoding.default_external = Encoding::UTF_8
|
|
24
|
-
end
|
|
21
|
+
Encoding.default_internal = Encoding::UTF_8
|
|
22
|
+
Encoding.default_external = Encoding::UTF_8
|
|
25
23
|
Autoproj::OSDependencies.autodetect_ruby
|
|
26
|
-
if defined? Encoding # This is a 1.9-only thing
|
|
27
|
-
Encoding.default_internal = Encoding::UTF_8
|
|
28
|
-
Encoding.default_external = Encoding::UTF_8
|
|
29
|
-
end
|
|
30
24
|
|
|
31
25
|
# Check the first element of ARGV. If a tool called autoproj-VALUE exists, just
|
|
32
26
|
# pass the hand to it
|
|
@@ -47,27 +41,7 @@ end
|
|
|
47
41
|
|
|
48
42
|
# Find the autoproj root dir
|
|
49
43
|
Autoproj::CmdLine.report do
|
|
50
|
-
selected_packages =
|
|
51
|
-
begin Autoproj::CmdLine.parse_arguments(ARGV.dup)
|
|
52
|
-
rescue RuntimeError => e
|
|
53
|
-
if Autoproj::CmdLine.bootstrap? && !Autoproj.in_autoproj_installation?(Dir.pwd)
|
|
54
|
-
STDERR.puts <<EOTEXT
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
#{color('autoproj bootstrap failed', :red, :bold)}
|
|
58
|
-
To retry, first source the #{Autoproj::ENV_FILENAME} script with
|
|
59
|
-
source #{Dir.pwd}/#{Autoproj::ENV_FILENAME}
|
|
60
|
-
and then re-run autoproj bootstrap with
|
|
61
|
-
autoproj bootstrap <vcs_type> <vcs_url> <vcs_options>
|
|
62
|
-
|
|
63
|
-
where
|
|
64
|
-
'vcs_type' is git, svn, darcs, cvs
|
|
65
|
-
'vcs_url' is the vcs-specific URL to the repository, and
|
|
66
|
-
'vcs_options' are optional values that can be given to the chosen VCS
|
|
67
|
-
EOTEXT
|
|
68
|
-
end
|
|
69
|
-
raise
|
|
70
|
-
end
|
|
44
|
+
selected_packages = Autoproj::CmdLine.parse_arguments(ARGV.dup)
|
|
71
45
|
|
|
72
46
|
# Expand directories in the selected_packages set, before we chdir to the
|
|
73
47
|
# autoproj root
|
|
@@ -166,30 +140,6 @@ EOTEXT
|
|
|
166
140
|
Autoproj::CmdLine.display_configuration(manifest, selected_packages.packages)
|
|
167
141
|
end
|
|
168
142
|
|
|
169
|
-
if Autoproj::CmdLine.bootstrap?
|
|
170
|
-
STDERR.puts <<EOTEXT
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
#{color('autoproj bootstrap successfully finished', :green, :bold)}
|
|
174
|
-
|
|
175
|
-
#{color('To further use autoproj and the installed software', :bold)}, you
|
|
176
|
-
must add the following line at the bottom of your .bashrc:
|
|
177
|
-
source #{Dir.pwd}/#{Autoproj::ENV_FILENAME}
|
|
178
|
-
|
|
179
|
-
WARNING: autoproj will not work until your restart all
|
|
180
|
-
your consoles, or run the following in them:
|
|
181
|
-
$ source #{Dir.pwd}/#{Autoproj::ENV_FILENAME}
|
|
182
|
-
|
|
183
|
-
#{color('To import and build the packages', :bold)}, you can now run
|
|
184
|
-
autoproj update
|
|
185
|
-
autoproj build
|
|
186
|
-
|
|
187
|
-
The resulting software is installed in
|
|
188
|
-
#{Dir.pwd}/install
|
|
189
|
-
|
|
190
|
-
EOTEXT
|
|
191
|
-
end
|
|
192
|
-
|
|
193
143
|
if Autoproj::CmdLine.only_config? || Autoproj::CmdLine.reconfigure?
|
|
194
144
|
exit(0)
|
|
195
145
|
end
|
|
@@ -284,7 +234,7 @@ EOTEXT
|
|
|
284
234
|
Autoproj.message
|
|
285
235
|
Autoproj.message "statistics about the build", :bold
|
|
286
236
|
|
|
287
|
-
Autoproj.manifest.
|
|
237
|
+
Autoproj.manifest.each_autobuild_package.sort_by(&:name).each do |pkg|
|
|
288
238
|
next if pkg.statistics.empty?
|
|
289
239
|
|
|
290
240
|
if per_phase.empty?
|
data/bin/autoproj-bootstrap
CHANGED
|
@@ -1,15 +1,43 @@
|
|
|
1
1
|
#! /usr/bin/env ruby
|
|
2
2
|
require 'autoproj'
|
|
3
|
+
require 'autoproj/ops/main_config_switcher'
|
|
3
4
|
|
|
5
|
+
root_dir = Dir.pwd
|
|
4
6
|
Autoproj::CmdLine.report do
|
|
7
|
+
switcher = Autoproj::Ops::MainConfigSwitcher.new(root_dir)
|
|
5
8
|
begin
|
|
6
|
-
|
|
9
|
+
switcher.bootstrap(*ARGV)
|
|
10
|
+
manifest = Autoproj::Manifest.load(File.join(Autoproj.config_dir, 'manifest'))
|
|
11
|
+
update = Autoproj::Ops::Configuration.new(manifest, Autoproj::Ops.loader)
|
|
12
|
+
update.update_configuration
|
|
7
13
|
|
|
8
|
-
|
|
14
|
+
STDERR.puts <<EOTEXT
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
#{color('autoproj bootstrap successfully finished', :green, :bold)}
|
|
18
|
+
|
|
19
|
+
#{color('To further use autoproj and the installed software', :bold)}, you
|
|
20
|
+
must add the following line at the bottom of your .bashrc:
|
|
21
|
+
source #{root_dir}/#{Autoproj::ENV_FILENAME}
|
|
22
|
+
|
|
23
|
+
WARNING: autoproj will not work until your restart all
|
|
24
|
+
your consoles, or run the following in them:
|
|
25
|
+
$ source #{root_dir}/#{Autoproj::ENV_FILENAME}
|
|
26
|
+
|
|
27
|
+
#{color('To import and build the packages', :bold)}, you can now run
|
|
28
|
+
autoproj update
|
|
29
|
+
autoproj build
|
|
30
|
+
|
|
31
|
+
The resulting software is installed in
|
|
32
|
+
#{root_dir}/install
|
|
33
|
+
|
|
34
|
+
EOTEXT
|
|
35
|
+
|
|
36
|
+
rescue RuntimeError
|
|
9
37
|
STDERR.puts <<-EOTEXT
|
|
10
38
|
#{color('autoproj bootstrap failed', :red, :bold)}
|
|
11
39
|
To retry, first source the #{Autoproj::ENV_FILENAME} script with
|
|
12
|
-
source #{
|
|
40
|
+
source #{root_dir}/#{Autoproj::ENV_FILENAME}
|
|
13
41
|
and then re-run autoproj bootstrap with
|
|
14
42
|
autoproj bootstrap <vcs_type> <vcs_url> <vcs_options>
|
|
15
43
|
|
data/bin/autoproj-cache
CHANGED
|
@@ -1,75 +1,18 @@
|
|
|
1
1
|
#! /usr/bin/env ruby
|
|
2
2
|
|
|
3
3
|
require 'autoproj'
|
|
4
|
+
require 'autoproj/ops/cache'
|
|
4
5
|
|
|
5
6
|
root_dir = Autoproj::CmdLine.initialize_root_directory
|
|
6
7
|
|
|
7
|
-
def with_retry(count)
|
|
8
|
-
(count + 1).times do |i|
|
|
9
|
-
begin
|
|
10
|
-
break yield
|
|
11
|
-
rescue Autobuild::SubcommandFailed
|
|
12
|
-
if i == count
|
|
13
|
-
raise
|
|
14
|
-
else
|
|
15
|
-
Autobuild.message " failed, retrying (#{i}/#{count})"
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
8
|
Autoproj::CmdLine.report do
|
|
22
9
|
cache_dir, *_ =
|
|
23
10
|
Autoproj.silent do
|
|
24
11
|
Autoproj::CmdLine.initialize_and_load(ARGV)
|
|
25
12
|
end
|
|
26
|
-
manifest = Autoproj.manifest
|
|
27
|
-
|
|
28
13
|
cache_dir = File.expand_path(cache_dir, root_dir)
|
|
29
|
-
if !File.exists?(cache_dir)
|
|
30
|
-
Autoproj.message " creating autoproj cache in #{cache_dir}"
|
|
31
|
-
FileUtils.mkdir_p cache_dir
|
|
32
|
-
else
|
|
33
|
-
Autoproj.message " updating already existing cache repository in #{cache_dir}"
|
|
34
|
-
end
|
|
35
|
-
archive_cache_dir = File.join(cache_dir, 'archives')
|
|
36
|
-
if !File.directory?(archive_cache_dir)
|
|
37
|
-
Autoproj.message " creating archive cache in #{archive_cache_dir}"
|
|
38
|
-
FileUtils.mkdir_p archive_cache_dir
|
|
39
|
-
else
|
|
40
|
-
Autoproj.message " updating already existing archive cache in #{archive_cache_dir}"
|
|
41
|
-
end
|
|
42
|
-
git_cache_dir = File.join(cache_dir, 'git')
|
|
43
|
-
if !File.directory?(git_cache_dir)
|
|
44
|
-
Autoproj.message " creating git cache in #{git_cache_dir}"
|
|
45
|
-
FileUtils.mkdir_p git_cache_dir
|
|
46
|
-
Autobuild::Subprocess.run("autoproj-cache", "import", Autobuild.tool(:git), "--git-dir", git_cache_dir, 'init', "--bare")
|
|
47
|
-
else
|
|
48
|
-
Autoproj.message " updating already existing git cache in #{git_cache_dir}"
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
manifest.each_package do |pkg|
|
|
52
|
-
if pkg.importer.kind_of?(Autobuild::Git)
|
|
53
|
-
Autoproj.message " caching #{pkg.name} (git)"
|
|
54
|
-
pkg.importdir = git_cache_dir
|
|
55
|
-
pkg.importer.local_branch = nil
|
|
56
|
-
pkg.importer.remote_branch = nil
|
|
57
|
-
remote_name = pkg.name.gsub(/[^\w]/, '_')
|
|
58
|
-
pkg.importer.remote_name = remote_name
|
|
59
|
-
pkg.importer.update_remotes_configuration(pkg, 'autoproj-cache')
|
|
60
|
-
|
|
61
|
-
with_retry(10) do
|
|
62
|
-
Autobuild::Subprocess.run('autoproj-cache', :import, Autobuild.tool('git'), '--git-dir', git_cache_dir, 'remote', 'update', remote_name)
|
|
63
|
-
end
|
|
64
|
-
elsif pkg.importer.kind_of?(Autobuild::ArchiveImporter)
|
|
65
|
-
Autoproj.message " caching #{pkg.name} (archive)"
|
|
66
|
-
pkg.importer.cachedir = archive_cache_dir
|
|
67
|
-
with_retry(10) do
|
|
68
|
-
pkg.importer.update_cache(pkg)
|
|
69
|
-
end
|
|
70
|
-
end
|
|
71
|
-
end
|
|
72
14
|
|
|
73
|
-
|
|
15
|
+
cache_op = Autoproj::Ops::Cache.new(cache_dir, Autoproj.manifest)
|
|
16
|
+
cache_op.create_or_update
|
|
74
17
|
end
|
|
75
18
|
|
data/bin/autoproj-clean
CHANGED
data/bin/autoproj-create-set
CHANGED
|
File without changes
|
data/bin/autoproj-doc
CHANGED
|
@@ -23,6 +23,6 @@ Autoproj::CmdLine.report do
|
|
|
23
23
|
# This calls #prepare, which is required to run build_packages
|
|
24
24
|
packages = Autoproj::CmdLine.import_packages(resolved_selection)
|
|
25
25
|
packages.each { |pkg| Autobuild::Package[pkg].disable_phases('import', 'prepare', 'install') }
|
|
26
|
-
|
|
26
|
+
Autobuild.apply(packages, "autoproj-doc", ['doc'])
|
|
27
27
|
end
|
|
28
28
|
|
data/bin/autoproj-envsh
CHANGED
|
File without changes
|
data/bin/autoproj-list
CHANGED
|
@@ -20,7 +20,7 @@ end
|
|
|
20
20
|
all_packages = Hash.new
|
|
21
21
|
package_sets = manifest.each_package_set.to_a
|
|
22
22
|
package_sets.each do |pkg_set|
|
|
23
|
-
pkg_set.
|
|
23
|
+
pkg_set.each_autobuild_package.each do |pkg|
|
|
24
24
|
all_packages[pkg.name] = [pkg, pkg_set.name]
|
|
25
25
|
end
|
|
26
26
|
end
|
data/bin/autoproj-locate
CHANGED
|
@@ -3,25 +3,28 @@
|
|
|
3
3
|
require 'autoproj'
|
|
4
4
|
require 'autoproj/cmdline'
|
|
5
5
|
|
|
6
|
-
Autoproj.silent = true
|
|
7
6
|
root_dir = Autoproj::CmdLine.initialize_root_directory
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
|
|
8
|
+
manifest = Autoproj::InstallationManifest.new(root_dir)
|
|
9
|
+
if !File.file?(manifest.default_manifest_path)
|
|
10
|
+
Autoproj.error "the installation manifest is not present, please run autoproj envsh to generate it"
|
|
11
|
+
end
|
|
12
|
+
manifest.load
|
|
13
|
+
|
|
14
|
+
if ARGV.empty?
|
|
10
15
|
puts root_dir
|
|
11
16
|
exit 0
|
|
12
|
-
elsif
|
|
13
|
-
|
|
17
|
+
elsif ARGV.size > 1
|
|
18
|
+
Autoproj.error "more than one name given on the command line"
|
|
14
19
|
exit 1
|
|
15
20
|
end
|
|
16
|
-
selection =
|
|
21
|
+
selection = ARGV.first
|
|
17
22
|
|
|
18
23
|
selection_rx = Regexp.new(Regexp.quote(selection))
|
|
19
24
|
candidates = []
|
|
20
|
-
|
|
25
|
+
manifest.each do |pkg|
|
|
21
26
|
name = pkg.name
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
srcdir = Autobuild::Package[name].srcdir
|
|
27
|
+
srcdir = pkg.srcdir
|
|
25
28
|
if name == selection
|
|
26
29
|
puts srcdir
|
|
27
30
|
exit(0)
|
|
@@ -44,11 +47,9 @@ if candidates.empty?
|
|
|
44
47
|
rx_strict = Regexp.new("#{rx_strict}/#{Regexp.quote(directories.last)}$")
|
|
45
48
|
|
|
46
49
|
candidates_strict = []
|
|
47
|
-
|
|
50
|
+
manifest.each do |pkg|
|
|
48
51
|
name = pkg.name
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
srcdir = Autobuild::Package[name].srcdir
|
|
52
|
+
srcdir = pkg.srcdir
|
|
52
53
|
if name =~ rx
|
|
53
54
|
candidates << srcdir
|
|
54
55
|
end
|
|
@@ -72,10 +73,10 @@ if candidates.size > 1
|
|
|
72
73
|
end
|
|
73
74
|
|
|
74
75
|
if candidates.empty?
|
|
75
|
-
|
|
76
|
+
Autoproj.error "cannot find #{selection} in the current autoproj installation"
|
|
76
77
|
exit 1
|
|
77
78
|
elsif candidates.size > 1
|
|
78
|
-
|
|
79
|
+
Autoproj.error "multiple packages match #{selection} in the current autoproj installation: #{candidates.join(", ")}"
|
|
79
80
|
exit 1
|
|
80
81
|
else
|
|
81
82
|
puts candidates.first
|