From 2ddef0ade46416c5a5b888d5edc2b5f1744b99fd Mon Sep 17 00:00:00 2001 From: Dave Murphy Date: Sun, 12 Apr 2020 01:38:08 +0100 Subject: [PATCH] devkitPPC: update newlib to 3.3.0 --- ...{newlib-3.1.0.patch => newlib-3.3.0.patch} | 31 ++++++++++--------- select_toolchain.sh | 2 +- 2 files changed, 17 insertions(+), 16 deletions(-) rename dkppc/patches/{newlib-3.1.0.patch => newlib-3.3.0.patch} (99%) diff --git a/dkppc/patches/newlib-3.1.0.patch b/dkppc/patches/newlib-3.3.0.patch similarity index 99% rename from dkppc/patches/newlib-3.1.0.patch rename to dkppc/patches/newlib-3.3.0.patch index d76d87b..003e8f5 100644 --- a/dkppc/patches/newlib-3.1.0.patch +++ b/dkppc/patches/newlib-3.3.0.patch @@ -1,8 +1,8 @@ diff --git a/libgloss/configure b/libgloss/configure -index 1a4033dce..ba7aea7b0 100755 +index 0d2918cee..bccfb07b4 100755 --- a/libgloss/configure +++ b/libgloss/configure -@@ -2599,6 +2599,8 @@ if test "${config_libnosys}" = "true"; then +@@ -2604,6 +2604,8 @@ if test "${config_libnosys}" = "true"; then fi @@ -12,7 +12,7 @@ index 1a4033dce..ba7aea7b0 100755 ac_config_commands="$ac_config_commands depfiles" diff --git a/libgloss/configure.in b/libgloss/configure.in -index 41843eed1..689e8b3ad 100644 +index f38d5298e..db6b33ab8 100644 --- a/libgloss/configure.in +++ b/libgloss/configure.in @@ -2,6 +2,7 @@ dnl Process this file with autoconf to produce a configure script. @@ -33,7 +33,7 @@ index 41843eed1..689e8b3ad 100644 case "${target}" in aarch64*-*-*) AC_CONFIG_SUBDIRS(aarch64) -@@ -191,6 +195,10 @@ if test "${config_libnosys}" = "true"; then +@@ -194,6 +198,10 @@ if test "${config_libnosys}" = "true"; then AC_CONFIG_SUBDIRS([libnosys]) fi @@ -622,10 +622,10 @@ index 000000000..b6cdfaeb8 +m4_include([../acinclude.m4]) diff --git a/libgloss/libsysbase/build_argv.c b/libgloss/libsysbase/build_argv.c new file mode 100644 -index 000000000..3ca95d5b6 +index 000000000..a969a0482 --- /dev/null +++ b/libgloss/libsysbase/build_argv.c -@@ -0,0 +1,31 @@ +@@ -0,0 +1,32 @@ +struct __argv { + int argvMagic; + char *commandLine; @@ -652,10 +652,11 @@ index 000000000..3ca95d5b6 + } while (data < end); + + *end = '\0'; // Force NULL terminator for last arg ++ argv[argCount] = 0; // Force NULL terminator for argv + + argstruct->argv = argv; + argstruct->argc = argCount; -+ argstruct->endARGV = &argv[argCount]; ++ argstruct->endARGV = &argv[argCount + 1]; +} diff --git a/libgloss/libsysbase/chdir.c b/libgloss/libsysbase/chdir.c new file mode 100644 @@ -7389,10 +7390,10 @@ index 000000000..bd25d775d + exit ( main(__system_argv->argc,__system_argv->argv) ); +} diff --git a/newlib/configure.host b/newlib/configure.host -index 6c49cb750..f30edc1a3 100644 +index a84c0c80a..0921e00be 100644 --- a/newlib/configure.host +++ b/newlib/configure.host -@@ -832,7 +832,12 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID +@@ -853,7 +853,12 @@ newlib_cflags="${newlib_cflags} -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DEXIT_PROVID default_newlib_io_long_long="yes" newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES" ;; @@ -7470,7 +7471,7 @@ index a3fb5c02c..adb8e1083 100644 + +#endif // _dirent_h_ diff --git a/newlib/libc/include/sys/features.h b/newlib/libc/include/sys/features.h -index f28dd071b..96980676d 100644 +index 218807178..c9efd7d03 100644 --- a/newlib/libc/include/sys/features.h +++ b/newlib/libc/include/sys/features.h @@ -330,6 +330,9 @@ extern "C" { @@ -7598,10 +7599,10 @@ index 000000000..8b6d8da30 +#endif // __iosupp_h__ +//--------------------------------------------------------------------------------- diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h -index 6e55e1c1f..6e0c1c9cf 100644 +index 74b70e9c0..d8c5410ec 100644 --- a/newlib/libc/include/sys/reent.h +++ b/newlib/libc/include/sys/reent.h -@@ -416,6 +416,8 @@ struct _reent +@@ -421,6 +421,8 @@ struct _reent __FILE *__sf; /* file descriptors */ struct _misc_reent *_misc; /* strtok, multibyte states */ char *_signal_buf; /* strsignal */ @@ -7610,7 +7611,7 @@ index 6e55e1c1f..6e0c1c9cf 100644 }; #ifdef _REENT_GLOBAL_STDIO_STREAMS -@@ -686,6 +688,7 @@ struct _reent +@@ -691,6 +693,7 @@ struct _reent # ifndef _REENT_GLOBAL_STDIO_STREAMS __FILE __sf[3]; /* first three file descriptors */ # endif @@ -7619,10 +7620,10 @@ index 6e55e1c1f..6e0c1c9cf 100644 #ifdef _REENT_GLOBAL_STDIO_STREAMS diff --git a/newlib/libc/include/sys/stat.h b/newlib/libc/include/sys/stat.h -index eee98db64..aed9c1746 100644 +index 8769112b0..5526e59ee 100644 --- a/newlib/libc/include/sys/stat.h +++ b/newlib/libc/include/sys/stat.h -@@ -152,8 +152,9 @@ int mkfifo (const char *__path, mode_t __mode ); +@@ -142,8 +142,9 @@ int mkfifo (const char *__path, mode_t __mode ); int stat (const char *__restrict __path, struct stat *__restrict __sbuf ); mode_t umask (mode_t __mask ); diff --git a/select_toolchain.sh b/select_toolchain.sh index acec6c5..13c755d 100755 --- a/select_toolchain.sh +++ b/select_toolchain.sh @@ -43,7 +43,7 @@ case "$VERSION" in GCC_VER=8.4.0 BINUTILS_VER=2.32 MN_BINUTILS_VER=2.17 - NEWLIB_VER=3.1.0 + NEWLIB_VER=3.3.0 GDB_VER=8.2.1 basedir='dkppc' package=devkitPPC