Bump buildroot to version 2017-02

TG-3 #closed
This commit is contained in:
jbnadal
2017-03-28 18:29:16 +02:00
parent 93b7fd91d2
commit 42c92a6bcb
3010 changed files with 41289 additions and 46428 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -1,2 +1,2 @@
# locally computed hash
sha256 f807f5f0846323bc21b18043542b296f5ad81514f91f13c74a4b8da30c965c94 efivar-0.23.tar.gz
sha256 20709c76311f8eb8be92977b7ac008ce62501fa9f7fe885a784321540fc352f9 efivar-30.tar.gz

View File

@@ -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.