gummiboot: new package

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Christophe Vu-Brugier <cvubrugier@yahoo.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Thomas Petazzoni 2014-02-19 20:10:20 +01:00 committed by Peter Korsgaard
parent a241b4b071
commit 7961d45c24
5 changed files with 77 additions and 0 deletions

View File

@ -7,6 +7,7 @@ source "boot/barebox/Config.in"
source "boot/boot-wrapper-aarch64/Config.in"
source "boot/grub/Config.in"
source "boot/grub2/Config.in"
source "boot/gummiboot/Config.in"
source "boot/lpc32xxcdl/Config.in"
source "boot/mxs-bootlets/Config.in"
source "boot/syslinux/Config.in"

28
boot/gummiboot/Config.in Normal file
View File

@ -0,0 +1,28 @@
config BR2_TARGET_GUMMIBOOT
bool "gummiboot"
depends on BR2_i386 || BR2_x86_64
select BR2_PACKAGE_GNU_EFI
select BR2_PACKAGE_UTIL_LINUX
select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
depends on BR2_LARGEFILE # util-linux
depends on BR2_USE_WCHAR # util-linux
help
gummiboot is a simple UEFI boot manager which executes
configured EFI images. The default entry is selected by a
configured pattern (glob) or an on-screen menu.
gummiboot operates on the EFI System Partition (ESP)
only. Configuration file fragments, kernels, initrds, other
EFI images need to reside on the ESP. Linux kernels need to
be built with CONFIG_EFI_STUB to be able to be directly
executed as an EFI image.
See the Grub2 help text for details on preparing an EFI
capable disk image using Gummiboot: the instructions are
exactly the same, except that the Gummiboot configuration
files will be located in /loader/ inside the EFI partition.
http://freedesktop.org/wiki/Software/gummiboot/
comment "gummiboot needs a toolchain w/ largefile, wchar"
depends on !(BR2_LARGEFILE && BR2_USE_WCHAR)

View File

@ -0,0 +1,4 @@
title Buildroot
version 1
linux /bzImage
options console=ttyS0 root=/dev/sda2

View File

@ -0,0 +1,42 @@
################################################################################
#
# gummiboot
#
################################################################################
GUMMIBOOT_SITE = git://anongit.freedesktop.org/gummiboot
GUMMIBOOT_VERSION = 43
GUMMIBOOT_LICENSE = LGPLv2.1+
GUMMIBOOT_LICENSE_FILES = LICENSE
# The git archive does not have the autoconf/automake stuff generated.
GUMMIBOOT_AUTORECONF = YES
GUMMIBOOT_DEPENDENCIES = gnu-efi host-pkgconf util-linux
GUMMIBOOT_INSTALL_TARGET = NO
GUMMIBOOT_INSTALL_IMAGES = YES
ifeq ($(BR2_i386),y)
GUMMIBOOT_IMGARCH = ia32
else ifeq ($(BR2_x86_64),y)
GUMMIBOOT_IMGARCH = x64
endif
GUMMIBOOT_CONF_OPT = \
--host=$(BR2_ARCH) \
--with-efi-libdir=$(STAGING_DIR)/usr/lib \
--with-efi-ldsdir=$(STAGING_DIR)/usr/lib \
--with-efi-includedir=$(STAGING_DIR)/usr/include \
--disable-manpages
define GUMMIBOOT_INSTALL_IMAGES_CMDS
$(INSTALL) -D -m 0644 $(@D)/gummiboot$(GUMMIBOOT_IMGARCH).efi \
$(BINARIES_DIR)/efi-part/EFI/BOOT/boot$(GUMMIBOOT_IMGARCH).efi
echo "boot$(GUMMIBOOT_IMGARCH).efi" > \
$(BINARIES_DIR)/efi-part/startup.nsh
$(INSTALL) -D -m 0644 boot/gummiboot/loader.conf \
$(BINARIES_DIR)/efi-part/loader/loader.conf
$(INSTALL) -D -m 0644 boot/gummiboot/buildroot.conf \
$(BINARIES_DIR)/efi-part/loader/entries/buildroot.conf
endef
$(eval $(autotools-package))

View File

@ -0,0 +1,2 @@
timeout 3
default buildroot