aboutsummaryrefslogtreecommitdiff
path: root/libbutl
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2023-10-11 08:14:31 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2023-10-11 08:17:02 +0200
commit90b6ea19de89b30f592d6d8dfbfd616686627681 (patch)
treee72c9527bc75dcd4b6c2734c78ae1842a79fec9b /libbutl
parentc040341f88c8e02a3ec5db1a3bd0a0542876f2bb (diff)
Canonicalize Clang's *-w64-windows-gnu to *-w64-mingw32 (GH issue #288)
Note that config.guess doesn't recognize *-w64-windows-gnu as a valid target triplet: Invalid configuration 'x86_64-w64-windows-gnu': Kernel 'windows' not known to work with OS 'gnu'.
Diffstat (limited to 'libbutl')
-rw-r--r--libbutl/target-triplet.cxx2
-rw-r--r--libbutl/target-triplet.hxx1
2 files changed, 3 insertions, 0 deletions
diff --git a/libbutl/target-triplet.cxx b/libbutl/target-triplet.cxx
index 4c02efc..e28f119 100644
--- a/libbutl/target-triplet.cxx
+++ b/libbutl/target-triplet.cxx
@@ -92,6 +92,8 @@ namespace butl
//
if (system == "linux")
system = "linux-gnu"; // Per config.sub.
+ else if (system == "windows-gnu" && vendor == "w64") // Clang's innovation.
+ system = "mingw32";
// Extract VERSION for some recognized systems.
//
diff --git a/libbutl/target-triplet.hxx b/libbutl/target-triplet.hxx
index e03bdaf..bfb2c00 100644
--- a/libbutl/target-triplet.hxx
+++ b/libbutl/target-triplet.hxx
@@ -75,6 +75,7 @@ namespace butl
// arm-softfloat-linux-gnu arm softfloat linux-gnu
// i686-pc-mingw32 i686 mingw32
// i686-w64-mingw32 i686 w64 mingw32
+ // i686-w64-windows-gnu i686 w64 mingw32
// i686-lfs-linux-gnu i686 lfs linux-gnu
// x86_64-unknown-linux-gnu x86_64 linux-gnu
// x86_64-redhat-linux x86_64 redhat linux-gnu