autoproj 1.7.8 → 1.7.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,19 @@
1
+ = Version 1.7.9
2
+ * improve ruby 1.9 compatibility
3
+ * fix ignoring osdeps dependencies completely, i.e.
4
+
5
+ ruby: ignore
6
+
7
+ is now working fine (before, one had to provide at least an OS name)
8
+
9
+ * on dpkg-based systems (debian, ubuntu), fix detection of installed virtual packages
10
+ * fix passing autoproj options from aup and amake to autoproj itself (it was
11
+ broken). One can now *really* do
12
+
13
+ amake --no-deps
14
+
15
+ as advertised by the 1.7.8 release notes.
16
+
1
17
  = Version 1.7.8
2
18
  * fix bootstrap and switch-config with VCS options (i.e. setting a branch on
3
19
  the git importer)
data/README.txt CHANGED
@@ -7,21 +7,21 @@ version control repository (think "distributed version control"). It also
7
7
  provides an easy integration of the local operating system (Debian, Ubuntu,
8
8
  Fedora, maybe MacOSX at some point).
9
9
 
10
- This tool has been developped in the frame of the RubyInMotion project
11
- (http://sites.google.com/site/rubyinmotion), to install robotics-related
10
+ This tool has been over the years. It is now maintained in the frame of the Rock
11
+ robotics project (http://rock-robotics.org), to install robotics-related
12
12
  software -- that is often bleeding edge. Unlike [the ROS build
13
13
  system](http://ros.org), it is not bound to one build system, one VCS and one
14
14
  integration framework. The philosophy behind autoproj
15
15
  is:
16
- * supports both CMake and autotools, and can be adapted to other tools
17
- * supports different VCS: cvs, svn, git, plain tarballs.
18
- * software packages are plain packages, meaning that they can be built and
19
- installed /outside/ an autoproj tree, and are not tied *at all* to the
20
- autoproj build system.
21
- * leverage the actual OS package management system. Right now, only Debian-like
22
- systems (like Ubuntu) are supported, simply because it is the only one I have
23
- access to.
24
- * handle code generation properly
16
+ * supports both CMake and autotools, and can be adapted to other tools
17
+ * supports different VCS: cvs, svn, git, plain tarballs.
18
+ * software packages are plain packages, meaning that they can be built and
19
+ installed /outside/ an autoproj tree, and are not tied *at all* to the
20
+ autoproj build system.
21
+ * leverage the actual OS package management system. Right now, only Debian-like
22
+ systems (like Ubuntu) are supported, simply because it is the only one I have
23
+ access to.
24
+ * handle code generation properly
25
25
 
26
26
  It tries as much as possible to follow the lead of Willow Garage on the package
27
27
  specification. More specifically, the package manifest files are common between
@@ -38,12 +38,12 @@ complete configuration per-project).
38
38
 
39
39
  Each package definition includes:
40
40
 
41
- * how to get the package's source code
42
- * how to build the package
43
- * on what the package depends. This can be either another package built by
44
- autoproj, or an operating system package.
41
+ * how to get the package's source code
42
+ * how to build the package
43
+ * on what the package depends. This can be either another package built by
44
+ autoproj, or an operating system package.
45
45
 
46
- See [this page](writing_manifest.html) for more information.
46
+ See this page[http://rock-robotics.org/writing_manifest.html] for more information.
47
47
 
48
48
 
49
49
  Software packages in Autoproj
@@ -59,6 +59,6 @@ As a guideline, we recommend that inter-package dependencies are managed by
59
59
  using pkg-config.
60
60
 
61
61
  To describe the package, and more importantly to setup cross-package
62
- dependencies, [an optional manifest file can be
63
- added](package_sets/manifest-xml.html).
62
+ dependencies, an optional manifest file can be
63
+ added[http://rock-robotics.org/package_sets/manifest-xml.html].
64
64
 
data/bin/amake CHANGED
@@ -1,8 +1,56 @@
1
1
  #! /usr/bin/env ruby
2
2
 
3
- if ARGV.grep(/^-/).size == ARGV.size
4
- ARGV.push '.'
3
+ require 'optparse'
4
+
5
+ build_all = false
6
+ force = false
7
+
8
+ parser = OptionParser.new do |opt|
9
+ opt.banner = "amake [options] [dir_or_package]
10
+ Runs autoproj build for the given directory or package name.
11
+ Selects the current directory if none is given
12
+
13
+ Accepts all options from autoproj build plus the following options:
14
+
15
+ "
16
+ opt.on('--all', 'runs autoproj build without arguments (does not add the current directory)') do
17
+ build_all = true
18
+ end
19
+ opt.on('--force', 'runs autoproj force-build instead of autoproj build') do
20
+ force = true
21
+ end
22
+ opt.on('--help', 'shows this help message') do
23
+ puts parser
24
+ exit(0)
25
+ end
26
+ end
27
+
28
+ # Accept options that are invalid in +parser+, to pass them on to autoproj
29
+ # itself
30
+ options = ARGV.dup
31
+ remaining = []
32
+ while !options.empty?
33
+ begin
34
+ head = options.shift
35
+ remaining.concat(parser.parse([head]))
36
+ rescue OptionParser::InvalidOption
37
+ remaining << head
38
+ retry
39
+ end
40
+ end
41
+
42
+ # If --all is not given *and* there is no non-option argument (i.e. no directory
43
+ # / package name), add the current directory to the command line
44
+ if remaining.grep(/^-/).size == remaining.size && !build_all
45
+ remaining.push '.'
46
+ end
47
+
48
+ if force
49
+ remaining.unshift "force-build"
50
+ else
51
+ remaining.unshift "build"
5
52
  end
6
- ARGV.unshift "build"
53
+ ARGV.clear
54
+ ARGV.concat(remaining)
7
55
  load File.expand_path('autoproj', File.dirname(__FILE__))
8
56
 
data/bin/aup CHANGED
@@ -1,8 +1,47 @@
1
1
  #! /usr/bin/env ruby
2
+ require 'optparse'
2
3
 
3
- if ARGV.grep(/^-/).size == ARGV.size
4
- ARGV.push '.'
4
+ build_all = false
5
+ parser = OptionParser.new do |opt|
6
+ opt.banner = "aup [options] [dir_or_package]
7
+ Runs autoproj update for the given directory or package name.
8
+ Selects the current directory if none is given. Override by
9
+ passing the --all option.
10
+
11
+ Accepts all options from autoproj update plus the following options:
12
+
13
+ "
14
+ opt.on('--all', 'runs autoproj build without arguments (does not add the current directory)') do
15
+ build_all = true
16
+ end
17
+ opt.on('--help', 'shows this help message') do
18
+ puts parser
19
+ exit(0)
20
+ end
21
+ end
22
+
23
+ # Accept options that are invalid in +parser+, to pass them on to autoproj
24
+ # itself
25
+ options = ARGV.dup
26
+ remaining = []
27
+ while !options.empty?
28
+ begin
29
+ head = options.shift
30
+ remaining.concat(parser.parse([head]))
31
+ rescue OptionParser::InvalidOption
32
+ remaining << head
33
+ retry
34
+ end
5
35
  end
6
- ARGV.unshift "update"
36
+
37
+ # If --all is not given *and* there is no non-option argument (i.e. no directory
38
+ # / package name), add the current directory to the command line
39
+ if remaining.grep(/^-/).size == remaining.size && !build_all
40
+ remaining.push '.'
41
+ end
42
+ remaining.unshift 'update'
43
+
44
+ ARGV.clear
45
+ ARGV.concat(remaining)
7
46
  load File.expand_path('autoproj', File.dirname(__FILE__))
8
47
 
@@ -166,9 +166,15 @@ EOTEXT
166
166
  elsif Autoproj::CmdLine.revshow_osdeps?
167
167
  all_enabled_packages = Autoproj::CmdLine.import_packages(selected_packages)
168
168
  Autoproj::CmdLine.revshow_osdeps(all_enabled_packages)
169
+ exit(0)
169
170
  elsif Autoproj::CmdLine.show_osdeps?
170
171
  all_enabled_packages = Autoproj::CmdLine.import_packages(selected_packages)
171
172
  Autoproj::CmdLine.show_osdeps(all_enabled_packages)
173
+ exit(0)
174
+ elsif Autoproj::CmdLine.list_unused?
175
+ all_enabled_packages = Autoproj::CmdLine.import_packages(selected_packages)
176
+ Autoproj::CmdLine.list_unused(all_enabled_packages)
177
+ exit(0)
172
178
  end
173
179
 
174
180
  STDERR.puts
@@ -255,7 +255,7 @@ module Autoproj
255
255
  #
256
256
  # Examples: ['debian', ['sid', 'unstable']] or ['ubuntu', ['lucid lynx', '10.04']]
257
257
  def self.operating_system
258
- if @operating_system
258
+ if !@operating_system.nil?
259
259
  return @operating_system
260
260
  elsif Autoproj.has_config_key?('operating_system')
261
261
  os = Autoproj.user_config('operating_system')
@@ -268,19 +268,28 @@ module Autoproj
268
268
  end
269
269
  end
270
270
 
271
- Autoproj.progress " autodetecting the operating system"
272
- name, versions = os_from_lsb
273
- if name
274
- if name != "debian"
275
- if File.exists?("/etc/debian_version")
276
- @operating_system = [[name, "debian"], versions]
277
- else
278
- @operating_system = [[name], versions]
271
+ if user_os = ENV['AUTOPROJ_OS']
272
+ if user_os.empty?
273
+ @operating_system = false
274
+ else
275
+ names, versions = user_os.split(':')
276
+ @operating_system = [names.split(','), versions.split(',')]
277
+ end
278
+ else
279
+ Autoproj.progress " autodetecting the operating system"
280
+ name, versions = os_from_lsb
281
+ if name
282
+ if name != "debian"
283
+ if File.exists?("/etc/debian_version")
284
+ @operating_system = [[name, "debian"], versions]
285
+ else
286
+ @operating_system = [[name], versions]
287
+ end
279
288
  end
280
289
  end
281
290
  end
282
291
 
283
- if !@operating_system
292
+ if @operating_system.nil?
284
293
  # Need to do some heuristics unfortunately
285
294
  @operating_system =
286
295
  if File.exists?('/etc/debian_version')
@@ -334,12 +343,27 @@ module Autoproj
334
343
  if !@dpkg_installed_packages
335
344
  @dpkg_installed_packages = Set.new
336
345
  dpkg_status = File.readlines('/var/lib/dpkg/status')
337
- dpkg_status.grep(/^(Package|Status)/).
338
- each_slice(2) do |package, status|
339
- if status.chomp == "Status: install ok installed"
340
- @dpkg_installed_packages << package.split[1].chomp
346
+
347
+ current_packages = []
348
+ is_installed = false
349
+ dpkg_status.each do |line|
350
+ line = line.chomp
351
+ if line == ""
352
+ if is_installed
353
+ current_packages.each do |pkg|
354
+ @dpkg_installed_packages << pkg
355
+ end
356
+ current_packages.clear
357
+ is_installed = false
341
358
  end
359
+ elsif line =~ /Package: (.*)$/
360
+ current_packages << $1
361
+ elsif line =~ /Provides: (.*)$/
362
+ current_packages << $1
363
+ elsif line == "Status: install ok installed"
364
+ is_installed = true
342
365
  end
366
+ end
343
367
  end
344
368
 
345
369
  if package_name =~ /^(\w[a-z0-9+-.]+)/
@@ -410,6 +434,10 @@ fi
410
434
  return NO_PACKAGE
411
435
  end
412
436
 
437
+ if dep_def == 'ignore'
438
+ return IGNORE
439
+ end
440
+
413
441
  if !os_names
414
442
  return UNKNOWN_OS
415
443
  end
@@ -699,6 +727,8 @@ Finally, OS dependencies can be installed by calling "autoproj osdeps"
699
727
  with the corresponding option (--all, --ruby, --os or --none). Calling
700
728
  "autoproj osdeps" without arguments will also give you information as
701
729
  to what you should install to compile the software successfully.
730
+
731
+ So, what do you want ? (ruby or none)
702
732
  EOT
703
733
  message = [ "Which prepackaged software (a.k.a. 'osdeps') should autoproj install automatically (ruby, none) ?", long_doc.strip ]
704
734
 
@@ -736,6 +766,8 @@ an autoproj operation with the --reconfigure option (e.g. autoproj update
736
766
 
737
767
  Finally, OS dependencies can be installed by calling "autoproj osdeps"
738
768
  with the corresponding option (--all, --ruby, --os or --none).
769
+
770
+ So, what do you want ? (all, ruby, os or none)
739
771
  EOT
740
772
  message = [ "Which prepackaged software (a.k.a. 'osdeps') should autoproj install automatically (all, ruby, os, none) ?", long_doc.strip ]
741
773
 
@@ -825,7 +857,7 @@ with the corresponding option (--all, --ruby, --os or --none).
825
857
  def osdeps_interaction_unknown_os(osdeps)
826
858
  puts <<-EOMSG
827
859
  #{Autoproj.color("The build process requires some other software packages to be installed on our operating system", :bold)}
828
- #{Autoproj.color("If they are already installed, simply ignore this message", :red)}"
860
+ #{Autoproj.color("If they are already installed, simply ignore this message", :red)}
829
861
 
830
862
  #{osdeps.join("\n ")}
831
863
 
@@ -116,6 +116,8 @@ module Autobuild
116
116
  if osdeps_availability == Autoproj::OSDependencies::AVAILABLE
117
117
  @os_packages << name
118
118
  return
119
+ elsif osdeps_availability == Autoproj::OSDependencies::IGNORE
120
+ return
119
121
  end
120
122
 
121
123
  if osdeps_availability == Autoproj::OSDependencies::UNKNOWN_OS
@@ -135,7 +137,7 @@ module Autobuild
135
137
  # Call osdeps to get a proper error message
136
138
  osdeps, gems = Autoproj.osdeps.partition_packages([name].to_set, name => [self.name])
137
139
  Autoproj.osdeps.resolve_os_dependencies(osdeps)
138
- rescue ConfigError => e
140
+ rescue Autoproj::ConfigError => e
139
141
  if osdeps_availability != Autoproj::OSDependencies::NO_PACKAGE && !Autoproj.osdeps.installs_os_packages?
140
142
  Autoproj.warn "in #{File.join(srcdir, 'manifest.xml')}: #{e.message}"
141
143
  Autoproj.warn "this osdeps dependency is simply ignored as you asked autoproj to not install osdeps packages"
@@ -707,6 +707,7 @@ module Autoproj
707
707
  def self.doc?; @mode == "doc" end
708
708
  def self.snapshot?; @mode == "snapshot" end
709
709
  def self.reconfigure?; @mode == "reconfigure" end
710
+ def self.list_unused?; @mode == "list-unused" end
710
711
 
711
712
  def self.show_statistics?; !!@show_statistics end
712
713
  def self.ignore_dependencies?; @ignore_dependencies end
@@ -794,13 +795,18 @@ where 'mode' is one of:
794
795
  autoproj bootstrap [manifest_url|source_vcs source_url opt1=value1 opt2=value2 ...]
795
796
 
796
797
  For example:
797
- autoproj bootstrap git git://github.com/doudou/rubim-all.git branch=all
798
+ autoproj bootstrap git git://gitorious.org/rock/buildconfig.git
798
799
 
799
800
  switch-config: change where the configuration should be taken from. Syntax:
800
801
  autoproj switch-config source_vcs source_url opt1=value1 opt2=value2 ...
801
802
 
802
803
  For example:
803
- autoproj switch-config git git://github.com/doudou/rubim-all.git branch=all
804
+ autoproj switch-config git git://gitorious.org/rock/buildconfig.git
805
+
806
+ In case only the options need to be changed, the source_vcs and source_url fields can be omitted:
807
+
808
+ For example:
809
+ autoproj switch-config branch=next
804
810
 
805
811
  -- Additional options:
806
812
  EOBANNER
@@ -927,6 +933,7 @@ where 'mode' is one of:
927
933
  @mode = args.shift
928
934
  unknown_mode = catch(:unknown) do
929
935
  handle_mode(@mode, args)
936
+ false
930
937
  end
931
938
  if unknown_mode
932
939
  STDERR.puts "unknown mode #{@mode}"
@@ -1059,6 +1066,10 @@ where 'mode' is one of:
1059
1066
  @update_os_dependencies = false
1060
1067
  Autobuild.do_doc = true
1061
1068
  Autobuild.only_doc = true
1069
+ when "list-unused"
1070
+ Autobuild.do_update = false
1071
+ Autobuild.do_build = false
1072
+ @update_os_dependencies = false
1062
1073
  else
1063
1074
  throw :unknown, true
1064
1075
  end
@@ -1483,11 +1494,11 @@ export PATH=$GEM_HOME/bin:$PATH
1483
1494
  end
1484
1495
 
1485
1496
  overrides_path = File.join(target_dir, 'overrides.yml')
1486
- overrides =
1487
- if File.exists?(overrides_path)
1488
- YAML.load(File.read(overrides_path))
1489
- else Hash.new
1490
- end
1497
+ if File.exists?(overrides_path)
1498
+ overrides = YAML.load(File.read(overrides_path))
1499
+ end
1500
+ # In Ruby 1.9, an empty file results in YAML.load returning false
1501
+ overrides ||= Hash.new
1491
1502
 
1492
1503
  if overrides['overrides']
1493
1504
  overrides['overrides'].concat(version_control)
@@ -1648,6 +1659,48 @@ export PATH=$GEM_HOME/bin:$PATH
1648
1659
  raise
1649
1660
  end
1650
1661
  end
1662
+
1663
+ def self.list_unused(all_enabled_packages)
1664
+ all_enabled_packages = all_enabled_packages.map do |pkg_name|
1665
+ Autobuild::Package[pkg_name]
1666
+ end
1667
+ leaf_dirs = (all_enabled_packages.map(&:srcdir) +
1668
+ all_enabled_packages.map(&:prefix)).to_set
1669
+ leaf_dirs << Autoproj.config_dir
1670
+ leaf_dirs << Autoproj.gem_home
1671
+ leaf_dirs << Autoproj.remotes_dir
1672
+
1673
+ root = Autoproj.root_dir
1674
+ all_dirs = leaf_dirs.dup
1675
+ leaf_dirs.each do |dir|
1676
+ dir = File.dirname(dir)
1677
+ while dir != root
1678
+ break if all_dirs.include?(dir)
1679
+ all_dirs << dir
1680
+ dir = File.dirname(dir)
1681
+ end
1682
+ end
1683
+ all_dirs << Autoproj.root_dir
1684
+
1685
+ unused = Set.new
1686
+ Find.find(Autoproj.root_dir) do |path|
1687
+ next if !File.directory?(path)
1688
+ if !all_dirs.include?(path)
1689
+ unused << path
1690
+ Find.prune
1691
+ elsif leaf_dirs.include?(path)
1692
+ Find.prune
1693
+ end
1694
+ end
1695
+
1696
+
1697
+ root = Pathname.new(Autoproj.root_dir)
1698
+ Autoproj.progress
1699
+ Autoproj.progress "The following directories are not part of a package used in the current autoproj installation", :bold
1700
+ unused.to_a.sort.each do |dir|
1701
+ puts " #{Pathname.new(dir).relative_path_from(root)}"
1702
+ end
1703
+ end
1651
1704
  end
1652
1705
  end
1653
1706
 
@@ -820,6 +820,14 @@ module Autoproj
820
820
  end
821
821
  end
822
822
 
823
+
824
+ # Call this method to ignore a specific package. It must not be used in
825
+ # init.rb, as the manifest is not yet loaded then
826
+ def ignore_package(package_name)
827
+ list = (data['ignore_packages'] ||= Array.new)
828
+ list << package_name
829
+ end
830
+
823
831
  # True if the given package should not be built, with the packages that
824
832
  # depend on him have this dependency met.
825
833
  #
@@ -156,7 +156,7 @@ module Autoproj
156
156
  #
157
157
  # Examples: ['debian', ['sid', 'unstable']] or ['ubuntu', ['lucid lynx', '10.04']]
158
158
  def self.operating_system
159
- if @operating_system
159
+ if !@operating_system.nil?
160
160
  return @operating_system
161
161
  elsif Autoproj.has_config_key?('operating_system')
162
162
  os = Autoproj.user_config('operating_system')
@@ -169,19 +169,28 @@ module Autoproj
169
169
  end
170
170
  end
171
171
 
172
- Autoproj.progress " autodetecting the operating system"
173
- name, versions = os_from_lsb
174
- if name
175
- if name != "debian"
176
- if File.exists?("/etc/debian_version")
177
- @operating_system = [[name, "debian"], versions]
178
- else
179
- @operating_system = [[name], versions]
172
+ if user_os = ENV['AUTOPROJ_OS']
173
+ if user_os.empty?
174
+ @operating_system = false
175
+ else
176
+ names, versions = user_os.split(':')
177
+ @operating_system = [names.split(','), versions.split(',')]
178
+ end
179
+ else
180
+ Autoproj.progress " autodetecting the operating system"
181
+ name, versions = os_from_lsb
182
+ if name
183
+ if name != "debian"
184
+ if File.exists?("/etc/debian_version")
185
+ @operating_system = [[name, "debian"], versions]
186
+ else
187
+ @operating_system = [[name], versions]
188
+ end
180
189
  end
181
190
  end
182
191
  end
183
192
 
184
- if !@operating_system
193
+ if @operating_system.nil?
185
194
  # Need to do some heuristics unfortunately
186
195
  @operating_system =
187
196
  if File.exists?('/etc/debian_version')
@@ -235,12 +244,27 @@ module Autoproj
235
244
  if !@dpkg_installed_packages
236
245
  @dpkg_installed_packages = Set.new
237
246
  dpkg_status = File.readlines('/var/lib/dpkg/status')
238
- dpkg_status.grep(/^(Package|Status)/).
239
- each_slice(2) do |package, status|
240
- if status.chomp == "Status: install ok installed"
241
- @dpkg_installed_packages << package.split[1].chomp
247
+
248
+ current_packages = []
249
+ is_installed = false
250
+ dpkg_status.each do |line|
251
+ line = line.chomp
252
+ if line == ""
253
+ if is_installed
254
+ current_packages.each do |pkg|
255
+ @dpkg_installed_packages << pkg
256
+ end
257
+ current_packages.clear
258
+ is_installed = false
242
259
  end
260
+ elsif line =~ /Package: (.*)$/
261
+ current_packages << $1
262
+ elsif line =~ /Provides: (.*)$/
263
+ current_packages << $1
264
+ elsif line == "Status: install ok installed"
265
+ is_installed = true
243
266
  end
267
+ end
244
268
  end
245
269
 
246
270
  if package_name =~ /^(\w[a-z0-9+-.]+)/
@@ -311,6 +335,10 @@ fi
311
335
  return NO_PACKAGE
312
336
  end
313
337
 
338
+ if dep_def == 'ignore'
339
+ return IGNORE
340
+ end
341
+
314
342
  if !os_names
315
343
  return UNKNOWN_OS
316
344
  end
@@ -600,6 +628,8 @@ Finally, OS dependencies can be installed by calling "autoproj osdeps"
600
628
  with the corresponding option (--all, --ruby, --os or --none). Calling
601
629
  "autoproj osdeps" without arguments will also give you information as
602
630
  to what you should install to compile the software successfully.
631
+
632
+ So, what do you want ? (ruby or none)
603
633
  EOT
604
634
  message = [ "Which prepackaged software (a.k.a. 'osdeps') should autoproj install automatically (ruby, none) ?", long_doc.strip ]
605
635
 
@@ -637,6 +667,8 @@ an autoproj operation with the --reconfigure option (e.g. autoproj update
637
667
 
638
668
  Finally, OS dependencies can be installed by calling "autoproj osdeps"
639
669
  with the corresponding option (--all, --ruby, --os or --none).
670
+
671
+ So, what do you want ? (all, ruby, os or none)
640
672
  EOT
641
673
  message = [ "Which prepackaged software (a.k.a. 'osdeps') should autoproj install automatically (all, ruby, os, none) ?", long_doc.strip ]
642
674
 
@@ -726,7 +758,7 @@ with the corresponding option (--all, --ruby, --os or --none).
726
758
  def osdeps_interaction_unknown_os(osdeps)
727
759
  puts <<-EOMSG
728
760
  #{Autoproj.color("The build process requires some other software packages to be installed on our operating system", :bold)}
729
- #{Autoproj.color("If they are already installed, simply ignore this message", :red)}"
761
+ #{Autoproj.color("If they are already installed, simply ignore this message", :red)}
730
762
 
731
763
  #{osdeps.join("\n ")}
732
764
 
@@ -1,3 +1,3 @@
1
1
  module Autoproj
2
- VERSION = "1.7.8"
2
+ VERSION = "1.7.9"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autoproj
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
5
- prerelease: false
4
+ hash: 25
5
+ prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 7
9
- - 8
10
- version: 1.7.8
9
+ - 9
10
+ version: 1.7.9
11
11
  platform: ruby
12
12
  authors:
13
13
  - Sylvain Joyeux
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-03-04 00:00:00 +01:00
18
+ date: 2011-05-02 00:00:00 +02:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -156,21 +156,21 @@ description: |-
156
156
  provides an easy integration of the local operating system (Debian, Ubuntu,
157
157
  Fedora, maybe MacOSX at some point).
158
158
 
159
- This tool has been developped in the frame of the RubyInMotion project
160
- (http://sites.google.com/site/rubyinmotion), to install robotics-related
159
+ This tool has been over the years. It is now maintained in the frame of the Rock
160
+ robotics project (http://rock-robotics.org), to install robotics-related
161
161
  software -- that is often bleeding edge. Unlike [the ROS build
162
162
  system](http://ros.org), it is not bound to one build system, one VCS and one
163
163
  integration framework. The philosophy behind autoproj
164
164
  is:
165
- * supports both CMake and autotools, and can be adapted to other tools
166
- * supports different VCS: cvs, svn, git, plain tarballs.
167
- * software packages are plain packages, meaning that they can be built and
168
- installed /outside/ an autoproj tree, and are not tied *at all* to the
169
- autoproj build system.
170
- * leverage the actual OS package management system. Right now, only Debian-like
171
- systems (like Ubuntu) are supported, simply because it is the only one I have
172
- access to.
173
- * handle code generation properly
165
+ * supports both CMake and autotools, and can be adapted to other tools
166
+ * supports different VCS: cvs, svn, git, plain tarballs.
167
+ * software packages are plain packages, meaning that they can be built and
168
+ installed /outside/ an autoproj tree, and are not tied *at all* to the
169
+ autoproj build system.
170
+ * leverage the actual OS package management system. Right now, only Debian-like
171
+ systems (like Ubuntu) are supported, simply because it is the only one I have
172
+ access to.
173
+ * handle code generation properly
174
174
  email:
175
175
  - sylvain.joyeux@dfki.de
176
176
  executables:
@@ -253,7 +253,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
253
253
  requirements: []
254
254
 
255
255
  rubyforge_project: autobuild
256
- rubygems_version: 1.3.7
256
+ rubygems_version: 1.6.2
257
257
  signing_key:
258
258
  specification_version: 3
259
259
  summary: Easy installation and management of robotics software