Bump buildroot to version 2017-02
TG-3 #closed
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
From 314eb67b239e60c2ed3700e2baf9cd0e590465f3 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Jones <pjones@redhat.com>
|
||||
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 <pjones@redhat.com>
|
||||
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
From 75a73111371526a12712bb7211da2116c0bf40f7 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Gilbert <floppym@gentoo.org>
|
||||
Date: Thu, 14 Jan 2016 17:02:31 -0500
|
||||
Subject: [PATCH] Workaround rename of linux/nvme.h
|
||||
|
||||
Bug: https://bugs.gentoo.org/571548
|
||||
|
||||
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
|
||||
---
|
||||
src/linux.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/linux.c b/src/linux.c
|
||||
index b618cfd..9388cd3 100644
|
||||
--- a/src/linux.c
|
||||
+++ b/src/linux.c
|
||||
@@ -22,7 +22,12 @@
|
||||
#include <inttypes.h>
|
||||
#include <limits.h>
|
||||
#include <linux/ethtool.h>
|
||||
+#include <linux/version.h>
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 0)
|
||||
+#include <linux/nvme_ioctl.h>
|
||||
+#else
|
||||
#include <linux/nvme.h>
|
||||
+#endif
|
||||
#include <linux/sockios.h>
|
||||
#include <net/if.h>
|
||||
#include <scsi/scsi.h>
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
From 2255601757a8a58baddad2d37d0bcc6b003a3732 Mon Sep 17 00:00:00 2001
|
||||
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
|
||||
Date: Fri, 25 Nov 2016 19:42:27 +0200
|
||||
Subject: [PATCH] Allow build with uClibc
|
||||
|
||||
Basically this replaces type definitions in <uchar.h>.
|
||||
|
||||
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
|
||||
---
|
||||
src/export.c | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/export.c b/src/export.c
|
||||
index 7f2d4dd..72c02d1 100644
|
||||
--- a/src/export.c
|
||||
+++ b/src/export.c
|
||||
@@ -21,11 +21,17 @@
|
||||
#include <inttypes.h>
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
-#include <uchar.h>
|
||||
|
||||
#include <efivar.h>
|
||||
#include "lib.h"
|
||||
|
||||
+#ifdef __UCLIBC__
|
||||
+typedef int_least16_t char16_t;
|
||||
+typedef int_least32_t char32_t;
|
||||
+#else
|
||||
+#include <uchar.h>
|
||||
+#endif
|
||||
+
|
||||
#define EFIVAR_MAGIC 0xf3df1597
|
||||
|
||||
#define ATTRS_UNSET 0xa5a5a5a5a5a5a5a5
|
||||
--
|
||||
2.10.2
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
From 00376f4dec71d4abb591ba07bc8164ba29e5955e Mon Sep 17 00:00:00 2001
|
||||
From: Erico Nunes <nunes.erico@gmail.com>
|
||||
Date: Tue, 22 Mar 2016 21:43:44 -0300
|
||||
Subject: [PATCH] Make.rules: fix build with make <= 3.81
|
||||
|
||||
Building with host make 3.81 resulted in an issue where src/efivar.pc
|
||||
was never generated.
|
||||
Even by running 'make efivar.pc' inside the src directory, make always
|
||||
returned that there was nothing to do.
|
||||
This was not observed when using make 3.82 or 4.x.
|
||||
It is apparently caused by the assignment operators in the multi-line
|
||||
defines in Make.rules, which do not seem to be supported by make 3.81.
|
||||
By omitting the assignment operators, the rule works with both versions
|
||||
of make.
|
||||
|
||||
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
|
||||
---
|
||||
Make.rules | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Make.rules b/Make.rules
|
||||
index 8a50fa5..d9c0609 100644
|
||||
--- a/Make.rules
|
||||
+++ b/Make.rules
|
||||
@@ -42,7 +42,7 @@ include $(TOPDIR)/Make.version
|
||||
|
||||
%.c : %.h
|
||||
|
||||
-define substitute-version =
|
||||
+define substitute-version
|
||||
sed \
|
||||
-e "s,@@VERSION@@,$(VERSION),g" \
|
||||
-e "s,@@LIBDIR@@,$(libdir),g" \
|
||||
@@ -61,7 +61,7 @@ pkg-config-ldflags = \
|
||||
pkg-config-ldlibs = \
|
||||
$(shell if [ -n "$(PKGS)" ]; then $(PKG_CONFIG) --libs-only-l $(PKGS) ; fi)
|
||||
|
||||
-define deps-of =
|
||||
+define deps-of
|
||||
$(foreach src,$(filter %.c,$(1)),$(patsubst %.c,.%.d,$(src))) \
|
||||
$(foreach src,$(filter %.S,$(1)),$(patsubst %.S,.%.d,$(src)))
|
||||
endef
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -1,27 +1,34 @@
|
||||
config BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS
|
||||
bool
|
||||
depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 \
|
||||
|| BR2_powerpc64le || BR2_mipsel || BR2_mips64el
|
||||
default y
|
||||
|
||||
config BR2_PACKAGE_EFIVAR
|
||||
bool "efivar"
|
||||
depends on BR2_PACKAGE_EFIVAR_ARCH_SUPPORTS
|
||||
depends on !BR2_STATIC_LIBS # dlfcn.h
|
||||
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # linux/nvme.h
|
||||
# linux/nvme.h has been renamed to linux/nvme_ioctl.h since 4.4,
|
||||
# and we have a patch to handle that situation. However, some
|
||||
# and the efivar source handles that situation. However, some
|
||||
# Sourcery CodeBench toolchains use 4.4 kernel headers but they
|
||||
# don't have that header file renamed, and that is causing build
|
||||
# failures. So, prevent this package to be built using those
|
||||
# toolchains.
|
||||
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS && \
|
||||
!BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
|
||||
# doesn't build with uclibc due to lack of uchar.h
|
||||
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
|
||||
# doesn't build with musl due to lack of __bswap_constant_16
|
||||
depends on BR2_TOOLCHAIN_USES_GLIBC
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
|
||||
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
|
||||
|
||||
comment "efivar requires a glibc toolchain w/ headers >= 3.12, gcc >= 4.7"
|
||||
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 || \
|
||||
!BR2_TOOLCHAIN_USES_GLIBC || \
|
||||
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
|
||||
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS && \
|
||||
!BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
|
||||
comment "efivar needs a glibc or uClibc 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
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
# locally computed hash
|
||||
sha256 f807f5f0846323bc21b18043542b296f5ad81514f91f13c74a4b8da30c965c94 efivar-0.23.tar.gz
|
||||
sha256 20709c76311f8eb8be92977b7ac008ce62501fa9f7fe885a784321540fc352f9 efivar-30.tar.gz
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
EFIVAR_VERSION = 0.23
|
||||
EFIVAR_VERSION = 30
|
||||
EFIVAR_SITE = $(call github,rhinstaller,efivar,$(EFIVAR_VERSION))
|
||||
EFIVAR_LICENSE = LGPLv2.1
|
||||
EFIVAR_LICENSE_FILES = COPYING
|
||||
@@ -12,8 +12,8 @@ EFIVAR_DEPENDENCIES = popt
|
||||
EFIVAR_INSTALL_STAGING = YES
|
||||
|
||||
# BINTARGETS is set to skip efivar-static which requires static popt,
|
||||
# and since we depend on glibc, we will never be built in a
|
||||
# static-only environment.
|
||||
# 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 = \
|
||||
@@ -21,12 +21,6 @@ EFIVAR_MAKE_OPTS = \
|
||||
BINTARGETS=efivar \
|
||||
LDFLAGS="$(TARGET_LDFLAGS) -fPIC"
|
||||
|
||||
# Explicitly linking with shared libgcc is required on MicroBlaze and
|
||||
# Nios II, otherwise it fails due to FDE encoding in static libgcc.
|
||||
ifeq ($(BR2_microblaze)$(BR2_nios2),y)
|
||||
EFIVAR_MAKE_OPTS += SOFLAGS="-shared -shared-libgcc"
|
||||
endif
|
||||
|
||||
define EFIVAR_BUILD_CMDS
|
||||
# makeguids is an internal host tool and must be built separately with
|
||||
# $(HOST_CC), otherwise it gets cross-built.
|
||||
|
||||
Reference in New Issue
Block a user