This target is not used by anyone, long no maintained, and actually
can't build:
The last real change to gcc/config/i386/crtdll.h was in 2003
(70e5e841b8b9310716018a98acfb8e918c3b4f13), which introduced a typo of
`-libmingwex` that actually should be `-lmingwex`. This typo was never
found and/or fixed for 20+ years, which is a strong indication that no
one is using this target.
contrib/ChangeLog:
PR target/127137
* config-list.mk (LIST): Remove i686-mingw32crt.
contrib/header-tools/ChangeLog:
PR target/127137
* README: Remove i686-mingw32crt from the list of targets.
* reduce-headers: Likewise.
gcc/ChangeLog:
PR target/127137
* config.gcc (i[34567]86-*-mingw* | x86_64-*-mingw*): Remove
handling of i386/crtdll.h.
* config/i386/crtdll.h: Remove file. No longer used.
* doc/install.texi: Remove mingw32crt from the list of targets.
Signed-off-by: Zhongteng Gui <[email protected]>
---
contrib/config-list.mk | 2 +-
contrib/header-tools/README | 2 +-
contrib/header-tools/reduce-headers | 1 -
gcc/config.gcc | 7 -----
gcc/config/i386/crtdll.h | 42 -----------------------------
gcc/doc/install.texi | 2 +-
6 files changed, 3 insertions(+), 53 deletions(-)
delete mode 100644 gcc/config/i386/crtdll.h
diff --git a/contrib/config-list.mk b/contrib/config-list.mk
index 076fc8fb49e..b986eb30432 100644
--- a/contrib/config-list.mk
+++ b/contrib/config-list.mk
@@ -60,7 +60,7 @@ LIST = \
i686-pc-linux-gnu i686-pc-msdosdjgpp i686-lynxos i686-nto-qnx \
i686-rtems i686-solaris2.11 i686-wrs-vxworks \
i686-wrs-vxworksae \
- i686-cygwinOPT-enable-threads=yes i686-mingw32crt
ia64-elfOPT-enable-obsolete \
+ i686-cygwinOPT-enable-threads=yes ia64-elfOPT-enable-obsolete \
ia64-linux ia64-hpuxOPT-enable-obsolete \
ia64-hp-vmsOPT-enable-obsolete iq2000-elf lm32-elf \
lm32-rtems lm32-uclinux \
diff --git a/contrib/header-tools/README b/contrib/header-tools/README
index 906572e5059..502693b9285 100644
--- a/contrib/header-tools/README
+++ b/contrib/header-tools/README
@@ -203,7 +203,7 @@ reduce-headers
these targets. They are also known to the tool. When building targets it
will check those targets before the rest.
This coverage can be achieved by building config-list.mk with :
- LIST="aarch64-linux-gnu arm-netbsdelf c6x-elf epiphany-elf i686-mingw32crt
i686-pc-msdosdjgpp mipsel-elf powerpc-eabisimaltivec rs6000-ibm-aix5.1.0
sh-superh-elf sparc64-elf"
+ LIST="aarch64-linux-gnu arm-netbsdelf c6x-elf epiphany-elf
i686-pc-msdosdjgpp mipsel-elf powerpc-eabisimaltivec rs6000-ibm-aix5.1.0
sh-superh-elf sparc64-elf"
-b specifies the native bootstrapped build root directory
-t specifies a target build root directory that config-list.mk was run from
diff --git a/contrib/header-tools/reduce-headers
b/contrib/header-tools/reduce-headers
index 5826e67a3c8..d4209fbf0f7 100755
--- a/contrib/header-tools/reduce-headers
+++ b/contrib/header-tools/reduce-headers
@@ -25,7 +25,6 @@ target_priority = [
"arm-netbsdelf",
"c6x-elf",
"epiphany-elf",
- "i686-mingw32crt",
"i686-pc-msdosdjgpp",
"mipsel-elf",
"powerpc-eabisimaltivec",
diff --git a/gcc/config.gcc b/gcc/config.gcc
index b5120d9e58e..b59caf33606 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -2363,13 +2363,6 @@ i[34567]86-*-mingw* | x86_64-*-mingw*)
thread_file='posix'
;;
esac
- case ${target} in
- *mingw32crt*)
- tm_file="${tm_file} i386/crtdll.h"
- ;;
- *mingw32msv* | *mingw*)
- ;;
- esac
;;
x86_64-*-fuchsia*)
tmake_file="${tmake_file} i386/t-x86_64-elf"
diff --git a/gcc/config/i386/crtdll.h b/gcc/config/i386/crtdll.h
deleted file mode 100644
index 1fea0b20d70..00000000000
--- a/gcc/config/i386/crtdll.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/* Operating system specific defines to be used when targeting GCC for
- hosting on Windows32, using GNU tools and the Windows32 API Library.
- This variant uses CRTDLL.DLL instead of MSVCRTDLL.DLL.
- Copyright (C) 1998-2026 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GCC 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 General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING3. If not see
-<http://www.gnu.org/licenses/>. */
-
-#undef EXTRA_OS_CPP_BUILTINS
-#define EXTRA_OS_CPP_BUILTINS() \
- do \
- { \
- builtin_define ("__CRTDLL__"); \
- builtin_define ("__MINGW32__"); \
- builtin_define ("_WIN32"); \
- builtin_define_std ("WIN32"); \
- builtin_define_std ("WINNT"); \
- } \
- while (0)
-
-#undef LIBGCC_SPEC
-#define LIBGCC_SPEC \
- "%{mthreads:-lmingwthrd} -lmingw32 -lgcc -lcoldname -libmingwex -lcrtdll"
-
-/* Specify a different entry point when linking a DLL */
-#undef STARTFILE_SPEC
-#define STARTFILE_SPEC "%{shared|mdll:dllcrt1%O%s} \
- %{!shared:%{!mdll:crt1%O%s}} %{pg:gcrt1%O%s}"
-
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 001d16fe67a..bfe5becac38 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -889,7 +889,7 @@ aix@var{version}, amdhsa, aout, cygwin, darwin@var{version},
eabi, eabialtivec, eabisim, eabisimaltivec, elf, elf32,
elfbare, elfoabi, freebsd@var{version}, gnu, hpux, hpux@var{version},
kfreebsd-gnu, kopensolaris-gnu, linux-androideabi, linux-gnu,
-linux-gnu_altivec, linux-musl, linux-uclibc, lynxos, mingw32, mingw32crt,
+linux-gnu_altivec, linux-musl, linux-uclibc, lynxos, mingw32,
mmixware, msdosdjgpp, netbsd, netbsdelf@var{version}, nto-qnx, openbsd,
rtems, solaris@var{version}, symbianelf, tpf, uclinux, uclinux_eabi, vms,
vxworks, vxworksae, vxworksmils
--
2.55.0.windows.5