autoproj 1.4.0 → 1.4.1
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.
- 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
|