public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r13-6890] Extend UTF-8 support to the 32-bit mingw host.
@ 2023-03-28 8:04 Jonathan Yong
0 siblings, 0 replies; only message in thread
From: Jonathan Yong @ 2023-03-28 8:04 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:304c7d44a2212e6fd618587331cea2c266dc10bf
commit r13-6890-g304c7d44a2212e6fd618587331cea2c266dc10bf
Author: Costas Argyris <costas.argyris@gmail.com>
Date: Sun Mar 26 11:32:13 2023 +0100
Extend UTF-8 support to the 32-bit mingw host.
Prevent any name mangling in HOST_EXTRA_OBJS_SYMBOL
such that the linker always finds it by that name.
Also add the .manifest file as an explicit
dependency in the make rule such that the
object gets re-built if it changes.
gcc/ChangeLog:
* config.host: Pull in i386/x-mingw32-utf8 Makefile
fragment and reference utf8rc-mingw32.o explicitly
for mingw hosts.
* config/i386/sym-mingw32.cc: prevent name mangling of
stub symbol.
* config/i386/x-mingw32-utf8: Make utf8rc-mingw32.o
depend on manifest file explicitly.
Signed-off-by: Jonathan Yong <10walls@gmail.com>
Diff:
---
gcc/config.host | 5 +++--
gcc/config/i386/sym-mingw32.cc | 4 +++-
gcc/config/i386/x-mingw32-utf8 | 3 ++-
3 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/gcc/config.host b/gcc/config.host
index 4abb32ad73d..5df85752ed4 100644
--- a/gcc/config.host
+++ b/gcc/config.host
@@ -232,10 +232,11 @@ case ${host} in
;;
i[34567]86-*-mingw32*)
host_xm_file=i386/xm-mingw32.h
- host_xmake_file="${host_xmake_file} i386/x-mingw32"
+ host_xmake_file="${host_xmake_file} i386/x-mingw32 i386/x-mingw32-utf8"
host_exeext=.exe
out_host_hook_obj=host-mingw32.o
- host_extra_gcc_objs="${host_extra_gcc_objs} driver-mingw32.o"
+ host_extra_objs="${host_extra_objs} utf8-mingw32.o"
+ host_extra_gcc_objs="${host_extra_gcc_objs} driver-mingw32.o utf8rc-mingw32.o"
host_lto_plugin_soname=liblto_plugin.dll
;;
x86_64-*-mingw*)
diff --git a/gcc/config/i386/sym-mingw32.cc b/gcc/config/i386/sym-mingw32.cc
index f369698abc4..2f8dee6c1ec 100644
--- a/gcc/config/i386/sym-mingw32.cc
+++ b/gcc/config/i386/sym-mingw32.cc
@@ -1 +1,3 @@
-char HOST_EXTRA_OBJS_SYMBOL;
+/* Prevent any name mangling to make sure that the linker
+ will always find the symbol. */
+char HOST_EXTRA_OBJS_SYMBOL asm ("HOST_EXTRA_OBJS_SYMBOL");
diff --git a/gcc/config/i386/x-mingw32-utf8 b/gcc/config/i386/x-mingw32-utf8
index 9de963d7965..cf5c3db3d8b 100644
--- a/gcc/config/i386/x-mingw32-utf8
+++ b/gcc/config/i386/x-mingw32-utf8
@@ -27,7 +27,8 @@
# The resulting .o file gets added to host_extra_gcc_objs in
# config.host for x86_64-*-mingw* host and gets linked into
# the driver as a .o file, so it's lack of symbols is OK.
-utf8rc-mingw32.o : $(srcdir)/config/i386/utf8-mingw32.rc
+utf8rc-mingw32.o : $(srcdir)/config/i386/utf8-mingw32.rc \
+ $(srcdir)/config/i386/winnt-utf8.manifest
$(WINDRES) $< $@
# Create an object file that just exports the global symbol
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-03-28 8:04 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-28 8:04 [gcc r13-6890] Extend UTF-8 support to the 32-bit mingw host Jonathan Yong
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).