summaryrefslogtreecommitdiff
path: root/Build/source/texk/m4/kpse_asm.m4
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/m4/kpse_asm.m4')
-rw-r--r--Build/source/texk/m4/kpse_asm.m442
1 files changed, 42 insertions, 0 deletions
diff --git a/Build/source/texk/m4/kpse_asm.m4 b/Build/source/texk/m4/kpse_asm.m4
new file mode 100644
index 00000000000..833003f00a1
--- /dev/null
+++ b/Build/source/texk/m4/kpse_asm.m4
@@ -0,0 +1,42 @@
+# Private macro for the kpathsea library.
+# by Peter Breitenlohner <peb@mppmu.mpg.de>, April 15, 1996.
+# Copyright (C) 1996 - 2008
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 1
+
+# pb_AC_ASM_UNDERSCORE
+# --------------------
+# Check if gcc asm for i386 needs external symbols with an underscore.
+AC_DEFUN([pb_AC_ASM_UNDERSCORE], [
+AC_CACHE_CHECK([whether gcc asm needs underscore],
+ [pb_cv_asm_underscore],
+ [
+# Older versions of GCC asm for i386 need an underscore prepended to
+# external symbols. Figure out if this is so.
+AC_LINK_IFELSE([
+extern char val ;
+extern void sub () ;
+#if defined (__i386__) && defined (__GNUC__)
+asm(" .align 4\n"
+".globl sub\n"
+"sub:\n"
+" movb \$[]1,val\n"
+" ret\n");
+#else
+void sub () { val = 1; }
+#endif /* assembler */
+char val ;
+int main() { sub (); return 0; }
+], [pb_cv_asm_underscore=no], [pb_cv_asm_underscore=yes])])
+if test "x$pb_cv_asm_underscore" = xyes; then
+ AC_DEFINE([ASM_NEEDS_UNDERSCORE], 1,
+ [web2c: Define if gcc asm needs _ on external symbols.])
+fi
+]
+)
+