1999-07-13  Jakub Jelinek  <jj@ultra.linux.cz>

	* elf/ldd.bash.in: Add support for multiple dynamic linkers.
	* sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed: On sparc*linux*,
	try both 32bit and 64bit dynamic linker.
	* sysdeps/unix/sysv/linux/configure.in: Apply sparc ldd-rewrite
	script on all sparc targets.

1999-07-13  Jakub Jelinek  <jj@ultra.linux.cz>

	* sysdeps/unix/sysv/linux/shmat.c (shmat): Avoid casting a pointer
	to int.
This commit is contained in:
Ulrich Drepper 1999-07-14 15:21:35 +00:00
parent c33bd0123e
commit 3a8599b21c
6 changed files with 39 additions and 10 deletions

View File

@ -1,3 +1,16 @@
1999-07-13 Jakub Jelinek <jj@ultra.linux.cz>
* elf/ldd.bash.in: Add support for multiple dynamic linkers.
* sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed: On sparc*linux*,
try both 32bit and 64bit dynamic linker.
* sysdeps/unix/sysv/linux/configure.in: Apply sparc ldd-rewrite
script on all sparc targets.
1999-07-13 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/unix/sysv/linux/shmat.c (shmat): Avoid casting a pointer
to int.
1999-07-13 Andreas Schwab <schwab@suse.de>
* elf/dl-runtime.c (fixup, profile_fixup): Call alloca to prevent

View File

@ -28,7 +28,7 @@
TEXTDOMAIN=libc
TEXTDOMAINDIR=@TEXTDOMAINDIR@
RTLD=@RTLD@
RTLDLIST=@RTLD@
warn=
bind_now=
verbose=
@ -125,8 +125,23 @@ for file do
elif test -r "$file"; then
test -x "$file" || echo 'ldd:' $"\
warning: you do not have execution permission for" "\`$file'" >&2
verify_out=`${RTLD} --verify "$file"`
case $? in
RTLD=
for rtld in ${RTLDLIST}; do
if test -x $rtld; then
verify_out=`${rtld} --verify "$file"`
ret=$?
case $ret in
[02]) RTLD=${rtld}; break;;
esac
fi
done
if test -z "${RTLD}"; then
set ${RTLDLIST}
RTLD=$1
verify_out=`${RTLD} --verify "$file"`
ret=$?
fi
case $ret in
0)
eval $add_env '"$file"' || result=1
;;
@ -141,7 +156,7 @@ warning: you do not have execution permission for" "\`$file'" >&2
eval $add_env \${RTLD} '"$file"' || result=1
;;
*)
echo 'ldd:' ${RTLD} $"exited with unknown exit code" "($?)" >&2
echo 'ldd:' ${RTLD} $"exited with unknown exit code" "($ret)" >&2
exit 1
;;
esac

View File

@ -155,7 +155,7 @@ case "$machine" in
i[3456]86* | m68*)
ldd_rewrite_script=../sysdeps/unix/sysv/linux/ldd-rewrite.sed
;;
sparc/sparc32)
sparc*)
ldd_rewrite_script=../sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed
;;
*)

View File

@ -126,7 +126,7 @@ case "$machine" in
i[3456]86* | m68*)
ldd_rewrite_script=../sysdeps/unix/sysv/linux/ldd-rewrite.sed
;;
sparc/sparc32)
sparc*)
ldd_rewrite_script=../sysdeps/unix/sysv/linux/sparc/ldd-rewrite.sed
;;
*)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1995, 1997, 1998 Free Software Foundation, Inc.
/* Copyright (C) 1995, 1997, 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@ -33,11 +33,11 @@ shmat (shmid, shmaddr, shmflg)
const void *shmaddr;
int shmflg;
{
int retval;
long int retval;
unsigned long raddr;
retval = INLINE_SYSCALL (ipc, 5, IPCOP_shmat, shmid, shmflg, (int) &raddr,
(void *) shmaddr);
retval = INLINE_SYSCALL (ipc, 5, IPCOP_shmat, shmid, shmflg,
(long int) &raddr, (void *) shmaddr);
return ((unsigned long int) retval > -(unsigned long int) SHMLBA
? (void *) retval : (void *) raddr);
}

View File

@ -1,2 +1,3 @@
/LD_TRACE_LOADED_OBJECTS=1/a\
add_env="$add_env LD_LIBRARY_VERSION=\\$verify_out"
s_^\(RTLDLIST=\)\(.*lib\)\(\|64\)\(/[^/]*\.so\.[0-9.]*\)[ ]*$_\1"\2\4 \264\4"_