autobuild 1.10.0.b4 → 1.10.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  module Autobuild
2
- VERSION = "1.10.0.b4" unless defined? Autobuild::VERSION
2
+ VERSION = "1.10.0.rc1" unless defined? Autobuild::VERSION
3
3
  end
4
4
 
5
5
 
@@ -0,0 +1,21 @@
1
+ <package>
2
+ <description brief="package-level import and build automation">
3
+ Autobuild is an abstraction layer that provides a package-oriented build
4
+ system (instead of file-oriented). It assumes that the dirty file-level
5
+ details are handled by another common build tools such as CMake, but
6
+ handles building (in parallel) many such packages.
7
+
8
+ It also provides the API to import and update packages using common version
9
+ control systems (git, svn, ...)
10
+ </description>
11
+ <maintainer>Sylvain Joyeux/sylvain.joyeux@m4x.org</maintainer>
12
+ <license>LGPLv3 or later</license>
13
+ <url>http://rock-robotics.org</url>
14
+
15
+ <depend package="tty" />
16
+ <depend package="pastel" />
17
+ <depend package="tty" />
18
+ <depend package="utilrb" />
19
+ <test_depend package="minitest" />
20
+ <test_depend package="flexmock" />
21
+ </package>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: autobuild
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.0.b4
4
+ version: 1.10.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sylvain Joyeux
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-03 00:00:00.000000000 Z
11
+ date: 2015-10-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -30,89 +30,122 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 1.6.0
33
+ version: '2.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 1.6.0
40
+ version: '2.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: pastel
42
+ name: tty
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 0.4.0
47
+ version: 0.2.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 0.4.0
54
+ version: 0.2.1
55
55
  - !ruby/object:Gem::Dependency
56
- name: tty
56
+ name: pastel
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: 0.2.0
61
+ version: 0.5.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: 0.2.0
68
+ version: 0.5.0
69
69
  - !ruby/object:Gem::Dependency
70
- name: rdoc
70
+ name: flexmock
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '4.0'
75
+ version: 2.0.0
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '4.0'
82
+ version: 2.0.0
83
83
  - !ruby/object:Gem::Dependency
84
- name: hoe
84
+ name: minitest
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '5.0'
87
90
  - - "~>"
88
91
  - !ruby/object:Gem::Version
89
- version: '3.13'
92
+ version: '5.0'
90
93
  type: :development
91
94
  prerelease: false
92
95
  version_requirements: !ruby/object:Gem::Requirement
93
96
  requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: '5.0'
94
100
  - - "~>"
95
101
  - !ruby/object:Gem::Version
96
- version: '3.13'
102
+ version: '5.0'
103
+ - !ruby/object:Gem::Dependency
104
+ name: fakefs
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ - !ruby/object:Gem::Dependency
118
+ name: simplecov
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
124
+ type: :development
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
97
131
  description: Collection of classes to handle build systems (CMake, autotools, ...)
98
132
  and import mechanisms (tarballs, CVS, SVN, git, ...). It also offers a Rake integration
