Commit f15702a9 authored by Thomas Petazzoni's avatar Thomas Petazzoni
Browse files

u-boot: re-add infrastructure to specify custom tarball



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: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent 6db01c1b
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -25,13 +25,24 @@ config BR2_TARGET_UBOOT_2009_11
config BR2_TARGET_UBOOT_2009_08
	bool "u-boot-2009.08"

config BR2_TARGET_UBOOT_CUSTOM_TARBALL
	bool "Custom tarball"

endchoice

if BR2_TARGET_UBOOT_CUSTOM_TARBALL

config BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION
	string "URL of custom U-Boot tarball"

endif

config BR2_UBOOT_VERSION
	string
	default "2010.03"	if BR2_TARGET_UBOOT_2010_03
	default "2009.11"	if BR2_TARGET_UBOOT_2009_11
	default "2009.08"	if BR2_TARGET_UBOOT_2009_08
	default "custom"	if BR2_TARGET_UBOOT_CUSTOM_TARBALL

config BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR
	string "custom patch dir"
+12 −4
Original line number Diff line number Diff line
@@ -14,9 +14,17 @@ ifeq ($(U_BOOT_VERSION),)
U_BOOT_VERSION=2010.03
endif

ifeq ($(U_BOOT_VERSION),custom)
# Handle custom U-Boot tarballs as specified by the configuration
U_BOOT_TARBALL=$(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION))
U_BOOT_SITE:=$(dir $(U_BOOT_TARBALL))
U_BOOT_SOURCE:=$(notdir $(U_BOOT_TARBALL))
else
# Handle stable official U-Boot versions
U_BOOT_SITE:=ftp://ftp.denx.de/pub/u-boot
U_BOOT_SOURCE:=u-boot-$(U_BOOT_VERSION).tar.bz2
endif

U_BOOT_SITE:=ftp://ftp.denx.de/pub/u-boot
U_BOOT_DIR:=$(BUILD_DIR)/u-boot-$(U_BOOT_VERSION)
U_BOOT_CAT:=$(BZCAT)
U_BOOT_BIN:=u-boot.bin
@@ -51,9 +59,9 @@ $(DL_DIR)/$(U_BOOT_SOURCE):
	 $(call DOWNLOAD,$(U_BOOT_SITE),$(U_BOOT_SOURCE))

$(U_BOOT_DIR)/.unpacked: $(DL_DIR)/$(U_BOOT_SOURCE)
	$(U_BOOT_CAT) $(DL_DIR)/$(U_BOOT_SOURCE) \
		| tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
	mkdir -p $(U_BOOT_DIR)
	mkdir -p $(@D)
	$(INFLATE$(suffix $(U_BOOT_SOURCE))) $(DL_DIR)/$(U_BOOT_SOURCE) \
		| tar $(TAR_STRIP_COMPONENTS)=1 -C $(@D) $(TAR_OPTIONS) -
	touch $@

$(U_BOOT_DIR)/.patched: $(U_BOOT_DIR)/.unpacked