Even when building the host tools, for some reason U-Boot tries to
execute the cross-compiler, so tell it which cross-compiler to use in
order to avoid failure such as:
/usr/bin/make -j12 -C /home/test/outputs/test-253-mini2440_defconfig/build/u-boot-custom tools
make[1]: arm-linux-gcc: Command not found
make[1]: Entering directory `/home/test/outputs/test-253-mini2440_defconfig/build/u-boot-custom'
for dir in tools examples api_examples ; do /usr/bin/make -C $dir _depend ; done
Generating include/autoconf.mk
/bin/sh: line 3: arm-linux-gcc: command not found
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When U-Boot is enabled and no custom patch directory has been set,
then the current test:
ifneq ($(strip $(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR)),"")
works. However, when U-Boot is not enabled, but still gets compiled
because mkimage is needed to build the kernel,
BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR is completely empty. It does not
even have quotes. So the test in fact needs to be:
ifneq ($(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR)),)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Marvell boards like the sheevaplug needs a special .kwb image format,
so add an option for it similar to how we handle zImage/uImage/..
for the kernel.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
A few minor modifications of u-boot.mk is needed to support 2010.06:
- U-Boot now uses ARCH=powerpc like the kernel (instead of ARCH=ppc)
- Library files have moved, so adjust the target mkimage/fw_printenv rules
(still compatible with older versions)
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The bootloader being very specific to the hardware, being able to
build U-Boot from an arbitrary tarball available on the web might be
needed.
Therefore, for U-Boot, we provide two methods :
* Get a given stable version from U-Boot official FTP server
* Get an arbitrary tarball
This should hopefully satisfy most needs, without complicating too
much the U-Boot build procedure on Buildroot side.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Remove all the bootsource selection mechanism and the horribly
complicated BR2_TARGET_UBOOT_DEFAULT_ENV thing, which wanted to be
generic, but was in fact very AT91-specific.
Just keep things simple: we build U-Boot with the board configuration
file specified in BR2_TARGET_UBOOT_BOARDNAME.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To build mkimage for the host (which is needed to build an uImage of
the kernel), it is not necessary to configure U-Boot, and therefore to
have a particular board selected.
Therefore, this commit:
* Adds a verification at U-Boot configure step that a U-Boot board
name has been defined
* Sets a default U-Boot version if none has been specified, so that
even when U-Boot isn't selected but we want to build mkimage for
the host, a particular U-Boot version is picked.
* Make the host mkimage target depend only on U-Boot being
downloaded/extracted/patched, and the target mkimage/fw_printenv
targets depend on U-Boot being fully configured.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
A very complicated infrastructure for just a special case, for an
ancient version of U-Boot. Recent versions of U-Boot are reported to
work just fine on Atmel ARM evaluation boards.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>