Add MinGW detection
diff --git a/src/Charmonizer/Core/Compiler.c b/src/Charmonizer/Core/Compiler.c
index 83177f2..f864a5d 100644
--- a/src/Charmonizer/Core/Compiler.c
+++ b/src/Charmonizer/Core/Compiler.c
@@ -69,12 +69,13 @@
int intval___clang__;
int intval___SUNPRO_C;
int is_cygwin;
+ int is_mingw;
chaz_CFlags *extra_cflags;
chaz_CFlags *temp_cflags;
} chaz_CC = {
NULL, NULL, NULL,
"", "", "", "", "", "",
- 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
NULL, NULL
};
@@ -183,6 +184,9 @@
if (chaz_CC_has_macro("__CYGWIN__")) {
chaz_CC.is_cygwin = 1;
}
+ if (chaz_CC_has_macro("__MINGW32__")) {
+ chaz_CC.is_mingw = 1;
+ }
}
else {
chaz_Util_die("Failed to detect binary format");
@@ -556,6 +560,11 @@
return chaz_CC.is_cygwin;
}
+int
+chaz_CC_is_mingw(void) {
+ return chaz_CC.is_mingw;
+}
+
const char*
chaz_CC_link_command() {
if (chaz_CC.intval__MSC_VER) {
diff --git a/src/Charmonizer/Core/Compiler.h b/src/Charmonizer/Core/Compiler.h
index 8190123..02e2925 100644
--- a/src/Charmonizer/Core/Compiler.h
+++ b/src/Charmonizer/Core/Compiler.h
@@ -151,6 +151,9 @@
int
chaz_CC_is_cygwin(void);
+int
+chaz_CC_is_mingw(void);
+
const char*
chaz_CC_link_command(void);