Bump buildroot to 2020.11-rc1 (#985)
* Update buildroot-patches for 2020.11-rc1 buildroot * Update buildroot to 2020.11-rc1 Signed-off-by: Stefan Agner <stefan@agner.ch> * Don't rely on sfdisk --list-free output The --list-free (-F) argument does not allow machine readable mode. And it seems that the output format changes over time (different spacing, using size postfixes instead of raw blocks). Use sfdisk json output and calculate free partition space ourselfs. This works for 2.35 and 2.36 and is more robust since we rely on output which is meant for scripts to parse. * Migrate defconfigs for Buildroot 2020.11-rc1 In particular, rename BR2_TARGET_UBOOT_BOOT_SCRIPT(_SOURCE) to BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT(_SOURCE). * Rebase/remove systemd patches for systemd 246 * Drop apparmor/libapparmor from buildroot-external * hassos-persists: use /run as directory for lockfiles The U-Boot tools use /var/lock by default which is not created any more by systemd by default (it is under tmpfiles legacy.conf, which we no longer install). * Disable systemd-update-done.service The service is not suited for pure read-only systems. In particular the service needs to be able to write a file in /etc and /var. Remove the service. Note: This is a static service and cannot be removed using systemd-preset. * Disable apparmor.service for now The service loads all default profiles. Some might actually cause problems. E.g. the profile for ping seems not to match our setup for /etc/resolv.conf: [85503.634653] audit: type=1400 audit(1605286002.684:236): apparmor="DENIED" operation="open" profile="ping" name="/run/resolv.conf" pid=27585 comm="ping" requested_mask="r" denied_mask="r" fsuid=0 ouid=0
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
From d170b19e500d85381369e379771be8d7816bcc92 Mon Sep 17 00:00:00 2001
|
||||
From: Adam Duskett <Aduskett@gmail.com>
|
||||
Date: Tue, 21 Jul 2020 13:08:50 -0700
|
||||
Subject: [PATCH] force position independent code
|
||||
|
||||
Without this option, programs building for arm64 or x86-64 will fail when
|
||||
attempting to link to the built libraries with the following (abbreviated)
|
||||
error:
|
||||
|
||||
"relocation against `.rodata' can not be used when making a shared object;
|
||||
recompile with -fPIC."
|
||||
|
||||
Because libabseil-cpp builds static libraries, it is better to set the
|
||||
POSITION_INDEPENDENT_CODE to ON instead of forcing fPIC, as forcing fPIC may
|
||||
cause relocation errors when shared libraries link against the built static
|
||||
libraries.
|
||||
|
||||
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
|
||||
---
|
||||
CMake/AbseilHelpers.cmake | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake
|
||||
index 86ff9eb..bdb7a89 100644
|
||||
--- a/CMake/AbseilHelpers.cmake
|
||||
+++ b/CMake/AbseilHelpers.cmake
|
||||
@@ -209,6 +209,8 @@ function(absl_cc_library)
|
||||
set_property(TARGET ${_NAME} PROPERTY CXX_STANDARD ${ABSL_CXX_STANDARD})
|
||||
set_property(TARGET ${_NAME} PROPERTY CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
+ # Without this setting, other programs such as GRPC will fail when linking.
|
||||
+ set_property(TARGET ${_NAME} PROPERTY POSITION_INDEPENDENT_CODE ON)
|
||||
# When being installed, we lose the absl_ prefix. We want to put it back
|
||||
# to have properly named lib files. This is a no-op when we are not being
|
||||
# installed.
|
||||
--
|
||||
2.26.2
|
||||
|
||||
33
buildroot/package/libabseil-cpp/Config.in
Normal file
33
buildroot/package/libabseil-cpp/Config.in
Normal file
@@ -0,0 +1,33 @@
|
||||
# see absl/debugging/internal/examine_stack.cc for the list of
|
||||
# architectures that are supported, and for which ucontext is used.
|
||||
config BR2_PACKAGE_LIBABSEIL_CPP_ARCH_SUPPORTS
|
||||
bool
|
||||
default y if BR2_aarch64 || BR2_aarch64_be
|
||||
default y if BR2_arm || BR2_armeb
|
||||
default y if BR2_i386
|
||||
default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
||||
default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
|
||||
default y if BR2_riscv
|
||||
default y if BR2_x86_64
|
||||
depends on BR2_TOOLCHAIN_HAS_UCONTEXT
|
||||
|
||||
config BR2_PACKAGE_LIBABSEIL_CPP
|
||||
bool "libabseil-cpp"
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on !BR2_STATIC_LIBS # uses dlfcn.h
|
||||
depends on BR2_PACKAGE_LIBABSEIL_CPP_ARCH_SUPPORTS
|
||||
help
|
||||
Abseil is an open-source collection of C++ library code
|
||||
designed to augment the C++ standard library. The Abseil
|
||||
library code is collected from Google's own C++ code base,
|
||||
has been extensively tested and used in production, and is
|
||||
the same code we depend on in our daily coding lives.
|
||||
|
||||
https://github.com/abseil/abseil-cpp
|
||||
|
||||
comment "libabseil-cpp needs a toolchain w/ gcc >= 4.9, C++, threads, dynamic library"
|
||||
depends on BR2_PACKAGE_LIBABSEIL_CPP_ARCH_SUPPORTS
|
||||
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
|
||||
BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||
3
buildroot/package/libabseil-cpp/libabseil-cpp.hash
Normal file
3
buildroot/package/libabseil-cpp/libabseil-cpp.hash
Normal file
@@ -0,0 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 bf3f13b13a0095d926b25640e060f7e13881bd8a792705dd9e161f3c2b9aa976 libabseil-cpp-20200923.2.tar.gz
|
||||
sha256 c79a7fea0e3cac04cd43f20e7b648e5a0ff8fa5344e644b0ee09ca1162b62747 LICENSE
|
||||
26
buildroot/package/libabseil-cpp/libabseil-cpp.mk
Normal file
26
buildroot/package/libabseil-cpp/libabseil-cpp.mk
Normal file
@@ -0,0 +1,26 @@
|
||||
################################################################################
|
||||
#
|
||||
# libabseil-cpp
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBABSEIL_CPP_VERSION = 20200923.2
|
||||
LIBABSEIL_CPP_SITE = $(call github,abseil,abseil-cpp,$(LIBABSEIL_CPP_VERSION))
|
||||
LIBABSEIL_CPP_LICENSE = Apache-2.0
|
||||
LIBABSEIL_CPP_LICENSE_FILES = LICENSE
|
||||
LIBABSEIL_CPP_INSTALL_STAGING = YES
|
||||
|
||||
LIBABSEIL_CPP_CONF_OPTS = \
|
||||
-DCMAKE_CXX_STANDARD=11 \
|
||||
-DABSL_ENABLE_INSTALL=ON \
|
||||
-DABSL_USE_GOOGLETEST_HEAD=OFF \
|
||||
-DABSL_RUN_TESTS=OFF
|
||||
|
||||
HOST_LIBABSEIL_CPP_CONF_OPTS = \
|
||||
-DCMAKE_CXX_STANDARD=11 \
|
||||
-DABSL_ENABLE_INSTALL=ON \
|
||||
-DABSL_USE_GOOGLETEST_HEAD=OFF \
|
||||
-DABSL_RUN_TESTS=OFF
|
||||
|
||||
$(eval $(cmake-package))
|
||||
$(eval $(host-cmake-package))
|
||||
Reference in New Issue
Block a user