X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=tools%2Fbuildman%2FREADME;h=aaee58152b89dc94fd98d19edf83c7637af373c5;hb=daab59ac05d8fd1092e34a4c695ac265ae700141;hp=514bebc9f815b206b1c80c9918872d651277c98c;hpb=44afdc4a12b9f6f48338e7975e4f08cfe90dba74;p=platform%2Fkernel%2Fu-boot.git diff --git a/tools/buildman/README b/tools/buildman/README index 514bebc..aaee581 100644 --- a/tools/buildman/README +++ b/tools/buildman/README @@ -141,7 +141,7 @@ means to build all arm boards except nvidia, freescale and anything ending with 'ball'. It is convenient to use the -n option to see what will be built based on -the subset given. +the subset given. Use -v as well to get an actual list of boards. Buildman does not store intermediate object files. It optionally copies the binary output into a directory when a build is successful. Size @@ -343,12 +343,6 @@ Toolchain '/toolchains/gcc-4.6.3-nolibc/m68k-linux/bin/m68k-linux-gcc' at priori - looking in '/toolchains/gcc-4.6.3-nolibc/powerpc-linux/usr/bin' Tool chain test: OK, arch='powerpc', priority 4 Tool chain test: OK, arch='or32', priority 4 - - scanning path '/toolchains/gcc-4.2.4-nolibc/avr32-linux' - - looking in '/toolchains/gcc-4.2.4-nolibc/avr32-linux/.' - - looking in '/toolchains/gcc-4.2.4-nolibc/avr32-linux/bin' - - found '/toolchains/gcc-4.2.4-nolibc/avr32-linux/bin/avr32-linux-gcc' - - looking in '/toolchains/gcc-4.2.4-nolibc/avr32-linux/usr/bin' -Tool chain test: OK, arch='avr32', priority 4 - scanning path '/' - looking in '/.' - looking in '/bin' @@ -381,7 +375,6 @@ aarch64 : /toolchains/gcc-4.9.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc alpha : /toolchains/gcc-4.9.0-nolibc/alpha-linux/bin/alpha-linux-gcc am33_2.0 : /toolchains/gcc-4.9.0-nolibc/am33_2.0-linux/bin/am33_2.0-linux-gcc arm : /opt/arm-eabi-4.6/bin/arm-eabi-gcc -avr32 : /toolchains/gcc-4.2.4-nolibc/avr32-linux/bin/avr32-linux-gcc bfin : /toolchains/gcc-4.6.3-nolibc/bfin-uclinux/bin/bfin-uclinux-gcc c89 : /usr/bin/c89-gcc c99 : /usr/bin/c99-gcc @@ -428,7 +421,7 @@ Checking: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.6.3/ Checking: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.6.2/ Checking: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.5.1/ Checking: https://www.kernel.org/pub/tools/crosstool/files/bin/x86_64/4.2.4/ -Available architectures: alpha am33_2.0 arm avr32 bfin cris crisv32 frv h8300 +Available architectures: alpha am33_2.0 arm bfin cris crisv32 frv h8300 hppa hppa64 i386 ia64 m32r m68k mips mips64 or32 powerpc powerpc64 s390x sh4 sparc sparc64 tilegx x86_64 xtensa @@ -455,7 +448,7 @@ $ sudo mv ~/.buildman-toolchains/*/* /toolchains/ For those not available from kernel.org, download from the following links. arc: https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/ - arc_gnu_2015.06_prebuilt_uclibc_le_archs_linux_install.tar.gz + download/arc-2016.09-release/arc_gnu_2016.09_prebuilt_uclibc_le_archs_linux_install.tar.gz blackfin: http://sourceforge.net/projects/adi-toolchain/files/ blackfin-toolchain-elf-gcc-4.5-2014R1_45-RC2.x86_64.tar.bz2 nds32: http://osdk.andestech.com/packages/ @@ -473,7 +466,7 @@ Buildman should now be set up to use your new toolchain. At the time of writing, U-Boot has these architectures: - arc, arm, avr32, blackfin, m68k, microblaze, mips, nds32, nios2, openrisc + arc, arm, blackfin, m68k, microblaze, mips, nds32, nios2, openrisc powerpc, sandbox, sh, sparc, x86 Of these, only arc and nds32 are not available at kernel.org.. @@ -968,6 +961,55 @@ of the source tree, thus allowing rapid tested evolution of the code. SOURCE_DATE_EPOCH=0 ./tools/buildman/buildman -I -P tegra +Checking configuration +====================== + +A common requirement when converting CONFIG options to Kconfig is to check +that the effective configuration has not changed due to the conversion. +Buildman supports this with the -K option, used after a build. This shows +differences in effective configuration between one commit and the next. + +For example: + + $ buildman -b kc4 -sK + ... + 43: Convert CONFIG_SPL_USBETH_SUPPORT to Kconfig + arm: + + u-boot.cfg: CONFIG_SPL_ENV_SUPPORT=1 CONFIG_SPL_NET_SUPPORT=1 + + u-boot-spl.cfg: CONFIG_SPL_MMC_SUPPORT=1 CONFIG_SPL_NAND_SUPPORT=1 + + all: CONFIG_SPL_ENV_SUPPORT=1 CONFIG_SPL_MMC_SUPPORT=1 CONFIG_SPL_NAND_SUPPORT=1 CONFIG_SPL_NET_SUPPORT=1 + am335x_evm_usbspl : + + u-boot.cfg: CONFIG_SPL_ENV_SUPPORT=1 CONFIG_SPL_NET_SUPPORT=1 + + u-boot-spl.cfg: CONFIG_SPL_MMC_SUPPORT=1 CONFIG_SPL_NAND_SUPPORT=1 + + all: CONFIG_SPL_ENV_SUPPORT=1 CONFIG_SPL_MMC_SUPPORT=1 CONFIG_SPL_NAND_SUPPORT=1 CONFIG_SPL_NET_SUPPORT=1 + 44: Convert CONFIG_SPL_USB_HOST_SUPPORT to Kconfig + ... + +This shows that commit 44 enabled three new options for the board +am335x_evm_usbspl which were not enabled in commit 43. There is also a +summary for 'arm' showing all the changes detected for that architecture. +In this case there is only one board with changes, so 'arm' output is the +same as 'am335x_evm_usbspl'/ + +The -K option uses the u-boot.cfg, spl/u-boot-spl.cfg and tpl/u-boot-tpl.cfg +files which are produced by a build. If all you want is to check the +configuration you can in fact avoid doing a full build, using -D. This tells +buildman to configuration U-Boot and create the .cfg files, but not actually +build the source. This is 5-10 times faster than doing a full build. + +By default buildman considers the follow two configuration methods +equivalent: + + #define CONFIG_SOME_OPTION + + CONFIG_SOME_OPTION=y + +The former would appear in a header filer and the latter in a defconfig +file. The achieve this, buildman considers 'y' to be '1' in configuration +variables. This avoids lots of useless output when converting a CONFIG +option to Kconfig. To disable this behaviour, use --squash-config-y. + + Other options =============