The first step is to collect build logs of your package.
jas@latte:~/src/libidn-0.5.0$ ./configure > ~/libidn.txt
jas@latte:~/src/libidn-0.5.0$ make check >> ~/libidn.txt
Now let Autobuild parse the file.
jas@latte:~/src/libidn-0.5.0$ cd
jas@latte:~$ autobuild --dry-run --verbose libidn.txt
`libidn.txt':
Project: libidn
Revision: 0.5.0
Mode: default
Hosttype: i686-pc-linux-gnu
Buildtype: i686-pc-linux-gnu
Hostname: unknown
Timestamp: unknown
Status: ok
jas@latte:~$
Everything went fine, except possibly that the hostname and timestamp
have default looking values. If Autobuild is not able to guess more
important values, such as the project name, you may have to use a
command line parameter, e.g. --project. You could also
consider improving the guessing logic.
Now, one build log isn't much if you want to make an overview. Let's create another build log. 1
jas@latte:~/src/libidn-0.5.1$ td > ~/libidn2.txt
If you have Emacs and htmlize.el installed, you can markup this log
file up using the htmlize tool.
jas@latte:~$ htmlize libidn2.txt libidn2.html
jas@latte:~$
Ok, now we have two build logs, and one of them has even been converted into HTML format. Let's generate a summary for them. Notice that here Autobuild is actually parsing an HTML page, which can be less reliable than parsing a text file.
jas@latte:~$ autobuild --verbose libidn.txt libidn2.html > example.html
`libidn.txt':
Project: libidn
Revision: 0.5.0
Mode: default
Hosttype: i686-pc-linux-gnu
Buildtype: i686-pc-linux-gnu
Hostname: unknown
Timestamp: unknown
Status: ok
`libidn2.html':
Project: libidn
Revision: 0.5.1
Mode: default
Hosttype: i386-unknown-netbsdelf1.6
Buildtype: i386-unknown-netbsdelf1.6
Hostname: 192.233.54.143
Timestamp: unknown
Status: ok
jas@latte:~$
See the examples/ sub-directory in the Autobuild source code distribution, it contain the libidn.txt and libidn2.txt files, and a Makefile that will execute the above commands. In that directory, you can remove the distributed example.html and type make example.html to regenerate it.
[1] The script td is not part of Autobuild. It is responsible for logging on a remote machine and building a package – it may be cleaned up and discussed here in the future.