From: Romain Naour Date: Sat, 21 Aug 2021 13:12:56 +0000 (+0200) Subject: package/localedef: bump to version 2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=cf0fdbbd2a572cb018557bd6ab68fde59e746fb3;p=buildroot.git package/localedef: bump to version 2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f resync the version with glibc package. Remove upstream patches. Rebase remaining patches for glibc 2.33. Signed-off-by: Romain Naour Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- diff --git a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0001-HACK-only-build-and-install-localedef.patch b/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0001-HACK-only-build-and-install-localedef.patch deleted file mode 100644 index d327008c1d..0000000000 --- a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0001-HACK-only-build-and-install-localedef.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Michael Olbrich -Date: Mon, 21 May 2018 16:45:02 +0200 -Subject: [PATCH] HACK: only build and install localedef - -Signed-off-by: Michael Olbrich - -Upstream: https://git.pengutronix.de/cgit/ptxdist/plain/patches/localedef-glibc-2.27/0001-HACK-only-build-and-install-localedef.patch?id=47116f66f411d4dadfce42c2fdd6d41b351ccfd4 -Signed-off-by: Peter Seiderer ---- - Rules | 14 ++++++++++---- - locale/Makefile | 6 +++--- - 2 files changed, 13 insertions(+), 7 deletions(-) - -diff --git a/Rules b/Rules -index 16afa6acaa..6c208db788 100644 ---- a/Rules -+++ b/Rules -@@ -190,10 +190,16 @@ binaries-shared-notests = $(filter-out $(binaries-pie) $(binaries-static), \ - $(binaries-all-notests)) - - ifneq "$(strip $(binaries-shared-notests))" "" --$(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o \ -- $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \ -- $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit) -- $(+link) -+$(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o -+ $(CC) -o $@ \ -+ $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ -+ $(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \ -+ $(filter-out $(addprefix $(csu-objpfx),start.o \ -+ $(start-installed-name))\ -+ $(+preinit) \ -+ $(link-extra-libs) \ -+ $(common-objpfx)libc% $(+postinit),$^) \ -+ $(link-extra-libs) - endif - - ifneq "$(strip $(binaries-shared-tests))" "" -diff --git a/locale/Makefile b/locale/Makefile -index 764e751c36..c28322d71f 100644 ---- a/locale/Makefile -+++ b/locale/Makefile -@@ -32,15 +32,15 @@ categories = ctype messages monetary numeric time paper name \ - address telephone measurement identification collate - aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \ - xlocale localename global-locale coll-lookup --others = localedef locale -+others = localedef - #others-static = localedef locale --install-bin = localedef locale -+install-bin = localedef - extra-objs = $(localedef-modules:=.o) $(localedef-aux:=.o) \ - $(locale-modules:=.o) $(lib-modules:=.o) - generated += C-translit.h - before-compile += $(objpfx)C-translit.h - --extra-libs = libBrokenLocale -+#extra-libs = libBrokenLocale - extra-libs-others = $(extra-libs) - - libBrokenLocale-routines = broken_cur_max --- -2.21.0 - diff --git a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch b/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch deleted file mode 100644 index a6e87cc317..0000000000 --- a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 313e04bfbd281f9b46fdde097aacb59d501820a3 Mon Sep 17 00:00:00 2001 -From: Matt Weber -Date: Thu, 6 Feb 2020 14:36:21 -0600 -Subject: [PATCH] relax dependency on GCC to 4.8 and binutils to 2.24 - -The glibc package has been updating the toolchain version -dependency since 2.28.x. The dependencies don't currently -apply to the localedef build of the package, so this -patchset relaxes the restriction such that builds can still -occur on older host machines. - -Here's a related post from 2018 for a similar patchset. -http://lists.busybox.net/pipermail/buildroot/2018-December/237949.html - -Timeline of relevant commits that adjust the dependency upstream. -GCC 4.9+ - https://sourceware.org/git/?p=glibc.git;a=commit;h=4add86749a31f302674599b69d2eea691d69341a -Binutils 2.25+ - https://sourceware.org/git/?p=glibc.git;a=commit;h=073e8fa7739ed453d6854b834f290c263a6cdb9f - https://sourceware.org/git/?p=glibc.git;a=commit;h=b4396163aa8666f970aaf43eaca25f3a92b18c1b -GCC 5+ - https://sourceware.org/git/?p=glibc.git;a=commit;h=192963be49678b48f60218f1f794991cdd9fe472 -GCC 6.2+ - https://sourceware.org/git/?p=glibc.git;a=commit;h=4dcbbc3b28aaeafe23e1a30db84055aa6f6fa987 - -Signed-off-by: Matthew Weber ---- - configure | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/configure b/configure -index 6d26b824..9ac2e5e9 100755 ---- a/configure -+++ b/configure -@@ -4601,7 +4601,7 @@ $as_echo_n "checking version of $AS... " >&6; } - ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) -+ 2.1[0-9][0-9]*|2.2[4-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -4731,7 +4731,7 @@ $as_echo_n "checking version of $LD... " >&6; } - ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -- 2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) -+ 2.1[0-9][0-9]*|2.2[4-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - -@@ -5140,7 +5140,7 @@ int - main () - { - --#if !defined __GNUC__ || __GNUC__ < 6 || (__GNUC__ == 6 && __GNUC_MINOR__ < 2) -+#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8) - #error insufficient compiler - #endif - ; --- -2.18.0 - diff --git a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch b/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch deleted file mode 100644 index 888d27fe4a..0000000000 --- a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0003-Fix-GCC-11-Warray-parameter-warning-for-__sigsetjmp-.patch +++ /dev/null @@ -1,155 +0,0 @@ -From 44f1469daff3a0bfe67fb5839243f114ace3bad8 Mon Sep 17 00:00:00 2001 -From: Joseph Myers -Date: Mon, 5 Oct 2020 16:46:46 +0000 -Subject: [PATCH 3/4] Fix GCC 11 -Warray-parameter warning for __sigsetjmp (bug - 26647) - -This patch fixes part of bug 26647 (-Werror=array-parameter error -building with GCC 11 because of __sigsetjmp being declared using an -array parameter in one header and a pointer parameter in another). - -The fix is to split the struct __jmp_buf_tag definition out to a -separate bits/types/ header so it can be included in pthread.h, so -that pthread.h can declare __sigsetjmp with the type contents visible, -so can use an array (as in setjmp.h) rather than a pointer in the -declaration. - -Note that several other build failures with GCC 11 remain. This does -not fix the jmp_buf-related -Wstringop-overflow errors (also discussed -in bug 26647), or -Warray-parameter errors for other functions (bug -26686), or -Warray-bounds errors (bug 26687). - -Tested, with older compilers, natively for x86_64 and with -build-many-glibc.py for aarch64-linux-gnu. Tested with -build-many-glibcs.py with GCC mainline for aarch64-linux-gnu that this -gets past the -Warray-parameter issue for __sigsetjmp (with the next -build failure being the other one discussed in bug 26647). - -[Upstream: https://github.com/bminor/glibc/commit/19302b27bdacfe87e861ff46fc0fbad60dd6602d.patch] -Signed-off-by: Peter Seiderer ---- - include/bits/types/struct___jmp_buf_tag.h | 1 + - setjmp/Makefile | 3 +- - setjmp/bits/types/struct___jmp_buf_tag.h | 37 +++++++++++++++++++++++ - setjmp/setjmp.h | 15 +-------- - sysdeps/nptl/pthread.h | 5 +-- - 5 files changed, 44 insertions(+), 17 deletions(-) - create mode 100644 include/bits/types/struct___jmp_buf_tag.h - create mode 100644 setjmp/bits/types/struct___jmp_buf_tag.h - -diff --git a/include/bits/types/struct___jmp_buf_tag.h b/include/bits/types/struct___jmp_buf_tag.h -new file mode 100644 -index 00000000..e3250150 ---- /dev/null -+++ b/include/bits/types/struct___jmp_buf_tag.h -@@ -0,0 +1 @@ -+#include -diff --git a/setjmp/Makefile b/setjmp/Makefile -index dcac5693..603f61d7 100644 ---- a/setjmp/Makefile -+++ b/setjmp/Makefile -@@ -22,7 +22,8 @@ subdir := setjmp - - include ../Makeconfig - --headers := setjmp.h bits/setjmp.h bits/setjmp2.h -+headers := setjmp.h bits/setjmp.h bits/setjmp2.h \ -+ bits/types/struct___jmp_buf_tag.h - - routines := setjmp sigjmp bsd-setjmp bsd-_setjmp \ - longjmp __longjmp jmp-unwind -diff --git a/setjmp/bits/types/struct___jmp_buf_tag.h b/setjmp/bits/types/struct___jmp_buf_tag.h -new file mode 100644 -index 00000000..9d8634f1 ---- /dev/null -+++ b/setjmp/bits/types/struct___jmp_buf_tag.h -@@ -0,0 +1,37 @@ -+/* Define struct __jmp_buf_tag. -+ Copyright (C) 1991-2020 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef __jmp_buf_tag_defined -+#define __jmp_buf_tag_defined 1 -+ -+#include /* Get `__jmp_buf'. */ -+#include -+ -+/* Calling environment, plus possibly a saved signal mask. */ -+struct __jmp_buf_tag -+ { -+ /* NOTE: The machine-dependent definitions of `__sigsetjmp' -+ assume that a `jmp_buf' begins with a `__jmp_buf' and that -+ `__mask_was_saved' follows it. Do not move these members -+ or add others before it. */ -+ __jmp_buf __jmpbuf; /* Calling environment. */ -+ int __mask_was_saved; /* Saved the signal mask? */ -+ __sigset_t __saved_mask; /* Saved signal mask. */ -+ }; -+ -+#endif -diff --git a/setjmp/setjmp.h b/setjmp/setjmp.h -index 4e3443c3..c6c59f40 100644 ---- a/setjmp/setjmp.h -+++ b/setjmp/setjmp.h -@@ -27,20 +27,7 @@ - __BEGIN_DECLS - - #include /* Get `__jmp_buf'. */ --#include -- --/* Calling environment, plus possibly a saved signal mask. */ --struct __jmp_buf_tag -- { -- /* NOTE: The machine-dependent definitions of `__sigsetjmp' -- assume that a `jmp_buf' begins with a `__jmp_buf' and that -- `__mask_was_saved' follows it. Do not move these members -- or add others before it. */ -- __jmp_buf __jmpbuf; /* Calling environment. */ -- int __mask_was_saved; /* Saved the signal mask? */ -- __sigset_t __saved_mask; /* Saved signal mask. */ -- }; -- -+#include - - typedef struct __jmp_buf_tag jmp_buf[1]; - -diff --git a/sysdeps/nptl/pthread.h b/sysdeps/nptl/pthread.h -index 8a403cbf..d4194da7 100644 ---- a/sysdeps/nptl/pthread.h -+++ b/sysdeps/nptl/pthread.h -@@ -28,6 +28,7 @@ - #include - #include - #include -+#include - - - /* Detach state. */ -@@ -730,8 +731,8 @@ extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf) - #endif - - /* Function used in the macros. */ --struct __jmp_buf_tag; --extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) __THROWNL; -+extern int __sigsetjmp (struct __jmp_buf_tag __env[1], -+ int __savemask) __THROWNL; - - - /* Mutex handling. */ --- -2.31.1 - diff --git a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch b/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch deleted file mode 100644 index 83f3f15eb6..0000000000 --- a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/0004-Avoid-Wstringop-overflow-warning-in-pthread_cleanup_.patch +++ /dev/null @@ -1,125 +0,0 @@ -From ea50889c35fb73ed9e140d800303aae9148c2888 Mon Sep 17 00:00:00 2001 -From: Joseph Myers -Date: Fri, 30 Oct 2020 22:25:42 +0000 -Subject: [PATCH 4/4] Avoid -Wstringop-overflow warning in pthread_cleanup_push - macros - -GCC 11 introduces a -Wstringop-overflow warning for calls to functions -with an array argument passed as a pointer to memory not large enough -for that array. This includes the __sigsetjmp calls from -pthread_cleanup_push macros, because those use a structure in -__pthread_unwind_buf_t, which has a common initial subsequence with -jmp_buf but does not include the saved signal mask; this is OK in this -case because the second argument to __sigsetjmp is 0 so the signal -mask is not accessed. - -To avoid this warning, use a function alias __sigsetjmp_cancel with -first argument an array of exactly the type used in the calls to the -function, if using GCC 11 or later. With older compilers, continue to -use __sigsetjmp with a cast, to avoid any issues with compilers -predating the returns_twice attribute not applying the same special -handling to __sigsetjmp_cancel as to __sigsetjmp. - -Tested with build-many-glibcs.py for arm-linux-gnueabi that this fixes -the testsuite build failures. - -[Upstream: https://github.com/bminor/glibc/commit/548f467fa14ffe7d955beeb31b30e2aeae4467e0.patch] -Signed-off-by: Peter Seiderer ---- - misc/sys/cdefs.h | 8 ++++++++ - sysdeps/nptl/pthread.h | 37 +++++++++++++++++++++++++++---------- - 2 files changed, 35 insertions(+), 10 deletions(-) - -diff --git a/misc/sys/cdefs.h b/misc/sys/cdefs.h -index 38221d0b..ce877487 100644 ---- a/misc/sys/cdefs.h -+++ b/misc/sys/cdefs.h -@@ -556,4 +556,12 @@ _Static_assert (0, "IEEE 128-bits long double requires redirection on this platf - # define __attr_access(x) - #endif - -+/* Specify that a function such as setjmp or vfork may return -+ twice. */ -+#if __GNUC_PREREQ (4, 1) -+# define __attribute_returns_twice__ __attribute__ ((__returns_twice__)) -+#else -+# define __attribute_returns_twice__ /* Ignore. */ -+#endif -+ - #endif /* sys/cdefs.h */ -diff --git a/sysdeps/nptl/pthread.h b/sysdeps/nptl/pthread.h -index d4194da7..3a34d823 100644 ---- a/sysdeps/nptl/pthread.h -+++ b/sysdeps/nptl/pthread.h -@@ -512,13 +512,15 @@ extern void pthread_testcancel (void); - - /* Cancellation handling with integration into exception handling. */ - -+struct __cancel_jmp_buf_tag -+{ -+ __jmp_buf __cancel_jmp_buf; -+ int __mask_was_saved; -+}; -+ - typedef struct - { -- struct -- { -- __jmp_buf __cancel_jmp_buf; -- int __mask_was_saved; -- } __cancel_jmp_buf[1]; -+ struct __cancel_jmp_buf_tag __cancel_jmp_buf[1]; - void *__pad[4]; - } __pthread_unwind_buf_t __attribute__ ((__aligned__)); - -@@ -658,8 +660,8 @@ __pthread_cleanup_routine (struct __pthread_cleanup_frame *__frame) - __pthread_unwind_buf_t __cancel_buf; \ - void (*__cancel_routine) (void *) = (routine); \ - void *__cancel_arg = (arg); \ -- int __not_first_call = __sigsetjmp ((struct __jmp_buf_tag *) (void *) \ -- __cancel_buf.__cancel_jmp_buf, 0); \ -+ int __not_first_call = __sigsetjmp_cancel (__cancel_buf.__cancel_jmp_buf, \ -+ 0); \ - if (__glibc_unlikely (__not_first_call)) \ - { \ - __cancel_routine (__cancel_arg); \ -@@ -693,8 +695,8 @@ extern void __pthread_unregister_cancel (__pthread_unwind_buf_t *__buf) - __pthread_unwind_buf_t __cancel_buf; \ - void (*__cancel_routine) (void *) = (routine); \ - void *__cancel_arg = (arg); \ -- int __not_first_call = __sigsetjmp ((struct __jmp_buf_tag *) (void *) \ -- __cancel_buf.__cancel_jmp_buf, 0); \ -+ int __not_first_call = __sigsetjmp_cancel (__cancel_buf.__cancel_jmp_buf, \ -+ 0); \ - if (__glibc_unlikely (__not_first_call)) \ - { \ - __cancel_routine (__cancel_arg); \ -@@ -730,9 +732,24 @@ extern void __pthread_unwind_next (__pthread_unwind_buf_t *__buf) - ; - #endif - --/* Function used in the macros. */ -+/* Function used in the macros. Calling __sigsetjmp, with its first -+ argument declared as an array, results in a -Wstringop-overflow -+ warning from GCC 11 because struct pthread_unwind_buf is smaller -+ than jmp_buf. The calls from the macros have __SAVEMASK set to 0, -+ so nothing beyond the common prefix is used and this warning is a -+ false positive. Use an alias with its first argument declared to -+ use the type in the macros if possible to avoid this warning. */ -+#if __GNUC_PREREQ (11, 0) -+extern int __REDIRECT_NTHNL (__sigsetjmp_cancel, -+ (struct __cancel_jmp_buf_tag __env[1], -+ int __savemask), -+ __sigsetjmp) __attribute_returns_twice__; -+#else -+# define __sigsetjmp_cancel(env, savemask) \ -+ __sigsetjmp ((struct __jmp_buf_tag *) (void *) (env), (savemask)) - extern int __sigsetjmp (struct __jmp_buf_tag __env[1], - int __savemask) __THROWNL; -+#endif - - - /* Mutex handling. */ --- -2.31.1 - diff --git a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/localedef.hash b/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/localedef.hash deleted file mode 100644 index b1d5243fcc..0000000000 --- a/package/localedef/2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2/localedef.hash +++ /dev/null @@ -1,7 +0,0 @@ -# Locally calculated (fetched from Github) -sha256 f4710e9a435a7b83e1d23dd75434f0d36b898eba9b4249c946c32b467d852fd4 glibc-2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2.tar.gz - -# Hashes for license files -sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING -sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB -sha256 b33d0bd9f685b46853548814893a6135e74430d12f6d94ab3eba42fc591f83bc LICENSES diff --git a/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/0001-HACK-only-build-and-install-localedef.patch b/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/0001-HACK-only-build-and-install-localedef.patch new file mode 100644 index 0000000000..0dcecc1a70 --- /dev/null +++ b/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/0001-HACK-only-build-and-install-localedef.patch @@ -0,0 +1,65 @@ +From 942f45364e7db805f0390c808ef656faa577a419 Mon Sep 17 00:00:00 2001 +From: Michael Olbrich +Date: Mon, 21 May 2018 16:45:02 +0200 +Subject: [PATCH] HACK: only build and install localedef + +Signed-off-by: Michael Olbrich + +Upstream: https://git.pengutronix.de/cgit/ptxdist/plain/patches/localedef-glibc-2.27/0001-HACK-only-build-and-install-localedef.patch?id=47116f66f411d4dadfce42c2fdd6d41b351ccfd4 +Signed-off-by: Peter Seiderer +--- + Rules | 14 ++++++++++---- + locale/Makefile | 6 +++--- + 2 files changed, 13 insertions(+), 7 deletions(-) + +diff --git a/Rules b/Rules +index 082625bb71..2603c96734 100644 +--- a/Rules ++++ b/Rules +@@ -212,10 +212,16 @@ binaries-shared-notests = $(filter-out $(binaries-pie) $(binaries-static), \ + $(binaries-all-notests)) + + ifneq "$(strip $(binaries-shared-notests))" "" +-$(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o \ +- $(sort $(filter $(common-objpfx)lib%,$(link-libc))) \ +- $(addprefix $(csu-objpfx),start.o) $(+preinit) $(+postinit) +- $(+link) ++$(addprefix $(objpfx),$(binaries-shared-notests)): %: %.o ++ $(CC) -o $@ \ ++ $(sysdep-LDFLAGS) $(LDFLAGS) $(LDFLAGS-$(@F)) \ ++ $(combreloc-LDFLAGS) $(relro-LDFLAGS) $(hashstyle-LDFLAGS) \ ++ $(filter-out $(addprefix $(csu-objpfx),start.o \ ++ $(start-installed-name))\ ++ $(+preinit) \ ++ $(link-extra-libs) \ ++ $(common-objpfx)libc% $(+postinit),$^) \ ++ $(link-extra-libs) + endif + + ifneq "$(strip $(binaries-shared-tests))" "" +diff --git a/locale/Makefile b/locale/Makefile +index b7c60681fa..de4cf4003f 100644 +--- a/locale/Makefile ++++ b/locale/Makefile +@@ -33,15 +33,15 @@ categories = ctype messages monetary numeric time paper name \ + address telephone measurement identification collate + aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \ + xlocale localename global-locale coll-lookup +-others = localedef locale ++others = localedef + #others-static = localedef locale +-install-bin = localedef locale ++install-bin = localedef + extra-objs = $(localedef-modules:=.o) $(localedef-aux:=.o) \ + $(locale-modules:=.o) $(lib-modules:=.o) + generated += C-translit.h + before-compile += $(objpfx)C-translit.h + +-extra-libs = libBrokenLocale ++#extra-libs = libBrokenLocale + extra-libs-others = $(extra-libs) + + libBrokenLocale-routines = broken_cur_max +-- +2.31.1 + diff --git a/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch b/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch new file mode 100644 index 0000000000..54c45650d5 --- /dev/null +++ b/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/0002-relax-dependency-on-GCC-to-4.8-and-binutils-to-2.24.patch @@ -0,0 +1,64 @@ +From ec4ebe89a7636da63ccff349d0f0c9f38ac3e3e1 Mon Sep 17 00:00:00 2001 +From: Matt Weber +Date: Thu, 6 Feb 2020 14:36:21 -0600 +Subject: [PATCH] relax dependency on GCC to 4.8 and binutils to 2.24 + +The glibc package has been updating the toolchain version +dependency since 2.28.x. The dependencies don't currently +apply to the localedef build of the package, so this +patchset relaxes the restriction such that builds can still +occur on older host machines. + +Here's a related post from 2018 for a similar patchset. +http://lists.busybox.net/pipermail/buildroot/2018-December/237949.html + +Timeline of relevant commits that adjust the dependency upstream. +GCC 4.9+ + https://sourceware.org/git/?p=glibc.git;a=commit;h=4add86749a31f302674599b69d2eea691d69341a +Binutils 2.25+ + https://sourceware.org/git/?p=glibc.git;a=commit;h=073e8fa7739ed453d6854b834f290c263a6cdb9f + https://sourceware.org/git/?p=glibc.git;a=commit;h=b4396163aa8666f970aaf43eaca25f3a92b18c1b +GCC 5+ + https://sourceware.org/git/?p=glibc.git;a=commit;h=192963be49678b48f60218f1f794991cdd9fe472 +GCC 6.2+ + https://sourceware.org/git/?p=glibc.git;a=commit;h=4dcbbc3b28aaeafe23e1a30db84055aa6f6fa987 + +Signed-off-by: Matthew Weber +--- + configure | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/configure b/configure +index 1dc3af60b4..e3ee4e9fd7 100755 +--- a/configure ++++ b/configure +@@ -4587,7 +4587,7 @@ $as_echo_n "checking version of $AS... " >&6; } + ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'` + case $ac_prog_version in + '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; +- 2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) ++ 2.1[0-9][0-9]*|2.2[4-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) + ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; + *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; + +@@ -4717,7 +4717,7 @@ $as_echo_n "checking version of $LD... " >&6; } + ac_prog_version=`$LD --version 2>&1 | sed -n 's/^.*GNU ld.* \([0-9][0-9]*\.[0-9.]*\).*$/\1/p'` + case $ac_prog_version in + '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; +- 2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) ++ 2.1[0-9][0-9]*|2.2[4-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*) + ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; + *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; + +@@ -5126,7 +5126,7 @@ int + main () + { + +-#if !defined __GNUC__ || __GNUC__ < 6 || (__GNUC__ == 6 && __GNUC_MINOR__ < 2) ++#if !defined __GNUC__ || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8) + #error insufficient compiler + #endif + ; +-- +2.31.1 + diff --git a/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/localedef.hash b/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/localedef.hash new file mode 100644 index 0000000000..4b8d8297ec --- /dev/null +++ b/package/localedef/2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f/localedef.hash @@ -0,0 +1,7 @@ +# Locally calculated (fetched from Github) +sha256 3e2004b16ec6b79a19a88ed4736719ef9e419f9d8e7013faced654c0339e23dc glibc-2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f.tar.gz + +# Hashes for license files +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB +sha256 b33d0bd9f685b46853548814893a6135e74430d12f6d94ab3eba42fc591f83bc LICENSES diff --git a/package/localedef/localedef.mk b/package/localedef/localedef.mk index 57ab5a3458..d8dfdffaa2 100644 --- a/package/localedef/localedef.mk +++ b/package/localedef/localedef.mk @@ -7,7 +7,7 @@ # Use the same VERSION and SITE as target glibc # As in glibc.mk, generate version string using: # git describe --match 'glibc-*' --abbrev=40 origin/release/MAJOR.MINOR/master | cut -d '-' -f 2- -LOCALEDEF_VERSION = 2.32-37-g760e1d287825fa91d4d5a0cc921340c740d803e2 +LOCALEDEF_VERSION = 2.33-46-gedfd11197ecf3629bbb4b66c5814da09a61a7f9f LOCALEDEF_SOURCE = glibc-$(LOCALEDEF_VERSION).tar.gz LOCALEDEF_SITE = $(call github,bminor,glibc,$(LOCALEDEF_VERSION)) HOST_LOCALEDEF_DL_SUBDIR = glibc