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,106 @@
From bbb03794def326c2e8ad2de523c5a61a4c8cb464 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
Date: Thu, 22 Sep 2016 00:58:58 +0200
Subject: [PATCH] Remove replacing -I with -isystem
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Building OLA with a GCC 6 cross-toolchain fails:
```
/usr/bin/arm-linux-g++ -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I./include -I./include
-Wall -Wformat -W -isystem
/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include -pthread
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os
-pthread -c -o libs/acn/e131_transmit_test.o
libs/acn/e131_transmit_test.cpp
/usr/bin/arm-linux-g++ -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I./include -I./include
-Wall -Wformat -W -isystem
/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include -pthread
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os
-pthread -c -o libs/acn/E131TestFramework.o
libs/acn/E131TestFramework.cpp
In file included from
/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/ext/string_conversions.h:41:0,
from
/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/bits/basic_string.h:5402,
from
/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/string:52,
from ./tools/ola_trigger/config.ypp:2:
/opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0/cstdlib:75:25:
fatal error: stdlib.h: No such file or directory
#include_next <stdlib.h>
^
compilation terminated.
```
The C++ library in GCC 6 now provides its own `<stdlib.h>` header that
wraps the C library header of the same name, so in `<cstdlib>` the
header include
```
#include <stdlib.h>
```
has become
```
#include_next <stdlib.h>
```
`#include_next` is sensitive to the order of directories in the
preprocessor's search path, so if that order is changed with `-isystem`
then the compiler can't find the right header:
```
[1] /usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include
[2] /opt/ext-toolchain/arm-buildroot-linux-gnueabihf/include/c++/6.1.0
[..]
End of search list.
```
`<cstdlib>` is located in [2] whereas `<stdlib.h>` (C library header) is
in [1]. In this case, the `#include_next <stdlib.h>` statement in
`<cstdlib>`, located in [2], is evaluated **after** the search path [1],
so the compiler does not find the right system header.
The problem is that the OLA build system replaces the `-I` in the CFLAGS
from libprotobuf with `-isystem` to fix some warnings treated as errors
in the libprotobuf header files.
`-isystem` should be used to suppress warnings in system headers only
and the libprotobuf header files are not system files.
The correct fix is to compile with less restrictions and remove
`-Werror` for the build.
As using `-isystem` is reordering GCCs search path and using `-isystem`
is really not necessary, remove the faulty replacement of `-I`.
Upstream status: https://github.com/OpenLightingProject/ola/pull/1126
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
---
config/ola.m4 | 3 ---
1 file changed, 3 deletions(-)
diff --git a/config/ola.m4 b/config/ola.m4
index 2796cfb..d3b8cc8 100644
--- a/config/ola.m4
+++ b/config/ola.m4
@@ -24,9 +24,6 @@ AC_DEFUN([PROTOBUF_SUPPORT],
AC_REQUIRE_CPP()
PKG_CHECK_MODULES(libprotobuf, [protobuf >= $1])
-# We want to replace -I with -isystem here to disable errors in the .h files
-# See https://groups.google.com/forum/#!topic/open-lighting/39Mj0KXlCIk
-libprotobuf_CFLAGS=`echo $libprotobuf_CFLAGS | sed 's/-I/-isystem /'`
AC_SUBST([libprotobuf_CFLAGS])
AC_ARG_WITH([protoc],
--
2.10.0

View File

@@ -1,6 +1,6 @@
comment "ola needs a toolchain w/ C++, threads, wchar, dynamic library"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
|| !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
comment "ola needs a toolchain w/ C++, threads, dynamic library"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \
|| BR2_STATIC_LIBS
depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
menuconfig BR2_PACKAGE_OLA
@@ -10,7 +10,6 @@ menuconfig BR2_PACKAGE_OLA
select BR2_PACKAGE_UTIL_LINUX
depends on BR2_INSTALL_LIBSTDCPP # protobuf
depends on !BR2_STATIC_LIBS # protobuf
depends on BR2_USE_WCHAR # util-linux
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS
help
@@ -54,6 +53,8 @@ config BR2_PACKAGE_OLA_EXAMPLES
config BR2_PACKAGE_OLA_RDM_TESTS
bool "rdm tests"
depends on BR2_PACKAGE_OLA_PYTHON_BINDINGS
depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
select BR2_PACKAGE_PYTHON_NUMPY
help
Build OLA RDM tests.

View File

@@ -1,3 +1,2 @@
# Locally calculated
sha256 74baba18c5b62aba15e27e6b7882c6eac22043c8e7b297e4d2f6eb05dd1a33b0 ola-0.10.0.tar.gz
sha256 32a8a7a00c7db7647710c84ed02611f2eba99669f2de4da7aceae9d4444f53a3 34999c70dcbe2d38bf13d57c9cfbdc63f0899b9a.patch
sha256 986e61874bc80db3b23cf201af2dafa39e3412cc50cddf1cd449c869110bfd27 ola-0.10.2.tar.gz

View File

@@ -4,9 +4,8 @@
#
################################################################################
OLA_VERSION = 0.10.0
OLA_SITE = $(call github,OpenLightingProject,ola,$(OLA_VERSION))
OLA_PATCH = https://github.com/OpenLightingProject/ola/commit/34999c70dcbe2d38bf13d57c9cfbdc63f0899b9a.patch
OLA_VERSION = 0.10.2
OLA_SITE = https://github.com/OpenLightingProject/ola/releases/download/$(OLA_VERSION)
OLA_LICENSE = LGPLv2.1+ (libola, libolacommon, Python bindings), GPLv2+ (libolaserver, olad, Python examples and tests)
OLA_LICENSE_FILES = LICENCE GPL LGPL
OLA_INSTALL_STAGING = YES
@@ -40,7 +39,8 @@ HOST_OLA_CONF_OPTS = \
--disable-examples \
--disable-unittests \
--disable-doxygen-html \
--disable-doxygen-doc
--disable-doxygen-doc \
--disable-fatal-warnings
# On the host side, we only need ola_protoc_plugin, so build and install this
# only.
@@ -86,6 +86,11 @@ endif
ifeq ($(BR2_PACKAGE_OLA_RDM_TESTS),y)
OLA_CONF_OPTS += --enable-rdm-tests
OLA_DEPENDENCIES += python-numpy
# needed as numpy builds some shared libraries and ola checks for
# numpy using a host python test program which fails with 'wrong ELF
# class'.
OLA_CONF_ENV = ac_cv_have_pymod_numpy=yes
else
OLA_CONF_OPTS += --disable-rdm-tests
endif