glibc/sysdeps/unix/make-syscalls.sh

296 lines
9.6 KiB
Bash
Raw Normal View History

#! /bin/sh
update from main archive 970212 1997-02-13 02:32 Ulrich Drepper <drepper@cygnus.com> * time/time.h (__nanosleep): Define only when struct timespec is also available. Reported by Ross Alexander <rossa@stimpy.cs.auckland.ac.nz>. 1997-02-12 21:34 a sun <asun@zoology.washington.edu> * sysdeps/unix/sysv/linux/netinet/udp.h: New file. * sysdeps/unix/sysv/linux/Dist: Add netinet/udp.h. 1997-02-12 21:16 Ulrich Drepper <drepper@cygnus.com> * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname_r): Follow patch of 1997-02-09 in resolv/gethnamaddr.c. 1997-02-11 18:52 H.J. Lu <hjl@gnu.ai.mit.edu> * libio/_G_config.h (_G_wint_t): New. 1997-02-09 11:31 H.J. Lu <hjl@gnu.ai.mit.edu> * resolv/gethnamaddr.c (gethostbyname2): Change sizeof (buf) to sizeof (buf.buf) while calling res_search (). 1997-02-03 20:01 H.J. Lu <hjl@gnu.ai.mit.edu> * nis/rpcsvc/yp_prot.h (ypresp_key_val): Change key to keydat, val to keydat, stat to status. 1997-02-12 20:45 Andreas Jaeger <jaeger@informatik.uni-kl.de> * time/tzfile.c (__tzfile_read): Fix problem with SUID programs. 1997-02-12 19:55 Ulrich Drepper <drepper@cygnus.com> * db/btree/bt_split.c (bt_psplit): Apply official patches #2 and #4 by Keith Bostic. 1997-02-11 14:49 Andreas Jaeger <jaeger@informatik.uni-kl.de> * stdlib/atoll.c: Undefined atoll, not atol. 1997-02-08 09:36 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/Makefile ($(common-objpfx)sysd-syscalls): Remove unused arguments of shell script. * Makeconfig (all-object-suffixes): New variable. * Makerules ($(+sysdir_pfx)sysd-rules, +make-deps): Use it instead of $(object-suffixes). * sysdeps/unix/make-syscalls.sh: Likewise. Fix comment.
1997-02-13 05:10:35 +00:00
# Usage: make-syscalls.sh ../sysdeps/unix/common
# Expects $sysdirs in environment.
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
##############################################################################
# Syscall Signature Key Letters for BP Thunks:
#
# a: unchecked address (e.g., 1st arg to mmap)
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
# b: non-NULL buffer (e.g., 2nd arg to read; return value from mmap)
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
# B: optionally-NULL buffer (e.g., 4th arg to getsockopt)
# f: buffer of 2 ints (e.g., 4th arg to socketpair)
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
# F: 3rd arg to fcntl
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
# i: scalar (any signedness & size: int, long, long long, enum, whatever)
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
# I: 3rd arg to ioctl
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
# n: scalar buffer length (e.g., 3rd arg to read)
# N: pointer to value/return scalar buffer length (e.g., 6th arg to recvfrom)
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
# p: non-NULL pointer to typed object (e.g., any non-void* arg)
# P: optionally-NULL pointer to typed object (e.g., 2nd argument to gettimeofday)
# s: non-NULL string (e.g., 1st arg to open)
# S: optionally-NULL string (e.g., 1st arg to acct)
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
# v: vararg scalar (e.g., optional 3rd arg to open)
# V: byte-per-page vector (3rd arg to mincore)
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
# W: wait status, optionally-NULL pointer to int (e.g., 2nd arg of wait4)
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
ptr='[abBfFINpPsSW]' # all pointer keyletters
int='[inv]' # all scalar keyletters
typ='[ifnNpP]' # typed-arg keyletters: we capture type for use in thunk
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
##############################################################################
thisdir=$1; shift
echo ''
echo \#### DIRECTORY = $thisdir
# Check each sysdep dir with higher priority than this one,
# and remove from $calls all the functions found in other dirs.
# Punt when we reach the directory defining these syscalls.
sysdirs=`for dir in $sysdirs; do
test $dir = $thisdir && break; echo $dir; done`
echo \#### SYSDIRS = $sysdirs
# Get the list of system calls for this directory.
calls=`sed 's/#.*$//
/^[ ]*$/d' $thisdir/syscalls.list`
calls=`echo "$calls" |
while read file caller rest; do
# Remove each syscall that is implemented by a file in $dir.
# If a syscall specified a "caller", then only compile that syscall
# if the caller function is also implemented in this directory.
srcfile=-;
for dir in $sysdirs; do
{ test -f $dir/$file.c && srcfile=$dir/$file.c; } ||
{ test -f $dir/$file.S && srcfile=$dir/$file.S; } ||
{ test -f $dir/$file.s && srcfile=$dir/$file.s; } ||
{ test x$caller != x- &&
{ { test -f $dir/$caller.c && srcfile=$dir/$caller.c; } ||
{ test -f $dir/$caller.S && srcfile=$dir/$caller.S; } ||
{ test -f $dir/$caller.s && srcfile=$dir/$caller.s; }; }; } && break;
done;
echo $file $srcfile $caller $rest;
done`
# Any calls left?
test -n "$calls" || exit 0
# Emit rules to compile the syscalls remaining in $calls.
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
echo "$calls" |
while read file srcfile caller syscall args strong weak; do
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
# Figure out if $syscall is defined with a number in syscall.h.
callnum=-
eval `{ echo "#include <sysdep.h>";
echo "callnum=SYS_ify ($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
[0-9]) nargs=$args;;
?:) nargs=0;;
?:?) nargs=1;;
?:??) nargs=2;;
?:???) nargs=3;;
?:????) nargs=4;;
?:?????) nargs=5;;
?:??????) nargs=6;;
?:???????) nargs=7;;
?:????????) nargs=8;;
?:?????????) nargs=9;;
esac
# Make sure only the first syscall rule is used, if multiple dirs
# define the same syscall.
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
echo ''
echo "#### CALL=$file NUMBER=$callnum ARGS=$args SOURCE=$srcfile"
case x$srcfile"$callnum" in
x*-) ;; ### Do nothing for undefined callnum
x-*)
echo "ifeq (,\$(filter $file,\$(unix-syscalls)))"
Update. 1998-02-24 08:10 H.J. Lu <hjl@gnu.org> * 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.
1998-02-26 17:17:05 +00:00
case $weak in
*@*)
# The versioned symbols are only in the shared library.
echo "ifneq (,\$(filter .os,\$(object-suffixes)))"
;;
esac
# Accumulate the list of syscall files for this directory.
echo "unix-syscalls += $file"
test x$caller = x- || echo "unix-extra-syscalls += $file"
# Emit a compilation rule for this syscall.
Update. 1998-02-24 08:10 H.J. Lu <hjl@gnu.org> * 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.
1998-02-26 17:17:05 +00:00
case $weak in
*@*)
# The versioned symbols are only in the shared library.
echo "\
shared-only-routines += $file
Update. 1998-02-24 08:10 H.J. Lu <hjl@gnu.org> * 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.
1998-02-26 17:17:05 +00:00
\$(objpfx)${file}.os: \\"
;;
*)
echo "\
\$(foreach o,\$(object-suffixes),\$(objpfx)$file\$o): \\"
;;
esac
echo " \$(common-objpfx)s-proto.d
(echo '#include <sysdep.h>'; \\
echo 'PSEUDO ($strong, $syscall, $nargs)'; \\
Wed May 29 00:57:37 1996 David Mosberger-Tang <davidm@azstarnet.com> * time/Makefile (tests): Add test-tz. * time/test-tz.c: New test. * time/clocktest.c: Rewrite to test more meaningfully. * sysdeps/unix/sysv/linux/syscalls.list: Add bdflush, create_module, delete_module, get_kernel_syms, init_module, klogctl. * sysdeps/unix/sysv/linux/sys/param.h (MAXSYMLINKS): Define as 5 instead of SYMLOOP_MAX, which is nowhere to be found. * sysdeps/unix/sysv/linux/sys/msq_buf.h, sysdeps/unix/sysv/linux/sys/sem_buf.h, sysdeps/unix/sysv/linux/sys/shm_buf.h [__USE_MISC]: Add more control ops and datastructures. * sysdeps/unix/sysv/linux/sys/io.h: New file declaring low-level I/O related functions. * sysdeps/unix/sysv/linux/sys/kdaemon.h: New file declaring kernel daemon related functions/operations. * sysdeps/unix/sysv/linux/sys/klog.h: New file declaring kernel logging related functions/operations. * sysdeps/unix/sysv/linux/sys/module.h: New file declaring kernel module related functions/operations. * sysdeps/unix/sysv/linux/speed.c: Only do "mention this twice" hack for non-Alpha based Linux systems. * sysdeps/unix/sysv/linux/alpha/speed.c: Remove. * sysdeps/unix/sysv/linux/Makefile (headers): Add sys/module.h, sys/io.h, sys/klog.h, and sys/kdaemon.h. * sysdeps/unix/sysdep.h (END): Define empty END macro for platforms that don't need some sort of end directive at the end of functions. * sysdeps/unix/make-syscalls.sh: Emit END($strong) at end of syscall wrapper to allow correct generation of debugging information. * sysdeps/unix/alpha/sysdep.h (END): Redefine to use .end directive for both ELF and ECOFF. (ret): Delete macro. It was a dangerous macro and unnecessary since the Alpha assemblers recognizes "ret" as a macro themselves. * sysdeps/gnu/utmpbits.h (struct utmp): Move ut_tv behind ut_session to guarantee long alignment. This is important for Linux/Alpha since ut_tv.tv_sec is 32 bits and time_t is 64 bits. This will all get cleaned up as programs start to use ut_tv instead ut_time. * sysdeps/alpha/divrem.h: Include <sysdep.h> instead of <*/regdef.h>. * sysdeps/alpha/bsd-_setjmp.S (setjmp): Renamed entry point to _setjmp. * sysdeps/alpha/_mcount.S, sysdeps/alpha/bb_init_func.S, sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S, sysdeps/alpha/copysign.S, sysdeps/alpha/divrem.h, sysdeps/alpha/fabs.S, sysdeps/alpha/ffs.S, sysdeps/alpha/htonl.S, sysdeps/alpha/htons.S, sysdeps/alpha/memchr.S, sysdeps/alpha/setjmp.S, sysdeps/alpha/strlen.S, sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S, sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S, sysdeps/unix/sysv/linux/alpha/llseek.S, sysdeps/unix/sysv/linux/alpha/pipe.S, sysdeps/unix/sysv/linux/alpha/sigsuspend.S, sysdeps/unix/sysv/linux/alpha/sysdep.S: Use END macro instead of .end directive. * csu/initfini.c (_fini): Tell gcc that _fini is not a leaf function by having it contain a dummy function call. * configure.in (config_machine): Don't make ELF the default for Linux/Alpha just yet (use --with-elf instead). (.init/.fini check): Generate .text to ensure function start and end are in same section. * sysdeps/unix/bsd/osf/alpha/brk.S, sysdeps/unix/sysv/linux/alpha/brk.S (__curbrk): Store the entire break value, not just the low 32 bits to accomodate large memories. Tue May 28 10:46:04 1996 Richard Henderson <rth@tamu.edu> * sysdeps/unix/sysv/linux/alpha/brk.S: Rather than attempt to dynamically resolve _end for initializing __curbrk, support the brk(0) query idiom. * sysdeps/alpha/bb_init_func.S: Don't make `init' an external symbol. * sysdeps/alpha/bsd-_setjmp.S: The function is _setjmp not setjmp. Sun May 26 22:17:38 1996 Richard Henderson <rth@tamu.edu> * stdlib/lcong48_r.c, stdlib/seed48_r.c, stdlib/strtod.c, stdlib/strtol.c: Include <string.h> for mem* and str* fns used. Thu May 23 02:15:56 1996 David Mosberger-Tang <davidm@azstarnet.com> * sysdeps/unix/sysv/linux/Makefile (headers): Add sys/io.h, sys/klog.h, and sys/kdaemon.h. * sysdeps/unix/sysv/linux/sys/io.h: New file. * sysdeps/unix/sysv/linux/sys/klog.h: Ditto. * sysdeps/unix/sysv/linux/sys/kdaemon.h: Ditto. * sysdeps/unix/alpha/sysdep.h (ret): Remove macro. It is dangerous and unnecessary since both OSF/1 as and gas define "ret" as a pseudo-instruction. Sat Jun 1 17:18:21 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * time/tzset.c (__tzset): Clear tz_rules name pointers after freeing them. Bug found by David Mosberger-Tang. * sysdeps/posix/tempname.c (__stdio_gen_tempname): Use __ptr_t instead of PTR. * extra-lib.mk (extra-objs): Use patsubst intead of $(A:=B) syntax to work around Make bug when A contains var ref. Fri May 31 18:27:52 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * string/string.h [__USE_MISC]: Declare basename; OSF/1 puts it here. * sysdeps/unix/sysv/linux/syscalls.list (getpgid, setpgid): Define __ strong names and [gs]etpgid as weak aliases. * math/math_private.h (GET_LDOUBLE_EXP): Add missing backslash.
1996-06-02 18:50:07 +00:00
echo ' ret'; \\
Thu Jun 13 17:25:11 1996 David Mosberger-Tang <davidm@azstarnet.com> * sysdeps/generic/memcmp.c: Add prototype decls for internal fns. * locale/programs/locale.c: Include string.h. * sunrpc/xdr_stdio.c (xdrstdio_getlong), sunrpc/xdr_rec.c (xdrrec_getlong), sunrpc/xdr_mem.c (xdrmem_getlong): Make sure appropriate sign-extension is performed on machines with sizeof(long) > 4. * sunrpc/xdr.c (xdr_int, xdr_u_int): If sizeof(long)==8 and sizeof(int)<sizeof(long), we need to go through a temporary variable. * locale/programs/ld-numeric.c: Include <alloca.h> * libio/stdio.h (__libc_fatal): Add prototype. * libio/cleanup.c: Use __P() to declare prototype when __STDC__ is in efect. * libio/iopopen.c (read_or_write, parent_end, child_end): Declare volatile to avoid "might get clobbered by longjmp" warning. * features.h (__KERNEL_STRICT_NAMES): Define __KERNEL_STRICT_NAMES unless _LOOSE_KERNEL_NAMES is in effect (which, with high probability is a sure loser). * sysdeps/unix/sysv/linux/gnu/types.h (__KERNEL_STRICT_NAMES): Remove. * sysdeps/unix/bsd/osf/alpha/start.S (errno): Removed. * sysdeps/unix/sysv/linux/alpha/start.S: Ditto. * misc/paths.h (_PATH_MAN): Change from /usr/share/man to /usr/man to be Linux FSSTND compliant. Mon Jun 10 17:50:31 1996 David Mosberger-Tang <davidm@azstarnet.com> * sysdeps/unix/sysv/linux/alpha/pipe.S: Use PSEUDO. * sysdeps/unix/sysv/linux/alpha/sysdep.S, sysdeps/unix/sysv/linux/alpha/brk.S, sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S, sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S, sysdeps/unix/sysv/linux/alpha/llseek.S, sysdeps/unix/sysv/linux/alpha/sigsuspend.S, sysdeps/unix/sysv/linux/alpha/syscall.S: Rename syscall_error to __syscall_error to avoid intruding application name space. * sysdeps/unix/sysv/linux/alpha/sysdep.h: Rename __NR_get?id to SYS_get?id so that syscall stubs in sysdeps/unix define these syscalls in terms of getxpid/getxuid/getxgid. * sysdeps/unix/_exit.S, sysdeps/unix/getegid.S, sysdeps/unix/geteuid.S, sysdeps/unix/getppid.S, sysdeps/unix/execve.S, sysdeps/unix/fork.S, sysdeps/unix/syscall.S: Terminate syscall with PSEUDO_END. * sysdeps/unix/make-syscalls.sh, sysdeps/unix/sysdep.h (PSEUDO_END): Rename END() to PSEUDO_END(). * sysdeps/unix/alpha/sysdep.h: Move error-handling code in PSEUDO to PSEUDO_END to improve branch-prediction. Include .frame directive to make syscalls debugabble. (PSEUDO_END): New macro. * sysdeps/unix/alpha/sysdep.h, sysdeps/alpha/bb_init_func.S, sysdeps/unix/sysv/linux/alpha/brk.S: Use ldiq instead of ldi since latter is illegal under DEC Unix. * sysdeps/unix/alpha/sysdep.S: Renamed from sysdeps/unix/sysv/linux/alpha/sysdep.S. This file works for OSF/1 as well. * sysdeps/unix/bsd/osf/alpha/sysdep.S: Remove (note that the EWOULDBLOCK -> EAGAIN mapping was unnecessary since EWOULDBLOCK==EAGAIN under DEC Unix and Linux/Alpha). * sysdeps/alpha/divrem.h: Use retaddr instead of ra as the return address register in the .frame directive. * sysdeps/alpha/copysign.c: Remove. * sunrpc/rpc/types.h: Include <sys/param.h> and <netinet/in.h> to avoid RPC definitions of INADDR_LOOPBACK and/or MAXHOSTNAMELEN. * errno.h: Move __END_DECLS to correct place to make file compilable under c++. * dirent/dirent.h: Document _DIRENT_HAVE_D_OFF macro. Define d_ino only if <direntry.h> hasn't defined d_fileno. * configure.in (HAVE_ASM_WEAKEXT_DIRECTIVE): Reverse order of arguments to weakext to make .weakext detection work on ECOFF systems. * FAQ: Add Linux/Alpha to list of supported platforms. Mention that _validuser() has been replaced by __ivaliduser(). Thu Jun 6 21:39:38 1996 David Mosberger-Tang <davidm@azstarnet.com> * sysdeps/unix/bsd/sun/sunos4/tcsetattr.c (tcsetattr): Declare cmd as unsigned long, not as int (to avoid incorrect int->long promotion).
1996-06-19 06:54:12 +00:00
echo 'PSEUDO_END($strong)'; \\"
Update. 1998-02-10 23:57 Ulrich Drepper <drepper@happy.cygnus.com> * misc/tst-efgcvt.c: Add more tests. * misc/efgcvt_r.c: Correct result for above new tests. 1998-02-06 17:22 H.J. Lu <hjl@gnu.org> * misc/efgcvt_r.c (fcvt_r, ecvt_r): Correctly handle NDIGIT <= 0. 1998-02-10 16:48 Philip Blundell <pb@nexus.co.uk> * Makerules (install-no-libc.a-nosubdir): Don't install-bin (etc) if the programs weren't built. 1998-02-09 10:12 Philip Blundell <pb@nexus.co.uk> * sysdeps/libm-ieee754/s_exp2.c (__ieee754_exp2): If we don't have FE_TONEAREST, soldier on regardless and do the best we can. * sysdeps/libm-ieee754/s_exp2f.c (__ieee754_exp2f): likewise. 1998-02-5 17:20 Philip Blundell <pb@nexus.co.uk> * sysdeps/standalone/filedesc.h: Define __need_FOPEN_MAX, not _STDIO_H, before including <bits/stdio_lim.h>. * sysdeps/standalone/arm/bits/errno.h (EOVERFLOW): Added. * io/fts.c (fts_build): Don't try to use d_type if it doesn't exist. * sysdeps/arm/sys/ucontext.h: New file. 1998-02-04 10:11 Philip Blundell <pb@nexus.co.uk> * manual/stdio.texi (Formatted Output Functions): Explicitly say that the return value from snprintf() does not count the terminating NUL as a character. 1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com> * manual/users.texi: Rewrite to describe correct POSIX behaviour, add description for sete[ug]id and general cleanup. Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>. 1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile (parent-clean): Don't remove makefile fragments here. (postclean): New variable. (clean): Remove makefile fragments here. (realclean distclean): Likewise. Pass sysdep-subdirs to sub-make. (generated): Add isomac and isomanc.out. * Makeconfig ($(common-objpfx)soversions.mk): Don't generate if avoid-generated is set. (postclean-generated): Add soversion.mk. ($(common-objpfx)version.mk): Don't include if avoid-generated is set. * Makerules: Still need to include $(+sysdir_pfx)sysd-Makefile if avoid-generated is set. (common-generated): Add libc.so and libc.so$(libc.so-version). (generated): Add versioned libraries. (common-mostlyclean): Also remove %.so and %_pic.a. * csu/Makefile (generated): Add abi-tag.h. * db2/Makefile (extra-objs): Add getlong.o. * elf/Makefile (generated): Add ld.so, ldd and $(rtld-installed-name). (others): Add ldconfig here instead of ldconfig.o to extra-objs. * malloc/Makefile (generated): Add mtrace. * po/Makefile: Don't include version.mk, not needed any more. * sunrpc/Makefile (generated): Add rpc-proto.d and rpcgen. * sysdeps/unix/Makefile: Fix local_lim.h -> bits/local_lim.h, syscall.h -> sys/syscall.h. (common-generated): Add s-proto.d. (postclean-generated): Add sysd-syscalls. * localedata/Makefile (test-output): Add all output files. (generated): Add test-input and test-output. (generated-dirs): Add all the dirs. 1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile (test-output, generated, generated-dirs): New variables. 1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com> * resolv/nss_dns/dns-host.c: Various code cleanups. 1998-02-09 08:10 H.J. Lu <hjl@gnu.org> * resolv/gethnamaddr.c (getanswer): Fix the PTR/CNAME bug. From Philip Blundell <pb@nexus.co.uk>. * resolv/nss_dns/dns-host.c (getanswer_r): Ditto. 1998-02-08 Andreas Jaeger <aj@arthur.rhein-neckar.de> * libc.map: Add .rem, .div, .mul, .udiv, .umul, .urem for Sparc. Suggested by debian/sparc porters. 1998-02-07 Andreas Jaeger <aj@arthur.rhein-neckar.de> * misc/tst-efgcvt.c: Totally rewritten, added a lot of new tests for ecvt and fcvt. 1998-02-10 16:32 Ulrich Drepper <drepper@happy.cygnus.com> * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use __xstat and __fxstat instead of stat and fstat. Use namespace clean __stpcpy. * signal/signal.h: Always define sigset_t if __need_sigset_t is defined even if __USE_POSIX is not defined. 1998-02-02 20:51 Zack Weinberg <zack@rabi.phys.columbia.edu> * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Correct last patch to support obsolete tty major numbers correctly. 1998-02-02 08:47 H.J. Lu <hjl@gnu.org> * login/Makefile ($(inst_libexecdir)/pt_chown): Make the target directory first and ignore install error. * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Substract 128 from ptyno and fix a typo for the BSD style pty. 1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/Makefile ($(common-objpfx)s-proto.d): Depend on all syscalls.list's. 1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add getresuid and getresgid. * sysdeps/unix/sysv/linux/getresuid.c: New file. * sysdeps/unix/sysv/linux/getresgid.c: New file. * sysdeps/unix/sysv/linux/syscalls.list: Remove getres[ug]id, add s_getres[ug]id. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Add getres[ug]id. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 1998-02-02 08:11 H.J. Lu <hjl@gnu.org> * nscd/grpcache.c: Include <stdlib.h>. 1998-02-01 16:01 H.J. Lu <hjl@gnu.org> * stdlib/atoll.c: Fix comments. * sysdeps/posix/ttyname.c: Ignore stdin/stdout/stderr. * sysdeps/posix/ttyname_r.c: Ditto. 1998-02-03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * io/sys/stat.h: Define S_IFLNK and S_IFSOCK if __USE_BSD or __USE_MISC, independent of __USE_UNIX98. 1998-02-10 19:18 Ulrich Drepper <drepper@happy.cygnus.com> * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_missing_rt_sigs): Rename from __libc_have_rt_sigs and leave as COMMON data. 1998-02-04 11:58 Richard Henderson <rth@twiddle.rth.home> * Makeconfig (CFLAGS-.os): Kill -fno-common. * Makerules (libc.so): Prelink libc_pic.a, allocating commons. * libc.map (GLIBC_2.1): Add Linux/Alpha tv64 symbols. * elf/rtld.map: New file. Needed to define the GLIBC_2.* version symbols. * include/libc-symbols.h (symbol_version, default_symbol_version): Provide asm versions and correct !DO_VERSIONING versions. * sysdeps/unix/make-syscalls.sh: Recognize version symbols in the weak symbol list. * sysdeps/unix/sysv/linux/sigaction.c (__libc_missing_rt_sigs): Rename from __libc_have_rt_sigs and leave as COMMON data. * sysdeps/unix/sysv/linux/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise. 1998-02-04 16:41 Zack Weinberg <zack@rabi.phys.columbia.edu> * sunrpc/Makefile: Correct dependencies of rpcgen. 1998-02-10 03:00 Ulrich Drepper <drepper@happy.cygnus.com> * nscd/Makefile: Fix test for available linuxthreads add-on. Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>. 1998-02-05 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/syscalls.list: Fix typo in lchown. 1998-02-03 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/gnu/Makefile: Respect with-cvs variable. * manual/errno.texi (Error Messages): Correct description of strerror_r. Pointed out by jonas@bagge.se. 1998-01-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/socket.texi (Host Address Functions): Clarify description of inet_network. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/grantpt.c (argv): Move const to toplevel. (grantpt): Delete superfluous cast. 1998-02-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile ($(inst_slibdir)/libc-$(version).so): Depend on elf/ldso_install instead of elf/subdir_install. (elf/ldso_install): New target. * elf/Makefile (ldso_install): New target. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/powerpc/socket.S: Really do the change of 1998-01-06. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * string/bits/string2.h (strcmp): Use __string2_1bptr_p only for constant expressions. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * nss/test-netdb.c: Include <unistd.h> for gethostname and "nss.h" for __nss_configure_lookup. (output_hostent): Remove unused variable. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * string/tst-inlcall.c: Fix format string. 1998-02-09 Andreas Jaeger <aj@arthur.rhein-neckar.de> * inet/netinet/in.h: Rename second parameter of bindresvport to avoid buggy gcc warning. [PR libc/412]
1998-02-10 20:06:30 +00:00
# Append any weak aliases or versions defined for this syscall function.
# A shortcoming in the current gas is that it will only allow one
# version-alias per symbol. So we create new strong aliases as needed.
vcount=""
for name in $weak; do
Update. 1998-02-10 23:57 Ulrich Drepper <drepper@happy.cygnus.com> * misc/tst-efgcvt.c: Add more tests. * misc/efgcvt_r.c: Correct result for above new tests. 1998-02-06 17:22 H.J. Lu <hjl@gnu.org> * misc/efgcvt_r.c (fcvt_r, ecvt_r): Correctly handle NDIGIT <= 0. 1998-02-10 16:48 Philip Blundell <pb@nexus.co.uk> * Makerules (install-no-libc.a-nosubdir): Don't install-bin (etc) if the programs weren't built. 1998-02-09 10:12 Philip Blundell <pb@nexus.co.uk> * sysdeps/libm-ieee754/s_exp2.c (__ieee754_exp2): If we don't have FE_TONEAREST, soldier on regardless and do the best we can. * sysdeps/libm-ieee754/s_exp2f.c (__ieee754_exp2f): likewise. 1998-02-5 17:20 Philip Blundell <pb@nexus.co.uk> * sysdeps/standalone/filedesc.h: Define __need_FOPEN_MAX, not _STDIO_H, before including <bits/stdio_lim.h>. * sysdeps/standalone/arm/bits/errno.h (EOVERFLOW): Added. * io/fts.c (fts_build): Don't try to use d_type if it doesn't exist. * sysdeps/arm/sys/ucontext.h: New file. 1998-02-04 10:11 Philip Blundell <pb@nexus.co.uk> * manual/stdio.texi (Formatted Output Functions): Explicitly say that the return value from snprintf() does not count the terminating NUL as a character. 1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com> * manual/users.texi: Rewrite to describe correct POSIX behaviour, add description for sete[ug]id and general cleanup. Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>. 1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile (parent-clean): Don't remove makefile fragments here. (postclean): New variable. (clean): Remove makefile fragments here. (realclean distclean): Likewise. Pass sysdep-subdirs to sub-make. (generated): Add isomac and isomanc.out. * Makeconfig ($(common-objpfx)soversions.mk): Don't generate if avoid-generated is set. (postclean-generated): Add soversion.mk. ($(common-objpfx)version.mk): Don't include if avoid-generated is set. * Makerules: Still need to include $(+sysdir_pfx)sysd-Makefile if avoid-generated is set. (common-generated): Add libc.so and libc.so$(libc.so-version). (generated): Add versioned libraries. (common-mostlyclean): Also remove %.so and %_pic.a. * csu/Makefile (generated): Add abi-tag.h. * db2/Makefile (extra-objs): Add getlong.o. * elf/Makefile (generated): Add ld.so, ldd and $(rtld-installed-name). (others): Add ldconfig here instead of ldconfig.o to extra-objs. * malloc/Makefile (generated): Add mtrace. * po/Makefile: Don't include version.mk, not needed any more. * sunrpc/Makefile (generated): Add rpc-proto.d and rpcgen. * sysdeps/unix/Makefile: Fix local_lim.h -> bits/local_lim.h, syscall.h -> sys/syscall.h. (common-generated): Add s-proto.d. (postclean-generated): Add sysd-syscalls. * localedata/Makefile (test-output): Add all output files. (generated): Add test-input and test-output. (generated-dirs): Add all the dirs. 1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile (test-output, generated, generated-dirs): New variables. 1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com> * resolv/nss_dns/dns-host.c: Various code cleanups. 1998-02-09 08:10 H.J. Lu <hjl@gnu.org> * resolv/gethnamaddr.c (getanswer): Fix the PTR/CNAME bug. From Philip Blundell <pb@nexus.co.uk>. * resolv/nss_dns/dns-host.c (getanswer_r): Ditto. 1998-02-08 Andreas Jaeger <aj@arthur.rhein-neckar.de> * libc.map: Add .rem, .div, .mul, .udiv, .umul, .urem for Sparc. Suggested by debian/sparc porters. 1998-02-07 Andreas Jaeger <aj@arthur.rhein-neckar.de> * misc/tst-efgcvt.c: Totally rewritten, added a lot of new tests for ecvt and fcvt. 1998-02-10 16:32 Ulrich Drepper <drepper@happy.cygnus.com> * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use __xstat and __fxstat instead of stat and fstat. Use namespace clean __stpcpy. * signal/signal.h: Always define sigset_t if __need_sigset_t is defined even if __USE_POSIX is not defined. 1998-02-02 20:51 Zack Weinberg <zack@rabi.phys.columbia.edu> * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Correct last patch to support obsolete tty major numbers correctly. 1998-02-02 08:47 H.J. Lu <hjl@gnu.org> * login/Makefile ($(inst_libexecdir)/pt_chown): Make the target directory first and ignore install error. * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Substract 128 from ptyno and fix a typo for the BSD style pty. 1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/Makefile ($(common-objpfx)s-proto.d): Depend on all syscalls.list's. 1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add getresuid and getresgid. * sysdeps/unix/sysv/linux/getresuid.c: New file. * sysdeps/unix/sysv/linux/getresgid.c: New file. * sysdeps/unix/sysv/linux/syscalls.list: Remove getres[ug]id, add s_getres[ug]id. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Add getres[ug]id. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 1998-02-02 08:11 H.J. Lu <hjl@gnu.org> * nscd/grpcache.c: Include <stdlib.h>. 1998-02-01 16:01 H.J. Lu <hjl@gnu.org> * stdlib/atoll.c: Fix comments. * sysdeps/posix/ttyname.c: Ignore stdin/stdout/stderr. * sysdeps/posix/ttyname_r.c: Ditto. 1998-02-03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * io/sys/stat.h: Define S_IFLNK and S_IFSOCK if __USE_BSD or __USE_MISC, independent of __USE_UNIX98. 1998-02-10 19:18 Ulrich Drepper <drepper@happy.cygnus.com> * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_missing_rt_sigs): Rename from __libc_have_rt_sigs and leave as COMMON data. 1998-02-04 11:58 Richard Henderson <rth@twiddle.rth.home> * Makeconfig (CFLAGS-.os): Kill -fno-common. * Makerules (libc.so): Prelink libc_pic.a, allocating commons. * libc.map (GLIBC_2.1): Add Linux/Alpha tv64 symbols. * elf/rtld.map: New file. Needed to define the GLIBC_2.* version symbols. * include/libc-symbols.h (symbol_version, default_symbol_version): Provide asm versions and correct !DO_VERSIONING versions. * sysdeps/unix/make-syscalls.sh: Recognize version symbols in the weak symbol list. * sysdeps/unix/sysv/linux/sigaction.c (__libc_missing_rt_sigs): Rename from __libc_have_rt_sigs and leave as COMMON data. * sysdeps/unix/sysv/linux/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise. 1998-02-04 16:41 Zack Weinberg <zack@rabi.phys.columbia.edu> * sunrpc/Makefile: Correct dependencies of rpcgen. 1998-02-10 03:00 Ulrich Drepper <drepper@happy.cygnus.com> * nscd/Makefile: Fix test for available linuxthreads add-on. Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>. 1998-02-05 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/syscalls.list: Fix typo in lchown. 1998-02-03 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/gnu/Makefile: Respect with-cvs variable. * manual/errno.texi (Error Messages): Correct description of strerror_r. Pointed out by jonas@bagge.se. 1998-01-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/socket.texi (Host Address Functions): Clarify description of inet_network. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/grantpt.c (argv): Move const to toplevel. (grantpt): Delete superfluous cast. 1998-02-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile ($(inst_slibdir)/libc-$(version).so): Depend on elf/ldso_install instead of elf/subdir_install. (elf/ldso_install): New target. * elf/Makefile (ldso_install): New target. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/powerpc/socket.S: Really do the change of 1998-01-06. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * string/bits/string2.h (strcmp): Use __string2_1bptr_p only for constant expressions. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * nss/test-netdb.c: Include <unistd.h> for gethostname and "nss.h" for __nss_configure_lookup. (output_hostent): Remove unused variable. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * string/tst-inlcall.c: Fix format string. 1998-02-09 Andreas Jaeger <aj@arthur.rhein-neckar.de> * inet/netinet/in.h: Rename second parameter of bindresvport to avoid buggy gcc warning. [PR libc/412]
1998-02-10 20:06:30 +00:00
case $name in
*@@*)
Update. 1998-02-13 17:39 Ulrich Drepper <drepper@cygnus.com> * elf/Makefile: Don't use --version-script parameter to link ld.so unconditionally. 1998-01-02 04:19 Geoff Keating <geoffk@ozemail.com.au> * math/Makefile: Add t_exp. * math/libm-test.c: Tighten accuracy bounds for exp(), correct constants. * math/test-reduce.c: Remove temporarily, it seems to be broken. * sysdeps/libm-ieee754/e_exp.c: Use accurate table method. * sysdeps/libm-ieee754/e_expf.c: Use table & double precision for better accuracy. * sysdeps/libm-ieee754/s_exp2.c: Use better polynomial; correct algorithm for very large/very small arguments. * sysdeps/libm-ieee754/s_exp2f.c: Use slightly better polynomial; correct algorithm for very large/very small arguments; adjust for new table. * sysdeps/libm-ieee754/t_exp.c: New file. * sysdeps/libm-ieee754/t_exp2f.h: Use table with smaller deltas. * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Put 'strange test' back, with comment that explains what breaks when you remove it :-(. * localedata/xfrm-test.c: Avoid integer overflow. * stdlib/strfmon.c: char is unsigned, sometimes. *sysdeps/powerpc * sysdeps/powerpc/Makefile: Remove quad float support. * sysdeps/powerpc/q_*.c: Remove, they will become an add-on. * sysdeps/powerpc/quad_float.h: Likewise. * sysdeps/powerpc/test-arith.c: Likewise. * sysdeps/powerpc/test-arithf.c: Likewise. * sysdeps/generic/s_exp2.c: Remove, we have this implemented now. * sysdeps/generic/s_exp2f.c: Likewise. * sysdeps/powerpc/bits/mathinline.h: Use underscores around __asm__, don't try anything if _SOFT_FLOAT. 1997-12-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * locale/C-ctype.c (_nl_C_LC_CTYPE_class32): Undo last change. * locale/programs/ld-ctype.c (CHAR_CLASS32_TRANS): Likewise. * wctype/wctype.c: Likewise. * wctype/wctype.h (_ISwxxx): Renamed from _ISxxx, all uses changed. They are incompatible with the _ISxxx values from <ctype.h> on little endian machines. (_ISwbit) [__BYTE_ORDER == __LITTLE_ENDIAN]: Correctly transform bit number. This fixes the real bug and restores the integrity of the ctype locale file. * wctype/wcfuncs.c: Change all _ISxxx to _ISwxxx. * wctype/wcfuncs_l.c: Likewise. * wctype/wcextra.c: Likewise. * wctype/wctype_l.c [__BYTE_ORDER == __LITTLE_ENDIAN]: Use correct byte swapping. 1998-02-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.S (errno): Put it into .bss segment instead of .common, so that aliases on it work. * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Add .type and .size directives, put into .bss segment instead of initializing it to 4. 1998-02-12 08:00 H.J. Lu <hjl@gnu.org> * libc.map (gnu_get_libc_release, gnu_get_libc_version): Added. * version.c (__gnu_get_libc_release, __gnu_get_libc_version): New functions. Make names without __ weak aliases. (__libc_release, __libc_version): Make them static. * include/gnu/libc-version.h: New file. * Makefile (headers): Add gnu/libc-version.h. 1998-02-13 Ulrich Drepper <drepper@cygnus.com> * stdlib/stdlib.h (struct drand48_data): Leave X to user macros and use x for member name. Reported by Daniel Lyddy <daniell@cs.berkeley.edu>. * stdlib/drand48.c: Change according to member name change. * stdlib/drand48_r.c: Likewise. * stdlib/lcong48_r.c: Likewise. * stdlib/lrand48.c: Likewise. * stdlib/lrand48_r.c: Likewise. * stdlib/mrand48.c: Likewise. * stdlib/mrand48_r.c: Likewise. * stdlib/seed48.c: Likewise. * stdlib/seed48_r.c: Likewise. * stdlib/srand48_r.c: Likewise. 1998-02-11 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nss/test-netdb.c: Add some more test cases. 1998-02-13 11:39 Ulrich Drepper <drepper@cygnus.com> * libio/iovsscanf.c: Undo last change modifying errno. 1998-02-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * stdio-common/vfscanf.c: Never try to read another character after EOF. Don't decrement read_in after EOF, it wasn't incremented in the first place. (NEXT_WIDE_CHAR): Set First, not first. 1998-02-06 07:48 H.J. Lu <hjl@gnu.org> * db/Makefile ($(inst_libdir)/libndbm.a, $(inst_libdir)/libndbm.so): New targets. * db2/Makefile: Likewise. 1998-02-12 08:20 H.J. Lu <hjl@gnu.org> * sysdeps/gnu/errlist.awk (sys_errlist, sys_nerr): Create weak aliases if HAVE_ELF or PIC or DO_VERSIONING is not defined. 1998-02-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/_G_config.h: Define _G_wchar_t, for C++ <streambuf.h>. * sysdeps/unix/sysv/linux/_G_config.h: Likewise. 1998-02-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/make-syscalls.sh: Fix sed pattern when dealing with versioned symbols. 1998-02-13 08:14 H.J. Lu <hjl@gnu.org> * libc.map (_dl_global_scope, _dl_lookup_symbol_skip, _dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip): Added for libdl.so. * elf/rtld.map: New file. Needed to define the GLIBC_2.* * manual/socket.texi (Host Address Functions): Clarify description * sysdeps/unix/sysv/linux/alpha/bits/time.h (struct timeval):
1998-02-13 17:54:15 +00:00
base=`echo $name | sed 's/@@.*//'`
ver=`echo $name | sed 's/.*@@//'`
Update. 1998-02-10 23:57 Ulrich Drepper <drepper@happy.cygnus.com> * misc/tst-efgcvt.c: Add more tests. * misc/efgcvt_r.c: Correct result for above new tests. 1998-02-06 17:22 H.J. Lu <hjl@gnu.org> * misc/efgcvt_r.c (fcvt_r, ecvt_r): Correctly handle NDIGIT <= 0. 1998-02-10 16:48 Philip Blundell <pb@nexus.co.uk> * Makerules (install-no-libc.a-nosubdir): Don't install-bin (etc) if the programs weren't built. 1998-02-09 10:12 Philip Blundell <pb@nexus.co.uk> * sysdeps/libm-ieee754/s_exp2.c (__ieee754_exp2): If we don't have FE_TONEAREST, soldier on regardless and do the best we can. * sysdeps/libm-ieee754/s_exp2f.c (__ieee754_exp2f): likewise. 1998-02-5 17:20 Philip Blundell <pb@nexus.co.uk> * sysdeps/standalone/filedesc.h: Define __need_FOPEN_MAX, not _STDIO_H, before including <bits/stdio_lim.h>. * sysdeps/standalone/arm/bits/errno.h (EOVERFLOW): Added. * io/fts.c (fts_build): Don't try to use d_type if it doesn't exist. * sysdeps/arm/sys/ucontext.h: New file. 1998-02-04 10:11 Philip Blundell <pb@nexus.co.uk> * manual/stdio.texi (Formatted Output Functions): Explicitly say that the return value from snprintf() does not count the terminating NUL as a character. 1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com> * manual/users.texi: Rewrite to describe correct POSIX behaviour, add description for sete[ug]id and general cleanup. Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>. 1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile (parent-clean): Don't remove makefile fragments here. (postclean): New variable. (clean): Remove makefile fragments here. (realclean distclean): Likewise. Pass sysdep-subdirs to sub-make. (generated): Add isomac and isomanc.out. * Makeconfig ($(common-objpfx)soversions.mk): Don't generate if avoid-generated is set. (postclean-generated): Add soversion.mk. ($(common-objpfx)version.mk): Don't include if avoid-generated is set. * Makerules: Still need to include $(+sysdir_pfx)sysd-Makefile if avoid-generated is set. (common-generated): Add libc.so and libc.so$(libc.so-version). (generated): Add versioned libraries. (common-mostlyclean): Also remove %.so and %_pic.a. * csu/Makefile (generated): Add abi-tag.h. * db2/Makefile (extra-objs): Add getlong.o. * elf/Makefile (generated): Add ld.so, ldd and $(rtld-installed-name). (others): Add ldconfig here instead of ldconfig.o to extra-objs. * malloc/Makefile (generated): Add mtrace. * po/Makefile: Don't include version.mk, not needed any more. * sunrpc/Makefile (generated): Add rpc-proto.d and rpcgen. * sysdeps/unix/Makefile: Fix local_lim.h -> bits/local_lim.h, syscall.h -> sys/syscall.h. (common-generated): Add s-proto.d. (postclean-generated): Add sysd-syscalls. * localedata/Makefile (test-output): Add all output files. (generated): Add test-input and test-output. (generated-dirs): Add all the dirs. 1998-01-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile (test-output, generated, generated-dirs): New variables. 1998-02-10 16:57 Ulrich Drepper <drepper@happy.cygnus.com> * resolv/nss_dns/dns-host.c: Various code cleanups. 1998-02-09 08:10 H.J. Lu <hjl@gnu.org> * resolv/gethnamaddr.c (getanswer): Fix the PTR/CNAME bug. From Philip Blundell <pb@nexus.co.uk>. * resolv/nss_dns/dns-host.c (getanswer_r): Ditto. 1998-02-08 Andreas Jaeger <aj@arthur.rhein-neckar.de> * libc.map: Add .rem, .div, .mul, .udiv, .umul, .urem for Sparc. Suggested by debian/sparc porters. 1998-02-07 Andreas Jaeger <aj@arthur.rhein-neckar.de> * misc/tst-efgcvt.c: Totally rewritten, added a lot of new tests for ecvt and fcvt. 1998-02-10 16:32 Ulrich Drepper <drepper@happy.cygnus.com> * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Use __xstat and __fxstat instead of stat and fstat. Use namespace clean __stpcpy. * signal/signal.h: Always define sigset_t if __need_sigset_t is defined even if __USE_POSIX is not defined. 1998-02-02 20:51 Zack Weinberg <zack@rabi.phys.columbia.edu> * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Correct last patch to support obsolete tty major numbers correctly. 1998-02-02 08:47 H.J. Lu <hjl@gnu.org> * login/Makefile ($(inst_libexecdir)/pt_chown): Make the target directory first and ignore install error. * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_r): Substract 128 from ptyno and fix a typo for the BSD style pty. 1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/Makefile ($(common-objpfx)s-proto.d): Depend on all syscalls.list's. 1998-02-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add getresuid and getresgid. * sysdeps/unix/sysv/linux/getresuid.c: New file. * sysdeps/unix/sysv/linux/getresgid.c: New file. * sysdeps/unix/sysv/linux/syscalls.list: Remove getres[ug]id, add s_getres[ug]id. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Add getres[ug]id. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 1998-02-02 08:11 H.J. Lu <hjl@gnu.org> * nscd/grpcache.c: Include <stdlib.h>. 1998-02-01 16:01 H.J. Lu <hjl@gnu.org> * stdlib/atoll.c: Fix comments. * sysdeps/posix/ttyname.c: Ignore stdin/stdout/stderr. * sysdeps/posix/ttyname_r.c: Ditto. 1998-02-03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * io/sys/stat.h: Define S_IFLNK and S_IFSOCK if __USE_BSD or __USE_MISC, independent of __USE_UNIX98. 1998-02-10 19:18 Ulrich Drepper <drepper@happy.cygnus.com> * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_missing_rt_sigs): Rename from __libc_have_rt_sigs and leave as COMMON data. 1998-02-04 11:58 Richard Henderson <rth@twiddle.rth.home> * Makeconfig (CFLAGS-.os): Kill -fno-common. * Makerules (libc.so): Prelink libc_pic.a, allocating commons. * libc.map (GLIBC_2.1): Add Linux/Alpha tv64 symbols. * elf/rtld.map: New file. Needed to define the GLIBC_2.* version symbols. * include/libc-symbols.h (symbol_version, default_symbol_version): Provide asm versions and correct !DO_VERSIONING versions. * sysdeps/unix/make-syscalls.sh: Recognize version symbols in the weak symbol list. * sysdeps/unix/sysv/linux/sigaction.c (__libc_missing_rt_sigs): Rename from __libc_have_rt_sigs and leave as COMMON data. * sysdeps/unix/sysv/linux/sigpending.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise. 1998-02-04 16:41 Zack Weinberg <zack@rabi.phys.columbia.edu> * sunrpc/Makefile: Correct dependencies of rpcgen. 1998-02-10 03:00 Ulrich Drepper <drepper@happy.cygnus.com> * nscd/Makefile: Fix test for available linuxthreads add-on. Patch by Zack Weinberg <zack@rabi.phys.columbia.edu>. 1998-02-05 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/syscalls.list: Fix typo in lchown. 1998-02-03 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/gnu/Makefile: Respect with-cvs variable. * manual/errno.texi (Error Messages): Correct description of strerror_r. Pointed out by jonas@bagge.se. 1998-01-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/socket.texi (Host Address Functions): Clarify description of inet_network. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/grantpt.c (argv): Move const to toplevel. (grantpt): Delete superfluous cast. 1998-02-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makefile ($(inst_slibdir)/libc-$(version).so): Depend on elf/ldso_install instead of elf/subdir_install. (elf/ldso_install): New target. * elf/Makefile (ldso_install): New target. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/powerpc/socket.S: Really do the change of 1998-01-06. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * string/bits/string2.h (strcmp): Use __string2_1bptr_p only for constant expressions. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * nss/test-netdb.c: Include <unistd.h> for gethostname and "nss.h" for __nss_configure_lookup. (output_hostent): Remove unused variable. 1998-02-07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * string/tst-inlcall.c: Fix format string. 1998-02-09 Andreas Jaeger <aj@arthur.rhein-neckar.de> * inet/netinet/in.h: Rename second parameter of bindresvport to avoid buggy gcc warning. [PR libc/412]
1998-02-10 20:06:30 +00:00
if test -z "$vcount" ; then
source=$strong
vcount=1
else
source="${strong}_${vcount}"
vcount=`expr $vcount + 1`
echo " echo 'strong_alias ($strong, $source)'; \\"
fi
echo " echo 'default_symbol_version($source, $base, $ver)'; \\"
;;
*@*)
base=`echo $name | sed 's/@.*//'`
ver=`echo $name | sed 's/.*@//'`
if test -z "$vcount" ; then
source=$strong
vcount=1
else
source="${strong}_${vcount}"
vcount=`expr $vcount + 1`
echo " echo 'strong_alias ($strong, $source)'; \\"
fi
echo " echo 'symbol_version($source, $base, $ver)'; \\"
;;
*)
echo " echo 'weak_alias ($strong, $name)'; \\"
;;
esac
done
# And finally, pipe this all into the compiler.
echo ' ) | $(COMPILE.S) -x assembler-with-cpp -o $@ -'
Update. 1998-02-24 08:10 H.J. Lu <hjl@gnu.org> * 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.
1998-02-26 17:17:05 +00:00
case $weak in
*@*)
# The versioned symbols are only in the shared library.
echo endif
;;
esac
echo endif
;;
esac
case x"$callnum",$srcfile,$args in
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
x-,-,* | x*,*.[sS],*V*) ;;
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
x*,-,*$ptr* | x*,*.[sS],*$ptr*)
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
nv_weak=`for name in $weak; do
case $name in
*@*) ;;
*) echo $name;;
esac; done`
# choose the name with the fewest leading underscores, preferably none
set `echo $strong $nv_weak |tr '@ \t' ' \n\n' |sort -r`
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
callname=$1
# convert signature string to individual numbered arg names
# e.g., i:ipbN -> i0 i1 p2 b3 N4
set `echo $args |
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
sed -e 's/^\(.\):\(.*\)/\2 <\10>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\11>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\12>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\13>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\14>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\15>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\16>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\17>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\18>/' \
-e 's/^\([^ ]\)\(.*\)/\2 <\19>/'`
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
rtn=$1; shift
args=$*
arglist=`echo $* |sed 's/ /, /g'`
# The best way to understand what's going on here is to examine
# the output in BUILDDIR/sysd-syscalls.
# generate makefile envelope & rule head
echo "ifeq (,\$(filter $file,\$(bp-thunks)))"
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
echo "bp-thunks += $file"
echo "\$(objpfx)\$(bppfx)$file.ob: \$(common-objpfx)s-proto.d"
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
# generate macro head
echo " (echo '#define $callname(`echo $arglist | \
sed -e 's/[<>]//g'`) `echo $rtn | \
sed -e 's/<\('$typ'0\)>/\1v;/g' \
-e 's/<\(b0\)>/x0; extern char \1v;/g'` \\'; \\"
# generate extern decls of dummy variables for each arg
echo " echo '`echo $args | \
sed -e 's/<\('$typ'[1-9]\)>/extern \1, \1v;/g' \
-e 's/<\([abBFIsSV][1-9]\)>/extern char \1v;/g' \
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
-e 's/<\([Wv][1-9]\)>/extern int \1v;/g'` \\'; \\"
# generate bounded-pointer thunk declarator
echo " echo '`echo $rtn | \
sed -e 's/<\('$ptr'0\)>/__typeof (\1v) *__bounded/g' \
-e 's/<\('$int'0\)>/__typeof (\1v)/g'` BP_SYM ($strong) (`echo $arglist | \
sed -e 's/<\('$ptr'[1-9]\)>/__typeof (\1v) *__bounded \1a/g' \
-e 's/<\('$int'[1-9]\)>/__typeof (\1v) \1a/g'`) { \\'; \\"
# generate extern primitive syscall declaration
echo " echo ' extern `echo $rtn | \
sed -e 's/<\('$ptr'0\)>/__typeof (\1v) *__unbounded/g' \
-e 's/<\('$int'0\)>/__typeof (\1v)/g'` ($callname) (`echo $arglist | \
sed -e 's/<\('$ptr'[1-9]\)>/__typeof (\1v) *__unbounded/g' \
-e 's/<\('$int'[1-9]\)>/__typeof (\1v)/g'`); \\'; \\"
# generate call the primtive system call, optionally wrapping bounds
# around the result if the signature's return keyletter is `b'.
echo " echo ' return `echo $rtn |
sed -e 's/<b0>/BOUNDED_N (/' \
-e 's/<.0>//'`($callname) (`echo $arglist | \
sed -e 's/<\(a[1-9]\)>/__ptrvalue (\1a)/g' \
-e 's/<\(n[1-9]\)>, <\(V[1-9]\)>/\1a, CHECK_N_PAGES (\2a, \1a)/g' \
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
-e 's/<\(b[1-9]\)>, <\(n[1-9]\)>/CHECK_N (\1a, \2a), \2a/g' \
-e 's/<\(b[1-9]\)>, <\(N[1-9]\)>/CHECK_N (\1a, *CHECK_1 (\2a)), __ptrvalue (\2a)/g' \
Update. 2000-08-17 Greg McGary <greg@mcgary.org> * Makeconfig (link-extra-libs-bounded): Strip `-bp' suffix from test program name when constructing suffix for $(LDLIBS-*). (bounded-thread-library): New variable. * crypt/Makefile [build-shared, build-static] (libcrypt-dep): Remove variable. ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * linuxthreads/Makefile (libpthread, librt): Remove variables. (librt-tests): Add variable. (tests): Use it. [build-shared, build-static] ($(addprefix $(objpfx),$(tests)), $(addprefix $(objpfx),$(librt-tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp), $(librt-tests:%=$(objpfx)%-bp)): Add dependencies. * math/Makefile (LDLIBS-*): Remove variables (they are redundant). [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * misc/Makefile [build-bounded] ($(objpfx)tst-tsearch-bp): Add dependencies. * rt/Makefile [build-shared, build-static] ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: s/\(CHECK\w+\)opt/\1_NULL_OK/ * sysdeps/unix/make-syscalls.sh: Likewise. * sysdeps/unix/sysv/linux/shmctl.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/i386/fpu/s_frexp.S: Check bounds. Wrap extern symbols in BP_SYM (). * sysdeps/i386/fpu/s_frexpf.S: Likewise. * sysdeps/i386/fpu/s_frexpl.S: Likewise. * sysdeps/i386/fpu/s_remquo.S: Likewise. * sysdeps/i386/fpu/s_remquof.S: Likewise. * sysdeps/i386/fpu/s_remquol.S: Likewise. * sysdeps/i386/fpu/s_sincos.S: Likewise. * sysdeps/i386/fpu/s_sincosf.S: Likewise. * sysdeps/i386/fpu/s_sincosl.S: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
2000-08-17 07:38:02 +00:00
-e 's/<\(B[1-9]\)>, <\(n[1-9]\)>/CHECK_N_NULL_OK (\1a, \2a), \2a/g' \
-e 's/<\(B[1-9]\)>, <\(N[1-9]\)>/CHECK_N_NULL_OK (\1a, *CHECK_1 (\2a)), __ptrvalue (\2a)/g' \
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
-e 's/<\(f[1-9]\)>/CHECK_N (\1a, 2)/g' \
-e 's/<\(i[1-9]\)>, <\(F[1-9]\)>/\1a, CHECK_FCNTL (\2a, \1a)/g' \
-e 's/<\(i[1-9]\)>, <\(I[1-9]\)>/\1a, CHECK_IOCTL (\2a, \1a)/g' \
-e 's/<\(p[1-9]\)>/CHECK_1 (\1a)/g' \
Update. 2000-08-17 Greg McGary <greg@mcgary.org> * Makeconfig (link-extra-libs-bounded): Strip `-bp' suffix from test program name when constructing suffix for $(LDLIBS-*). (bounded-thread-library): New variable. * crypt/Makefile [build-shared, build-static] (libcrypt-dep): Remove variable. ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * linuxthreads/Makefile (libpthread, librt): Remove variables. (librt-tests): Add variable. (tests): Use it. [build-shared, build-static] ($(addprefix $(objpfx),$(tests)), $(addprefix $(objpfx),$(librt-tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp), $(librt-tests:%=$(objpfx)%-bp)): Add dependencies. * math/Makefile (LDLIBS-*): Remove variables (they are redundant). [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * misc/Makefile [build-bounded] ($(objpfx)tst-tsearch-bp): Add dependencies. * rt/Makefile [build-shared, build-static] ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: s/\(CHECK\w+\)opt/\1_NULL_OK/ * sysdeps/unix/make-syscalls.sh: Likewise. * sysdeps/unix/sysv/linux/shmctl.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/i386/fpu/s_frexp.S: Check bounds. Wrap extern symbols in BP_SYM (). * sysdeps/i386/fpu/s_frexpf.S: Likewise. * sysdeps/i386/fpu/s_frexpl.S: Likewise. * sysdeps/i386/fpu/s_remquo.S: Likewise. * sysdeps/i386/fpu/s_remquof.S: Likewise. * sysdeps/i386/fpu/s_remquol.S: Likewise. * sysdeps/i386/fpu/s_sincos.S: Likewise. * sysdeps/i386/fpu/s_sincosf.S: Likewise. * sysdeps/i386/fpu/s_sincosl.S: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
2000-08-17 07:38:02 +00:00
-e 's/<\([PW][1-9]\)>/CHECK_1_NULL_OK (\1a)/g' \
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
-e 's/<\(s[1-9]\)>/CHECK_STRING (\1a)/g' \
Update. 2000-08-17 Greg McGary <greg@mcgary.org> * Makeconfig (link-extra-libs-bounded): Strip `-bp' suffix from test program name when constructing suffix for $(LDLIBS-*). (bounded-thread-library): New variable. * crypt/Makefile [build-shared, build-static] (libcrypt-dep): Remove variable. ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * linuxthreads/Makefile (libpthread, librt): Remove variables. (librt-tests): Add variable. (tests): Use it. [build-shared, build-static] ($(addprefix $(objpfx),$(tests)), $(addprefix $(objpfx),$(librt-tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp), $(librt-tests:%=$(objpfx)%-bp)): Add dependencies. * math/Makefile (LDLIBS-*): Remove variables (they are redundant). [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. * misc/Makefile [build-bounded] ($(objpfx)tst-tsearch-bp): Add dependencies. * rt/Makefile [build-shared, build-static] ($(addprefix $(objpfx),$(tests))): Consolidate individual dependencies. [build-bounded] ($(tests:%=$(objpfx)%-bp)): Add dependencies. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: s/\(CHECK\w+\)opt/\1_NULL_OK/ * sysdeps/unix/make-syscalls.sh: Likewise. * sysdeps/unix/sysv/linux/shmctl.c: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise. 2000-08-17 Greg McGary <greg@mcgary.org> * sysdeps/i386/fpu/s_frexp.S: Check bounds. Wrap extern symbols in BP_SYM (). * sysdeps/i386/fpu/s_frexpf.S: Likewise. * sysdeps/i386/fpu/s_frexpl.S: Likewise. * sysdeps/i386/fpu/s_remquo.S: Likewise. * sysdeps/i386/fpu/s_remquof.S: Likewise. * sysdeps/i386/fpu/s_remquol.S: Likewise. * sysdeps/i386/fpu/s_sincos.S: Likewise. * sysdeps/i386/fpu/s_sincosf.S: Likewise. * sysdeps/i386/fpu/s_sincosl.S: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Likewise. * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
2000-08-17 07:38:02 +00:00
-e 's/<\(S[1-9]\)>/CHECK_STRING_NULL_OK (\1a)/g' \
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
-e 's/<\([ivn][1-9]\)>/\1a/g'`)`echo $rtn $args |
sed -e 's/<b0>.*<\(n[1-9]\)>.*/, \1a)/' \
-e 's/<.0>.*//'`; \\'; \\"
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
echo " echo '} \\'; \\"
# generate thunk aliases
for name in $nv_weak; do
echo " echo 'weak_alias (BP_SYM ($strong), BP_SYM ($name)) \\'; \\"
done
* sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise. 2000-07-05 Greg McGary <greg@mcgary.org> * sysdeps/generic/bp-checks.h: New file. * sysdeps/generic/bp-thunks.h: Replace generic thunk definitions with list of #include files. * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters a, b, B, f, n, N, P, v, V. Fixup some indentation. Don't generate BP thunk if `V' appears in signature. Generate thunks with complete bounds checks. * sysdeps/unix/syscalls.list: Refine signatures using new keyletters. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Likewise.
2000-07-06 00:48:39 +00:00
# wrap up
echo "\
echo ''; \\
echo '#include <bp-thunks.h>'; \\
) | \$(COMPILE.c) -x c -o \$@ -"
### Use this for debugging intermediate output:
* sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list 2000-07-17 Greg McGary <greg@mcgary.org> * sysdeps/unix/make-syscalls.sh: Handle new arg signature keyletters F, I, S, W. Remove unused keyletter V. Surround signature argnames with angle-brackets for use as word delimiters, and to induce syntax errors for any args not handled. Split multi-echo echoes and comment each stage. * sysdeps/unix/common/syscalls.list: Refine & correct signatures. * sysdeps/unix/inet/syscalls.list: Likewise. * sysdeps/unix/mman/syscalls.list: Likewise. * sysdeps/unix/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/unix/sysv/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list
2000-07-17 22:28:59 +00:00
### ) >\$(@:.ob=.c)
### \$(subst -c,-E,\$(COMPILE.c)) -o \$(@:.ob=.ib) \$(@:.ob=.c)
### \$(COMPILE.c) -x cpp-output -o \$@ \$(@:.ob=.ib)"
echo endif
;;
esac
done