mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-30 14:46:31 +00:00
uclibc: update to 1.0.27
All patches are upstream. C-sky support added. Lot of or1k NPTL bugfixes. Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
parent
dd983d5d17
commit
c26b1bf1a4
@ -1,72 +0,0 @@
|
|||||||
From 111f01d432d542a153c1cad83def3a6ab57df7af Mon Sep 17 00:00:00 2001
|
|
||||||
From: Waldemar Brodkorb <wbx@uclibc-ng.org>
|
|
||||||
Date: Sat, 5 Aug 2017 11:28:07 +0200
|
|
||||||
Subject: [PATCH] fix issues with gdb 8.0
|
|
||||||
|
|
||||||
GDB 8.0 is compiled and linked with g++, but the
|
|
||||||
linking of static targets (f.e. coldfire) fails,
|
|
||||||
without declaring the functions in thread_db.h
|
|
||||||
extern C.
|
|
||||||
|
|
||||||
The compilation of gdb errors out with:
|
|
||||||
thread-db.o: In function `thread_db_init()':
|
|
||||||
thread-db.c:(.text+0x5b6): undefined reference to `td_ta_new(ps_prochandle*, td_thragent**)'
|
|
||||||
thread-db.c:(.text+0x61e): undefined reference to `td_thr_get_info(td_thrhandle const*, td_thrinfo*)'
|
|
||||||
thread-db.c:(.text+0x632): undefined reference to `td_symbol_list()'
|
|
||||||
..
|
|
||||||
|
|
||||||
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
|
|
||||||
---
|
|
||||||
libpthread/linuxthreads_db/thread_db.h | 7 +++++++
|
|
||||||
libpthread/nptl_db/thread_db.h | 7 +++++++
|
|
||||||
2 files changed, 14 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/libpthread/linuxthreads_db/thread_db.h b/libpthread/linuxthreads_db/thread_db.h
|
|
||||||
index 13c30af..ec79f60 100644
|
|
||||||
--- a/libpthread/linuxthreads_db/thread_db.h
|
|
||||||
+++ b/libpthread/linuxthreads_db/thread_db.h
|
|
||||||
@@ -27,6 +27,9 @@
|
|
||||||
#include <sys/types.h>
|
|
||||||
#include <sys/procfs.h>
|
|
||||||
|
|
||||||
+#ifdef __cplusplus
|
|
||||||
+extern "C" {
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
/* Error codes of the library. */
|
|
||||||
typedef enum
|
|
||||||
@@ -455,4 +458,8 @@ extern td_err_e td_thr_dbsuspend (const td_thrhandle_t *__th);
|
|
||||||
/* Resume execution of thread TH. */
|
|
||||||
extern td_err_e td_thr_dbresume (const td_thrhandle_t *__th);
|
|
||||||
|
|
||||||
+#ifdef __cplusplus
|
|
||||||
+}
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
#endif /* thread_db.h */
|
|
||||||
diff --git a/libpthread/nptl_db/thread_db.h b/libpthread/nptl_db/thread_db.h
|
|
||||||
index 27ea69a..993842f 100644
|
|
||||||
--- a/libpthread/nptl_db/thread_db.h
|
|
||||||
+++ b/libpthread/nptl_db/thread_db.h
|
|
||||||
@@ -27,6 +27,9 @@
|
|
||||||
#include <sys/types.h>
|
|
||||||
#include <sys/procfs.h>
|
|
||||||
|
|
||||||
+#ifdef __cplusplus
|
|
||||||
+extern "C" {
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
/* Error codes of the library. */
|
|
||||||
typedef enum
|
|
||||||
@@ -455,4 +458,8 @@ extern td_err_e td_thr_dbsuspend (const td_thrhandle_t *__th);
|
|
||||||
/* Resume execution of thread TH. */
|
|
||||||
extern td_err_e td_thr_dbresume (const td_thrhandle_t *__th);
|
|
||||||
|
|
||||||
+#ifdef __cplusplus
|
|
||||||
+}
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
#endif /* thread_db.h */
|
|
||||||
--
|
|
||||||
2.1.4
|
|
||||||
|
|
@ -1,42 +0,0 @@
|
|||||||
From 9db18d93811153fc9a70c9844fadc6fdf7cbbb64 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Waldemar Brodkorb <wbx@uclibc-ng.org>
|
|
||||||
Date: Sun, 6 Aug 2017 21:15:50 +0200
|
|
||||||
Subject: [PATCH] microblaze: handle R_MICROBLAZE_NONE for ld.so bootstrap
|
|
||||||
|
|
||||||
Latest binutils 2.29 release emits a R_MICROBLAZE_NONE
|
|
||||||
relocation, which breaks shared library loader bootstrap
|
|
||||||
relocation.
|
|
||||||
|
|
||||||
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
|
|
||||||
---
|
|
||||||
ldso/ldso/microblaze/dl-startup.h | 7 ++-----
|
|
||||||
1 file changed, 2 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/ldso/ldso/microblaze/dl-startup.h b/ldso/ldso/microblaze/dl-startup.h
|
|
||||||
index 720c53a..16d5762 100644
|
|
||||||
--- a/ldso/ldso/microblaze/dl-startup.h
|
|
||||||
+++ b/ldso/ldso/microblaze/dl-startup.h
|
|
||||||
@@ -82,18 +82,15 @@ static __always_inline
|
|
||||||
void PERFORM_BOOTSTRAP_RELOC(ELF_RELOC *rpnt, unsigned long *reloc_addr,
|
|
||||||
unsigned long symbol_addr, unsigned long load_addr, attribute_unused Elf32_Sym *symtab)
|
|
||||||
{
|
|
||||||
-
|
|
||||||
switch (ELF_R_TYPE(rpnt->r_info))
|
|
||||||
{
|
|
||||||
case R_MICROBLAZE_REL:
|
|
||||||
-
|
|
||||||
*reloc_addr = load_addr + rpnt->r_addend;
|
|
||||||
break;
|
|
||||||
-
|
|
||||||
+ case R_MICROBLAZE_NONE:
|
|
||||||
+ break;
|
|
||||||
default:
|
|
||||||
_dl_exit(1);
|
|
||||||
break;
|
|
||||||
-
|
|
||||||
}
|
|
||||||
-
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.1.4
|
|
||||||
|
|
@ -1,102 +0,0 @@
|
|||||||
From c7e82668bd23fbdd02ebe1e83ff2bb6877812423 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Waldemar Brodkorb <wbx@uclibc-ng.org>
|
|
||||||
Date: Thu, 2 Nov 2017 02:40:43 +0100
|
|
||||||
Subject: [PATCH] convert accept4() to use cancel.h macros
|
|
||||||
|
|
||||||
Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
|
|
||||||
---
|
|
||||||
include/sys/socket.h | 1 +
|
|
||||||
libc/inet/socketcalls.c | 37 +++++++++--------------------------
|
|
||||||
libpthread/linuxthreads/wrapsyscall.c | 7 +++++++
|
|
||||||
3 files changed, 17 insertions(+), 28 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/include/sys/socket.h b/include/sys/socket.h
|
|
||||||
index 63dc4b953..83e1fcaa2 100644
|
|
||||||
--- a/include/sys/socket.h
|
|
||||||
+++ b/include/sys/socket.h
|
|
||||||
@@ -269,6 +269,7 @@ libc_hidden_proto(accept)
|
|
||||||
__THROW. */
|
|
||||||
extern int accept4 (int __fd, __SOCKADDR_ARG __addr,
|
|
||||||
socklen_t *__restrict __addr_len, int __flags);
|
|
||||||
+libc_hidden_proto(accept4)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Shut down all or part of the connection open on socket FD.
|
|
||||||
diff --git a/libc/inet/socketcalls.c b/libc/inet/socketcalls.c
|
|
||||||
index e33d69344..1b92609d0 100644
|
|
||||||
--- a/libc/inet/socketcalls.c
|
|
||||||
+++ b/libc/inet/socketcalls.c
|
|
||||||
@@ -76,43 +76,24 @@ lt_libc_hidden(accept)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef L_accept4
|
|
||||||
-#ifdef __NR_accept4
|
|
||||||
-# define __NR___sys_accept4 __NR_accept4
|
|
||||||
-static _syscall4(int, __sys_accept4, int, fd, struct sockaddr *, addr, socklen_t *, addrlen, int, flags)
|
|
||||||
-int accept4(int fd, struct sockaddr *addr, socklen_t * addrlen, int flags)
|
|
||||||
-{
|
|
||||||
- if (SINGLE_THREAD_P)
|
|
||||||
- return __sys_accept4(fd, addr, addrlen, flags);
|
|
||||||
-#ifdef __UCLIBC_HAS_THREADS_NATIVE__
|
|
||||||
- else {
|
|
||||||
- int oldtype = LIBC_CANCEL_ASYNC ();
|
|
||||||
- int result = __sys_accept4(fd, addr, addrlen, flags);
|
|
||||||
- LIBC_CANCEL_RESET (oldtype);
|
|
||||||
- return result;
|
|
||||||
- }
|
|
||||||
-#endif
|
|
||||||
-}
|
|
||||||
-#elif defined(__NR_socketcall)
|
|
||||||
-int accept4(int fd, struct sockaddr *addr, socklen_t *addrlen, int flags)
|
|
||||||
+static int __NC(accept4)(int fd, struct sockaddr *addr, socklen_t *addrlen, int flags)
|
|
||||||
{
|
|
||||||
+# ifdef __NR_accept4
|
|
||||||
+ return INLINE_SYSCALL(accept4, 4, fd, addr, addrlen, flags);
|
|
||||||
+# elif defined(__NR_socketcall)
|
|
||||||
unsigned long args[4];
|
|
||||||
|
|
||||||
args[0] = fd;
|
|
||||||
args[1] = (unsigned long) addr;
|
|
||||||
args[2] = (unsigned long) addrlen;
|
|
||||||
args[3] = flags;
|
|
||||||
- if (SINGLE_THREAD_P)
|
|
||||||
- return __socketcall(SYS_ACCEPT4, args);
|
|
||||||
-#ifdef __UCLIBC_HAS_THREADS_NATIVE__
|
|
||||||
- else {
|
|
||||||
- int oldtype = LIBC_CANCEL_ASYNC ();
|
|
||||||
- int result = __socketcall(SYS_ACCEPT4, args);
|
|
||||||
- LIBC_CANCEL_RESET (oldtype);
|
|
||||||
- return result;
|
|
||||||
- }
|
|
||||||
+
|
|
||||||
+ return __socketcall(SYS_ACCEPT4, args);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
-#endif
|
|
||||||
+CANCELLABLE_SYSCALL(int, accept4, (int fd, struct sockaddr *addr, socklen_t *addrlen, int flags),
|
|
||||||
+ (fd, addr, addrlen, flags))
|
|
||||||
+lt_libc_hidden(accept4)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef L_bind
|
|
||||||
diff --git a/libpthread/linuxthreads/wrapsyscall.c b/libpthread/linuxthreads/wrapsyscall.c
|
|
||||||
index ca046a442..2386bfdef 100644
|
|
||||||
--- a/libpthread/linuxthreads/wrapsyscall.c
|
|
||||||
+++ b/libpthread/linuxthreads/wrapsyscall.c
|
|
||||||
@@ -192,6 +192,13 @@ CANCELABLE_SYSCALL (int, accept, (int fd, __SOCKADDR_ARG addr,
|
|
||||||
socklen_t *addr_len),
|
|
||||||
(fd, addr, addr_len))
|
|
||||||
|
|
||||||
+#if defined __UCLIBC_LINUX_SPECIFIC__
|
|
||||||
+/* accept4(2). */
|
|
||||||
+CANCELABLE_SYSCALL (int, accept4, (int fd, __SOCKADDR_ARG addr,
|
|
||||||
+ socklen_t *addr_len, int flags),
|
|
||||||
+ (fd, addr, addr_len, flags))
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
/* connect(2). */
|
|
||||||
CANCELABLE_SYSCALL (int, connect, (int fd, __CONST_SOCKADDR_ARG addr,
|
|
||||||
socklen_t len),
|
|
||||||
--
|
|
||||||
2.11.0
|
|
||||||
|
|
@ -1,2 +1,2 @@
|
|||||||
# From https://uclibc-ng.org/
|
# From https://uclibc-ng.org/
|
||||||
sha256 d88470775192b01d278633953ccc9fecacd090e52f401d506a71add3e47d4694 uClibc-ng-1.0.26.tar.xz
|
sha256 9452b0e92f76db19d8ff30b2d6d10a80e1ed01e4c504a36fef34cfc9de490b24 uClibc-ng-1.0.27.tar.xz
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
UCLIBC_VERSION = 1.0.26
|
UCLIBC_VERSION = 1.0.27
|
||||||
UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz
|
UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz
|
||||||
UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION)
|
UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION)
|
||||||
UCLIBC_LICENSE = LGPL-2.1+
|
UCLIBC_LICENSE = LGPL-2.1+
|
||||||
|
Loading…
x
Reference in New Issue
Block a user