table of contents
autobuild(8) | System Manager's Manual | autobuild(8) |
NAME¶
autobuild - multiple configuration build tool
SYNOPSIS¶
autobuild [-c] [-n] [-t] [-v] descr-file
DESCRIPTION¶
autobuild configures, builds, and tests a source code package whose configuration is provided by GNU's autoconf mechanism. descr-file contains a set of parameters to be passed to configure in various combinations, followed by make and make distcheck , to confirm that the current source code tree has not had any build or runtime regressions checked into it.
If any of the three steps fails, the output of the command is dumped to standard output and execution terminates.
OPTIONS¶
DESCRIPTION FILE¶
The description file contains a JSON object. It is expected to contain optional keys, which refer to arrays, as follows:
- always
- Contains an array of strings each of which is an argument that should be passed to configure for every test configuration.
- combine
- Contains an array of objects each of which is to be tested in various combinations with all of the others in the array. This means every entry added to this array doubles the number of test configurations that will be tried (i.e., the presence and absence cases). An object in this array must either be a string, or an array of strings; in the latter case, the set of strings is applied as a group whenever the array is selected for testing.
- each
- Contains an array of objects each of which is to be tested in a mutually exclusive way (that is, in sequence, but never together). Exactly one will always be chosen and included. To cause an iteration that chooses none of the objects, include an empty object.
EXAMPLE¶
{ "always": [ "--foo", "--bar" ], "combine": [ "--a", "--b", [ "--c", "--d"]] }
This will run eight tests; all of them will include "--foo" and "--bar", and they will include all of the various possible combinationks of "--a", "--b", and the pair "--c" and "--d".
VERSION¶
This man page covers version 1.1.0 of autobuild.
COPYRIGHT¶
Copyright (c) 2012, 2013, The Trusted Domain Project. All rights reserved.
SEE ALSO¶
The Trusted Domain Project |