From coreboot
Revision as of 20:01, 24 September 2010 by Uwe (talk | contribs) (abuild --help)
Jump to: navigation, search

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to https://doc.coreboot.org/. Contributions welcome!

abuild is a great tool to check whether your coreboot tree compiles for one or all targets.

Basic usage

If you invoke abuild with no parameters, it will build all boards automatically. The resulting images and logs will end up in the coreboot-builds/ directory.

For example, to build the Thomson IP1000 target, run:

$ util/abuild/abuild -t thomson/ip1000

The build log will be in coreboot-builds/thomson_ip1000/make.log.

You can also specify a payload directory with -p:

$ mkdir payloads
$ cp /somewhere/filo.elf payloads

Then add a file payloads/payload.sh which prints the name of the payload to use (and takes the mainboard as a parameter) such as:

$ echo "`dirname $0`/build/filo.elf"

Then you can build a fully working image with payload by specifying:

$ util/abuild/abuild -t thomson/ip1000 -p ./payloads


$ util/abuild/abuild --help
coreboot autobuild v0.9 (January 29th, 2010)
Usage: util/abuild/abuild [-v] [-a] [-b] [-r] [-t <vendor/board>] [-p <dir>] [lbroot]
       util/abuild/abuild [-V|--version]
       util/abuild/abuild [-h|--help]

   [-v|--verbose]                print more messages
   [-a|--all]                    build previously succeeded ports as well
   [-b|--broken]                 attempt to build ports that are known broken
   [-r|--remove]                 remove output dir after build
   [-t|--target <vendor/board>]  attempt to build target vendor/board only
   [-p|--payloads <dir>]         use payloads in <dir> to build images
   [-V|--version]                print version number and exit
   [-h|--help]                   print this help and exit
   [-x|--xml]                    write xml log file 
                                 (defaults to abuild.xml)
   [-T|--test]                   submit image(s) to automated test system
   [-c|--cpus <numcpus>]         build on <numcpus> at the same time
   [-s|--silent]                 omit compiler calls in logs
   [-ns|--nostackprotect]        use gcc -fno-stack-protector option
   [-sb|--scan-build]            use clang's static analyzer
   [-y|--ccache]                 use ccache
   [-C|--config]                 configure-only mode
   [-l|--loglevel <num>]         set loglevel
   [-u|--update]                 update existing image
   [-P|--prefix <name>]          file name prefix in CBFS
   [lbroot]                      absolute path to coreboot sources
                                 (defaults to .)