initial buildroot for linux 5.15
This commit is contained in:
+37
@@ -0,0 +1,37 @@
|
||||
From e2a05a19e9dc51287e19cc9f11fd91449219e361 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 15 Nov 2020 12:10:28 -0800
|
||||
Subject: [PATCH] mutex: Fix build on 32-bit architectures using 64-bit time_t
|
||||
|
||||
mutex code uses SYS_futex, which it expects from system C library.
|
||||
in glibc (/usr/include/bits/syscall.h defines it in terms of of NR_futex)
|
||||
rv32 is using 64bit time_t from get go unlike other 32bit architectures
|
||||
in glibc, therefore it wont have NR_futex defined but just NR_futex_time64
|
||||
this aliases it to NR_futex so that SYS_futex is then defined for rv32
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
[Retrieved from:
|
||||
https://github.com/capnproto/capnproto/commit/e2a05a19e9dc51287e19cc9f11fd91449219e361]
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
---
|
||||
c++/src/kj/mutex.c++ | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/c++/src/kj/mutex.c++ b/c++/src/kj/mutex.c++
|
||||
index c81cead7b..e1594b117 100644
|
||||
--- a/c++/src/kj/mutex.c++
|
||||
+++ b/c++/src/kj/mutex.c++
|
||||
@@ -39,7 +39,13 @@
|
||||
|
||||
#ifndef SYS_futex
|
||||
// Missing on Android/Bionic.
|
||||
+#ifdef __NR_futex
|
||||
#define SYS_futex __NR_futex
|
||||
+#elif defined(SYS_futex_time64)
|
||||
+#define SYS_futex SYS_futex_time64
|
||||
+#else
|
||||
+#error "Need working SYS_futex"
|
||||
+#endif
|
||||
#endif
|
||||
|
||||
#ifndef FUTEX_WAIT_PRIVATE
|
||||
@@ -0,0 +1,28 @@
|
||||
config BR2_PACKAGE_CAPNPROTO
|
||||
bool "capnproto"
|
||||
depends on BR2_USE_MMU
|
||||
depends on BR2_HOST_GCC_AT_LEAST_5 # C++14
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # C++14
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_TOOLCHAIN_HAS_ATOMIC
|
||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||
depends on BR2_TOOLCHAIN_HAS_UCONTEXT
|
||||
help
|
||||
Cap'n Proto is an insanely fast data interchange format
|
||||
and capability-based RPC system. Think JSON, except
|
||||
binary. Or think Protocol Buffers, except faster. In
|
||||
fact, in benchmarks, Cap'n Proto is INFINITY TIMES
|
||||
faster than Protocol Buffers.
|
||||
|
||||
https://capnproto.org/index.html
|
||||
|
||||
comment "capnproto needs host and target gcc >= 5 w/ C++14, threads, atomic, ucontext and not gcc bug 64735"
|
||||
depends on BR2_USE_MMU
|
||||
depends on !BR2_HOST_GCC_AT_LEAST_5 || \
|
||||
!BR2_TOOLCHAIN_GCC_AT_LEAST_5 || \
|
||||
!BR2_INSTALL_LIBSTDCPP || \
|
||||
!BR2_TOOLCHAIN_HAS_THREADS || \
|
||||
!BR2_TOOLCHAIN_HAS_ATOMIC || \
|
||||
BR2_TOOLCHAIN_HAS_GCC_BUG_64735 || \
|
||||
!BR2_TOOLCHAIN_HAS_UCONTEXT
|
||||
@@ -0,0 +1,3 @@
|
||||
# Locally calculated
|
||||
sha256 6d8b43a7ec2a764b4dfe4139a7cdd070ad9057f106898050d9f4db3754b98820 capnproto-0.8.0.tar.gz
|
||||
sha256 9564998c8d7f270a61a8b89869a8d17a9d5e3783b64027788b5e339ec8479e10 LICENSE
|
||||
@@ -0,0 +1,33 @@
|
||||
################################################################################
|
||||
#
|
||||
# capnproto
|
||||
#
|
||||
################################################################################
|
||||
|
||||
CAPNPROTO_VERSION = 0.8.0
|
||||
CAPNPROTO_SITE = $(call github,capnproto,capnproto,v$(CAPNPROTO_VERSION))
|
||||
CAPNPROTO_LICENSE = MIT
|
||||
CAPNPROTO_LICENSE_FILES = LICENSE
|
||||
CAPNPROTO_CPE_ID_VENDOR = capnproto
|
||||
CAPNPROTO_INSTALL_STAGING = YES
|
||||
# Fetched from Github with no configure script
|
||||
CAPNPROTO_AUTORECONF = YES
|
||||
CAPNPROTO_CONF_OPTS = --with-external-capnp
|
||||
# Needs the capnproto compiler on the host to generate C++ code from message
|
||||
# definitions
|
||||
CAPNPROTO_DEPENDENCIES = host-autoconf host-capnproto
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
|
||||
CAPNPROTO_CONF_ENV += LIBS=-latomic
|
||||
endif
|
||||
# The actual source to be compiled is within a 'c++' subdirectory
|
||||
CAPNPROTO_SUBDIR = c++
|
||||
|
||||
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
||||
CAPNPROTO_CONF_OPTS += --with-openssl
|
||||
CAPNPROTO_DEPENDENCIES += openssl
|
||||
else
|
||||
CAPNPROTO_CONF_OPTS += --without-openssl
|
||||
endif
|
||||
|
||||
$(eval $(autotools-package))
|
||||
$(eval $(host-autotools-package))
|
||||
Reference in New Issue
Block a user