diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | sysdeps/unix/make-syscalls.sh | 10 |
2 files changed, 12 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index fd23e11028..8369e52637 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2000-06-15 Greg McGary <greg@mcgary.org> + + * sysdeps/unix/make-syscalls.sh: Strip leading whitespace from lhs + of callnum assignment. Tolerate callnum expressions containing + parens. + 2000-06-14 Ulrich Drepper <drepper@redhat.com> * login/Makefile (utmpd): Remove rule to build utmpd. diff --git a/sysdeps/unix/make-syscalls.sh b/sysdeps/unix/make-syscalls.sh index 387df6799e..89bd3a3e42 100644 --- a/sysdeps/unix/make-syscalls.sh +++ b/sysdeps/unix/make-syscalls.sh @@ -46,7 +46,8 @@ echo "$calls" | while read file srcfile caller syscall args strong weak; do callnum=- eval `{ echo "#include <sysdep.h>"; echo "callnum=SYS_ify ($syscall)"; } | - $asm_CPP - |grep "^callnum=" |grep -v $syscall` + $asm_CPP - |sed -n -e "/^callnum=.*$syscall/d" \ + -e "/^\(callnum=\)[ ]*\(.*\)/s//\1'\2'/p"` # Derive the number of arguments from the argument signature case $args in @@ -63,7 +64,7 @@ eval `{ echo "#include <sysdep.h>"; # Make sure only the first syscall rule is used, if multiple dirs # define the same syscall. echo "#### CALL=$file NUMBER=$callnum ARGS=$args SOURCE=$srcfile" - case x$srcfile$callnum in + case x$srcfile"$callnum" in x*-) ;; ### Do nothing for undefined callnum x-*) echo "ifeq (,\$(filter $file,\$(unix-syscalls)))" @@ -151,8 +152,9 @@ shared-only-routines += $file ;; esac - case x$callnum,$srcfile,$args in - x[0-9]*,-,*[sp]* | x*,*.[sS],*[sp]*) + case x"$callnum",$srcfile,$args in + x-,-,*) ;; + x*,-,*[sp]* | x*,*.[sS],*[sp]*) echo "ifeq (,\$(filter $file,\$(bp-thunks)))" echo "bp-thunks += $file"; echo "\ |