mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-24 06:56:40 +00:00
newlib: add 4.3.0.20230120
Add the 4.3.0.20230120 and update the required patches. As of this release the newlib-global-atexit is mandatory so set this to default y. Included is an upstream patch to support older GCC versions. Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit is contained in:
parent
0160064f00
commit
227d99d7f3
@ -113,6 +113,7 @@ config LIBC_NEWLIB_ATEXIT_DYNAMIC_ALLOC
|
|||||||
config LIBC_NEWLIB_GLOBAL_ATEXIT
|
config LIBC_NEWLIB_GLOBAL_ATEXIT
|
||||||
bool
|
bool
|
||||||
prompt "Enable atexit data structure as global variable"
|
prompt "Enable atexit data structure as global variable"
|
||||||
|
default y
|
||||||
help
|
help
|
||||||
Enable atexit data structure as global variable. By doing so it is
|
Enable atexit data structure as global variable. By doing so it is
|
||||||
move out of _reent structure, and can be garbage collected if atexit
|
move out of _reent structure, and can be garbage collected if atexit
|
||||||
|
1
packages/newlib-nano/4.3.0.20230120
Symbolic link
1
packages/newlib-nano/4.3.0.20230120
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../newlib/4.3.0.20230120
|
25
packages/newlib/4.3.0.20230120/0000-fix-unaligned-access-memcpy-m68k.patch
vendored
Normal file
25
packages/newlib/4.3.0.20230120/0000-fix-unaligned-access-memcpy-m68k.patch
vendored
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
The m68k mcpu processor does not like unaligned access
|
||||||
|
|
||||||
|
Disable at least mcpu32, m68010 and m68020. These processors certainly
|
||||||
|
do not like unaligned accesses.
|
||||||
|
|
||||||
|
Signed-off-by: Remy Bohmer <linux@bohmer.net>
|
||||||
|
[yann.morin.1998@anciens.enib.fr: update for 1.19.0 from 1.18.0]
|
||||||
|
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
|
||||||
|
[austinpmorton@gmail.com: update for 1.20.0 from 1.19.0]
|
||||||
|
Signed-off-by: Austin Morton <austinpmorton@gmail.com>
|
||||||
|
---
|
||||||
|
newlib/libc/machine/m68k/memcpy.S | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
--- a/newlib/libc/machine/m68k/memcpy.S
|
||||||
|
+++ b/newlib/libc/machine/m68k/memcpy.S
|
||||||
|
@@ -15,7 +15,7 @@
|
||||||
|
|
||||||
|
#include "m68kasm.h"
|
||||||
|
|
||||||
|
-#if defined (__mcoldfire__) || defined (__mc68010__) || defined (__mc68020__) || defined (__mc68030__) || defined (__mc68040__) || defined (__mc68060__)
|
||||||
|
+#if defined (__mcoldfire__) || defined (__mc68030__) || defined (__mc68040__) || defined (__mc68060__)
|
||||||
|
# define MISALIGNED_OK 1
|
||||||
|
#else
|
||||||
|
# define MISALIGNED_OK 0
|
13
packages/newlib/4.3.0.20230120/0001-fix-mt-cflags.patch
vendored
Normal file
13
packages/newlib/4.3.0.20230120/0001-fix-mt-cflags.patch
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
---
|
||||||
|
config/mt-d30v | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
--- a/config/mt-d30v
|
||||||
|
+++ b/config/mt-d30v
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
# Build libraries optimizing for space, not speed.
|
||||||
|
# Turn off warnings about symbols named the same as registers
|
||||||
|
- CFLAGS_FOR_TARGET = -g -Os -Wa,-C
|
||||||
|
- CXXFLAGS_FOR_TARGET = -g -Os -Wa,-C
|
||||||
|
+ CFLAGS_FOR_TARGET += -g -Os -Wa,-C
|
||||||
|
+ CXXFLAGS_FOR_TARGET += -g -Os -Wa,-C
|
55
packages/newlib/4.3.0.20230120/0002-libc-arm-Implement-setjmp-GCC-backwards-compatibilit.patch
vendored
Normal file
55
packages/newlib/4.3.0.20230120/0002-libc-arm-Implement-setjmp-GCC-backwards-compatibilit.patch
vendored
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
From c6e601de84ea9f2be2b026c609cc3c1fe82a3103 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Victor L. Do Nascimento" <victor.donascimento@arm.com>
|
||||||
|
Date: Fri, 3 Feb 2023 11:15:26 +0000
|
||||||
|
Subject: [PATCH] libc: arm: Implement setjmp GCC backwards compatibility.
|
||||||
|
|
||||||
|
When compiling Newlib for arm targets with GCC 12.1 onward, the
|
||||||
|
passing of architecture extension information to the assembler is
|
||||||
|
automatic, making the use of .fpu and .arch_extension directives
|
||||||
|
in assembly files redundant.
|
||||||
|
|
||||||
|
With older versions of GCC, however, these directives must be
|
||||||
|
hard-coded into the `arm/setjmp.S' file to allow the assembly of
|
||||||
|
instructions concerning the storage and subsequent reloading of the
|
||||||
|
floating point registers to/from the jump buffer, respectively.
|
||||||
|
|
||||||
|
This patch conditionally adds the `.fpu vfpxd' and `.arch_extension
|
||||||
|
mve' directives based on compile-time preprocessor macros concerning
|
||||||
|
GCC version and target architectural features, such that both the
|
||||||
|
assembly and linking of setjmp.S succeeds for older versions of
|
||||||
|
Newlib.
|
||||||
|
---
|
||||||
|
newlib/libc/machine/arm/setjmp.S | 22 ++++++++++++++++++++++
|
||||||
|
1 file changed, 22 insertions(+)
|
||||||
|
|
||||||
|
--- a/newlib/libc/machine/arm/setjmp.S
|
||||||
|
+++ b/newlib/libc/machine/arm/setjmp.S
|
||||||
|
@@ -64,6 +64,28 @@
|
||||||
|
|
||||||
|
.syntax unified
|
||||||
|
|
||||||
|
+/* GCC 12.1 and later will tell the assembler exactly which floating
|
||||||
|
+ point (or MVE) unit is required and we don't want to override
|
||||||
|
+ that. Conversely, older versions of the compiler don't pass this
|
||||||
|
+ information so we need to enable the VFP version that is most
|
||||||
|
+ appropriate. The choice here should support all suitable VFP
|
||||||
|
+ versions that the older toolchains can handle. */
|
||||||
|
+#if __GNUC__ && __GNUC__ < 12
|
||||||
|
+/* Ensure that FPU instructions are correctly compiled and, likewise,
|
||||||
|
+ the appropriate build attributes are added to the resulting object
|
||||||
|
+ file. Check whether the MVE extension is present and whether
|
||||||
|
+ we have support for hardware floating point-operations. VFPxd
|
||||||
|
+ covers all the cases we need in this file for hardware
|
||||||
|
+ floating-point and should be compatible with all required FPUs
|
||||||
|
+ that we need to support. */
|
||||||
|
+# if __ARM_FP
|
||||||
|
+ .fpu vfpxd
|
||||||
|
+# endif
|
||||||
|
+# if __ARM_FEATURE_MVE
|
||||||
|
+ .arch_extension mve
|
||||||
|
+# endif
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#if __ARM_ARCH_ISA_THUMB == 1 && !__ARM_ARCH_ISA_ARM
|
||||||
|
/* ARMv6-M-like has to be implemented in Thumb mode. */
|
||||||
|
|
4
packages/newlib/4.3.0.20230120/chksum
vendored
Normal file
4
packages/newlib/4.3.0.20230120/chksum
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
md5 newlib-4.3.0.20230120.tar.gz 6adcadd40af12376220b73f2574b4b6f
|
||||||
|
sha1 newlib-4.3.0.20230120.tar.gz 1fe9b5ba44a4dd0f1fc49831964053458a834ef6
|
||||||
|
sha256 newlib-4.3.0.20230120.tar.gz 83a62a99af59e38eb9b0c58ed092ee24d700fff43a22c03e433955113ef35150
|
||||||
|
sha512 newlib-4.3.0.20230120.tar.gz 4a06309d36c2255fef8fc8f2d133cafa850f1ed2eddfb27b5d45f5d16af69e0fca829a0b4c9b34af4ed3a28c6fcc929761e0ee823a4229f35c2853d432b5e7ef
|
0
packages/newlib/4.3.0.20230120/version.desc
vendored
Normal file
0
packages/newlib/4.3.0.20230120/version.desc
vendored
Normal file
Loading…
Reference in New Issue
Block a user