Always use configure to detect whether global symbols need underscores
authorJosh Triplett <josh@joshtriplett.org>
Tue, 25 Mar 2014 04:44:13 +0000 (21:44 -0700)
committerJosh Triplett <josh@joshtriplett.org>
Tue, 25 Mar 2014 04:45:47 +0000 (21:45 -0700)
64-bit Windows already used this check; make it universal, and use it in
place of an ifdef on X86_WIN32, to handle non-Windows platforms that use
the underscore, such as Darwin.

configure.ac
src/x86/win32.S

index 3169c43..ffcdd49 100644 (file)
@@ -439,11 +439,9 @@ AC_ARG_ENABLE(pax_emutramp,
       [Define this if you want to enable pax emulated trampolines])
   fi)
 
-if test x$TARGET = xX86_WIN64; then
-    LT_SYS_SYMBOL_USCORE
-    if test "x$sys_symbol_underscore" = xyes; then
-        AC_DEFINE(SYMBOL_UNDERSCORE, 1, [Define if symbols are underscored.])
-    fi
+LT_SYS_SYMBOL_USCORE
+if test "x$sys_symbol_underscore" = xyes; then
+    AC_DEFINE(SYMBOL_UNDERSCORE, 1, [Define if symbols are underscored.])
 fi
 
 FFI_EXEC_TRAMPOLINE_TABLE=0
index 826a5a0..d71c8b8 100644 (file)
@@ -473,7 +473,7 @@ END
 
 #else
 
-#if defined(X86_WIN32)
+#if defined(SYMBOL_UNDERSCORE)
 #define USCORE_SYMBOL(x) _##x
 #else
 #define USCORE_SYMBOL(x) x