summary refs log tree commit diff
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
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.
-rw-r--r--ChangeLog4
-rwxr-xr-xconfigure11
-rw-r--r--configure.in11
3 files changed, 22 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index cea2df5616..3f9082ff99 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 Tue Jun 13 15:45:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
 
+	* configure.in (libc_cv_asm_set_directive): Make sure that the
+ 	`.set' directive really worked by linking against a reference to
+ 	the alias.
+
 	* sysdeps/stub/init-first.c: Don't include <hurd.h>.
 	[PIC] (soinit): Renamed to (global) _init.
 
diff --git a/configure b/configure
index a543befe61..466006bceb 100755
--- a/configure
+++ b/configure
@@ -1125,9 +1125,16 @@ else
   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>&5 2>&5; then
   libc_cv_asm_set_directive=yes
 else
   libc_cv_asm_set_directive=no
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