diff options
Diffstat (limited to 'packages/newlib/3.0.0')
-rw-r--r-- | packages/newlib/3.0.0/0000-fix-unaligned-access-memcpy-m68k.patch | 25 | ||||
-rw-r--r-- | packages/newlib/3.0.0/0001-fix-mt-cflags.patch | 13 | ||||
-rw-r--r-- | packages/newlib/3.0.0/0002-stupid-typo.patch | 23 | ||||
-rw-r--r-- | packages/newlib/3.0.0/0003-revert-bad-va_list-use.patch | 80 | ||||
-rw-r--r-- | packages/newlib/3.0.0/chksum | 4 | ||||
-rw-r--r-- | packages/newlib/3.0.0/version.desc | 1 |
6 files changed, 146 insertions, 0 deletions
diff --git a/packages/newlib/3.0.0/0000-fix-unaligned-access-memcpy-m68k.patch b/packages/newlib/3.0.0/0000-fix-unaligned-access-memcpy-m68k.patch new file mode 100644 index 0000000..b6709d5 --- /dev/null +++ b/packages/newlib/3.0.0/0000-fix-unaligned-access-memcpy-m68k.patch @@ -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 diff --git a/packages/newlib/3.0.0/0001-fix-mt-cflags.patch b/packages/newlib/3.0.0/0001-fix-mt-cflags.patch new file mode 100644 index 0000000..24a9215 --- /dev/null +++ b/packages/newlib/3.0.0/0001-fix-mt-cflags.patch @@ -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 diff --git a/packages/newlib/3.0.0/0002-stupid-typo.patch b/packages/newlib/3.0.0/0002-stupid-typo.patch new file mode 100644 index 0000000..6607509 --- /dev/null +++ b/packages/newlib/3.0.0/0002-stupid-typo.patch @@ -0,0 +1,23 @@ +commit b7e0f286a2ecab3b687ec9b3f95f5a88b9f85310 +Author: Orlando Arias <oarias@knights.ucf.edu> +Date: Fri Jan 19 11:45:01 2018 -0500 + + Fix syntax error in exit.c + + This patch fixes a syntax error in exit.c that was introduced during the + ANSI-fication of newlib. The patch fixes a compile-time issue that arises when + newlib is configured with the --enable-lite-exit feature. + +diff --git a/newlib/libc/stdlib/exit.c b/newlib/libc/stdlib/exit.c +index 95108ade6..3e618914e 100644 +--- a/newlib/libc/stdlib/exit.c ++++ b/newlib/libc/stdlib/exit.c +@@ -54,7 +54,7 @@ exit (int code) + { + #ifdef _LITE_EXIT + /* Refer to comments in __atexit.c for more details of lite exit. */ +- void __call_exitprocs (int, void *)) __attribute__((weak); ++ void __call_exitprocs (int, void *) __attribute__((weak)); + if (__call_exitprocs) + #endif + __call_exitprocs (code, NULL); diff --git a/packages/newlib/3.0.0/0003-revert-bad-va_list-use.patch b/packages/newlib/3.0.0/0003-revert-bad-va_list-use.patch new file mode 100644 index 0000000..82a8fb6 --- /dev/null +++ b/packages/newlib/3.0.0/0003-revert-bad-va_list-use.patch @@ -0,0 +1,80 @@ +Revert the commit below. A better solution is being discussed on newlib's mailing list. + +commit fcd33916ac03086b9090c68e88036afa4b25d913 +Author: Alexander Fedotov <alfedotov@gmail.com> +Date: Mon Dec 25 16:28:22 2017 +0300 + + fix incompatible pointer type for va_list in nano versions of printf and scanf for target like PowerPC + +diff --git b/newlib/libc/stdio/nano-vfprintf.c a/newlib/libc/stdio/nano-vfprintf.c +index 663eb7149..e6604e771 100644 +--- b/newlib/libc/stdio/nano-vfprintf.c ++++ a/newlib/libc/stdio/nano-vfprintf.c +@@ -168,16 +168,6 @@ static char *rcsid = "$Id$"; + #include "vfieeefp.h" + #include "nano-vfprintf_local.h" + +- +-/* GCC PR 14577 at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=14557 */ +-#if __STDC_VERSION__ >= 201112L +-#define va_ptr(ap) _Generic(&(ap), va_list *: &(ap), default: (va_list *)(ap)) +-#elif __GNUC__ >= 4 +-#define va_ptr(ap) __builtin_choose_expr(__builtin_types_compatible_p(__typeof__(&(ap)), va_list *), &(ap), (va_list *)(ap)) +-#else +-#define va_ptr(ap) (sizeof(ap) == sizeof(va_list) ? (va_list *)&(ap) : (va_list *)(ap)) +-#endif +- + /* The __ssputs_r function is shared between all versions of vfprintf + and vfwprintf. */ + #ifdef STRING_ONLY +@@ -643,12 +633,12 @@ _DEFUN(_VFPRINTF_R, (data, fp, fmt0, ap), + } + else + { +- n = _printf_float (data, &prt_data, fp, pfunc, va_ptr(ap)); ++ n = _printf_float (data, &prt_data, fp, pfunc, &ap); + } + } + else + #endif +- n = _printf_i (data, &prt_data, fp, pfunc, va_ptr(ap)); ++ n = _printf_i (data, &prt_data, fp, pfunc, &ap); + + if (n == -1) + goto error; +diff --git b/newlib/libc/stdio/nano-vfscanf.c a/newlib/libc/stdio/nano-vfscanf.c +index 6467e5425..564f2916d 100644 +--- b/newlib/libc/stdio/nano-vfscanf.c ++++ a/newlib/libc/stdio/nano-vfscanf.c +@@ -119,15 +119,6 @@ Supporting OS subroutines required: + #include "../stdlib/local.h" + #include "nano-vfscanf_local.h" + +-/* GCC PR 14577 at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=14557 */ +-#if __STDC_VERSION__ >= 201112L +-#define va_ptr(ap) _Generic(&(ap), va_list *: &(ap), default: (va_list *)(ap)) +-#elif __GNUC__ >= 4 +-#define va_ptr(ap) __builtin_choose_expr(__builtin_types_compatible_p(__typeof__(&(ap)), va_list *), &(ap), (va_list *)(ap)) +-#else +-#define va_ptr(ap) (sizeof(ap) == sizeof(va_list) ? (va_list *)&(ap) : (va_list *)(ap)) +-#endif +- + #define VFSCANF vfscanf + #define _VFSCANF_R _vfscanf_r + #define __SVFSCANF __svfscanf +@@ -433,12 +424,12 @@ _DEFUN(__SVFSCANF_R, (rptr, fp, fmt0, ap), + } + ret = 0; + if (scan_data.code < CT_INT) +- ret = _scanf_chars (rptr, &scan_data, fp, va_ptr(ap)); ++ ret = _scanf_chars (rptr, &scan_data, fp, &ap); + else if (scan_data.code < CT_FLOAT) +- ret = _scanf_i (rptr, &scan_data, fp, va_ptr(ap)); ++ ret = _scanf_i (rptr, &scan_data, fp, &ap); + #ifdef FLOATING_POINT + else if (_scanf_float) +- ret = _scanf_float (rptr, &scan_data, fp, va_ptr(ap)); ++ ret = _scanf_float (rptr, &scan_data, fp, &ap); + #endif + + if (ret == MATCH_FAILURE) diff --git a/packages/newlib/3.0.0/chksum b/packages/newlib/3.0.0/chksum new file mode 100644 index 0000000..4da4e03 --- /dev/null +++ b/packages/newlib/3.0.0/chksum @@ -0,0 +1,4 @@ +md5 newlib-3.0.0.tar.gz 81ec873108b8593c586f91ca65963952 +sha1 newlib-3.0.0.tar.gz 641e4d4a50e31016ca90e0d3ea095aabae34c4a7 +sha256 newlib-3.0.0.tar.gz c8566335ee74e5fcaeb8595b4ebd0400c4b043d6acb3263ecb1314f8f5501332 +sha512 newlib-3.0.0.tar.gz d4730ce9a4fc4e62052e89d20d4a3855a103b3d1a2818e94c7a68626db285aa8db8e56a684103731916bfba3e581db88e3a93264034ea0f2880ee8976283c04f diff --git a/packages/newlib/3.0.0/version.desc b/packages/newlib/3.0.0/version.desc new file mode 100644 index 0000000..76f1447 --- /dev/null +++ b/packages/newlib/3.0.0/version.desc @@ -0,0 +1 @@ +experimental='yes' |