efibootmgr: explicitly depend on host-pkgconf and popt
PATCH 1/2 efibootmgr: explicitly depend on host-pkgconf and popt
The efibootmgr build system uses host-pkgconf and popt, so explicitly add them to _DEPENDENCIES instead of relying on them getting pulled in by efivar.
--- package/efibootmgr/Config.in | 1 + package/efibootmgr/efibootmgr.mk | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-)
package/efibootmgr/Config.in +1 -0
@@ -7,6 +7,7 @@ config BR2_PACKAGE_EFIBOOTMGR depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # efivar depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS select BR2_PACKAGE_EFIVAR + select BR2_PACKAGE_POPT help A Linux user-space application to modify the Intel Extensible Firmware Interface (EFI) Boot Manager. This application can
package/efibootmgr/efibootmgr.mk +1 -1
@@ -8,7 +8,7 @@ EFIBOOTMGR_VERSION = 15 EFIBOOTMGR_SITE = $(call github,rhboot,efibootmgr,$(EFIBOOTMGR_VERSION)) EFIBOOTMGR_LICENSE = GPL-2.0+ EFIBOOTMGR_LICENSE_FILES = COPYING -EFIBOOTMGR_DEPENDENCIES = efivar $(TARGET_NLS_DEPENDENCIES) +EFIBOOTMGR_DEPENDENCIES = host-pkgconf efivar popt $(TARGET_NLS_DEPENDENCIES) EFIBOOTMGR_LDFLAGS = $(TARGET_LDFLAGS) $(TARGET_NLS_LIBS) EFIBOOTMGR_MAKE_ARGS = EFIDIR=buildroot
Signature · 1 line
2.11.0
PATCH v2 2/2 efivar: bump version
Drop 0001-Use-z-muldefs-to-avoid-the-multiple-definitions-bug-.patch and 0003-Remove-some-extra-const-that-gcc-complains-about.patch as they are now upstream.
The upstream repo moved to the 'rhboot' github project, so adjust upstream URL in .mk and help text to match.
Drop dependency on !musl as it is now support since e04281e60cf0d (makeguids: Ensure compatibility with other libcs).
Drop BINTARGETS workaround as this is fixed since 6c674283697 (Don't build static by default).
Drop popt dependency as it is no longer needed since 1aec5e7891 (Replace popt usage with getopt_long in efivar.c).
While we are at it, also add a hash for the license file.
---
Changes since v1:
- Drop popt dependency
package/efibootmgr/Config.in | 2 -
...bc.patch => 0001-Allow-build-with-uClibc.patch} | 2 +-
...fs-to-avoid-the-multiple-definitions-bug-.patch | 29 -------------
...some-extra-const-that-gcc-complains-about.patch | 47 ----------------------
package/efivar/Config.in | 8 +---
package/efivar/efivar.hash | 3 +-
package/efivar/efivar.mk | 9 +----
7 files changed, 7 insertions(+), 93 deletions(-)
rename package/efivar/{0002-Allow-build-with-uClibc.patch => 0001-Allow-build-with-uClibc.patch} (96%)
delete mode 100644 package/efivar/0001-Use-z-muldefs-to-avoid-the-multiple-definitions-bug-.patch
delete mode 100644 package/efivar/0003-Remove-some-extra-const-that-gcc-complains-about.patchpackage/efibootmgr/Config.in +0 -2
@@ -3,7 +3,6 @@ config BR2_PACKAGE_EFIBOOTMGR depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS # efivar depends on !BR2_STATIC_LIBS # efivar depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # efivar - depends on !BR2_TOOLCHAIN_USES_MUSL # efivar depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # efivar depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS select BR2_PACKAGE_EFIVAR
@@ -20,6 +19,5 @@ comment "efibootmgr needs a glibc or uClibc toolchain w/ dynamic library, header depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS depends on BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \ - BR2_TOOLCHAIN_USES_MUSL || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
package/efivar/0001-Allow-build-with-uClibc.patch renamed from package/efivar/0002-Allow-build-with-uClibc.patch +1 -1
@@ -20,7 +20,7 @@ index 7f2d4dd..72c02d1 100644 #include <stdlib.h> -#include <uchar.h> - #include <efivar.h> + #include <efivar/efivar.h> #include "lib.h" +#ifdef __UCLIBC__
package/efivar/0001-Use-z-muldefs-to-avoid-the-multiple-definitions-bug-.patch deleted +0 -29
@@ -1,29 +0,0 @@ -From 314eb67b239e60c2ed3700e2baf9cd0e590465f3 Mon Sep 17 00:00:00 2001 -From: Peter Jones <[email protected]> -Date: Thu, 27 Oct 2016 09:19:18 -0400 -Subject: [PATCH] Use -z muldefs to avoid the multiple definitions bug - without -flto - -This fixes github issue #64 - -Signed-off-by: Peter Jones <[email protected]> -Signed-off-by: Andy Shevchenko <[email protected]> ---- - Make.defaults | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/Make.defaults b/Make.defaults -index aa974d9..c9d599f 100644 ---- a/Make.defaults -+++ b/Make.defaults -@@ -32,6 +32,7 @@ cflags = $(CFLAGS) -I${TOPDIR}/src/include/efivar/ \ - clang_ccldflags = - gcc_ccldflags = - ccldflags = $(cflags) -L. $(CCLDFLAGS) $(LDFLAGS) \ -+ -Wl,-z,muldefs \ - $(if $(findstring clang,$(CCLD)),$(clang_ccldflags),) \ - $(if $(findstring gcc,$(CCLD)),$(gcc_ccldflags),) \ - $(call pkg-config-ccldflags) --- -2.10.2 -
package/efivar/0003-Remove-some-extra-const-that-gcc-complains-about.patch deleted +0 -47
47 lines not on this page · raw message
package/efivar/Config.in +2 -6
@@ -16,19 +16,15 @@ config BR2_PACKAGE_EFIVAR # failures. So, prevent this package to be built using those # toolchains. depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS - # doesn't build with musl due to lack of __bswap_constant_16 - depends on !BR2_TOOLCHAIN_USES_MUSL depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 - select BR2_PACKAGE_POPT help Tools and libraries to manipulate EFI variables - https://github.com/rhinstaller/efivar + https://github.com/rhboot/efivar -comment "efivar needs a glibc or uClibc toolchain w/ dynamic library, headers >= 3.12, gcc >= 4.9" +comment "efivar needs a toolchain w/ dynamic library, headers >= 3.12, gcc >= 4.9" depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS depends on BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \ - BR2_TOOLCHAIN_USES_MUSL || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
package/efivar/efivar.hash +2 -1
@@ -1,2 +1,3 @@ # locally computed hash -sha256 20709c76311f8eb8be92977b7ac008ce62501fa9f7fe885a784321540fc352f9 efivar-30.tar.gz +sha256 9691399a424b8e3776b7ed2df1893c4162285a93697d781f387d0f0d258a7f4b efivar-34.tar.gz +sha256 91df770634adc2755e78cae33a0d01e702ce2f69046408ae93d0d934ff29691b COPYING
package/efivar/efivar.mk +2 -7
@@ -4,21 +4,16 @@ # ################################################################################ -EFIVAR_VERSION = 30 -EFIVAR_SITE = $(call github,rhinstaller,efivar,$(EFIVAR_VERSION)) +EFIVAR_VERSION = 34 +EFIVAR_SITE = $(call github,rhboot,efivar,$(EFIVAR_VERSION)) EFIVAR_LICENSE = LGPL-2.1 EFIVAR_LICENSE_FILES = COPYING -EFIVAR_DEPENDENCIES = popt EFIVAR_INSTALL_STAGING = YES -# BINTARGETS is set to skip efivar-static which requires static popt, -# and since we depend on dynamic libraries, efivar will never be built -# in a static-only environment. # -fPIC is needed at least on MIPS, otherwise fails to build shared # -library. EFIVAR_MAKE_OPTS = \ libdir=/usr/lib \ - BINTARGETS=efivar \ LDFLAGS="$(TARGET_LDFLAGS) -fPIC" define EFIVAR_BUILD_CMDS
Signature · 1 line
2.11.0
PATCH v2 2/2 efivar: bump version
Quoted 18 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Peter" == Peter Korsgaard <[email protected]> writes:
Drop 0001-Use-z-muldefs-to-avoid-the-multiple-definitions-bug-.patch and 0003-Remove-some-extra-const-that-gcc-complains-about.patch as they are now upstream.
The upstream repo moved to the 'rhboot' github project, so adjust upstream URL in .mk and help text to match.
Drop dependency on !musl as it is now support since
e04281e60cf0d(makeguids: Ensure compatibility with other libcs).Drop BINTARGETS workaround as this is fixed since
6c674283697(Don't build static by default).Drop popt dependency as it is no longer needed since
1aec5e7891(Replace popt usage withgetopt_longinefivar.c).
Quoted 6 lines
While we are at it, also add a hash for the license file.
Signed-off-by Peter Korsgaard <[email protected]>---
Changes since v1:
- Drop popt dependency
Committed, thanks.
Signature · 1 line
Bye, Peter Korsgaard
PATCH 1/2 efibootmgr: explicitly depend on host-pkgconf and popt
In reply to Peter KorsgaardHello,
Quoted 3 lines · Peter Korsgaard
The efibootmgr build system uses host-pkgconf and popt, so explicitly add them to
_DEPENDENCIESinstead of relying on them getting pulled in by efivar.
Minor nit: if it's the efibootmgr *build system* that uses popt, then one would expect to see a dependency on host-popt, not popt. I guess it's not the *build system* that depends on popt, but efibootmgr itself, no ?
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com
PATCH 1/2 efibootmgr: explicitly depend on host-pkgconf and popt
Quoted 4 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Hello,
On Fri, 23 Mar 2018 10:57:40 +0100, Peter Korsgaard wrote:
Quoted 8 lines
Quoted 3 lines
The efibootmgr build system uses host-pkgconf and popt, so explicitly add them to
_DEPENDENCIESinstead of relying on them getting pulled in by efivar.Minor nit: if it's the efibootmgr *build system* that uses popt, then one would expect to see a dependency on host-popt, not popt. I guess it's not the *build system* that depends on popt, but efibootmgr itself, no ?
Yes, the wording is maybe not super clear. What I meant is that the Makefile (E.G. the build system) explicitly refers to pkg-config and popt.
I'll reword and commit, thanks.
Signature · 1 line
Bye, Peter Korsgaard