vcpkg/ports/glib/fix-arm-builds.patch

47 lines
1.5 KiB
Diff
Raw Normal View History

diff --git a/gio/tests/plugin_resources.c b/gio/tests/plugin_resources.c
index 4c1b0214b..bbfc7ae07 100644
--- a/gio/tests/plugin_resources.c
+++ b/gio/tests/plugin_resources.c
@@ -80,13 +80,13 @@ GResource *_g_plugin_get_resource (void)
*/
/* We need to account for differences between the mangling of symbols
- * for Win32 (x86) and x64 programs, as symbols on Win32 are prefixed
- * with an underscore but symbols on x64 are not.
+ * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed
+ * with an underscore but symbols on x64/ARM/ARM64 are not.
*/
-#ifdef _WIN64
-#define G_MSVC_SYMBOL_PREFIX ""
-#else
+#ifdef _M_IX86
#define G_MSVC_SYMBOL_PREFIX "_"
+#else
+#define G_MSVC_SYMBOL_PREFIX ""
#endif
#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX)
diff --git a/glib/gconstructor.h b/glib/gconstructor.h
index dccb0314c..fa1139302 100644
--- a/glib/gconstructor.h
+++ b/glib/gconstructor.h
@@ -40,13 +40,13 @@
*/
/* We need to account for differences between the mangling of symbols
- * for Win32 (x86) and x64 programs, as symbols on Win32 are prefixed
- * with an underscore but symbols on x64 are not.
+ * for x86 and x64/ARM/ARM64 programs, as symbols on x86 are prefixed
+ * with an underscore but symbols on x64/ARM/ARM64 are not.
*/
-#ifdef _WIN64
-#define G_MSVC_SYMBOL_PREFIX ""
-#else
+#ifdef _M_IX86
#define G_MSVC_SYMBOL_PREFIX "_"
+#else
+#define G_MSVC_SYMBOL_PREFIX ""
#endif
#define G_DEFINE_CONSTRUCTOR(_func) G_MSVC_CTOR (_func, G_MSVC_SYMBOL_PREFIX)