Buildroot 2018-11 (#258)

* Update to buildroot 2018.11

* containerd update

* runc update

* runc docker engine

* runc docker proxy

* update rpi firmware

* update network manager

* update dhcpd

* update wait on network

* update rpi wifi

* revert glibc
This commit is contained in:
Pascal Vizeli
2018-11-26 11:04:01 +01:00
committed by GitHub
parent a9bbc7babe
commit 4411307353
3154 changed files with 41316 additions and 24203 deletions

View File

@@ -1,32 +0,0 @@
From da2793fcde5c4e3ff448b4b21348ef8b1482c678 Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Tue, 16 Jan 2018 14:51:32 +0100
Subject: [PATCH] fix build with g++5
Patch needed to build domoticz
Patch fetch from one of the answer of
https://github.com/domoticz/domoticz/issues/2034:
workaround suggested to the boost developers
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
boost/asio/detail/consuming_buffers.hpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/boost/asio/detail/consuming_buffers.hpp b/boost/asio/detail/consuming_buffers.hpp
index a429f97..b7a887c 100644
--- a/boost/asio/detail/consuming_buffers.hpp
+++ b/boost/asio/detail/consuming_buffers.hpp
@@ -102,7 +102,7 @@ public:
std::advance(next, next_elem_);
std::size_t elem_offset = next_elem_offset_;
- while (next != end && max_size > 0 && result.count < result.max_buffers)
+ while (next != end && max_size > 0 && (result.count) < result.max_buffers)
{
Buffer next_buf = Buffer(*next) + elem_offset;
result.elems[result.count] = boost::asio::buffer(next_buf, max_size);
--
2.7.4

View File

@@ -0,0 +1,80 @@
From 48be99d20753ecab8817b030b95a7f1260aa777f Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Wed, 5 Sep 2018 12:04:15 +0200
Subject: [PATCH 17/17] fix static detection of lock-free atomic ints
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
When build statically, boost is unable to detect lock-free atomics ints
because it tries to link dynamically with boost_system, see
output/build/boost-1.67.0/bin.v2/config.log (with -d5 option):
Using shell: /bin/sh -c
argv[0] = '/bin/sh'
argv[1] = '-c'
argv[2] = '
"/home/fabrice/buildroot/output/host/bin/arm-linux-g++" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -Wl,-elf2flt -static -Wl,-elf2flt -static -fPIC -pthread -O0 -fno-inline -Wall -pedantic -g -Wextra -Wno-long-long -Wno-unused-parameter -Wunused-function -pedantic -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_THREAD_BUILD_DLL=1 -I"." -c -o "bin.v2/libs/thread/build/gcc-6.4.0/debug/threading-multi/has_atomic_flag_lockfree_test.o" "libs/thread/src/../build/has_atomic_flag_lockfree_test.cpp"
'
gcc.compile.c++ bin.v2/libs/thread/build/gcc-6.4.0/debug/threading-multi/has_atomic_flag_lockfree_test.o
"/home/fabrice/buildroot/output/host/bin/arm-linux-g++" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -Wl,-elf2flt -static -Wl,-elf2flt -static -fPIC -pthread -O0 -fno-inline -Wall -pedantic -g -Wextra -Wno-long-long -Wno-unused-parameter -Wunused-function -pedantic -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_THREAD_BUILD_DLL=1 -I"." -c -o "bin.v2/libs/thread/build/gcc-6.4.0/debug/threading-multi/has_atomic_flag_lockfree_test.o" "libs/thread/src/../build/has_atomic_flag_lockfree_test.cpp"
0.033561 sec system; 0.126314 sec user; 288.682473 sec clock
gcc.compile.c++ bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/error_code.o
"/home/fabrice/buildroot/output/host/bin/arm-linux-g++" -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -Wl,-elf2flt -static -Wl,-elf2flt -static -fPIC -pthread -O0 -fno-inline -Wall -pedantic -g -DBOOST_ALL_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -I"." -c -o "bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/error_code.o" "libs/system/src/error_code.cpp"
0.084060 sec system; 0.644133 sec user; 8.858824 sec clock
SEM: <s>gcc-link-semaphore now used by <pbin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi>libboost_system.so.1.67.0
Using shell: /bin/sh -c
argv[0] = '/bin/sh'
argv[1] = '-c'
argv[2] = '
"/home/fabrice/buildroot/output/host/bin/arm-linux-g++" -o "bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/libboost_system.so.1.67.0" -Wl,-h -Wl,libboost_system.so.1.67.0 -shared -Wl,--start-group "bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/error_code.o" -Wl,-Bstatic -Wl,-Bdynamic -lrt -Wl,--end-group -fPIC -pthread -g -Wl,-elf2flt -static
'
gcc.link.dll bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/libboost_system.so.1.67.0
"/home/fabrice/buildroot/output/host/bin/arm-linux-g++" -o "bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/libboost_system.so.1.67.0" -Wl,-h -Wl,libboost_system.so.1.67.0 -shared -Wl,--start-group "bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/error_code.o" -Wl,-Bstatic -Wl,-Bdynamic -lrt -Wl,--end-group -fPIC -pthread -g -Wl,-elf2flt -static
ld (ld-elf2flt): -shared used without passing a shared library ID
collect2: error: ld a retourné le statut de sortie 1
0.003123 sec system; 0.004732 sec user; 15.646509 sec clock
...failed gcc.link.dll bin.v2/libs/system/build/gcc-6.4.0/debug/threading-multi/libboost_system.so.1.67.0...
To fix this, move the exe statement before the boost/thread project
Fixes:
- http://autobuild.buildroot.org/results/f46d38991385cbc2a4fa14eb31074e770cd79803
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Upstream status: https://github.com/boostorg/thread/commit/f7581a366294c6f5381e0371c242af327c6da655]
---
build/Jamfile.v2 | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libs/thread/build/Jamfile.v2 b/build/Jamfile.v2
index ce8c7f47..26d8b9c3 100644
--- a/libs/thread/build/Jamfile.v2
+++ b/libs/thread/build/Jamfile.v2
@@ -38,6 +38,8 @@ import path ;
import configure ;
import threadapi-feature ;
+exe has_atomic_flag_lockfree : ../build/has_atomic_flag_lockfree_test.cpp ;
+
project boost/thread
: source-location ../src
: requirements <threading>multi
@@ -141,8 +143,6 @@ project boost/thread
<library>/boost/system//boost_system
;
-exe has_atomic_flag_lockfree : ../build/has_atomic_flag_lockfree_test.cpp ;
-
rule tag ( name : type ? : property-set )
{
local result = $(name) ;
--
2.17.1

View File

@@ -57,6 +57,7 @@ config BR2_PACKAGE_BOOST_ATOMIC
config BR2_PACKAGE_BOOST_CHRONO
bool "boost-chrono"
select BR2_PACKAGE_BOOST_SYSTEM
help
Useful time utilities. C++11.
@@ -69,22 +70,51 @@ config BR2_PACKAGE_BOOST_CONTAINER
# http://www.boost.org/doc/libs/1_59_0/libs/context/doc/html/context/architectures.html
# for the list of supported architectures. Sparc pretends to be
# supported, but it doesn't build.
config BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
bool
default y if ((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM)
default y if BR2_i386
default y if BR2_mips
default y if BR2_mipsel
default y if BR2_powerpc
default y if BR2_x86_64
config BR2_PACKAGE_BOOST_CONTEXT
bool "boost-context"
depends on ((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM) || \
BR2_i386 || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_x86_64
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
select BR2_PACKAGE_BOOST_THREAD if !BR2_TOOLCHAIN_GCC_AT_LEAST_6
help
C++11 context switching library.
config BR2_PACKAGE_BOOST_CONTRACT
bool "boost-contract"
# pthread_condattr_setclock
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
select BR2_PACKAGE_BOOST_SYSTEM
help
Contract programming for C++.
comment "boost-contract needs a toolchain w/ NPTL"
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
config BR2_PACKAGE_BOOST_COROUTINE
bool "boost-coroutine"
depends on BR2_PACKAGE_BOOST_CONTEXT
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context
select BR2_PACKAGE_BOOST_CHRONO
select BR2_PACKAGE_BOOST_CONTEXT
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_BOOST_THREAD
help
deprecated coroutine library, the non-depricated coroutine2
library is a header-only library and does not need to be
selected.
comment "boost-coroutine needs a toolchain not affected by GCC bug 64735"
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735
config BR2_PACKAGE_BOOST_DATE_TIME
bool "boost-date_time"
help
@@ -100,28 +130,37 @@ config BR2_PACKAGE_BOOST_EXCEPTION
config BR2_PACKAGE_BOOST_FIBER
bool "boost-fiber"
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
# mips support uses the "pause" instruction, only available
# since mips32r2/mips64r2.
depends on !BR2_MIPS_CPU_MIPS32 && !BR2_MIPS_CPU_MIPS64
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 # boost-context
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85180
select BR2_PACKAGE_BOOST_CONTEXT
select BR2_PACKAGE_BOOST_FILESYSTEM
select BR2_PACKAGE_BOOST_SYSTEM
help
C++11 userland threads library.
comment "boost-fiber needs a toolchain w/ NPTL"
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
comment "boost-fiber needs a toolchain not affected by GCC bug 85180"
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85180
comment "boost-fiber needs a toolchain not affected by GCC bug 64735, 85180"
depends on BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 || BR2_TOOLCHAIN_HAS_GCC_BUG_85180
config BR2_PACKAGE_BOOST_FILESYSTEM
bool "boost-filesystem"
select BR2_PACKAGE_BOOST_SYSTEM
help
The Boost Filesystem Library provides portable facilities to
query and manipulate paths, files, and directories.
config BR2_PACKAGE_BOOST_GRAPH
bool "boost-graph"
select BR2_PACKAGE_BOOST_REGEX
help
The BGL graph interface and graph components are generic, in
the same sense as the the Standard Template Library (STL).
@@ -151,6 +190,8 @@ config BR2_PACKAGE_BOOST_LOCALE
# https://svn.boost.org/trac/boost/ticket/9685 for more
# details.
depends on !(BR2_STATIC_LIBS && BR2_PACKAGE_ICU)
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_BOOST_THREAD if BR2_PACKAGE_ICU
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
help
Provide localization and Unicode handling tools for C++.
@@ -162,15 +203,17 @@ comment "boost-locale needs a toolchain w/ dynamic library"
config BR2_PACKAGE_BOOST_LOG
bool "boost-log"
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
# for some reason, uClibc on PowerPC fails to build the boost
# log module
depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC)
select BR2_PACKAGE_BOOST_ATOMIC
select BR2_PACKAGE_BOOST_DATE_TIME
select BR2_PACKAGE_BOOST_FILESYSTEM
select BR2_PACKAGE_BOOST_REGEX
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_BOOST_THREAD
help
Logging library.
comment "boost-log needs a toolchain w/ NPTL"
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC)
config BR2_PACKAGE_BOOST_MATH
bool "boost-math"
@@ -221,6 +264,7 @@ config BR2_PACKAGE_BOOST_PYTHON
config BR2_PACKAGE_BOOST_RANDOM
bool "boost-random"
select BR2_PACKAGE_BOOST_SYSTEM
help
A complete system for random number generation.
@@ -258,22 +302,31 @@ config BR2_PACKAGE_BOOST_SYSTEM
config BR2_PACKAGE_BOOST_TEST
bool "boost-test"
depends on BR2_USE_MMU # fork()
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_BOOST_TIMER
help
Support for simple program testing, full unit testing, and for
program execution monitoring.
config BR2_PACKAGE_BOOST_THREAD
bool "boost-thread"
select BR2_PACKAGE_BOOST_ATOMIC if !BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
select BR2_PACKAGE_BOOST_CHRONO
select BR2_PACKAGE_BOOST_SYSTEM
help
Portable C++ multi-threading. C++11, C++14.
config BR2_PACKAGE_BOOST_TIMER
bool "boost-timer"
select BR2_PACKAGE_BOOST_CHRONO
select BR2_PACKAGE_BOOST_SYSTEM
help
Event timer, progress timer, and progress display classes.
config BR2_PACKAGE_BOOST_TYPE_ERASURE
bool "boost-type_erasure"
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_BOOST_THREAD
help
Runtime polymorphism based on concepts.
@@ -282,6 +335,10 @@ config BR2_PACKAGE_BOOST_WAVE
# limitation of assembler for coldfire
# error: Tried to convert PC relative branch to absolute jump
depends on !BR2_m68k_cf
select BR2_PACKAGE_BOOST_DATE_TIME
select BR2_PACKAGE_BOOST_FILESYSTEM
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_BOOST_THREAD
help
The Boost.Wave library is a Standards conformant, and highly
configurable implementation of the mandated C99/C++

View File

@@ -1,5 +1,5 @@
# From http://www.boost.org/users/history/version_1_66_0.html
sha256 5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9 boost_1_66_0.tar.bz2
# From http://www.boost.org/users/history/version_1_68_0.html
sha256 7f6130bc3cf65f56a618888ce9d5ea704fa10b462be126ad053e80e553d6d8b7 boost_1_68_0.tar.bz2
# Locally computed
sha256 c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad566 LICENSE_1_0.txt

View File

@@ -4,7 +4,7 @@
#
################################################################################
BOOST_VERSION = 1.66.0
BOOST_VERSION = 1.68.0
BOOST_SOURCE = boost_$(subst .,_,$(BOOST_VERSION)).tar.bz2
BOOST_SITE = http://downloads.sourceforge.net/project/boost/boost/$(BOOST_VERSION)
BOOST_INSTALL_STAGING = YES
@@ -14,15 +14,16 @@ BOOST_LICENSE_FILES = LICENSE_1_0.txt
# keep host variant as minimal as possible
HOST_BOOST_FLAGS = --without-icu --with-toolset=gcc \
--without-libraries=$(subst $(space),$(comma),atomic chrono context \
coroutine date_time exception filesystem graph graph_parallel iostreams \
locale log math mpi program_options python random regex serialization \
signals system test thread timer type_erasure \
contract coroutine date_time exception filesystem graph graph_parallel \
iostreams locale log math mpi program_options python random regex \
serialization signals system test thread timer type_erasure \
wave)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_ATOMIC),,atomic)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CHRONO),,chrono)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CONTAINER),,container)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CONTEXT),,context)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CONTRACT),,contract)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_COROUTINE),,coroutine)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_DATE_TIME),,date_time)
BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_EXCEPTION),,exception)
@@ -158,6 +159,24 @@ define BOOST_INSTALL_STAGING_CMDS
--layout=$(BOOST_LAYOUT) install)
endef
# These hooks will help us to detect missing select in Config.in
# Indeed boost buildsystem can select a library even if the user has
# disable it
define BOOST_REMOVE_TARGET_LIBRARIES
rm -rf $(TARGET_DIR)/usr/lib/libboost_*
endef
BOOST_PRE_INSTALL_TARGET_HOOKS += BOOST_REMOVE_TARGET_LIBRARIES
define BOOST_CHECK_TARGET_LIBRARIES
@$(foreach disabled,$(BOOST_WITHOUT_FLAGS),\
! ls $(TARGET_DIR)/usr/lib/libboost_$(disabled)* 1>/dev/null 2>&1 || \
! echo "libboost_$(disabled) shouldn't have been installed: missing select in boost/Config.in" || \
exit 1;)
endef
BOOST_POST_INSTALL_TARGET_HOOKS += BOOST_CHECK_TARGET_LIBRARIES
define HOST_BOOST_CONFIGURE_CMDS
(cd $(@D) && ./bootstrap.sh $(HOST_BOOST_FLAGS))
echo "using gcc : `$(HOST_CC) -dumpversion` : $(HOSTCXX) : <cxxflags>\"$(HOST_CXXFLAGS)\" <linkflags>\"$(HOST_LDFLAGS)\" ;" > $(@D)/user-config.jam