Lines Matching full:buildman
11 If you just want to quickly set up buildman so you can build something (for
15 PATH=$PATH:`pwd`/tools/buildman
16 buildman --fetch-arch arm
17 buildman -k rpi_2
30 A key feature of buildman is its output summary, which allows warnings,
39 Buildman can be stopped and restarted, in which case it will continue
43 Buildman gets so tied up in its work that it can ignore the outside world.
54 Buildman is a builder. It is not make, although it runs make. It does not
61 Buildman is designed to build entire git branches, i.e. muliple commits. It
65 for another board. If you want buildman to re-build a commit it has already
68 Buildman produces a concise summary of which boards succeeded and failed.
74 Buildman stores image size information and can report changes in image size
77 Buildman starts multiple threads, and each thread builds for one board at
86 Buildman works in an entirely separate place from your U-Boot repository.
91 Buildman is invoked in your U-Boot directory, the one with the .git
96 Buildman automatically selects the correct tool chain for each board. You
97 must supply suitable tool chains, but buildman takes care of selecting the
100 Buildman generally builds a branch (with the -b flag), and in this case
104 valid value, and all will be well. Otherwise buildman will perform random
109 still look at them later using -se. Note that buildman will assume that the
112 Buildman is optimised for building many commits at once, for many boards.
113 On multi-core machines, Buildman is fast because it uses most of the
119 Buildman lets you build all boards, or a subset. Specify the subset by passing
146 Buildman does not store intermediate object files. It optionally copies
163 2. Create ~/.buildman to tell buildman where to find tool chains (see 'The
164 .buildman file' later for details). As an example:
166 # Buildman settings file
183 each of your toolchains here. Buildman will search inside these directories
201 This tells buildman that you want to use this exact toolchain for the arm
205 Since the toolchain prefix is an explicit request, buildman will report an
212 and buildman will find arm-none-eabi-gcc in /usr/bin if you have it installed.
217 This tells buildman to use a compiler wrapper in front of CROSS_COMPILE. In
225 Buildman uses multiprocessing, Queue, shutil, StringIO, ConfigParser and
236 $ ./tools/buildman/buildman --list-tool-chains
416 To make this easier, buildman can automatically download and install
419 $ ./tools/buildman/buildman --fetch-arch list
430 $ ./tools/buildman/buildman --fetch-arch or32
435 Unpacking to: /home/sjg/.buildman-toolchains
437 - looking in '/home/sjg/.buildman-toolchains/gcc-4.5.1-nolibc/or32-linux/.'
438 - looking in '/home/sjg/.buildman-toolchains/gcc-4.5.1-nolibc/or32-linux/bin'
439 - found '/home/sjg/.buildman-toolchains/gcc-4.5.1-nolibc/or32-linux/bin/or32-linux-gcc'
444 $ ./tools/buildman/buildman --fetch-arch all
446 $ sudo mv ~/.buildman-toolchains/*/* /toolchains/
465 Buildman should now be set up to use your new toolchain.
481 $ ./tools/buildman/buildman -b <branch> -n
485 or something similar. Buildman will try to guess a suitable upstream branch
518 confirm that things look about right. Notice that buildman has chosen a
521 Buildman works entirely inside the base directory, here ../lcd9b,
531 $ ./tools/buildman/buildman -b <branch>
533 Buildman will set up some working directories, and get started. After a
541 and 124 more didn't build at all. Buildman expects to complete the process
549 $ ./tools/buildman/buildman -b lcd9b -s
586 $ ./tools/buildman/buildman -b <branch> -se lubbock
610 shows up clearly with buildman. You can then reorder the commits and try
622 Buildman tries to distinguish warnings from errors, and shows warning lines
634 log: Output from stdout. Normally there isn't any since buildman runs
659 $ ./tools/buildman/buildman -b us-x86 -sS
703 $ ./tools/buildman/buildman -b us-mem4 -sSdB
844 The .buildman file
847 The .buildman file provides information about the available toolchains and
855 make sure it is unique. The value is the path to the toolchain. Buildman
858 it. If the return code is 0, buildman assumes that it is a valid C
871 will tell buildman that the i386 and x86_64 toolchains can be used for
877 affect the build product. These flags can be specified in the buildman
899 SOME_OPTION=1234 ./tools/buildman/buildman my_board
906 currently checked-out source, run buildman without the -b flag. This will
917 upstream/master..us-buildman
919 will build commits in us-buildman that are not in upstream/master.
925 By default, buildman executes 'make mrproper' prior to building the first
930 buildman invocation, since it reduces the amount of work done on any build.
932 One possible application of buildman is as part of a continual edit, build,
933 edit, build, ... cycle; repeatedly applying buildman to the same change or
936 modifications. In this scenario, buildman's default choice of build directory
939 By default, each buildman thread uses a single directory for all builds. When a
943 files when a thread switches between boards. Ideally, such buildman-induced
945 the build system and source changes allow. buildman's -P flag may be used to
947 directory, thus avoiding any buildman-induced configuration changes in any
961 SOURCE_DATE_EPOCH=0 ./tools/buildman/buildman -I -P tegra
969 Buildman supports this with the -K option, used after a build. This shows
974 $ buildman -b kc4 -sK
997 buildman to configuration U-Boot and create the .cfg files, but not actually
1000 By default buildman considers the follow two configuration methods
1008 file. The achieve this, buildman considers 'y' to be '1' in configuration
1016 Buildman has various other command line options. Try --help to see them.
1018 When doing builds, Buildman's return code will reflect the overall result:
1028 Buildman includes most of the features of MAKEALL and is generally faster
1030 commit introduces an error in a particular board, buildman can easily show
1035 - Buildman is typically faster
1036 - Buildman has a lot more features
1045 To build the current source tree, run buildman without a -b flag:
1047 ./tools/buildman/buildman <list of things to build>
1052 However buildman usually works on entire branches, and for that you must
1055 ./tools/buildman/buildman -b <branch_name> <list of things to build>
1059 ./tools/buildman/buildman -b <branch_name> -s <list of things to build>
1062 buildman just shows a summary, with red indicating that a commit introduced
1069 You don't need to stick around on that branch while buildman is running. It
1082 ** buildman -b <branch> powerpc
1085 ** buildman -b <branch> esd
1088 ** buildman -b <branch> keymile siemens
1091 ** buildman -b <branch> mpc83xx freescale 4xx
1093 Buildman automatically tries to use all the CPUs in your machine. If you
1097 building a few boards, buildman will automatically run make with the -j
1100 option in MAKEALL then -j is the equivalent in buildman.
1102 Buildman puts its output in ../<branch_name> by default but you can change
1103 this with the -o option. Buildman normally does out-of-tree builds: use -i
1105 used -i you pollute buildman's copies of the source tree, and you will need
1106 to remove the build directory (normally ../<branch_name>) to run buildman
1109 Buildman doesn't keep the output result normally, but use the -k option to
1132 access to log files. Also it would be nice if buildman could 'hunt' for
1136 A specific problem to fix is that Ctrl-C does not exit buildman cleanly when