Difference between revisions of "Abuild"

From coreboot
Jump to: navigation, search
(Created page with 'abuild is a great tool to check whether your tree compiles for one or all targets. If you invoke abuild with no parameters, it will build all boards automatically. The resulting...')
 
m
Line 1: Line 1:
abuild is a great tool to check whether your tree compiles for one or all targets.
+
'''abuild''' is a great tool to check whether your coreboot (v2) tree compiles for one or all targets.
  
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/ subdirectory of the current directory.
+
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/''' subdirectory of the current directory.
  
 
To build the thomson ip1000 target, run
 
To build the thomson ip1000 target, run
 +
 
  cd util/abuild; abuild -t thomson/ip1000
 
  cd util/abuild; abuild -t thomson/ip1000
The build log will be in util/abuild/coreboot-builds/thomson_ip1000/make.log
+
 
 +
The build log will be in '''util/abuild/coreboot-builds/thomson_ip1000/make.log'''.
  
 
As an alternative, you can build in the top level directory.
 
As an alternative, you can build in the top level directory.
 +
 
  util/abuild/abuild -t thomson/ip1000 $PWD
 
  util/abuild/abuild -t thomson/ip1000 $PWD
  
You can also specify a payload directory with -p
+
You can also specify a payload directory with '''-p''':
  
 
  mkdir payloads
 
  mkdir payloads
 
  cp /somewhere/filo.elf 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)
+
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
such as
+
 
 
  echo "`dirname $0`/build/filo.elf"
 
  echo "`dirname $0`/build/filo.elf"
  
then you can build a fully working image with payload by specifying:
+
Then you can build a fully working image with payload by specifying:
  
 
  util/abuild/abuild -t thomson/ip1000 -p ./payloads $PWD
 
  util/abuild/abuild -t thomson/ip1000 -p ./payloads $PWD
  
Specify -c max or -c 2 if you have an SMP system, to speed compilation up.
+
Specify '''-c max''' or '''-c 2''' if you have an SMP system, to speed up compilation.

Revision as of 15:59, 23 April 2009

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

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/ subdirectory of the current directory.

To build the thomson ip1000 target, run

cd util/abuild; abuild -t thomson/ip1000

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

As an alternative, you can build in the top level directory.

util/abuild/abuild -t thomson/ip1000 $PWD

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 $PWD

Specify -c max or -c 2 if you have an SMP system, to speed up compilation.