Files
buildroot/package/gnu-efi/gnu-efi.mk
Fiona Klute (othermo GmbH) 0679bed2f6 package/gnu-efi: fix license information
Split the confusing "and/or" for gnulib, so dual-licensed and GPL-only
parts are clearly noted, and add the missing LGPL license. Lines in
GNU_EFI_LICENSE are ordered the same way as the information is given
in the LICENSE file.

The license situation of inc/subst/elf.h is curious: The file itself
is licensed under LGPL-2.1-or-later, and used in gnu-efi under
LGPL-3.0-or-later (accompanied by the appropriate license files),
which in turn allows using it for object code under different terms
with certain conditions (see section 3 of LGPL 3.0, as noted in the
gnu-efi LICENSE file).

Signed-off-by: Fiona Klute (othermo GmbH) <fiona.klute@gmx.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 7ed738bf5d)
Signed-off-by: Raphaël Mélotte <raphael.melotte@mind.be>
2026-10-08 12:26:20 +02:00

58 lines
1.6 KiB
Makefile

################################################################################
#
# gnu-efi
#
################################################################################
GNU_EFI_VERSION = 4.0.4
GNU_EFI_SITE = $(call github,ncroxon,gnu-efi,$(GNU_EFI_VERSION))
GNU_EFI_INSTALL_STAGING = YES
GNU_EFI_LICENSE = \
BSD-3-Clause or GPL-2.0+ (gnuefi), \
BSD-3-Clause (efilib), \
LGPL-3.0-or-later (inc/subst/elf.h), \
GPL-2.0+ (tests, some IDE & CI files), \
BSD-2-Clause-Patent (EDK2 routines)
GNU_EFI_LICENSE_FILES = \
LICENSE \
licenses/LICENSE.BSD-3-Clause \
licenses/LICENSE.edk2 \
licenses/LICENSE.efilib \
licenses/LICENSE.GPL-2.0-or-later \
licenses/LICENSE.GPL-3.0-or-later \
licenses/LICENSE.LGPL-3.0-or-later
# gnu-efi is a set of library and header files used to build
# standalone EFI applications such as bootloaders. There is no point
# in installing these libraries to the target.
GNU_EFI_INSTALL_TARGET = NO
ifeq ($(BR2_i386),y)
GNU_EFI_PLATFORM = ia32
else ifeq ($(BR2_x86_64),y)
GNU_EFI_PLATFORM = x86_64
else ifeq ($(BR2_arm)$(BR2_armeb),y)
GNU_EFI_PLATFORM = arm
else ifeq ($(BR2_aarch64)$(BR2_aarch64_be),y)
GNU_EFI_PLATFORM = aarch64
else ifeq ($(BR2_RISCV_64),y)
GNU_EFI_PLATFORM = riscv64
endif
GNU_EFI_MAKE_OPTS = \
ARCH=$(GNU_EFI_PLATFORM) \
CROSS_COMPILE="$(TARGET_CROSS)" \
PREFIX=/usr
define GNU_EFI_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(GNU_EFI_MAKE_OPTS)
endef
define GNU_EFI_INSTALL_STAGING_CMDS
$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(GNU_EFI_MAKE_OPTS) \
INSTALLROOT=$(STAGING_DIR) install
endef
$(eval $(generic-package))