autoproj 1.4.0 → 1.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +6 -0
- data/bin/autoproj +40 -8
- data/doc/guide/src/autoproj_bootstrap +4 -1
- data/lib/autoproj/autobuild.rb +5 -4
- data/lib/autoproj/version.rb +1 -1
- metadata +2 -2
data/History.txt
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
= Version 1.4.1
|
2
|
+
* add the envsh build mode: only update env.sh
|
3
|
+
* rebuild <package> and force-build <package> only apply by default on the
|
4
|
+
selected packages, not on their dependencies
|
5
|
+
* fix rebuild for Ruby packages
|
6
|
+
|
1
7
|
= Version 1.4.0
|
2
8
|
* ruby 1.9 compatible
|
3
9
|
* fixes w.r.t. running autoproj under a Ruby interpreter that is not called
|
data/bin/autoproj
CHANGED
@@ -28,6 +28,7 @@ mail_config = Hash.new
|
|
28
28
|
only_update_sources = false
|
29
29
|
only_do_status = false
|
30
30
|
no_os_deps = false
|
31
|
+
force_re_build_with_depends = false
|
31
32
|
debug = false
|
32
33
|
|
33
34
|
# Parse the configuration options
|
@@ -35,32 +36,42 @@ parser = OptionParser.new do |opts|
|
|
35
36
|
opts.banner = <<-EOBANNER
|
36
37
|
autoproj mode [options]
|
37
38
|
where 'mode' is one of:
|
39
|
+
|
40
|
+
-- Build
|
38
41
|
build: import, build and install all packages that need it. A package or package
|
39
42
|
set name can be given, in which case only this package and its dependencies
|
40
43
|
will be taken into account. Example:
|
41
44
|
|
42
45
|
autoproj build drivers/hokuyo
|
43
46
|
|
44
|
-
force-build: triggers all build commands, i.e. don't be lazy like in "build"
|
45
47
|
fast-build: builds without updating and without considering OS dependencies
|
46
|
-
|
48
|
+
force-build: triggers all build commands, i.e. don't be lazy like in "build".
|
49
|
+
If packages are selected on the command line, only those packages
|
50
|
+
will be affected unless the --with-depends option is used.
|
51
|
+
rebuild: clean and then rebuild. If packages are selected on the command line,
|
52
|
+
only those packages will be affected unless the --with-depends option
|
53
|
+
is used.
|
47
54
|
doc: generate and install documentation for packages that have some
|
48
|
-
|
55
|
+
|
56
|
+
-- Status & Update
|
57
|
+
envsh: update the env.sh script
|
49
58
|
status: displays the state of the packages w.r.t. their source VCS
|
59
|
+
list-sets: list all available package sets
|
60
|
+
update: only import/update packages, do not build them
|
61
|
+
update-sets: update the package sets definitions, but not the packages themselves
|
62
|
+
|
63
|
+
-- Autoproj Configuration
|
50
64
|
bootstrap: starts a new autoproj installation. Usage:
|
51
65
|
autoproj bootstrap [manifest_url|source_vcs source_url opt1=value1 opt2=value2 ...]
|
52
|
-
|
53
|
-
list-sets: list all available package sets
|
54
|
-
update-sets: update the package sets definitions
|
55
66
|
switch-config: change where the configuration should be taken from. Syntax:
|
56
67
|
autoproj switch-config source_vcs source_url opt1=value1 opt2=value2 ...
|
57
68
|
|
58
69
|
For example:
|
59
70
|
autoproj switch-config git git://github.com/doudou/rubim-all.git branch=all
|
60
71
|
|
61
|
-
Additional options:
|
72
|
+
-- Additional options:
|
62
73
|
EOBANNER
|
63
|
-
opts.on("--reconfigure", "re-ask all configuration options (build
|
74
|
+
opts.on("--reconfigure", "re-ask all configuration options (build modes only)") do
|
64
75
|
Autoproj.reconfigure = true
|
65
76
|
end
|
66
77
|
opts.on("--no-update", "do not update already checked-out packages (build mode only)") do
|
@@ -70,6 +81,9 @@ Additional options:
|
|
70
81
|
opts.on("--no-osdeps", "do not install prepackaged dependencies") do
|
71
82
|
no_os_deps = true
|
72
83
|
end
|
84
|
+
opts.on("--with-depends", "apply rebuild and force-build to both packages selected on the command line and their dependencies") do
|
85
|
+
force_re_build_with_depends = true
|
86
|
+
end
|
73
87
|
|
74
88
|
opts.on("--verbose", "verbose output") do
|
75
89
|
Autoproj.verbose = true
|
@@ -410,6 +424,10 @@ report(debug) do
|
|
410
424
|
only_do_status = true
|
411
425
|
Autobuild.do_update = false
|
412
426
|
no_os_deps = true
|
427
|
+
when "envsh"
|
428
|
+
Autobuild.do_build = false
|
429
|
+
Autobuild.do_update = false
|
430
|
+
no_os_deps = true
|
413
431
|
when "update-sets"
|
414
432
|
only_update_sources = true
|
415
433
|
when "list-sets"
|
@@ -767,6 +785,20 @@ report(debug) do
|
|
767
785
|
manifest.install_os_dependencies(all_enabled_packages)
|
768
786
|
end
|
769
787
|
|
788
|
+
if !selected_packages.empty? && !force_re_build_with_depends
|
789
|
+
if Autobuild.do_rebuild
|
790
|
+
selected_packages.each do |pkg_name|
|
791
|
+
Autobuild::Package[pkg_name].prepare_for_rebuild
|
792
|
+
end
|
793
|
+
Autobuild.do_rebuild = false
|
794
|
+
elsif Autobuild.do_forced_build
|
795
|
+
selected_packages.each do |pkg_name|
|
796
|
+
Autobuild::Package[pkg_name].prepare_for_forced_build
|
797
|
+
end
|
798
|
+
Autobuild.do_forced_build = false
|
799
|
+
end
|
800
|
+
end
|
801
|
+
|
770
802
|
Autobuild.apply(all_enabled_packages, "autoproj-build")
|
771
803
|
elsif !no_os_deps
|
772
804
|
manifest.install_os_dependencies(all_enabled_packages)
|
@@ -238,7 +238,10 @@ module Autoproj
|
|
238
238
|
# call-seq:
|
239
239
|
# partition_packages(package_names) => os_packages, gem_packages
|
240
240
|
def partition_packages(package_set, package_osdeps = Hash.new)
|
241
|
-
package_set = package_set.
|
241
|
+
package_set = package_set.
|
242
|
+
map { |name| OSDependencies.aliases[name] || name }.
|
243
|
+
to_set
|
244
|
+
|
242
245
|
osdeps, gems = [], []
|
243
246
|
package_set.to_set.each do |name|
|
244
247
|
pkg_def = definitions[name]
|
data/lib/autoproj/autobuild.rb
CHANGED
@@ -181,13 +181,14 @@ def ruby_common(pkg) # :nodoc:
|
|
181
181
|
extdir = File.join(srcdir, 'ext')
|
182
182
|
if File.directory?(extdir)
|
183
183
|
Find.find(extdir) do |file|
|
184
|
-
if file
|
185
|
-
|
184
|
+
if File.directory?(file) && File.basename(file) == "build"
|
185
|
+
FileUtils.rm_rf file
|
186
|
+
Find.prune
|
186
187
|
end
|
187
188
|
end
|
188
189
|
Find.find(extdir) do |file|
|
189
|
-
if File.
|
190
|
-
|
190
|
+
if File.basename(file) == "Makefile"
|
191
|
+
Autobuild::Subprocess.run self, 'build', Autobuild.tool("make"), "-C", File.dirname(file), "clean"
|
191
192
|
end
|
192
193
|
end
|
193
194
|
end
|
data/lib/autoproj/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: autoproj
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sylvain Joyeux
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-02-
|
12
|
+
date: 2010-02-15 00:00:00 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|