[PATCH] winegcc: allow CROSSCC to have a suffix

Damjan Jovanovic damjan.jov at gmail.com
Wed Dec 16 23:43:00 CST 2020


This allows eg. CROSSCC=i686-w64-mingw32-gcc10.
Does not regenerate ./configure.

Signed-off-by: Damjan Jovanovic <damjan.jov at gmail.com>
---
 configure.ac              | 2 +-
 tools/winegcc/Makefile.in | 3 ++-
 tools/winegcc/winegcc.c   | 5 ++++-
 3 files changed, 7 insertions(+), 3 deletions(-)
-------------- next part --------------
diff --git a/configure.ac b/configure.ac
index dafa8489b71..eda9a20b748 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1016,7 +1016,7 @@ then
             while test $# -ge 1
             do
                 case "$1" in
-                    *-gcc) CROSSTARGET=`expr "$1" : '\(.*\)-gcc'` ;;
+                    *-gcc*) CROSSTARGET=`expr "$1" : '\(.*\)-gcc'` ;;
                     *-clang) CROSSTARGET=`expr "$1" : '\(.*\)-clang'` ;;
                 esac
                 shift
diff --git a/tools/winegcc/Makefile.in b/tools/winegcc/Makefile.in
index 8328d6f34a2..92c015c5948 100644
--- a/tools/winegcc/Makefile.in
+++ b/tools/winegcc/Makefile.in
@@ -17,6 +17,7 @@ winegcc_EXTRADEFS = \
 	-DCPP="\"$(CPPBIN)\"" \
 	-DCXX="\"$(CXX)\"" \
 	-DLD="\"$(LD)\"" \
-	-DPRELINK="\"$(PRELINK)\""
+	-DPRELINK="\"$(PRELINK)\"" \
+	-DCROSSCC="\"$(CROSSCC)\""
 
 INSTALL_DEV = $(PROGRAMS) $(winegcc_SYMLINKS)
diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c
index 0a45cb7a0d5..4be98f68bcf 100644
--- a/tools/winegcc/winegcc.c
+++ b/tools/winegcc/winegcc.c
@@ -362,7 +362,10 @@ static strarray* build_tool_name( struct options *opts, enum tool tool )
     }
     else if (opts->target)
     {
-        str = strmake("%s-%s", opts->target, base);
+        if (tool == TOOL_CC && opts->target_platform == PLATFORM_MINGW)
+            str = xstrdup(CROSSCC);
+        else
+            str = strmake("%s-%s", opts->target, base);
     }
     else if (opts->version)
     {


More information about the wine-devel mailing list