99
133
  to import and build such software packages. It is the backbone of the autoproj (http://rock-robotics.org/autoproj)
100
134
  integrated software project management tool.
101
- email: rock-dev@dfki.de
102
- executables:
103
- - autobuild
135
+ email: sylvain.joyeux@m4x.org
136
+ executables: []
104
137
  extensions: []
105
- extra_rdoc_files:
106
- - Changes.txt
107
- - Manifest.txt
108
- - README.txt
138
+ extra_rdoc_files: []
109
139
  files:
110
- - ".gemtest"
140
+ - ".gitattributes"
141
+ - ".gitignore"
142
+ - ".travis.yml"
111
143
  - Changes.txt
144
+ - Gemfile
112
145
  - Manifest.txt
113
- - README.txt
146
+ - README.md
114
147
  - Rakefile
115
- - TODO
148
+ - autobuild.gemspec
116
149
  - bin/autobuild
117
150
  - lib/autobuild.rb
118
151
  - lib/autobuild/build_logfile.rb
@@ -149,36 +182,21 @@ files:
149
182
  - lib/autobuild/tools.rb
150
183
  - lib/autobuild/utility.rb
151
184
  - lib/autobuild/version.rb
185
+ - manifest.xml
152
186
  - samples/openrobots.autobuild
153
- - test/data/cvsroot.tar
154
- - test/data/gitrepo-with-extra-commit-and-tag.tar
155
- - test/data/gitrepo.tar
156
- - test/data/svnroot.tar
157
- - test/data/tarimport.tar.gz
158
- - test/import/test_cvs.rb
159
- - test/import/test_git.rb
160
- - test/import/test_svn.rb
161
- - test/import/test_tar.rb
162
- - test/suite.rb
163
- - test/test_config.rb
164
- - test/test_environment.rb
165
- - test/test_reporting.rb
166
- - test/test_subcommand.rb
167
- homepage: http://rock-robotics.org/stable/documentation/autoproj
187
+ homepage: http://rock-robotics.org
168
188
  licenses:
169
189
  - BSD
170
190
  metadata: {}
171
191
  post_install_message:
172
- rdoc_options:
173
- - "--main"
174
- - README.txt
192
+ rdoc_options: []
175
193
  require_paths:
176
194
  - lib
177
195
  required_ruby_version: !ruby/object:Gem::Requirement
178
196
  requirements:
179
197
  - - ">="
180
198
  - !ruby/object:Gem::Version
181
- version: 1.9.2
199
+ version: 1.9.3
182
200
  required_rubygems_version: !ruby/object:Gem::Requirement
183
201
  requirements:
184
202
  - - ">"
@@ -186,8 +204,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
186
204
  version: 1.3.1
187
205
  requirements: []
188
206
  rubyforge_project:
189
- rubygems_version: 2.2.2
207
+ rubygems_version: 2.2.3
190
208
  signing_key:
191
209
  specification_version: 4
192
210
  summary: Library to handle build systems and import mechanisms
193
211
  test_files: []
212
+ has_rdoc:
data/.gemtest DELETED
File without changes
data/README.txt DELETED
@@ -1,181 +0,0 @@
1
- Copyright (c) 2006-2013 Sylvain Joyeux <sylvain.joyeux@m4x.org> and contributors
2
-
3
- * http://rock-robotics.org
4
-
5
- This work is licensed under the BSD license. See License.txt for details
6
-
7
- == What's autobuild ?
8
- Autobuild imports, configures, builds and installs various kinds of software packages.
9
- It can be used in software development to make sure that nothing is broken in the
10
- build process of a set of packages, or can be used as an automated installation tool.
11
-
12
- Autobuild config files are Ruby scripts which configure rake to
13
- * imports the package from a SCM or (optionnaly) updates it
14
- * configures it. This phase can handle code generation, configuration (for
15
- instance for autotools-based packages), ...
16
- * build
17
- * install
18
-
19
- It takes the dependencies between packages into account in its build process,
20
- updates the needed environment variables (+PKG_CONFIG_PATH+, +PATH+,
21
- +LD_LIBRARY_PATH+, ...)
22
-
23
-
24
- == WARNING for 0.5 users
25
- Old configuration files used with autobuild 0.5 aren't accepted by Autobuild
26
- 0.6. Since 0.6, Autobuild uses Ruby for configuration (just like rake does)
27
-
28
- == Available packages
29
- === Common usage
30
- All package objects define the following attributes
31
- *importer*:: the importer object (see "Available importers" below)
32
- *srcdir*:: where the package sources are located. If it is a relative
33
- path, it is relative to the value of Autobuild.srcdir. The default is to
34
- use the package name.
35
- *prefix*:: the directory where the package should be installed. If it is a relative
36
- path, it is relative to the value of Autobuild.prefix. The default is to
37
- use the package name.
38
-
39
- Each package method (Autobuild.import, Autobuild.autotools, ...) takes either a package
40
- name for first argument, or a <tt>name => dependency_array</tt> hash, and take a block which
41
- can be used to configure the package. For instance
42
- Autobuild.import :my_package do |pkg|
43
- pkg.srcdir = 'my_package_dir'
44
- end
45
-
46
- Autobuild.import :my_package => [:depends, :depends_also] do |pkg|
47
- end
48
-
49
- === Source only
50
- package = Autobuild.import(dependencies) do |pkg|
51
- <package configuration>
52
- end
53
-
54
- Use +import+ if you need the package sources but don't need to build it. You just need
55
- to set +importer+ and +srcdir+. +prefix+ is ignored.
56
-
57
- === Autotools
58
- package = Autobuild.autotools(name, dependencies) do |pkg|
59
- <package configuration>
60
- end
61
-
62
- Use this to build GNU autotools-based packages. This handles autoconf-only packages as
63
- well as those using automake
64
-
65
- Options to give the +configure+ script are given in the +configureflags+ array
66
- pkg.configureflags = ['--with-blah', 'FOO=bar' ]
67
-
68
- If you want the files produced during the build to be separated from the source files, set the +builddir+ attribute.
69
- For now, it has to be a relative path, relative to the source directory.
70
- pkg.builddir = 'build'
71
-
72
- The generation of the configure script uses four programs: +autoheader+, +autoconf+, +aclocal+,
73
- +automake+. The default program path can be overriden in the Autotools.programs hash. For
74
- instance, to be sure that <tt>automake-1.9</tt> is used <bb>for all packages</bb>, you set
75
-
76
- Autotools.programs['automake'] = 'automake-1.9'
77
-
78
- Autobuild tries to detect what tools it should run, but you can override. Autodetection works
79
- as follows:
80
- * if a script named +autogen+ or +autogen.sh+ exists in the package source directory, it is run
81
- and the other tools are not. The name of this kind of script can be set by calling Autotools#use
82
- pkg.use :autogen => 'my_autogen_script'
83
- * +autoheader+ is never used by default
84
- * +autoconf+ is used if there is <tt>configure.ac</tt> or <tt>configure.in</tt> in the source dir
85
- * +aclocal+ is used if +autoconf+ is enabled (either explicitely or by autodetection)
86
- * +automake+ is used if there is a <tt>Makefile.am</tt> file in the source dir
87
- * you can force to enable or disable any of these steps by calling Autotools#use. Set it to +true+
88
- to force its usage, +false+ to disable it or to a string to force the usage of a particular program
89
- pkg.use :autogen => false
90
- pkg.use :automake => false
91
- pkg.use :autoheader => true
92
- pkg.use :autoconf => 'my_autoconf_program'
93
-
94
- The 'autogen' option cannot be set to +true+.
95
-
96
- The only program used during the build and install phases is +make+. Its path can be overriden
97
- in the Autobuild.programs hash
98
- Autobuild.programs['make'] = 'gnumake'
99
-
100
- === CMake
101
-
102
- A cmake package is defined with
103
-
104
- require 'autobuild/packages/cmake'
105
- Autobuild.cmake :package_name do |pkg|
106
- <package configuration> ...
107
- end
108
-
109
- The only configuration attribute available for CMake package is:
110
- +builddir+
111
- the directory in which to configure and build the package. It is relative to
112
- the package sources. A global value can be defined through Autobuild::CMake.builddir
113
-
114
- Additionally, the #define(name, value) method allows to define configuration variables.
115
-
116
- == Available importers
117
- You must set an importer object for each package. The package importer is the +importer+ attribute
118
- and is set via <tt>package.importer = my_importer</tt>. An importer +foo+ is defined by the class
119
- Autobuild::FooImporter and defines a Autobuild.foo method which creates a new importer object.
120
- Importer classes files are in <tt>lib/autobuild/import/</tt>
121
-
122
- === Tar
123
- package.importer = tar(uri[, options])
124
-
125
- Downloads a tarfile at +uri+ and saves it into a local cache directory.
126
- The cache directory can be set in the +options+ hash
127
- package.importer = tar(uri, :cachedir = '/tmp')
128
-
129
- It is "#{Autobuild.prefix}/cache" by default. The known URI schemes are file://
130
- for local files and http:// or ftp:// for remote files. There is currently no
131
- way to set passive mode on FTP, since the standard open-uri library does not
132
- allow that.
133
-
134
- === CVS
135
- package.importer = cvs(cvsroot, module[, options])
136
-
137
- Where +options+ is an option hash. See also Autobuild::CVSImporter and Autobuild.cvs
138
-
139
- * the default CVS command is +cvs+. It can be changed by
140
- Autobuild.programs['cvs'] = 'my_cvs_command'
141
- * the default checkout option is <tt>-P</tt>. You can change that by giving a +cvsco+ option
142
- cvs cvsroot, module, :cvsco => ['--my', '--cvs', '--options']
143
- * the default update option is <tt>-dP</tt>. You can change that by giving a +cvsup+ option
144
- cvs cvsroot, module, :cvsup => ['--my', '--cvs', '--options']
145
-
146
- === Subversion
147
- package.importer = svn(url[, options])
148
-
149
- Where +options+ is an option hash. See also Autobuild::SVNImporter and Autobuild.svn
150
-
151
- * the default Subversion command is +svn+. It can be changed by
152
- Autobuild.programs['svn'] = 'my_svn_command'
153
- * by default, no options are given to checkout. You add some by giving a +svnco+ option
154
- svn url, :svnco => ['--my', '--svn', '--options']
155
- * by default, no options are given to update. You can add some by giving a +svnup+ option
156
- svn url, :svnup => ['--my', '--svn', '--options']
157
-
158
- === Darcs
159
- package.importer = darcs(url[, options])
160
-
161
- Where +options+ is a hash. See also Autobuild::DarcsImporter and Autobuild.darcs
162
-
163
- * the default Darcs command is +darcs+. It can be changed by
164
- Autobuild.programs['darcs'] = 'my_svn_command'
165
- * by default, no options are given to get. You add some by giving a +get+ option
166
- darcs url, :get => ['--my', '--darcs', '--options']
167
- * by default, no options are given to pull. You can add some by giving a +pull+ option
168
- darcs url, :pull => ['--my', '--darcs', '--options']
169
-
170
- === Git
171
- package.importer = git(url[, branch])
172
-
173
- Imports the given branch (or master if none is given) of the repository at the
174
- given URL. The branch is imported as the 'autobuild' remote and fetched into
175
- the master local branch.
176
-
177
- = Copyright and license
178
- Author:: Sylvain Joyeux <sylvain.joyeux@m4x.org>
179
- Copyright:: Copyright (c) 2005-2008 Sylvain Joyeux
180
- License:: GPL
181
-
data/TODO DELETED
@@ -1,9 +0,0 @@
1
- TODO list for Autobuild
2
- * create HTML log pages
3
- * use Logger to be able to remove all non-error output
4
- add a disable_packages attribute to Autobuild to disable the build of specific
5
- packages. This would allow to use autobuild in scripts where the list of packages
6
- is asked to the user
7
- * add an --interactive option, which could ask to disable/enable packages before doing
8
- the build
9
-
Binary file
Binary file
Binary file
Binary file