From ef030f7f43b87b4bb553fd33e526f5cda6777c7f Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 26 Feb 1998 17:17:05 +0000 Subject: Update. 1998-02-24 08:10 H.J. Lu * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Changed to 64. * sysdeps/unix/alpha/sysdep.S (_errno): Add in addition to __errno. * sysdeps/alpha/s_fabs.S: Added ".set noat"/".set at". * sysdeps/unix/sysv/linux/alpha/wait4.S: Ditto. * sysdeps/unix/make-syscalls.sh: Make versioned symbols only for shared library. * libc.map (adjtime, __adjtimex, adjtimex): Added for GLIBC_2.1. * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Added adjtimex and old_adjtimex. * sysdeps/unix/sysv/linux/alpha/syscalls.list (old_adjtimex): New. (osf_settimeofday, osf_getitimer, osf_setitimer, osf_utimes, osf_getrusage, osf_wait4): Added __xxxx symbol for GLIBC_2.0. * sysdeps/unix/sysv/linux/alpha/getitimer.S: Make versioned symbols only for shared library. * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise. * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise. * sysdeps/unix/sysv/linux/alpha/select.S: Likewise. * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise. * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise. * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise. * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise. * sysdeps/unix/sysv/linux/alpha/getitimer.S: Fix ENOSYS branch. * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise. * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise. * sysdeps/unix/sysv/linux/alpha/select.S: Likewise. * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise. * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise. * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise. * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise. * sysdeps/unix/sysv/linux/alpha/wait4.S: Check the correct rusage pointer. * sysdeps/unix/sysv/linux/adjtime.c (TIMEVAL, TIMEX, ADJTIMEX): New macros. (__adjtime): Use TIMEVAL, TIMEX and ADJTIMEX instead of timeval, timex and __adjtimex, respectively. * sysdeps/unix/sysv/linux/alpha/adjtime.c: New. * sysdeps/unix/sysv/linux/alpha/adjtimex.S: New. --- sysdeps/unix/make-syscalls.sh | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) (limited to 'sysdeps/unix/make-syscalls.sh') diff --git a/sysdeps/unix/make-syscalls.sh b/sysdeps/unix/make-syscalls.sh index e9d0f508b4..c7ddb88999 100644 --- a/sysdeps/unix/make-syscalls.sh +++ b/sysdeps/unix/make-syscalls.sh @@ -47,6 +47,13 @@ echo "$calls" | while read file caller syscall nargs strong weak; do @@@ SYS_ify ($syscall) EOF + case $weak in + *@*) + # The versioned symbols are only in the shared library. + echo "ifneq (,\$(filter .os,\$(object-suffixes)))" + ;; + esac + # Make sure only the first syscall rule is used, if multiple dirs # define the same syscall. echo "ifeq (,\$(filter $file,\$(unix-syscalls)))" @@ -56,9 +63,24 @@ EOF test x$caller = x- || echo "unix-extra-syscalls += $file" # Emit a compilation rule for this syscall. - echo "\ -\$(foreach o,\$(object-suffixes),\$(objpfx)$file\$o): \\ -\$(common-objpfx)s-proto.d + case $weak in + *@*) + # The versioned symbols are only in the shared library. + echo "\ +\$(objpfx)${file}.o: \$(common-objpfx)empty.o + rm -f \$@ + ln \$< \$@ +\$(objpfx)${file}.op: \$(common-objpfx)empty.op + rm -f \$@ + ln \$< \$@ +\$(objpfx)${file}.os: \\" + ;; + *) + echo "\ +\$(foreach o,\$(object-suffixes),\$(objpfx)$file\$o): \\" + ;; + esac + echo "\$(common-objpfx)s-proto.d (echo '#include '; \\ echo 'PSEUDO ($strong, $syscall, $nargs)'; \\ echo ' ret'; \\ @@ -109,4 +131,11 @@ EOF echo endif + case $weak in + *@*) + # The versioned symbols are only in the shared library. + echo endif + ;; + esac + done -- cgit v1.2.3