summary refs log tree commit diff
path: root/configure.in
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1995-06-13 22:16:50 +0000
committerRoland McGrath <roland@gnu.org>1995-06-13 22:16:50 +0000
commitdf2a0c93b32dcc2859f57589e62beaadffdad9e7 (patch)
treee791aaad556cf05039505ed6e94e545b0e5bcf5b /configure.in
parent882087b96b47ce5b4c637ff5539f40b146e2b926 (diff)
downloadglibc-df2a0c93b32dcc2859f57589e62beaadffdad9e7.tar.gz
glibc-df2a0c93b32dcc2859f57589e62beaadffdad9e7.tar.xz
glibc-df2a0c93b32dcc2859f57589e62beaadffdad9e7.zip
* configure.in (libc_cv_asm_set_directive): Make sure that the
 	`.set' directive really worked by linking against a reference to
 	the alias.
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in11
1 files changed, 9 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index ce1dee1bd3..7e1697d1b1 100644
--- a/configure.in
+++ b/configure.in
@@ -342,9 +342,16 @@ AC_CACHE_VAL(libc_cv_asm_set_directive, [dnl
 cat > conftest.s <<\EOF
 .text
 foo: .long 0
-.set bar,foo
+.set glibc_conftest_frobozz,foo
 EOF
-if ${CC-cc} $CFLAGS -c conftest.s 2>/dev/null; then
+# The alpha-dec-osf1 assembler gives only a warning for `.set'
+# (but it doesn't work), so we must do a linking check to be sure.
+cat > conftest1.c <<\EOF
+extern int glibc_conftest_frobozz;
+main () { printf ("%d\n", glibc_conftest_frobozz); }
+EOF
+if ${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS \
+	    conftest.s conftest1.c 1>&AC_FD_CC 2>&AC_FD_CC; then
   libc_cv_asm_set_directive=yes
 else
   libc_cv_asm_set_directive=no