From 1c3f77eccd6bdb02aed68fab35ae94d4f6680303 Mon Sep 17 00:00:00 2001 From: Solomon Peachy Date: Sun, 30 Jun 2024 15:06:35 -0400 Subject: Revert "Toolchains: Update to GCC 8.5.0" Accidental push instead of going to gerrit. #!$!#! This reverts commit 67dc833e46679c13f4b8d82cbb52d2393fef8fd8. Change-Id: I42a7c9dfd0f1a3dd676b1a5d3eee0a900f2561f7 --- tools/toolchain-patches/glibc-225-make44.patch | 228 +++++++++++++++++++++ tools/toolchain-patches/glibc-227-make44.patch | 216 ------------------- ...tilibs-noexceptions-arm-elf-eabi-gcc-4.9.4.diff | 56 +++++ ...tilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff | 77 ------- 4 files changed, 284 insertions(+), 293 deletions(-) create mode 100644 tools/toolchain-patches/glibc-225-make44.patch delete mode 100644 tools/toolchain-patches/glibc-227-make44.patch create mode 100644 tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-4.9.4.diff delete mode 100644 tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff (limited to 'tools/toolchain-patches') diff --git a/tools/toolchain-patches/glibc-225-make44.patch b/tools/toolchain-patches/glibc-225-make44.patch new file mode 100644 index 0000000000..45d4e9c621 --- /dev/null +++ b/tools/toolchain-patches/glibc-225-make44.patch @@ -0,0 +1,228 @@ +diff -Naur glibc-2.25/libio/stdio.h glibc-2.25-patched/libio/stdio.h +--- glibc-2.25/libio/stdio.h 2017-02-05 10:28:43.000000000 -0500 ++++ glibc-2.25-patched/libio/stdio.h 2023-05-23 15:22:27.482980335 -0400 +@@ -154,18 +154,23 @@ + # define P_tmpdir "/tmp" + #endif + ++#define L_tmpnam 20 ++#define TMP_MAX 238328 + + /* Get the values: +- L_tmpnam How long an array of chars must be to be passed to `tmpnam'. +- TMP_MAX The minimum number of unique filenames generated by tmpnam +- (and tempnam when it uses tmpnam's name space), +- or tempnam (the two are separate). +- L_ctermid How long an array to pass to `ctermid'. +- L_cuserid How long an array to pass to `cuserid'. +- FOPEN_MAX Minimum number of files that can be open at once. + FILENAME_MAX Maximum length of a filename. */ + #include + ++#ifdef __USE_POSIX ++# define L_ctermid 9 ++# if !defined __USE_XOPEN2K || defined __USE_GNU ++# define L_cuserid 9 ++# endif ++#endif ++ ++#undef FOPEN_MAX ++#define FOPEN_MAX 16 ++ + + /* Standard streams. */ + extern struct _IO_FILE *stdin; /* Standard input stream. */ +diff -Naur glibc-2.25/Makerules glibc-2.25-patched/Makerules +--- glibc-2.25/Makerules 2017-02-05 10:28:43.000000000 -0500 ++++ glibc-2.25-patched/Makerules 2023-05-23 15:22:05.594967548 -0400 +@@ -1474,55 +1474,7 @@ + endif + + endif +- +-# These will have been set by sysdeps/posix/Makefile. +-L_tmpnam ?= 1 +-TMP_MAX ?= 0 +-L_ctermid ?= 1 +-L_cuserid ?= 1 + +-stdio_lim = $(common-objpfx)bits/stdio_lim.h +- +-$(stdio_lim:lim.h=%.h) $(stdio_lim:lim.h=%.d): $(stdio_lim:lim.h=%.st); @: +-$(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \ +- $(common-objpfx)config.make +- $(make-target-directory) +- { echo '#include "$(..)posix/bits/posix1_lim.h"'; \ +- echo '#define _LIBC 1'; \ +- echo '#include "$(..)misc/sys/uio.h"'; } | \ +- $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \ +- $(CPPUNDEFS) $(+includes) -xc - -o $(@:st=hT) +- sed $(sed-remove-objpfx) $(sed-remove-dotdot) \ +- $(@:st=dT) > $(@:st=dt) +- mv -f $(@:st=dt) $(@:st=d) +- fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \ +- filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \ +- iov_max=`sed -n 's/^#define UIO_MAXIOV //p' $(@:st=hT)`; \ +- fopen_max=$${fopen_max:-16}; \ +- filename_max=$${filename_max:-1024}; \ +- if [ -z "$$iov_max" ]; then \ +- define_iov_max="# undef IOV_MAX"; \ +- else \ +- define_iov_max="# define IOV_MAX $$iov_max"; \ +- fi; \ +- sed -e "s/@FOPEN_MAX@/$$fopen_max/" \ +- -e "s/@FILENAME_MAX@/$$filename_max/" \ +- -e "s/@L_tmpnam@/$(L_tmpnam)/" \ +- -e "s/@TMP_MAX@/$(TMP_MAX)/" \ +- -e "s/@L_ctermid@/$(L_ctermid)/" \ +- -e "s/@L_cuserid@/$(L_cuserid)/" \ +- -e "s/@define_IOV_MAX@/$$define_iov_max/" \ +- $< > $(@:st=h.new) +- $(move-if-change) $(@:st=h.new) $(@:st=h) +-# Remove these last so that they can be examined if something went wrong. +- rm -f $(@:st=hT) $(@:st=dT) $(@:st=dt) +- touch $@ +-# Get dependencies. +-ifndef no_deps +--include $(stdio_lim:h=d) +-endif +-common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st +- + FORCE: + + .PHONY: echo-headers +diff -Naur glibc-2.25/Rules glibc-2.25-patched/Rules +--- glibc-2.25/Rules 2017-02-05 10:28:43.000000000 -0500 ++++ glibc-2.25-patched/Rules 2023-05-23 15:22:27.482980335 -0400 +@@ -60,9 +60,6 @@ + common-generated := + endif + +-# See below. This must be set before Makerules processes it. +-before-compile += $(common-objpfx)bits/stdio_lim.h +- + include $(..)Makerules + + .PHONY: subdir_lib +diff -Naur glibc-2.25/stdio-common/stdio_lim.h.in glibc-2.25-patched/stdio-common/stdio_lim.h.in +--- glibc-2.25/stdio-common/stdio_lim.h.in 2017-02-05 10:28:43.000000000 -0500 ++++ glibc-2.25-patched/stdio-common/stdio_lim.h.in 1969-12-31 19:00:00.000000000 -0500 +@@ -1,42 +0,0 @@ +-/* Copyright (C) 1994-2017 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 +- . */ +- +-#if !defined _STDIO_H && !defined __need_FOPEN_MAX && !defined __need_IOV_MAX +-# error "Never include directly; use instead." +-#endif +- +-#ifdef _STDIO_H +-# define L_tmpnam @L_tmpnam@ +-# define TMP_MAX @TMP_MAX@ +-# define FILENAME_MAX @FILENAME_MAX@ +- +-# ifdef __USE_POSIX +-# define L_ctermid @L_ctermid@ +-# if !defined __USE_XOPEN2K || defined __USE_GNU +-# define L_cuserid @L_cuserid@ +-# endif +-# endif +-#endif +- +-#if defined __need_FOPEN_MAX || defined _STDIO_H +-# undef FOPEN_MAX +-# define FOPEN_MAX @FOPEN_MAX@ +-#endif +- +-#if defined __need_IOV_MAX && !defined IOV_MAX +-@define_IOV_MAX@ +-#endif +diff -Naur glibc-2.25/sysdeps/mach/hurd/bits/stdio_lim.h glibc-2.25-patched/sysdeps/mach/hurd/bits/stdio_lim.h +--- glibc-2.25/sysdeps/mach/hurd/bits/stdio_lim.h 1969-12-31 19:00:00.000000000 -0500 ++++ glibc-2.25-patched/sysdeps/mach/hurd/bits/stdio_lim.h 2023-05-23 15:22:27.483980336 -0400 +@@ -0,0 +1,28 @@ ++/* System specific stdio.h definitions. Hurd version. ++ Copyright (C) 2023 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 _BITS_STDIO_LIM_H ++#define _BITS_STDIO_LIM_H 1 ++ ++#ifndef _STDIO_H ++# error "Never include directly; use instead." ++#endif ++ ++#define FILENAME_MAX 1024 ++ ++#endif /* bits/stdio_lim.h */ +diff -Naur glibc-2.25/sysdeps/posix/Makefile glibc-2.25-patched/sysdeps/posix/Makefile +--- glibc-2.25/sysdeps/posix/Makefile 2017-02-05 10:28:43.000000000 -0500 ++++ glibc-2.25-patched/sysdeps/posix/Makefile 2023-05-23 15:22:27.483980336 -0400 +@@ -1,8 +1,3 @@ +-# These affect the generated bits/stdio_lim.h file. +-L_tmpnam = 20 +-TMP_MAX = 238328 +-L_ctermid = 9 +-L_cuserid = 9 + + ifeq ($(subdir)|$(have-thread-library),rt|no) + # With NPTL, this lives in libpthread so it can be used for sem_open too. +diff -Naur glibc-2.25/sysdeps/unix/sysv/linux/bits/stdio_lim.h glibc-2.25-patched/sysdeps/unix/sysv/linux/bits/stdio_lim.h +--- glibc-2.25/sysdeps/unix/sysv/linux/bits/stdio_lim.h 1969-12-31 19:00:00.000000000 -0500 ++++ glibc-2.25-patched/sysdeps/unix/sysv/linux/bits/stdio_lim.h 2023-05-23 15:22:27.483980336 -0400 +@@ -0,0 +1,28 @@ ++/* System specific stdio.h definitions. Linux version. ++ Copyright (C) 2023 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 _BITS_STDIO_LIM_H ++#define _BITS_STDIO_LIM_H 1 ++ ++//#ifndef _STDIO_H ++//# error "Never include directly; use instead." ++//#endif ++ ++#define FILENAME_MAX 4096 ++ ++#endif /* bits/stdio_lim.h */ diff --git a/tools/toolchain-patches/glibc-227-make44.patch b/tools/toolchain-patches/glibc-227-make44.patch deleted file mode 100644 index 3de5cb0fdd..0000000000 --- a/tools/toolchain-patches/glibc-227-make44.patch +++ /dev/null @@ -1,216 +0,0 @@ -diff -Naur glibc-2.27/libio/stdio.h glibc-2.27-patched/libio/stdio.h ---- glibc-2.27/libio/stdio.h 2018-02-01 11:17:18.000000000 -0500 -+++ glibc-2.27-patched/libio/stdio.h 2023-05-23 14:10:06.618633203 -0400 -@@ -118,18 +118,23 @@ - # define P_tmpdir "/tmp" - #endif - -+#define L_tmpnam 20 -+#define TMP_MAX 238328 - - /* Get the values: -- L_tmpnam How long an array of chars must be to be passed to `tmpnam'. -- TMP_MAX The minimum number of unique filenames generated by tmpnam -- (and tempnam when it uses tmpnam's name space), -- or tempnam (the two are separate). -- L_ctermid How long an array to pass to `ctermid'. -- L_cuserid How long an array to pass to `cuserid'. -- FOPEN_MAX Minimum number of files that can be open at once. - FILENAME_MAX Maximum length of a filename. */ - #include - -+#ifdef __USE_POSIX -+# define L_ctermid 9 -+# if !defined __USE_XOPEN2K || defined __USE_GNU -+# define L_cuserid 9 -+# endif -+#endif -+ -+#undef FOPEN_MAX -+#define FOPEN_MAX 16 -+ - - /* Standard streams. */ - extern struct _IO_FILE *stdin; /* Standard input stream. */ -diff -Naur glibc-2.27/Makerules glibc-2.27-patched/Makerules ---- glibc-2.27/Makerules 2018-02-01 11:17:18.000000000 -0500 -+++ glibc-2.27-patched/Makerules 2023-05-23 14:10:06.617633203 -0400 -@@ -1522,46 +1522,6 @@ - - endif - --# These will have been set by sysdeps/posix/Makefile. --L_tmpnam ?= 1 --TMP_MAX ?= 0 --L_ctermid ?= 1 --L_cuserid ?= 1 -- --stdio_lim = $(common-objpfx)bits/stdio_lim.h -- --$(stdio_lim:lim.h=%.h) $(stdio_lim:lim.h=%.d): $(stdio_lim:lim.h=%.st); @: --$(stdio_lim:h=st): $(..)stdio-common/stdio_lim.h.in $(..)Rules \ -- $(common-objpfx)config.make -- $(make-target-directory) -- { echo '#include "$(..)posix/bits/posix1_lim.h"'; \ -- } | \ -- $(CC) -E -dM -MD -MP -MF $(@:st=dT) -MT '$(@:st=h) $(@:st=d)' \ -- $(CPPUNDEFS) $(+includes) -xc - -o $(@:st=hT) -- sed $(sed-remove-objpfx) $(sed-remove-dotdot) \ -- $(@:st=dT) > $(@:st=dt) -- mv -f $(@:st=dt) $(@:st=d) -- fopen_max=`sed -n 's/^#define OPEN_MAX //1p' $(@:st=hT)`; \ -- filename_max=`sed -n 's/^#define PATH_MAX //1p' $(@:st=hT)`; \ -- fopen_max=$${fopen_max:-16}; \ -- filename_max=$${filename_max:-1024}; \ -- sed -e "s/@FOPEN_MAX@/$$fopen_max/" \ -- -e "s/@FILENAME_MAX@/$$filename_max/" \ -- -e "s/@L_tmpnam@/$(L_tmpnam)/" \ -- -e "s/@TMP_MAX@/$(TMP_MAX)/" \ -- -e "s/@L_ctermid@/$(L_ctermid)/" \ -- -e "s/@L_cuserid@/$(L_cuserid)/" \ -- $< > $(@:st=h.new) -- $(move-if-change) $(@:st=h.new) $(@:st=h) --# Remove these last so that they can be examined if something went wrong. -- rm -f $(@:st=hT) $(@:st=dT) $(@:st=dt) -- touch $@ --# Get dependencies. --ifndef no_deps ---include $(stdio_lim:h=d) --endif --common-generated += bits/stdio_lim.h bits/stdio_lim.d bits/stdio_lim.st -- - FORCE: - - .PHONY: echo-headers -diff -Naur glibc-2.27/Rules glibc-2.27-patched/Rules ---- glibc-2.27/Rules 2018-02-01 11:17:18.000000000 -0500 -+++ glibc-2.27-patched/Rules 2023-05-23 14:10:06.617633203 -0400 -@@ -60,9 +60,6 @@ - common-generated := - endif - --# See below. This must be set before Makerules processes it. --before-compile += $(common-objpfx)bits/stdio_lim.h -- - include $(..)Makerules - - .PHONY: subdir_lib -diff -Naur glibc-2.27/stdio-common/stdio_lim.h.in glibc-2.27-patched/stdio-common/stdio_lim.h.in ---- glibc-2.27/stdio-common/stdio_lim.h.in 2018-02-01 11:17:18.000000000 -0500 -+++ glibc-2.27-patched/stdio-common/stdio_lim.h.in 1969-12-31 19:00:00.000000000 -0500 -@@ -1,39 +0,0 @@ --/* Copyright (C) 1994-2018 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 _BITS_STDIO_LIM_H --#define _BITS_STDIO_LIM_H 1 -- --#ifndef _STDIO_H --# error "Never include directly; use instead." --#endif -- --#define L_tmpnam @L_tmpnam@ --#define TMP_MAX @TMP_MAX@ --#define FILENAME_MAX @FILENAME_MAX@ -- --#ifdef __USE_POSIX --# define L_ctermid @L_ctermid@ --# if !defined __USE_XOPEN2K || defined __USE_GNU --# define L_cuserid @L_cuserid@ --# endif --#endif -- --#undef FOPEN_MAX --#define FOPEN_MAX @FOPEN_MAX@ -- --#endif /* bits/stdio_lim.h */ -diff -Naur glibc-2.27/sysdeps/mach/hurd/bits/stdio_lim.h glibc-2.27-patched/sysdeps/mach/hurd/bits/stdio_lim.h ---- glibc-2.27/sysdeps/mach/hurd/bits/stdio_lim.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.27-patched/sysdeps/mach/hurd/bits/stdio_lim.h 2023-05-23 14:10:06.618633203 -0400 -@@ -0,0 +1,28 @@ -+/* System specific stdio.h definitions. Hurd version. -+ Copyright (C) 2023 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 _BITS_STDIO_LIM_H -+#define _BITS_STDIO_LIM_H 1 -+ -+#ifndef _STDIO_H -+# error "Never include directly; use instead." -+#endif -+ -+#define FILENAME_MAX 1024 -+ -+#endif /* bits/stdio_lim.h */ -diff -Naur glibc-2.27/sysdeps/posix/Makefile glibc-2.27-patched/sysdeps/posix/Makefile ---- glibc-2.27/sysdeps/posix/Makefile 2018-02-01 11:17:18.000000000 -0500 -+++ glibc-2.27-patched/sysdeps/posix/Makefile 2023-05-23 14:10:06.618633203 -0400 -@@ -1,8 +1,3 @@ --# These affect the generated bits/stdio_lim.h file. --L_tmpnam = 20 --TMP_MAX = 238328 --L_ctermid = 9 --L_cuserid = 9 - - ifeq ($(subdir)|$(have-thread-library),rt|no) - # With NPTL, this lives in libpthread so it can be used for sem_open too. -diff -Naur glibc-2.27/sysdeps/unix/sysv/linux/bits/stdio_lim.h glibc-2.27-patched/sysdeps/unix/sysv/linux/bits/stdio_lim.h ---- glibc-2.27/sysdeps/unix/sysv/linux/bits/stdio_lim.h 1969-12-31 19:00:00.000000000 -0500 -+++ glibc-2.27-patched/sysdeps/unix/sysv/linux/bits/stdio_lim.h 2023-05-23 14:10:06.618633203 -0400 -@@ -0,0 +1,28 @@ -+/* System specific stdio.h definitions. Linux version. -+ Copyright (C) 2023 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 _BITS_STDIO_LIM_H -+#define _BITS_STDIO_LIM_H 1 -+ -+#ifndef _STDIO_H -+# error "Never include directly; use instead." -+#endif -+ -+#define FILENAME_MAX 4096 -+ -+#endif /* bits/stdio_lim.h */ diff --git a/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-4.9.4.diff b/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-4.9.4.diff new file mode 100644 index 0000000000..cd98d3751c --- /dev/null +++ b/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-4.9.4.diff @@ -0,0 +1,56 @@ +diff -Naur gcc-4.9.4/gcc/config/arm/t-arm-elf gcc-4.9.4-fixed/gcc/config/arm/t-arm-elf +--- gcc-4.9.4/gcc/config/arm/t-arm-elf 2014-01-02 17:23:26.000000000 -0500 ++++ gcc-4.9.4-fixed/gcc/config/arm/t-arm-elf 2020-07-01 22:11:01.198403110 -0400 +@@ -44,6 +44,11 @@ + #MULTILIB_EXCEPTIONS += *mcpu=fa526/*mfloat-abi=hard* + #MULTILIB_EXCEPTIONS += *mcpu=fa626/*mfloat-abi=hard* + ++# We build a lib for each specific CPU Rockbox targets. If anyone knows a better ++# way to do this, please let us know. ++MULTILIB_OPTIONS += mcpu=arm7tdmi/mcpu=arm9tdmi/mcpu=arm9e/mcpu=arm926ej-s/mcpu=arm1136jf-s ++MULTILIB_DIRNAMES += arm7tdmi arm9tdmi arm9e arm926ej-s arm1136jf-s ++ + # MULTILIB_OPTIONS += mcpu=ep9312 + # MULTILIB_DIRNAMES += ep9312 + # MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312* +@@ -56,8 +61,8 @@ + # MULTILIB_DIRNAMES += fpu soft + # MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard* + # +-# MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork +-# MULTILIB_DIRNAMES += normal interwork ++MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork ++MULTILIB_DIRNAMES += normal interwork + # + # MULTILIB_OPTIONS += fno-leading-underscore/fleading-underscore + # MULTILIB_DIRNAMES += elf under +diff -Naur gcc-4.9.4/libgcc/config/arm/t-bpabi gcc-4.9.4-fixed/libgcc/config/arm/t-bpabi +--- gcc-4.9.4/libgcc/config/arm/t-bpabi 2012-08-17 11:06:06.000000000 -0400 ++++ gcc-4.9.4-fixed/libgcc/config/arm/t-bpabi 2020-07-01 22:13:39.103762818 -0400 +@@ -17,4 +17,4 @@ + # On ARM, specifying -fnon-call-exceptions will needlessly pull in + # the unwinder in simple programs which use 64-bit division. Omitting + # the option is safe. +-LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions ++LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions -fno-non-call-exceptions +diff -Naur gcc-4.9.4/libgcc/Makefile.in gcc-4.9.4-fixed/libgcc/Makefile.in +--- gcc-4.9.4/libgcc/Makefile.in 2014-01-08 11:37:08.000000000 -0500 ++++ gcc-4.9.4-fixed/libgcc/Makefile.in 2020-07-01 22:11:01.199403087 -0400 +@@ -495,7 +495,7 @@ + ifeq ($(LIB2_DIVMOD_EXCEPTION_FLAGS),) + # Provide default flags for compiling divmod functions, if they haven't been + # set already by a target-specific Makefile fragment. +-LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions -fnon-call-exceptions ++LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions -fno-non-call-exceptions + endif + + # Build LIB2_DIVMOD_FUNCS. +@@ -816,7 +816,7 @@ + # libgcc_eh.a, only LIB2ADDEH matters. If we do, only LIB2ADDEHSTATIC and + # LIB2ADDEHSHARED matter. (Usually all three are identical.) + +-c_flags := -fexceptions ++c_flags := -fno-exceptions + + ifeq ($(enable_shared),yes) + diff --git a/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff b/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff deleted file mode 100644 index b320b969a5..0000000000 --- a/tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-8.5.0.diff +++ /dev/null @@ -1,77 +0,0 @@ -diff -Naur gcc-8.5.0/gcc/config/arm/arm_cmse.h gcc-8.5.0-patched/gcc/config/arm/ar -m_cmse.h ---- gcc-8.5.0/gcc/config/arm/arm_cmse.h 2021-05-14 04:42:08.000000000 -0400 -+++ gcc-8.5.0-patched/gcc/config/arm/arm_cmse.h 2023-04-17 14:32:56.547477547 -0400 -@@ -35,7 +35,7 @@ - #if __ARM_FEATURE_CMSE & 1 - - #include --#include -+//#include - - #ifdef __ARM_BIG_ENDIAN - -diff -aur gcc-8.5.0/gcc/config/arm/t-arm-elf gcc-8.5.0-patched/gcc/config/arm/t-arm-elf ---- gcc-8.5.0/gcc/config/arm/t-arm-elf 2021-05-14 04:42:08.000000000 -0400 -+++ gcc-8.5.0-patched/gcc/config/arm/t-arm-elf 2022-11-26 23:16:30.714433566 -0500 -@@ -80,6 +80,10 @@ - MULTILIB_REQUIRED += marm/mfpu=auto/march=armv5te+fp/mfloat-abi=hard - MULTILIB_REQUIRED += mthumb/mfpu=auto/march=armv7+fp/mfloat-abi=hard - -+# And we want to be able to disable interworking -+MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork -+MULTILIB_DIRNAMES += normal interwork -+ - # PART 3 - Match rules - - # Map all supported FPUs onto mfpu=auto -diff -aur gcc-8.5.0/libgcc/config/arm/t-bpabi gcc-8.5.0-patched/libgcc/config/arm/t-bpabi ---- gcc-8.5.0/libgcc/config/arm/t-bpabi 2021-05-14 04:42:10.000000000 -0400 -+++ gcc-8.5.0-patched/libgcc/config/arm/t-bpabi 2022-11-26 23:14:40.938038440 -0500 -@@ -17,4 +17,4 @@ - # On ARM, specifying -fnon-call-exceptions will needlessly pull in - # the unwinder in simple programs which use 64-bit division. Omitting - # the option is safe. --LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions -+LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions -fno-non-call-exceptions -diff -aur gcc-8.5.0/libgcc/config/arm/cmse.c gcc-8.5.0-patch/libgcc/config/arm/cmse.c ---- gcc-8.5.0/libgcc/config/arm/cmse.c 2021-05-14 04:42:10.000000000 -0400 -+++ gcc-8.5.0-patched/libgcc/config/arm/cmse.c 2023-04-17 15:12:11.865456701 -0400 -@@ -36,7 +36,7 @@ - char *pb = (char *) p, *pe; - - /* Check if the range wraps around. */ -- if (UINTPTR_MAX - (uintptr_t) p < size) -+ if (__UINTPTR_MAX__ - (__UINTPTR_TYPE__) p < size) - return NULL; - - /* Check if an unknown flag is present. */ -@@ -51,7 +51,7 @@ - - /* Execute the right variant of the TT instructions. */ - pe = pb + size - 1; -- const int singleCheck = (((uintptr_t) pb ^ (uintptr_t) pe) < 32); -+ const int singleCheck = (((__UINTPTR_TYPE__) pb ^ (__UINTPTR_TYPE__) pe) < 32); - switch (flags & known_secure_level) - { - case 0: -diff -aur gcc-8.5.0/libgcc/Makefile.in gcc-8.5.0-patched/libgcc/Makefile.in ---- gcc-8.5.0/libgcc/Makefile.in 2021-05-14 04:42:10.000000000 -0400 -+++ gcc-8.5.0-patched/libgcc/Makefile.in 2022-11-26 23:13:56.781304250 -0500 -@@ -526,7 +526,7 @@ - ifeq ($(LIB2_DIVMOD_EXCEPTION_FLAGS),) - # Provide default flags for compiling divmod functions, if they haven't been - # set already by a target-specific Makefile fragment. --LIB2_DIVMOD_EXCEPTION_FLAGS := -fexceptions -fnon-call-exceptions -+LIB2_DIVMOD_EXCEPTION_FLAGS := -fno-exceptions -fno-non-call-exceptions - endif - - # Build LIB2_DIVMOD_FUNCS. -@@ -847,7 +847,7 @@ - # libgcc_eh.a, only LIB2ADDEH matters. If we do, only LIB2ADDEHSTATIC and - # LIB2ADDEHSHARED matter. (Usually all three are identical.) - --c_flags := -fexceptions -+c_flags := -fno-exceptions - - ifeq ($(enable_shared),yes) -- cgit v1.2.3