aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
AgeCommit message (Collapse)Author
1995-09-17Sat Sep 16 17:47:19 1995 Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de>Roland McGrath
* elf/elf.h (AT_GID): Fix typo: Read -> Real. * misc/efgvt_r.c: New file. Reentrant version of [efg]cvt functions. * misc/efgcvt.c: Rewrite to use reentrant functions. * misc/hsearch_r.c: New file. Reentrant version of functions from hsearch family. * misc/hsearch.c, misc/tsearch.c: New files. * misc/Makefile (routines): Add efgcvt_r, hsearch_r, hsearch, tsearch. * posix/unistd.h (ttyname_r): Add prototype for new function. * stdlib/drand48_r.c, stdlib/erand48_r.c, stdlib/jrand48_r.c, stdlib/lrand48_r.c, stdlib/mrand48_r.c, stdlib/nrand48_r.c, stdlib/seed48_r.c, stdlib/srand48_r.c, stdlib/lcong48_r.c, stdlib/drand48-iter.c: New files implementing reentrant versions of functions from drand48 family. * stdlib/seed48.c, stdlib/drand48.c, stdlib/erand48.c, stdlib/jrand48.c, stdlib/lrand48.c, stdlib/mrand48.c, stdlib/nrand48.c, stdlib/srand48.c, stdlib/lcong48.c: Rewrite to use reentrant versions. * stdlib/a64l.c, stdlib/l64a.c: New files. Implement a64l() and l64a() functions from SysV library. * stdlib/Makefile (routines): Add drand48_r, erand48_r, lrand48_r, nrand48_r, mrand48_r, jrand48_r, srand48_r, seed48_r, lcong48_r, drand48-iter, a64l, l64a. * stdlib/stdlib.h: Declare them. * stdlib/random_r.c: New file. Reentrant version of functions from random family. * stdlib/stdlib.h: Declare them. * stdlib/random.c: Rewrite to use reentrant functions. * string/strerror_r.c: New file. Reentrant version. * string/strerror.c: Change for new _strerror_internal form. * string/Makefile (routines): Add strerror_r. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Set default value of user_entry to `_start'. Close AT_ENTRY case with `break'. * sysdeps/generic/strstr.c: New and much faster implementation by Stephen R. van den Berg. * sysdeps/generic/_strerror.c: _strerror_internal now takes three argument and has and explicit buffer length. * sysdeps/mach/_strerror.c: Change for new interface with three arguments. * stdio/perror.c, stdio/vfprintf.c: Callers changed. * sysdeps/mach/hurd/ttyname_r.c: New file. Reentrant version. * sysdeps/posix/ttyname_r.c: New file. Reentrant version. * sysdeps/stub/ttyname_r: New file. Define as dummy function. * sysdeps/posix/utimes.c: Include <utime.h> for prototype. (utimes): First parameter to utime must be file, not path. * sysdeps/posix/sysconf.c (__sysconf): Test for CLK_TCK in case _SC_CLK_TCK and return it when available. Test for STREAM_MAX in case _SC_STREAM_MAX and return it when available. Add case for _SC_2_LOCALEDEF which is now available. * posix/sys/types.h [__USE_SVID] (key_t): New type. * sysvipc/Makefile, sysvipc/ftok.c, sysvipc/sys/ipc.h, sysvipc/sys/msg.h, sysvipc/sys/sem.h, sysvipc/sys/shm.h, sysdeps/stub/sys/msq_buf.h, sysdeps/stub/sys/sem_buf.h, sysdeps/stub/sys/shm_buf.h, sysdeps/stub/sys/ipc_buf.h, sysdeps/stub/semctl.c, sysdeps/stub/semget.c, sysdeps/stub/semop.c, sysdeps/stub/shmat.c, sysdeps/stub/shmctl.c, sysdeps/stub/shmdt.c, sysdeps/stub/shmget.c, sysdeps/stub/msgctl.c, sysdeps/stub/msgget.c, sysdeps/stub/msgrcv.c, sysdeps/stub/msgsnd.c: New files. Add implementation of System V IPC.
1995-09-08Document new files for Linux i386/ELF port.Ulrich Drepper
Fri Sep 8 16:32:12 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu> * sysdeps/unix/sysv/linux/Implies, sysdeps/unix/sysv/linux/Makefile, sysdeps/unix/sysv/linux/Subdirs, sysdeps/unix/sysv/linux/accept.S, sysdeps/unix/sysv/linux/adjtime.c, sysdeps/unix/sysv/linux/adjtimex.S, sysdeps/unix/sysv/linux/bind.S, sysdeps/unix/sysv/linux/connect.S, sysdeps/unix/sysv/linux/direct.h, sysdeps/unix/sysv/linux/dl-machine.h, sysdeps/unix/sysv/linux/errnos.h, sysdeps/unix/sysv/linux/fork.S, sysdeps/unix/sysv/linux/gethostid.c, sysdeps/unix/sysv/linux/gethostname.C, sysdeps/unix/sysv/linux/getpeername.S, sysdeps/unix/sysv/linux/getpgid.S, sysdeps/unix/sysv/linux/getpgrp.S, sysdeps/unix/sysv/linux/getsockname.S, sysdeps/unix/sysv/linux/getsockopt.S, sysdeps/unix/sysv/linux/gtty.S, sysdeps/unix/sysv/linux/listen.S, sysdeps/unix/sysv/linux/local_lim.h, sysdeps/unix/sysv/linux/madvise.c, sysdeps/unix/sysv/linux/msgctl.c, sysdeps/unix/sysv/linux/msgget.c, sysdeps/unix/sysv/linux/msgrcv.c, sysdeps/unix/sysv/linux/msgsnd.c, sysdeps/unix/sysv/linux/pipe.S, sysdeps/unix/sysv/linux/poll.c, sysdeps/unix/sysv/linux/readv.c, sysdeps/unix/sysv/linux/recv.S, sysdeps/unix/sysv/linux/recvfrom.S, sysdeps/unix/sysv/linux/recvmsg.S, sysdeps/unix/sysv/linux/semctl.c, sysdeps/unix/sysv/linux/semget.c, sysdeps/unix/sysv/linux/semop.c, sysdeps/unix/sysv/linux/send.S, sysdeps/unix/sysv/linux/sendmsg.S, sysdeps/unix/sysv/linux/sendto.S, sysdeps/unix/sysv/linux/setegid.c, sysdeps/unix/sysv/linux/seteuid.c, sysdeps/unix/sysv/linux/sethostid.c, sysdeps/unix/sysv/linux/setpgid.c, sysdeps/unix/sysv/linux/setpgrp.c, sysdeps/unix/sysv/linux/setsid.S, sysdeps/unix/sysv/linux/setsockopt.S, sysdeps/unix/sysv/linux/settimeofday.S, sysdeps/unix/sysv/linux/shmat.c, sysdeps/unix/sysv/linux/shmctl.c, sysdeps/unix/sysv/linux/shmdt.c, sysdeps/unix/sysv/linux/shmget.c, sysdeps/unix/sysv/linux/shutdown.S, sysdeps/unix/sysv/linux/sigaction.S, sysdeps/unix/sysv/linux/signal.S, sysdeps/unix/sysv/linux/sigpending.S, sysdeps/unix/sysv/linux/sigset.h, sysdeps/unix/sysv/linux/sockaddrcom.h, sysdeps/unix/sysv/linux/socketpair.S, sysdeps/unix/sysv/linux/speed.c, sysdeps/unix/sysv/linux/statbuf.h, sysdeps/unix/sysv/linux/stty.S, sysdeps/unix/sysv/linux/syscall.h, sysdeps/unix/sysv/linux/sysconf.c, sysdeps/unix/sysv/linux/tcdrain.c, sysdeps/unix/sysv/linux/tcflow.c, sysdeps/unix/sysv/linux/tcflush.c, sysdeps/unix/sysv/linux/tcgetattr.c, sysdeps/unix/sysv/linux/tcsetattr.c, sysdeps/unix/sysv/linux/termbits.h, sysdeps/unix/sysv/linux/ualarm.c, sysdeps/unix/sysv/linux/ulimit.c, sysdeps/unix/sysv/linux/usleep.c, sysdeps/unix/sysv/linux/utsnamelen.h, sysdeps/unix/sysv/linux/vfork.c, sysdeps/unix/sysv/linux/wait.c, sysdeps/unix/sysv/linux/wait4.S, sysdeps/unix/sysv/linux/waitpid.c, sysdeps/unix/sysv/linux/writev.c: New Linux/ELF specific, architecture independent files. sysdeps/unix/sysv/linux/i386/Dist, sysdeps/unix/sysv/linux/i386/Makefile, sysdeps/unix/sysv/linux/i386/brk.S, sysdeps/unix/sysv/linux/i386/fcntlbits.h, sysdeps/unix/sysv/linux/i386/fpu_control.c, sysdeps/unix/sysv/linux/i386/fpu_control.h, sysdeps/unix/sysv/linux/i386/fstat.S, sysdeps/unix/sysv/linux/i386/fxstat.S, sysdeps/unix/sysv/linux/i386/ieee_fpu.c, sysdeps/unix/sysv/linux/i386/init-first.S, sysdeps/unix/sysv/linux/i386/ipc.S, sysdeps/unix/sysv/linux/i386/lstat.S, sysdeps/unix/sysv/linux/i386/lxstat.S, sysdeps/unix/sysv/linux/i386/mknod.S, sysdeps/unix/sysv/linux/i386/mmap.S, sysdeps/unix/sysv/linux/i386/sbrk.S, sysdeps/unix/sysv/linux/i386/setfpucw.c, sysdeps/unix/sysv/linux/i386/signum.h, sysdeps/unix/sysv/linux/i386/socket.S, sysdeps/unix/sysv/linux/i386/stat.S, sysdeps/unix/sysv/linux/i386/syscall.S, sysdeps/unix/sysv/linux/i386/sysdep.S, sysdeps/unix/sysv/linux/i386/sysdep.h, sysdeps/unix/sysv/linux/i386/xmknod.S, sysdeps/unix/sysv/linux/i386/xstat.S: New Linux i386/ELF specific files. sysdeps/unix/sysv/linux/sys/ipc_buf.h, sysdeps/unix/sysv/linux/sys/mman.h, sysdeps/unix/sysv/linux/sys/msq_buf.h, sysdeps/unix/sysv/linux/sys/sem_buf.h, sysdeps/unix/sysv/linux/sys/shm_buf.h, sysdeps/unix/sysv/linux/sys/socketcall.h, sysdeps/unix/sysv/linux/sys/timex.h: New Linux/ELF specific, architecture independent header files.
1995-09-01* sysdeps/mach/hurd/i386/longjmp-ts.c: Use new array format forRoland McGrath
jmp_buf.
1995-09-01Fri Sep 1 16:16:12 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* libc-symbols.h (link_warning): Take new first arg SYMBOL; ask for a warning on references to that specific symbol, not the entire containing object file. (stub_warning): Pass symbol name to link_warning. * stdio/gets.c: Pass function name in link_warning invocation. * hurd/intr-msg.c: Treat apparent EINTR return from msg trap like MACH_SEND_INTERRUPTED. That indicates interrupt_operation was sent, but failed. * stdlib/msort.c: Include memcopy.h. (msort_with_tmp): If operating on aligned op_t words, use direct word fetches and stores. * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Add missing backslash.
1995-08-31Rewrote i386 setjmp in assembly.Roland McGrath
Thu Aug 31 13:23:35 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/unix/i386/brk.S [PIC]: Set __curbrk through the GOT. Rewrote i386 setjmp code in assembly, so as to avoid fighting with the compiler for the register values. * sysdeps/i386/setjmp.S, sysdeps/i386/__longjmp.S: New files. * sysdeps/i386/setjmp.c, sysdeps/i386/__longjmp.c: Files removed. * sysdeps/i386/jmp_buf.h [! _ASM] (__jmp_buf): Define as array of ints. [__USE_MISC || _ASM] (JB_*): New macros, for indices therein. (_JMPBUF_UNWINDS): Use JB_SP.
1995-08-31Wed Aug 30 16:44:55 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/mach/hurd/select.c: Deal with out of order replies during io_select request loop. Handle MACH_RCV_TIMED_OUT error from requests. * hurd/intr-msg.c: If the user passed the MACH_RCV_TIMEOUT option, distinguish MACH_RCV_TIMED_OUT from EINTR. * posix/glob.c (glob): Use realloc to extend strings for GLOB_MARK slash. (glob_in_dir): Don't allocate extra byte here. * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Decrement the DT_RELSZ value for the skipped reloc.
1995-08-28* sysdeps/mach/hurd/dirstream.h: Define `struct __dirstream'Roland McGrath
instead of `DIR'. * sysdeps/unix/bsd/dirstream.h: Likewise. * sysdeps/stub/dirstream.h: Likewise. * sysdeps/unix/dirstream.h: Likewise. * sysdeps/mach/hurd/telldir.c: Include "dirstream.h". * sysdeps/mach/hurd/seekdir.c: Likewise. * sysdeps/mach/hurd/opendir.c: Likewise. * sysdeps/mach/hurd/closedir.c: Likewise. * sysdeps/mach/hurd/readdir.c: Likewise. * sysdeps/unix/telldir.c: Likewise. * sysdeps/unix/seekdir.c: Likewise. * sysdeps/unix/rewinddir.c: Likewise. * sysdeps/unix/readdir.c: Likewise. * sysdeps/unix/opendir.c: Likewise. * sysdeps/unix/closedir.c: Likewise. * sysdeps/unix/bsd/telldir.c: Likewise. * sysdeps/unix/bsd/readdir.c: Likewise. * dirent/Makefile (headers): Remove dirstream.h. (distribute): Put it here instead.
1995-08-25Fri Aug 25 12:12:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/mach/hurd/mmap.c: Fix inverted test of MAP_FIXED. * stdio/vfscanf.c (number): Allow field width to inhibit first digit after base detection. * stdio/vfprintf.c (vfprintf: %s): Never search past the limit specified by the precision. * grp/grpread.c (__grpscan): New function. * grp/grp.h (__grpscan): Declare it. * grp/getgrgid.c: Use __grpscan. * grp/getgrnam.c: Likewise. * pwd/pwdread.c (__pwdscan): New function. * pwd/pwd.h (__pwdscan): Declare it. * pwd/getpwnam.c: Use __pwdscan. * pwd/getpwuid.c: Likewise. Thu Aug 24 16:29:40 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/mach/hurd/mmap.c: Treat (FLAGS & MAP_TYPE) == 0 like MAP_FILE. * hurd/thread-cancel.c: Return EINTR when called on self. * sysdeps/i386/elf/start.S (data_start): Define as weak alias for __data_start.
1995-08-22Tue Aug 22 16:49:12 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* inet/netdb.h: Moved to resolv. * inet/Makefile (headers): Remove netdb.h. * resolv/Makefile (headers): Add netdb.h. * resolv/gethnamaddr.c, resolv/inet_addr.c, resolv/netdb.h, resolv/res_send.c: Updated from BIND-4.9.3-BETA26. * hurd/thread-cancel.c: If SS->cancel_hook is not null, call it before resuming the thread. * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel_hook'. * hurd/Makefile: Removed dep on hurd/signal.h for RPC stub objects. Mon Aug 21 16:37:09 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/i386/dl-machine.h (elf_machine_rel): Grok R_386_NONE relocs, and do nothing. Why the linker generates them we may never know. * sysdeps/mach/hurd/i386/intr-msg.h: New file.
1995-08-22Removed dep on hurd/signal.h for RPC stub objects.Roland McGrath
1995-08-21* sysdeps/mach/hurd/Makefile: Don't elide sunrpc and manual fromRoland McGrath
`subdirs' variable.
1995-08-17Thu Aug 17 16:18:38 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/intr-msg.c: Use INTR_MSG_TRAP macro from machine-dependent "intr-msg.h" for special syscall code, instead of i386-specific asm. * hurd/hurdsig.c: Use INTR_MSG_BACK_OUT macro from machine-dependent "intr-msg.h" before mutating thread state to skip RPC. * sysdeps/mach/hurd/i386/trampoline.c: If PC is inside _hurd_intr_rpc_mach_msg special syscall code, use real SP saved in %ecx. * Makeconfig (link-libc): New variable; use shared library if available. (+link): Use it. * sysdeps/mach/hurd/fork.c (_hurd_fork_locks): Variable removed. Instead, declare with `symbol_set_declare'. (fork): Use symbol_set_* macros for _hurd_fork_locks. Use SS->thread instead of __mach_thread_self (). Suspend all other threads during task_create and port copying.
1995-08-14(kill_pid): Don't make `inline'.Roland McGrath
1995-08-14Mon Aug 14 16:51:13 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/thread-cancel.c: New file. * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): In rpc_wait case, frob mach_msg args to set timeout on receive. (_hurdsig_rcv_interrupted_p): Function removed. * sysdeps/mach/hurd/alpha/trampoline.c: Likewise. * sysdeps/mach/hurd/hppa/trampoline.c: Likewise. * sysdeps/mach/hurd/mips/trampoline.c: Likewise. * hurd/intr-msg.c: New file. * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel'. (_hurdsig_rcv_interrupted_p): Declaration removed. (HURD_EINTR_RPC): Macro removed. (_hurd_longjmp_thread_state, _hurd_interrupted_rpc_timeout): Declare these. * hurd/intr-rpc.h: New file. * hurd/intr-rpc.defs: Just import intr-rpc.h. * hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): New variable. (interrupted_reply_port_location): Take new flag arg; only catch faults if it's set. (abort_rpcs): Rename to _hurdsig_abort_rpcs; take same new flag arg. No longer use _hurdsig_rcv_interrupted_p; instead compare PC to &_hurd_intr_rpc_msg_in_trap. If before it, mutate state to simulate MACH_SEND_INTERRUPTED return; on it, interrupt the operation. All callers changed. * hurd/hurd.h (hurd_thread_cancel, hurd_check_cancel): Declare these. * hurd/Makefile (distribute): Remove intr-rpc.awk. (sig): Add thread-cancel. (transform-user-stub, transform-user-stub-output): Variables removed. * sysdeps/mach/hurd/dl-sysdep.c: Change all RPCs from `__hurd_intr_rpc_*' to `__*'. (_hurd_intr_rpc_mach_msg): New function. (_hurd_thread_sigstate): Function removed. * sysdeps/mach/hurd/ioctl.c: Use _hurd_intr_rpc_mach_msg function, instead of __mach_msg inside HURD_EINTR_RPC macro. * sysdeps/generic/morecore.c [__GNU_LIBRARY__]: Declare `__sbrk' to take ptrdiff_t arg. * sysdeps/mach/hurd/fork.c: Remove _hurd_longjmp_thread_state decl. * sysdeps/mach/hurd/kill.c (kill_pid): Don't make `inline'. * libc-symbols.h [GCC >= 2.7] (strong_alias, weak_symbol, weak_alias): Use `extern' storage class.
1995-08-09(__setuid): Switch the port-type and port-count parameters to __auth_makeauth.Miles Bader
1995-08-09(__setgid): Switch the port-type and port-count parameters to __auth_makeauth.Miles Bader
1995-08-07Mon Aug 7 14:04:36 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/generic/sysd-stdio.c (__stdio_reopen): Return failure when __stdio_open fails with a code other than ENFILE or EMFILE. * csu/initfini.c (SECTION): New macro, different definitions for #ifdef HAVE_ELF and not. (_init, _fini): Use that macro. * config.make.in (have-initfini): New variable, set by configure. * conf/portability.h (NEED_INETADDR, NEED_INETATON): New macros.
1995-07-30(accept): If the protocol family can't tell us what an address means, just ↵Miles Bader
return a zero-length buffer instead.
1995-07-28(bind): Don't use file_invoke_translator, as it doesn't work. Instead just ↵Miles Bader
lookup the translated node again, and hope we're not hit by any race conditions.
1995-07-27* csu/Makefile [$(elf)=yes] (have-initfini): Set to yes.Roland McGrath
[$(have-initfini)=yes]: Test this rather than $(elf) for crtstuff. [start-installed-name-rule]: If this is defined, elide rule for $(objpfx)$(start-installed-name). * sysdeps/unix/sysv/sco3.2.4/Makefile [$(subdir)=csu] (start-installed-rule, start-installed-name-rule): New variables; specify crt1.o, created by our own rule. ($(objpfx)crt1.o): New rule. * configure.in: Require autoconf 2.4.2 or later. Change all AC_CACHE_VAL uses to use new AC_CACHE_CHECK macro instead; prettify some messages. [$elf!=yes] (libc_cv_have_initfini): New test for `.init' and `.fini' sections. * munch-tmpl.c [HAVE_INITFINI]: Call _init and atexit (_fini) in this case rather than #ifdef HAVE_ELF. * config.h.in (HAVE_INITFINI): New macro.
1995-07-25* sysdeps/mach/hurd/pathconf.c: Declare VALUE as int, not long int.Roland McGrath
1995-07-25* stdlib/strtol.c [_LIBC]: Define STDC_HEADERS.Roland McGrath
* sysdeps/unix/sysv/ftime.S: New file. * locale/locfile-parse.c (categories_write): Cast "" to char *. * io/fcntl.h [__OPTIMIZE__] (creat): Macro removed. * time/strftime.c: Use year modulo 100 for %y. * time/sys/timeb.h: Add __BEGIN_DECLS and __END_DECLS. * sysdeps/unix/snarf-ioctls (snarfexclude): Use two sed's instead of one, to work around bug in sunos4.1.2 sed.
1995-07-24Mon Jul 24 03:13:16 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/posix/pathconf.c: New file.
1995-07-23Sat Jul 22 20:53:18 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>cvs/libc-950723cvs/libc-950722Roland McGrath
* sysdeps/unix/i386/sysdep.h (JUMPTARGET): Use ## to avoid space before @PLT. * sysdeps/mach/i386/sysdep.h (JUMPTARGET): New macro. * sysdeps/i386/bsd-_setjmp.S: Use JUMPTARGET macro in jmp insn. * sysdeps/i386/bsd-setjmp.S: Likewise.
1995-07-23Use JUMPTARGET macro in jmp insn.Roland McGrath
1995-07-22Removed stub warning.Roland McGrath
1995-07-22Sat Jul 22 01:56:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/unix/i386/sysdep.h (JUMPTARGET): New macro; use name@PLT #ifdef PIC. (PSEUDO): Use JUMPTARGET(syscall_error) in jump insn. * sysdeps/unix/i386/syscall.S: Use JUMPTARGET(syscall_error) in jump insn. * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.h: Rewritten. * sysdeps/unix/sysv/sysv4/linux/i386/syscall.S: New file. * sysdeps/unix/sysv/sysv4/linux/i386/socket.S: Include <sys/socketcall.h>. Save %ebx in call-clobbered %edx instead of stack. Use JUMPTARGET(syscall_error) in jump insn. * Makeconfig (+gccwarn): Add -Wbad-function-cast -Wconversion. * sysdeps/unix/i386/sysdep.h (ENTRY): Use ASM_GLOBAL_DIRECTIVE and ASM_TYPE_DIRECTIVE. (ASM_TYPE_DIRECTIVE): New macro; defined using `.type' #ifdef ELF. * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.S (__syscall_error): Rewritten, #include'ing unix/i386/sysdep.S for most of the code. * sysdeps/unix/i386/sysdep.S [PIC]: Store into `errno' through the GOT. Fixes to help Linux, inspired by drepper's work: * configure.in (os=linux*): Use unix/sysv/sysv4 for $base_os, instead of unix/sysv. * sysdeps/posix/utimes.c: New file. * sysdeps/generic/getdomain.c: New file. * sysdeps/i386/init-first.c: Removed gratuitous #include <hurd.h>. * sysdeps/generic/dl-sysdep.c: Include <unistd.h> and declare externals _dl_argc, _dl_argc, and _environ. * sysdeps/unix/sysv/linux/{accept,connect,getsockname,rename, socketpair,waitpid,bind,getpeername,listen,setsid,wait4}.S: Moved to new directory sysdeps/unix/sysv/sysv4/linux. * sysdeps/unix/sysv/linux: Directory removed. * sysdeps/unix/sysv/i386/linux/{socket.S,sysdep.h,sysdep.S}: Moved to new directory sysdeps/unix/sysv/sysv4/linux/i386. * sysdeps/unix/sysv/linux/i386: Directory removed.
1995-07-22Removed gratuitous #include <hurd.h>.Roland McGrath
1995-07-21*** empty log message ***Thomas Bushnell, BSG
Fri Jul 21 12:57:29 1995 Michael I Bushnell <mib@geech.gnu.ai.mit.edu> * sysdeps/mach/hurd/socket.c (socket): Consider MIG_BAD_ID and EOPNOTSUPP as indications that the server has died. * sysdeps/mach/hurd/pipe.c (__pipe): Likewise. * sysdeps/mach/hurd/socketpair.c (socketpair): Likewise.
1995-07-21(__pipe): Consider MIG_BAD_ID and EOPNOTSUPP as indications that the server ↵Thomas Bushnell, BSG
port has died.
1995-07-10Mon Jul 10 05:39:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/mach/hurd/i386/init-first.c (init): Take just one arg, DATA for the entry SP; DATA[-1] is always the return address location. In both cthreads and non-cthreads cases, use asm to force parameters into %eax and %ecx before return, and mutate DATA[-1] to return to specific asm code to set up the user from %eax and %ecx. [PIC] (_init): Caller changed. (__libc_init_first) [! PIC] (doinit): Use asm to effect call to init with SP unwound to argument data ptr. Thu Jul 6 14:28:56 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/mach/hurd/dl-sysdep.c (fmh): Fixed this kludge to work when 0x08000000 and up are not mapped. * Makerules (stamp$o-$(subdir) rule): Remove the timestamp file before touching it. (lib%.so): Use -Wl to get -soname to ld. * elf/dlsym.c: Pass final arg to _dl_lookup_symbol. * elf/Makefile (libdl.so): Pass $(LDFLAGS.so).
1995-06-14undo previous change, not needed w/ configure fixBrendan Kehoe
1995-06-13Don't include <hurd.h>. [PIC] (soinit): Renamed to (global) _init.Roland McGrath
1995-06-13 * sysdeps/unix/bsd/osf/alpha/sysdep.h (HAVE_ASM_SET_DIRECTIVE): ↵Brendan Kehoe
Put in #undef. Tue Jun 13 12:13:18 1995 Brendan Kehoe (brendan@zen.org) * sysdeps/unix/bsd/osf/alpha/sysdep.h (HAVE_ASM_SET_DIRECTIVE): Put in #undef.
1995-06-12Mon Jun 12 13:15:45 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* Makerules (lib%.so: lib%_pic.a): Moved this rule to after installation rules. * sysdeps/mach/sysdep.h [HAVE_ELF] (ENTRY): Redefine this macro so it uses the `.type' directive, which is necessary for shared libraries to work properly.
1995-06-12* elf/dl-load.c (_dl_map_object): Add MAP_INHERIT flag in mmapRoland McGrath
from zero fill. * elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF; if nonzero, don't let *REF satisfy the reference itself. * elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl. * sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to _dl_lookup_symbol. * elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of R->r_offset to RESOLVE callback. * elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF satisfy the reference itself if its value equals the reloc's offset. * elf/rtld.c (dl_main): Write a newline in fatal msg. * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so).
1995-06-08Thu Jun 8 02:50:26 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* elf/rtld.c [! NDEBUG] (__assert_perror_fail): New function. * hurd/hurdstartup.c (_hurd_startup): Fancier kludge to guess phdr and user entry point addresses. * elf/dl-load.c (open_path): Don't do strlen on DIRPATH if it's null. (_dl_map_object): DT_RPATH value is relative to DT_STRTAB value. * Makerules (install-lib.so): Don't include libc.so. [$(build-shared)=yes] (install): Depend on the installed libc.so file. [$(build-shared)=yes] (install-no-libc.a): Make this, rather than install, depend on the installed $(install-lib.so) files. [$(build-shared)=yes] (install-lib.so): Append libc.so after that rule. * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Add kludge to allocate high addresses to avoid random mappings appearing there. (mmap): Comment out mask; always pass zero. Tue Jun 6 13:34:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/i386/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro. * sysdeps/mach/hurd/dl-sysdep.c (mmap): Use it as mask in vm_map call. * elf/dl-error.c (_dl_catch_error): Clear *ERRSTRING and *OBJNAME when successful. * sysdeps/mach/hurd/dl-sysdep.c (threadvars): New static variable. (__hurd_threadvar_max, __hurd_threadvar_stack_offset): Define these variables, using the `threadvars' buffer. * elf/dl-reloc.c: Don't dereference L->l_prev when it's null. * sysdeps/i386/dl-runtime.c: Likewise. * elf/rtld.c (dl_main): Add missing NULL terminating argument in _dl_sysdep_fatal call. (__assert_fail): Likewise. * locale/Makefile (localedef-modules): Renamed ctype to locale-ctype so as not to conflict with the object file for ctype/ctype.c in the build directory. * sysdeps/i386/dl-machine.h (elf_machine_rel): If MAP->l_type is lt_interpreter, first undo relocation done during bootstrapping.
1995-05-31Tue May 30 15:52:32 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* mach/Makefile (server-interfaces): Removed notify and device_reply. For shlibs with eager binding, libmachuser.so must not refer to any functions not defined in libc.
1995-05-27Cast RHS to const unsigned char * to avoid error from Irix-4.0.5's C compiler.Jim Meyering
1995-05-27Fri May 26 13:00:08 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/hurdsig.c (_hurd_internal_post_signal): Don't loop to check pending signals if the thread is in a critical section. It will send us a msg when it finishes. * sysdeps/mach/hurd/pathconf.c: New file. * sysdeps/mach/hurd/fpathconf.c: New file. * sysdeps/mach/hurd/sigaction.c: Only notify the proc server for SIGCHLD when the SA_NOCLDSTOP bit actually changes.
1995-05-26Only notify the proc server for SIGCHLD when the SA_NOCLDSTOP bit actually ↵Roland McGrath
changes.
1995-05-26Remove trailing white space.Jim Meyering
1995-05-21[LIBC_]: Do include string.h.Jim Meyering
1995-05-21Don't include <string.h> at all. HPUX-9.01 and IRIX-4.0.5 vendor C compilers ↵Jim Meyering
get conflicting dcls for memchr unless one manually arranges for them to define __STDC__.
1995-05-20Fri May 19 17:16:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/mach/hurd/i386/init-first.c: In cthreads case, handle args on stack from kernel. * posix/Makefile, sysdeps/alpha/Makefile, * sysdeps/mach/hurd/Makefile, sysdeps/sparc/Makefile, Makefile, * Makerules, Make-dist: Fix "cvs commit" cmds in rules to not fail in the absence of CVS dirs. * hurd/hurdstartup.c: Don't call __mach_init. Grok args from the kernel on the stack properly. * set-init.c: Never call _init/_fini; just run __libc_subinit. * Makerules (LDFLAGS-c.so): Add -nostartfiles. * mach/Machrules (LDFLAGS-$(interface.so)): Likewise. * configure.in: Move defaulting of --with-elf and --with-gnu-* based on host os outside the AC_CACHE_VAL for the sysdirs calculation. * Makeconfig (localedir, nlsdir): New variables. * values.h: New file. * Makefile (headers): Add values.h. * locale/Makefile (distribute): Add error.h. * locale/localedef.c: Include "error.h". (main): Use error_message_count instead of warning_cntr.
1995-05-11Wed May 10 21:00:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/mach/i386/sysdep.h (RETURN_TO): New macro. * Makerules (install-lib.so): Add %.so for each %_pic.a. * sysdeps/mach/hurd/i386/init-first.c: New file.
1995-05-09(__data_start): Define this symbol as the first thing in .data.Roland McGrath
1995-05-08Sat May 6 11:06:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* Makeconfig (+gccwarn): Add -Winline. * hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is set, avoid abort_rpcs, and use reply and intr ports saved in SS->context. * sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port from SS->context. Don't clear SS->context. * sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when setting SS->context. If msg_sig_post returns, re-lock and clear SS->context. Fri May 5 10:37:09 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * mach/Makefile (errsystems.c): Comment out generation rule. * sysdeps/mach/_strerror.c: Consider a system unknown if its bad_sub member is null. * mach/mig-alloc.c: Add weak alias to non-__ name.
1995-05-04Wed May 3 11:56:35 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* sysdeps/mach/hurd/dup2.c: Fixed broken test in last change. * elf/dl-error.c (_dl_catch_error): Actually call the OPERATE function. Duh. * hurd/Makefile (distribute): Added hurdstartup.h. * hurd/hurd.h: Remove _hurd_startup decl. * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS): Use __attribute__ ((__unused__)) instead of gratuitous self reference. * sysdeps/mach/hurd/dup2.c: Call _hurd_alloc_fd to expand the table if FD2 doesn't fit. * sysdeps/mach/hurd/getdtsz.c: Return the RLIM_NOFILE soft limit, not the current table size. * sysdeps/i386/init-first.c: New file. * sysdeps/stub/init-first.c: New file.
1995-05-02* sysdeps/mach/i386/sysdep.h (SNARF_ARGS, CALL_WITH_SP): Rewritten.Roland McGrath
* sysdeps/i386/dl-machine.h: New file. * sysdeps/stub/dl-machine.h: New file. * sysdeps/i386/dl-runtime.c: New file. * sysdeps/stub/dl-runtime.c: New file. * sysdeps/i386/elf/start.S: New file. * sysdeps/generic/dl-sysdep.c: New file. * sysdeps/mach/hurd/dl-sysdep.c: New file.