mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-20 05:17:54 +00:00
uClibc-ng: Add 1.0.48
Add the 1.0.48 and some additional patches from master which include some fixes for GCC 14 support. Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit is contained in:
parent
b1433efd80
commit
81084c55dd
24
packages/uClibc-ng/1.0.48/0000-futimesat-add-missing-header.patch
vendored
Normal file
24
packages/uClibc-ng/1.0.48/0000-futimesat-add-missing-header.patch
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From 4bcf25e75df857806623ff80924675bf849a60d2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Waldemar Brodkorb <wbx@openadk.org>
|
||||||
|
Date: Wed, 8 May 2024 10:08:08 +0200
|
||||||
|
Subject: [PATCH 0/7] futimesat: add missing header
|
||||||
|
|
||||||
|
---
|
||||||
|
libc/sysdeps/linux/common/futimesat.c | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/libc/sysdeps/linux/common/futimesat.c b/libc/sysdeps/linux/common/futimesat.c
|
||||||
|
index fd19fea7c..bf36550dd 100644
|
||||||
|
--- a/libc/sysdeps/linux/common/futimesat.c
|
||||||
|
+++ b/libc/sysdeps/linux/common/futimesat.c
|
||||||
|
@@ -7,6 +7,7 @@
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <sys/syscall.h>
|
||||||
|
+#include <sys/stat.h>
|
||||||
|
#include <sys/time.h>
|
||||||
|
|
||||||
|
#ifdef __NR_futimesat
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
91
packages/uClibc-ng/1.0.48/0001-sparc64-Fix-incorrect-sigreturn-stub-function-implem.patch
vendored
Normal file
91
packages/uClibc-ng/1.0.48/0001-sparc64-Fix-incorrect-sigreturn-stub-function-implem.patch
vendored
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
From 035e048fd68141779c147e387f608e8da6713d57 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Waldemar Brodkorb <wbx@openadk.org>
|
||||||
|
Date: Wed, 8 May 2024 11:12:30 +0200
|
||||||
|
Subject: [PATCH 1/7] sparc64: Fix incorrect sigreturn stub function
|
||||||
|
implementation
|
||||||
|
|
||||||
|
---
|
||||||
|
libc/sysdeps/linux/sparc64/Makefile.arch | 2 +-
|
||||||
|
libc/sysdeps/linux/sparc64/sigaction.c | 10 +---------
|
||||||
|
libc/sysdeps/linux/sparc64/sigreturn_stub.S | 10 ++++++++++
|
||||||
|
libc/sysdeps/linux/sparc64/sysdep.h | 9 +++++++++
|
||||||
|
4 files changed, 21 insertions(+), 10 deletions(-)
|
||||||
|
create mode 100644 libc/sysdeps/linux/sparc64/sigreturn_stub.S
|
||||||
|
|
||||||
|
diff --git a/libc/sysdeps/linux/sparc64/Makefile.arch b/libc/sysdeps/linux/sparc64/Makefile.arch
|
||||||
|
index 37b539b3b..cc4000b78 100644
|
||||||
|
--- a/libc/sysdeps/linux/sparc64/Makefile.arch
|
||||||
|
+++ b/libc/sysdeps/linux/sparc64/Makefile.arch
|
||||||
|
@@ -5,7 +5,7 @@
|
||||||
|
|
||||||
|
CSRC-y := __syscall_error.c sigaction.c
|
||||||
|
SSRC-y := __longjmp.S setjmp.S bsd-setjmp.S bsd-_setjmp.S brk.S fork.S \
|
||||||
|
- syscall.S pipe.S vfork.S clone.S
|
||||||
|
+ syscall.S pipe.S vfork.S clone.S sigreturn_stub.S
|
||||||
|
|
||||||
|
CSRC-y += $(addprefix soft-fp/, \
|
||||||
|
qp_add.c qp_cmp.c qp_cmpe.c qp_div.c qp_dtoq.c qp_feq.c qp_fge.c \
|
||||||
|
diff --git a/libc/sysdeps/linux/sparc64/sigaction.c b/libc/sysdeps/linux/sparc64/sigaction.c
|
||||||
|
index d8aaad0fb..b28fa659a 100644
|
||||||
|
--- a/libc/sysdeps/linux/sparc64/sigaction.c
|
||||||
|
+++ b/libc/sysdeps/linux/sparc64/sigaction.c
|
||||||
|
@@ -26,7 +26,7 @@
|
||||||
|
|
||||||
|
/* SPARC 64bit userland requires a kernel that has rt signals anyway. */
|
||||||
|
|
||||||
|
-static void __rt_sigreturn_stub (void);
|
||||||
|
+void __rt_sigreturn_stub (void);
|
||||||
|
|
||||||
|
int __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact)
|
||||||
|
{
|
||||||
|
@@ -67,11 +67,3 @@ libc_hidden_weak(sigaction)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-static void
|
||||||
|
-__rt_sigreturn_stub (void)
|
||||||
|
-{
|
||||||
|
- __asm__ ("mov %0, %%g1\n\t"
|
||||||
|
- "ta 0x6d\n\t"
|
||||||
|
- : /* no outputs */
|
||||||
|
- : "i" (__NR_rt_sigreturn));
|
||||||
|
-}
|
||||||
|
diff --git a/libc/sysdeps/linux/sparc64/sigreturn_stub.S b/libc/sysdeps/linux/sparc64/sigreturn_stub.S
|
||||||
|
new file mode 100644
|
||||||
|
index 000000000..a5c9bb47f
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/libc/sysdeps/linux/sparc64/sigreturn_stub.S
|
||||||
|
@@ -0,0 +1,10 @@
|
||||||
|
+#include <sysdep.h>
|
||||||
|
+
|
||||||
|
+ nop
|
||||||
|
+ nop
|
||||||
|
+
|
||||||
|
+ENTRY_NOCFI (__rt_sigreturn_stub)
|
||||||
|
+ mov __NR_rt_sigreturn, %g1
|
||||||
|
+ ta 0x6d
|
||||||
|
+END_NOCFI (__rt_sigreturn_stub)
|
||||||
|
+
|
||||||
|
diff --git a/libc/sysdeps/linux/sparc64/sysdep.h b/libc/sysdeps/linux/sparc64/sysdep.h
|
||||||
|
index 31008c34b..5a4c36348 100644
|
||||||
|
--- a/libc/sysdeps/linux/sparc64/sysdep.h
|
||||||
|
+++ b/libc/sysdeps/linux/sparc64/sysdep.h
|
||||||
|
@@ -83,6 +83,15 @@ C_LABEL(name) \
|
||||||
|
cfi_endproc; \
|
||||||
|
.size name, . - name
|
||||||
|
|
||||||
|
+#define ENTRY_NOCFI(name) \
|
||||||
|
+ .align 4; \
|
||||||
|
+ .global C_SYMBOL_NAME(name); \
|
||||||
|
+ .type name, @function; \
|
||||||
|
+C_LABEL(name)
|
||||||
|
+
|
||||||
|
+#define END_NOCFI(name) \
|
||||||
|
+ .size name, . - name
|
||||||
|
+
|
||||||
|
#define LOC(name) .L##name
|
||||||
|
|
||||||
|
#undef PSEUDO
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
45
packages/uClibc-ng/1.0.48/0002-iconv-fix-type-mismatches.patch
vendored
Normal file
45
packages/uClibc-ng/1.0.48/0002-iconv-fix-type-mismatches.patch
vendored
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
From 04eae467796a784c79d016d8bc18cbb23ddffb74 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Max Filippov <jcmvbkbc@gmail.com>
|
||||||
|
Date: Wed, 1 May 2024 04:35:18 -0700
|
||||||
|
Subject: [PATCH 2/7] iconv: fix type mismatches
|
||||||
|
|
||||||
|
With gcc-14 warnings caused by type mismatches turn to errors:
|
||||||
|
- iconv_t is not a pointer type, convert the result directly to iconv_t
|
||||||
|
in combine_to_from()
|
||||||
|
- unsigned int is not the same as wchar_t, use temporary wchar_t wc as
|
||||||
|
an argument for utf8dec_wchar()
|
||||||
|
|
||||||
|
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
|
||||||
|
---
|
||||||
|
libiconv/iconv.c | 8 ++++++--
|
||||||
|
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/libiconv/iconv.c b/libiconv/iconv.c
|
||||||
|
index ec01f381d..0462f6e10 100644
|
||||||
|
--- a/libiconv/iconv.c
|
||||||
|
+++ b/libiconv/iconv.c
|
||||||
|
@@ -142,7 +142,7 @@ struct stateful_cd {
|
||||||
|
|
||||||
|
static iconv_t combine_to_from(size_t t, size_t f)
|
||||||
|
{
|
||||||
|
- return (void *)(f<<16 | t<<1 | 1);
|
||||||
|
+ return (iconv_t)(f<<16 | t<<1 | 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
static size_t extract_from(iconv_t cd)
|
||||||
|
@@ -382,7 +382,11 @@ size_t iconv(iconv_t cd, char **restrict in, size_t *restrict inb, char **restri
|
||||||
|
switch (type) {
|
||||||
|
case UTF_8:
|
||||||
|
if (c < 128) break;
|
||||||
|
- l = utf8dec_wchar(&c, *in, *inb);
|
||||||
|
+ else {
|
||||||
|
+ wchar_t wc;
|
||||||
|
+ l = utf8dec_wchar(&wc, *in, *inb);
|
||||||
|
+ c = wc;
|
||||||
|
+ }
|
||||||
|
if (!l) l++;
|
||||||
|
else if (l == (size_t)-1) goto ilseq;
|
||||||
|
else if (l == (size_t)-2) goto starved;
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
55
packages/uClibc-ng/1.0.48/0003-ldso-FDPIC-fix-type-mismatches.patch
vendored
Normal file
55
packages/uClibc-ng/1.0.48/0003-ldso-FDPIC-fix-type-mismatches.patch
vendored
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
From ac395a9d0c9ffb4ada09baf0b3f49e01087bf06e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Max Filippov <jcmvbkbc@gmail.com>
|
||||||
|
Date: Wed, 1 May 2024 04:35:19 -0700
|
||||||
|
Subject: [PATCH 3/7] ldso: FDPIC: fix type mismatches
|
||||||
|
|
||||||
|
With gcc-14 warnings caused by type mismatches turn to errors:
|
||||||
|
- (void **) needs explicit conversion operator to become
|
||||||
|
struct funcdesc_value **entry
|
||||||
|
- both subexpressions of the ternary operator must be pointers
|
||||||
|
- %p should be used instead of %x to print a pointer
|
||||||
|
|
||||||
|
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
|
||||||
|
---
|
||||||
|
ldso/ldso/fdpic/dl-inlines.h | 4 ++--
|
||||||
|
ldso/ldso/fdpic/dl-sysdep.h | 2 +-
|
||||||
|
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/ldso/ldso/fdpic/dl-inlines.h b/ldso/ldso/fdpic/dl-inlines.h
|
||||||
|
index 89e7a9a68..6a31ef3e6 100644
|
||||||
|
--- a/ldso/ldso/fdpic/dl-inlines.h
|
||||||
|
+++ b/ldso/ldso/fdpic/dl-inlines.h
|
||||||
|
@@ -102,7 +102,7 @@ __dl_update_loadaddr_hdr(struct elf32_fdpic_loadaddr loadaddr, void *addr,
|
||||||
|
|
||||||
|
#if defined (__SUPPORT_LD_DEBUG__)
|
||||||
|
if (_dl_debug)
|
||||||
|
- _dl_dprintf(_dl_debug_file, "%i: changed mapping %x at %x (old %x), size %x\n",
|
||||||
|
+ _dl_dprintf(_dl_debug_file, "%i: changed mapping %x at %x (old %p), size %x\n",
|
||||||
|
loadaddr.map->nsegs - 1,
|
||||||
|
segdata->p_vaddr, segdata->addr, oldaddr, segdata->p_memsz);
|
||||||
|
#endif
|
||||||
|
@@ -177,7 +177,7 @@ _dl_funcdesc_for (void *entry_point, void *got_value)
|
||||||
|
tpnt->funcdesc_ht = ht;
|
||||||
|
}
|
||||||
|
|
||||||
|
- entry = htab_find_slot(ht, entry_point, 1, hash_pointer, eq_pointer);
|
||||||
|
+ entry = (struct funcdesc_value **)htab_find_slot(ht, entry_point, 1, hash_pointer, eq_pointer);
|
||||||
|
|
||||||
|
if (entry == NULL)
|
||||||
|
_dl_exit(1);
|
||||||
|
diff --git a/ldso/ldso/fdpic/dl-sysdep.h b/ldso/ldso/fdpic/dl-sysdep.h
|
||||||
|
index 6ab303b37..81694dc76 100644
|
||||||
|
--- a/ldso/ldso/fdpic/dl-sysdep.h
|
||||||
|
+++ b/ldso/ldso/fdpic/dl-sysdep.h
|
||||||
|
@@ -108,7 +108,7 @@ struct funcdesc_ht;
|
||||||
|
&& ELF32_ST_TYPE((SYM)->st_info) == STT_FUNC \
|
||||||
|
? _dl_funcdesc_for ((void *)DL_RELOC_ADDR ((TPNT)->loadaddr, (SYM)->st_value), \
|
||||||
|
(TPNT)->loadaddr.got_value) \
|
||||||
|
- : DL_RELOC_ADDR ((TPNT)->loadaddr, (SYM)->st_value))
|
||||||
|
+ : (void*)DL_RELOC_ADDR ((TPNT)->loadaddr, (SYM)->st_value))
|
||||||
|
|
||||||
|
#define DL_GET_READY_TO_RUN_EXTRA_PARMS \
|
||||||
|
, struct elf32_fdpic_loadmap *dl_boot_progmap, Elf32_Addr dl_boot_got_pointer
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
55
packages/uClibc-ng/1.0.48/0004-ldso-arm-fix-build-with-gcc-14.patch
vendored
Normal file
55
packages/uClibc-ng/1.0.48/0004-ldso-arm-fix-build-with-gcc-14.patch
vendored
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
From 44aee04d7864da97a79fc41eeac0695d5f21f861 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Max Filippov <jcmvbkbc@gmail.com>
|
||||||
|
Date: Wed, 1 May 2024 04:35:20 -0700
|
||||||
|
Subject: [PATCH 4/7] ldso: arm: fix build with gcc-14
|
||||||
|
|
||||||
|
With gcc-14 warnings caused by type mismatches turn to errors:
|
||||||
|
- got_entry is a pointer in the _dl_linux_resolver(), but the function
|
||||||
|
_dl_linux_resolver() returns unsigned long. Convert got_entry to
|
||||||
|
unsigned long when returning
|
||||||
|
- first argument of _dl_funcdesc_for() is a pointer, but (symbol_addr +
|
||||||
|
reloc_value) is unsigned long in the _dl_do_reloc(). Convert function
|
||||||
|
argument to (void *)
|
||||||
|
- struct funcdesc_value::entry_point is a pointer, but DL_RELOC_ADDR
|
||||||
|
returns ElfW(Addr). Convert DL_RELOC_ADDR result to (void *) before
|
||||||
|
assigning to funcdesc_value::entry_point
|
||||||
|
|
||||||
|
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
|
||||||
|
---
|
||||||
|
ldso/ldso/arm/elfinterp.c | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/ldso/ldso/arm/elfinterp.c b/ldso/ldso/arm/elfinterp.c
|
||||||
|
index 4c268356f..9c9a3e8ca 100644
|
||||||
|
--- a/ldso/ldso/arm/elfinterp.c
|
||||||
|
+++ b/ldso/ldso/arm/elfinterp.c
|
||||||
|
@@ -92,7 +92,7 @@ unsigned long _dl_linux_resolver (struct elf_resolve *tpnt, int reloc_offet)
|
||||||
|
*got_entry = funcval;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- return got_entry;
|
||||||
|
+ return (unsigned long)got_entry;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
unsigned long _dl_linux_resolver(struct elf_resolve *tpnt, int reloc_entry)
|
||||||
|
@@ -362,7 +362,7 @@ _dl_do_reloc (struct elf_resolve *tpnt,struct r_scope_elem *scope,
|
||||||
|
unsigned long reloc_value = *reloc_addr;
|
||||||
|
|
||||||
|
if (symbol_addr)
|
||||||
|
- reloc_value = (unsigned long) _dl_funcdesc_for(symbol_addr + reloc_value, sym_ref.tpnt->loadaddr.got_value);
|
||||||
|
+ reloc_value = (unsigned long) _dl_funcdesc_for((void *)(symbol_addr + reloc_value), sym_ref.tpnt->loadaddr.got_value);
|
||||||
|
else
|
||||||
|
/* Relocation against an
|
||||||
|
undefined weak symbol:
|
||||||
|
@@ -429,7 +429,7 @@ _dl_do_lazy_reloc (struct elf_resolve *tpnt, struct r_scope_elem *scope,
|
||||||
|
{
|
||||||
|
struct funcdesc_value *dst = (struct funcdesc_value *) reloc_addr;
|
||||||
|
|
||||||
|
- dst->entry_point = DL_RELOC_ADDR(tpnt->loadaddr, dst->entry_point);
|
||||||
|
+ dst->entry_point = (void *)DL_RELOC_ADDR(tpnt->loadaddr, dst->entry_point);
|
||||||
|
dst->got_value = tpnt->loadaddr.got_value;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
39
packages/uClibc-ng/1.0.48/0005-csky-allow-time64.patch
vendored
Normal file
39
packages/uClibc-ng/1.0.48/0005-csky-allow-time64.patch
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
From 79485f17d59ad267dc1add87b23248dff9908132 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Waldemar Brodkorb <wbx@openadk.org>
|
||||||
|
Date: Fri, 10 May 2024 11:51:13 +0200
|
||||||
|
Subject: [PATCH 5/7] csky: allow time64
|
||||||
|
|
||||||
|
---
|
||||||
|
extra/Configs/Config.in | 1 +
|
||||||
|
libc/sysdeps/linux/csky/bits/uClibc_arch_features.h | 3 ---
|
||||||
|
2 files changed, 1 insertion(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in
|
||||||
|
index b814449b4..3a0136c99 100644
|
||||||
|
--- a/extra/Configs/Config.in
|
||||||
|
+++ b/extra/Configs/Config.in
|
||||||
|
@@ -1028,6 +1028,7 @@ config UCLIBC_USE_TIME64
|
||||||
|
bool "Use *time64 syscalls instead of 32bit ones (if possible)"
|
||||||
|
depends on TARGET_arc || \
|
||||||
|
TARGET_arm || \
|
||||||
|
+ TARGET_csky || \
|
||||||
|
TARGET_i386 || \
|
||||||
|
TARGET_m68k || \
|
||||||
|
TARGET_microblaze || \
|
||||||
|
diff --git a/libc/sysdeps/linux/csky/bits/uClibc_arch_features.h b/libc/sysdeps/linux/csky/bits/uClibc_arch_features.h
|
||||||
|
index 3f5dab80c..1b866cb90 100644
|
||||||
|
--- a/libc/sysdeps/linux/csky/bits/uClibc_arch_features.h
|
||||||
|
+++ b/libc/sysdeps/linux/csky/bits/uClibc_arch_features.h
|
||||||
|
@@ -17,9 +17,6 @@
|
||||||
|
/* can your target use syscall6() for mmap ? */
|
||||||
|
#undef __UCLIBC_MMAP_HAS_6_ARGS__
|
||||||
|
|
||||||
|
-/* does your target use statx */
|
||||||
|
-#define __UCLIBC_HAVE_STATX__
|
||||||
|
-
|
||||||
|
#ifdef __CSKYABIV2__
|
||||||
|
#undef __UCLIBC_SYSCALL_ALIGN_64BIT__
|
||||||
|
#else
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
25
packages/uClibc-ng/1.0.48/0006-m68k-fix-noMMU-ELF-compile-with-gcc-14.x.patch
vendored
Normal file
25
packages/uClibc-ng/1.0.48/0006-m68k-fix-noMMU-ELF-compile-with-gcc-14.x.patch
vendored
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From ad21b95c97cdb8741922d163f132e9c726c2ce5b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Waldemar Brodkorb <wbx@openadk.org>
|
||||||
|
Date: Sat, 11 May 2024 06:59:54 +0200
|
||||||
|
Subject: [PATCH 6/7] m68k: fix noMMU ELF compile with gcc 14.x
|
||||||
|
|
||||||
|
---
|
||||||
|
libc/misc/internals/reloc_static_pie.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/libc/misc/internals/reloc_static_pie.c b/libc/misc/internals/reloc_static_pie.c
|
||||||
|
index 81af7d666..cb2c4df87 100644
|
||||||
|
--- a/libc/misc/internals/reloc_static_pie.c
|
||||||
|
+++ b/libc/misc/internals/reloc_static_pie.c
|
||||||
|
@@ -21,7 +21,7 @@
|
||||||
|
#include <dl-elf.h>
|
||||||
|
|
||||||
|
#include <ldso.h>
|
||||||
|
-#if defined(__mips__) || defined(__xtensa__)
|
||||||
|
+#if defined(__m68k__) || defined(__mips__) || defined(__xtensa__)
|
||||||
|
#include <dl-startup.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
34
packages/uClibc-ng/1.0.48/0007-libpthread-drop-protected-attribute-from-__pthread_k.patch
vendored
Normal file
34
packages/uClibc-ng/1.0.48/0007-libpthread-drop-protected-attribute-from-__pthread_k.patch
vendored
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From 55840f6209cf1169b1332d262fc8a9d2108e753d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Chris Packham <chris.packham@alliedtelesis.co.nz>
|
||||||
|
Date: Tue, 5 Sep 2023 21:14:32 +1200
|
||||||
|
Subject: [PATCH 7/7] libpthread: drop protected attribute from
|
||||||
|
__pthread_key_create
|
||||||
|
|
||||||
|
Building some C++ code with uclibc-ng, binutils-2.40 and gcc-13.2.0 we
|
||||||
|
get the following error
|
||||||
|
|
||||||
|
ld.bfd: isl_test2.o: non-canonical reference to canonical protected function `__pthread_key_create' in x86_64-multilib-linux-uclibc/sysroot/lib64/libc.so.1
|
||||||
|
ld.bfd: failed to set dynamic section sizes: bad value
|
||||||
|
|
||||||
|
Drop the protected attribute to avoid the error.
|
||||||
|
|
||||||
|
Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
|
||||||
|
---
|
||||||
|
libpthread/nptl/pthread_key_create.c | 1 -
|
||||||
|
1 file changed, 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/libpthread/nptl/pthread_key_create.c b/libpthread/nptl/pthread_key_create.c
|
||||||
|
index 6e11bbeae..87999764e 100644
|
||||||
|
--- a/libpthread/nptl/pthread_key_create.c
|
||||||
|
+++ b/libpthread/nptl/pthread_key_create.c
|
||||||
|
@@ -22,7 +22,6 @@
|
||||||
|
|
||||||
|
|
||||||
|
int
|
||||||
|
-attribute_protected
|
||||||
|
__pthread_key_create (
|
||||||
|
pthread_key_t *key,
|
||||||
|
void (*destr) (void *))
|
||||||
|
--
|
||||||
|
2.43.2
|
||||||
|
|
16
packages/uClibc-ng/1.0.48/chksum
vendored
Normal file
16
packages/uClibc-ng/1.0.48/chksum
vendored
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
md5 uClibc-ng-1.0.48.tar.xz 22441c7511bc9f78e0ff0c6b9e298d6b
|
||||||
|
sha1 uClibc-ng-1.0.48.tar.xz 8ab27e44d0ce9a7f9da1e8dfa36b1c4b60418bc5
|
||||||
|
sha256 uClibc-ng-1.0.48.tar.xz 3bf5fc6cc5cbc454b6c478424755c6f71e7c15578a2c966f02606aa5c5596e21
|
||||||
|
sha512 uClibc-ng-1.0.48.tar.xz da19eeaaf17f1b00a771924fcef906c9ccb701b0204536922689d237765f0712bd348040124c3555cac2f3d93bbdb7bf087fe60af49ae7c60a06340c5f094d87
|
||||||
|
md5 uClibc-ng-1.0.48.tar.lz b7a0f8c1cd9963698f6357aca59a47b9
|
||||||
|
sha1 uClibc-ng-1.0.48.tar.lz fe96cfa39a4d63443631ac40f771803f1ae6bfe6
|
||||||
|
sha256 uClibc-ng-1.0.48.tar.lz 994c2972bbba0c59b77a559aa67505684eecf5d9d5cbcfff3d1eed17925112f2
|
||||||
|
sha512 uClibc-ng-1.0.48.tar.lz 51f0386e3ac5eb0221ad3bf2c9b5daac0caaf809eaceac6d5ec85b591aa5c542641450140d1689a3c1ad5aeb9675584a7ad7351a756b26d8ea11283a7a1cb893
|
||||||
|
md5 uClibc-ng-1.0.48.tar.bz2 1f584b748fcb06d06419338c1237cb3a
|
||||||
|
sha1 uClibc-ng-1.0.48.tar.bz2 f8a30be35dafabb95de32aa2e4caab432d58f50c
|
||||||
|
sha256 uClibc-ng-1.0.48.tar.bz2 472c532a637ff98a99c17789d70e7f25c289ee5b7bc5177725302f9a32008bd7
|
||||||
|
sha512 uClibc-ng-1.0.48.tar.bz2 9855a63e45b308e9276fa8c6da4eeebc2943d9f33877620a589de0911dcecc92794e1be03d13b350f5061342f6434e163a195f93adc76d01d4edb85f1a20ba9a
|
||||||
|
md5 uClibc-ng-1.0.48.tar.gz 44df58035e64bfd8c46bc7f89dea18cc
|
||||||
|
sha1 uClibc-ng-1.0.48.tar.gz bade11d254deeb9e608b2c4696e107d96d330b7c
|
||||||
|
sha256 uClibc-ng-1.0.48.tar.gz c8ac74fb6c53f96cf9ecde05c3e37a4e03a67aee013b2f3c388a3c43d20b311d
|
||||||
|
sha512 uClibc-ng-1.0.48.tar.gz f393ab0459a1b788da966c63befccc3c5ab642f087c65605a4f16f6533a2e966a3939c26a3978b671a531966d247c93722c1ef4b0a73bbdd93cfed86b089ea63
|
0
packages/uClibc-ng/1.0.48/version.desc
vendored
Normal file
0
packages/uClibc-ng/1.0.48/version.desc
vendored
Normal file
Loading…
Reference in New Issue
Block a user