forked from rock-core/autobuild
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Changes.txt
397 lines (315 loc) · 14.4 KB
/
Changes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
== Version 1.5.13
* fix error messages in the oroGen packages, when the loaded oroGen file has an
error
== Version 1.5.12
* fix exception when git logs contain non-ASCII characters on Ruby 1.9 version
compiled with another default encoding than UTF-8 (!)
== Version 1.5.11
* don't sleep unnecessarily on filesystems that have sub-second modification
time resolutions. This speeds up builds.
== Version 1.5.10
* avoid unnecessary reconfigurations in the autotools handler
== Version 1.5.9
* small fixes
* fixed some corner-case problems with log files not being created in the right
folders
== Version 1.5.8
* fix major issue while setting up dependencies
* small 1.8/1.9 compatibility fix in Autotools#use
* small backward compatibility fix w.r.t. Configurable.builddir
== Version 1.5.7
* the "importer" package will now rebuild if the main prefix is deleted. It was
previously not, which was leading to partial builds if the actual installation
was done by a post_install block
* fix the documentation mode
== Version 1.5.6
* fix the directory in error message when a git importer detects a non-git
repository
== Version 1.5.5
* small API additions
== Version 1.5.4
* support orogen's --extended-states
* small API fix when subclassing CMake package handler
== Version 1.5.3
* quickfix for RUBYLIB on OSes that install libraries in usr/lib32 or usr/lib64
instead of usr/lib
== Version 1.5.2
* fix broken mail reporting. The mail report was always saved in a file since
1.5.1.
* fix small bugs in the patching part of the import
- be error tolerant: if patching/unpatching fails, we go back to a well
defined state instead of having to fix the package by hand
- do not apply patches unnecessarily
== Version 1.5.1
* autotools: must run libtool before the other tools
* autotools: properly autodetect need for autoconf (autoconf was always enabled
before)
* logs: properly log everything that happens in one session. The previous
behaviour was to have, in each log file, only the last command that has been
run.
* logs: only attach relevant logs to report mails. The previous behaviour was to
attach all log files that were in <prefix>/log
== Version 1.5.0
* now Ruby1.9 compatibility fixes, can be run with ruby1.9.1 on Debian
* properly runs if the ruby interpreter is not called 'ruby', as ruby1.9.1
on Debian
* fix some issues with the usage of #depends_on *before* Package#srcdir #logdir
and #prefix were set. It fixes an autoproj bug in case the autobuild files use
#depends_on
* the archive importer now properly handles interruptions
* the archive importer now properly autodetects file names if the URLs contains '?'
* fixed the importer package type
* fixed some rare issues with internal dependency definitions. This bug was
usually manifesting itself with rake exceptions whose message were "do not
know how to build <package name>-stamp"
== Version 1.4.9
* quickfix an issue related to a discrepancy between the definition of the
installstamp and the definition of the log dir.
== Version 1.4.8
* make the archive importer nicer to use:
- the archive_dir is unneeded for tarballs from now on
- filename detection works better (and therefore the :filename option will be
less needed)
== Version 1.4.7
* have the git importer update the autobuild remote on update.
== Version 1.4.6
* add missing importer/archive.rb file
== Version 1.4.5
* add support for zip in TarImporter, which is renamed ArchiveImporter to
reflect that. Backward compatibility is retained.
* support sourceforge-like setups in ArchiveImporter: use wget for download and
add a :filename option to specify what is the name of the downloaded file.
* improve configurability of the progress display for tools built on top of
autobuild
* always call with_doc in orogen packages, as orogen itself adds a documentation
target
== Version 1.4.4
* minor bug fixes
== Version 1.4.3
* minor changes in how the shell environment is managed
* update LD_LIBRARY_PATH when applicable
* fix parsing of genom 'require' statements (fix from Matthieu Gallien)
* fix issues with tracking tags and commits (fix from Matthieu Gallien)
== Version 1.4.2
* call subversion with the --non-interactive option, otherwise the build will
block indefinitely. Note that git "questions" are properly passed to the user.
* don't forcefully depend on orogen being available. This fixes bootstrapping
situations where both orogen and some orogen modules need to be built.
* workaround CMake heavy-caching behaviour. When a reconfiguration is needed,
delete the CMakeCache.txt file instead of recalling cmake on top of it. It
should fix most of the problems of CMake related to caching of pkg-config
files for instance.
== Version 1.4.0
* cmake package handler now displays progress value
* added support for parallel builds
* added the long-awaited --force-build and --rebuild options.
The first one forces the call to all the build steps, but without deleting the
build products. The second one deletes all build products and retriggers a
full build.
== Version 1.3.3
* fix: changing Orogen.corba now affects packages that have already been
declared but for which the #corba attribute has not been set explicitely to
true or false.
* fix issues with the parsing of codel requirement in the genom package handler
== Version 1.3.2
* fix stupid issues with the genom package
* import caller's environment instead of erasing it.
== Version 1.3.1
* 1.3.* now depend on utilrb, add it to the gem dependency list
== Version 1.3.0
* major update of the user interaction. Autobuild is now much less verbose, and
(hopefully) displays more useful error messages in most cases.
* make the library easier to use to build other tools (i.e. not so much
autobuild-centered anymore)
* add the :branch and :tag targets to the git importer. The git importer should
now be used as:
Autobuild.git(URL, :branch => branch_name)
OR
Autobuild.git(URL, :tag => tag_name_or_commit_id)
This puts it in line with the other importers which have a
Autobuild.importer_type(URL, option_hash) form.
== Version 1.2.15
* fix branch switching in the git importer: the build will not fail anymore if
autobuild has to switch to an already existing branch
== Version 1.2.14
* fix git importer's handling of branch names: the importer now always works on
a local branch that has the same name than the remote branch.
== Version 1.2.12
* reconfigure orogen packages if orogen itself has been updated
== Version 1.2.11
* fix small issues with CMake
- CMake 2.6 can convert option values between what the user provides (for
instance YES) and what is written in the cache (ON). Take that into account
- if the first configuration fails, no Makefile is generated but
a CMakeCache.txt is there. Autobuild was failing in that situation and will
now handle it gracefully.
== Version 1.2.10
* small fix
logs are sorted into subdirectories, following the structure of the
packages. Up until now, the mailing code was not searching for logfiles in the
subdirectories. This commit fixes this.
== Version 1.2.9
* small usability issue
- provide the --keep-oldlogs command line option and the
Autobuild.erase_oldlogs configuration flag to configure whether old logs
should be kept (new data being appended to them), or erased
- change the default behaviour from keeping old logs to erasing them
== Version 1.2.8
* small fix
- fixes --mail-smtp. This now works even without port specification.
== Version 1.2.7
* fixes to documentation support
- '--no-doc' now works
- failures to generate documentation are now simple warnings, an error can be obtained
by setting Autobuild.doc_errors or by using the --doc-errors command line flag
== Version 1.2.6
* really fix the dependency problem
* add documentation support in autotools
== Version 1.2.5
* really fix the git fetch phase
* fix a dependency issue between code generation and CMake configuration
in the orogen package type
== Version 1.2.4
* git update phase now fetches the repository and branch specified by the
autobuild script. It previously was using remote tracking branches. This
will allow to detect branch changes in the autobuild specification.
* documentation support. Packages can now declare that they can generate
documentation (see Package#doc_task and CMake#with_doc). That documentation
is generated post-build and installed.
* fix build updates in the CMake package class.
== Version 1.2.3
* Fix git update again. FETCH_HEAD may resolve as an ID which is not the one
to be selected for merge
* Make the dependency on RMail optional
* added the orogen package type
== Version 1.2
* Fix git update
* Fix cmake dependency handling. Give a way to always run cmake before running
make (needed sometime)
* Fix the genom package handling
== Version 1.1
* Make the CVS importer discard differences on method and username between the
current root and the configured root
* Allow to specify exclusions in the importer package, which are used to
ignore some changes in the source tree. Useful if some packages are built
inside the imported source tree
* added the git importer
* added the cmake package
* set the current repository as default global prefix and srcdir
* misc fixes w.r.t. handling dependencies
* added Autobuild.post_success_message
== Version 1.0.1
* The "test suites are there for something" release
* Fixes bugs introduced in the last version
* Added a real example in samples/openrobots.rb
* Fixed documentation in various places
* Fail more gracefully on circular dependencies
== Version 1.0
* Releasing 1.0. Autobuild is stable, and is in daily use at my work
* Handle .tgz as valid tar extension (Closes #11722)
* Fix bug in the tar importer, which made checkout fail (Closes #11716)
== Version 0.6.7
* put install-stamp files into logdir, to clean up the installation prefix
* added Autobuild.post_install: run an external program or call a block after
all packages have been successfully built
* bugfix: darcs get expects that the path to the destination directory already
exists. Create it ourselves if it does not exist.
* bugfix: when computing the timestamp of a source tree, exclude .svn and _darcs
directories
* bugfix: 'opencv.pc' were searched in PkgConfig packages instead of the
actual .pc file ...
* bugfix: installed_pkgconfig is supposed to be a singleton method of Autobuild
* bugfix: "darcs get" expects that the path leading to the destination
directory exists. Create it.
* bugfix: fix handling of Genom's requires lists: we were previously expecting
packages to be exactly separated by ', '
== Version 0.6.6
* add Package#post_install: executes either a block or an external
command after the package has been installed
* allow to reference pkg-config packages not built by autobuild.
The .pc file is then used as installation stamp file
* the configure.ac.user file generated by Genom may not be present
in the RCS. Do not expect it to be there after import.
* removed the Ruby package. If there are extensions to build, better
have a post_install script to do that
== Version 0.6.5
* add Autobuild.default_packages
* big rdoc update
== Version 0.6.4
This is a bugfix release
* More checks for working copy sanity: check that the target working copy
has been created by the right tools before doing anything. Update test
suite so that these parts of the importers is tested
* Since we grep 'svn info' output, make sure that its output will be in
english by setting LC_ALL to C
== Version 0.6.3
* CVS and SVN importing plugins check that the current working copy comes from
the right source
* the autotools and genom package are now reconfiguring if the flags
(configureflags and/or genomflags) changed
* bugfixes
== Version 0.6.2
Small changes
* added the Ruby package, which does an import and builds all C extensions
* added the pkgconfig package, which allows to use an already-installed package
if this packages can be found through pkg-config
* check that working copies that are already checked out are from the right
source (for CVS and Subversion)
== Version 0.6.1
Bugfixes
* fix dependency handling for Genom modules. In particular, we add
dependencies between the module generation and the installed
genom files (includes, canvas, and the genom executable). Information
is taken from the pkg-config file
* new package types: InstalledPkgConfig, to reuse pkg-config based packages
installed by another autobuild script
== Version 0.6
Use a Ruby-based DSL instead of YAML config files. It is waaaaaay more
powerful and waaay cleaner. See demo.rb for an example
* Added the Darcs importer
* Fixes in dependency handling
* Uses Rake 0.7
== Version 0.5.1
Fixes the release process, in which the bin/ directory was not distributed
* 0.5 gem did not include bin/autobuild (which obviously was not good). Fix that
== Version 0.5
Fixes the mail default behaviour. Added the 'tar' importer.
* all the API is now in a separate module
* genflags has been renamed back to genomflags. The convention is now to
have a <tool>flags option. For instance: genomflags, configureflags
* added the --[no-]build option to do only import
* changed behaviour for mail reports:
- set sensible default options for mail
- mail: true uses default options
- mail: <string> is equivalent to
mail:
to: <string>
* if a value is undefined in the config file, parameter expansion tries to get
it from the program environment, and raises an error if it is not present in
the environment vars
* changed the names of log files. All importers now uses <package>-<import>.log
* added the 'tar' importer, which downloads and uncompress a tarball
== Version 0.4
* added support to split import and build. For instance
whole_tree:
type: import
import: cvs
source: [ a, repository ]
package1:
type: autotools
srcdir: whole_tree/package1
depends: whole_tree
package2:
type: autotools
srcdir: whole_tree/package2
depends: whole_tree
Works as it should
* the <tt>autotools</tt> package has now an <tt>autogen</tt> options, which gives a name for a script
which creates the autotools environment
* renamed 'genomflags' -> 'genflags'
* variable interpolation checks for environment variables
* bugfixes
== Version 0.3
* added support for patching source code. Add patch: [ patches ] to the package configuration
* renamed autobuild-config, common-config and clean-log to autobuild, common and clean_log. Autobuild
warns if it finds one the previous spelling but ignores it anyway