From 28f540f45bbacd939bfd07f213bcad2bf730b1bf Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sat, 18 Feb 1995 01:27:10 +0000 Subject: [PATCH] initial import --- .cvsignore | 10 + =__ify | 12 + ChangeLog | 11886 ++++++++++++++++ INSTALL | 832 ++ Make-dist | 223 + MakeTAGS | 107 + Makeconfig | 358 + Makefile | 233 + Makefile.in | 6 + Makerules | 544 + NEWS | 323 + NOTES | 95 + README | 67 + README.template | 67 + Rules | 128 + a.out.h | 1 + aclocal.m4 | 32 + alloca.h | 1 + ansidecl.h | 108 + arpa/ftp.h | 1 + arpa/inet.h | 1 + arpa/nameser.h | 1 + arpa/telnet.h | 1 + arpa/tftp.h | 1 + assert.h | 1 + assert/Makefile | 26 + assert/assert-perr.c | 55 + assert/assert.c | 83 + assert/assert.h | 98 + bare/Makefile | 55 + conf/portability.h | 20 + config-name.in | 10 + config.guess | 494 + config.h.in | 30 + config.make.in | 26 + config.sub | 816 ++ configure | 1503 ++ configure.in | 413 + crypt-README | 14 + csu/Makefile | 84 + csu/initfini.c | 85 + ctype.h | 1 + ctype/Makefile | 29 + ctype/ctype-extn.c | 32 + ctype/ctype-info.c | 30 + ctype/ctype.c | 51 + ctype/ctype.h | 152 + ctype/test_ctype.c | 92 + dirent.h | 1 + dirent/Makefile | 32 + dirent/alphasort.c | 29 + dirent/dirent.h | 149 + dirent/list.c | 68 + dirent/scandir.c | 89 + dirent/tst-seekdir.c | 40 + elf/elf.h | 587 + endian.h | 1 + errno.h | 45 + fcntl.h | 1 + features.h | 157 + fnmatch.h | 1 + ftw.h | 1 + getopt.h | 1 + glob.h | 1 + gnu-stabs.h | 75 + gnu/signal.h | 1 + gnu/time.h | 1 + gnu/types.h | 1 + gnu/wait.h | 1 + gnulib/.cvsignore | 4 + gnulib/Makefile | 23 + grp.h | 1 + grp/Makefile | 29 + grp/fgetgrent.c | 41 + grp/getgrent.c | 67 + grp/getgrgid.c | 50 + grp/getgrnam.c | 50 + grp/grp.h | 101 + grp/grpopen.c | 28 + grp/grpread.c | 135 + grp/initgroups.c | 73 + grp/testgrp.c | 45 + hurd/.cvsignore | 4 + hurd/Makefile | 117 + hurd/Notes | 37 + hurd/STATUS | 72 + hurd/alloc-fd.c | 127 + hurd/catch-exc.c | 78 + hurd/ctty-input.c | 77 + hurd/ctty-output.c | 82 + hurd/dtable.c | 277 + hurd/fchroot.c | 43 + hurd/fd-close.c | 46 + hurd/fd-read.c | 49 + hurd/fd-write.c | 42 + hurd/fopenport.c | 131 + hurd/getdport.c | 54 + hurd/getuids.c | 63 + hurd/getumask.c | 25 + hurd/hurd-raise.c | 48 + hurd/hurd.h | 292 + hurd/hurd/fd.h | 222 + hurd/hurd/id.h | 55 + hurd/hurd/ioctl.h | 71 + hurd/hurd/port.h | 152 + hurd/hurd/resource.h | 50 + hurd/hurd/signal.h | 391 + hurd/hurd/threadvar.h | 107 + hurd/hurd/userlink.h | 105 + hurd/hurdauth.c | 130 + hurd/hurdexec.c | 259 + hurd/hurdfault.c | 143 + hurd/hurdfault.h | 49 + hurd/hurdid.c | 91 + hurd/hurdinit.c | 193 + hurd/hurdinline.c | 11 + hurd/hurdintr.awk | 25 + hurd/hurdioctl.c | 264 + hurd/hurdkill.c | 84 + hurd/hurdlookup.c | 381 + hurd/hurdmalloc.c | 411 + hurd/hurdmalloc.h | 17 + hurd/hurdmsg.c | 451 + hurd/hurdpid.c | 71 + hurd/hurdports.c | 52 + hurd/hurdprio.c | 87 + hurd/hurdrlimit.c | 50 + hurd/hurdsig.c | 1080 ++ hurd/hurdsock.c | 115 + hurd/intern-fd.c | 50 + hurd/intr-rpc.awk | 45 + hurd/intr-rpc.defs | 27 + hurd/invoke-trans.c | 37 + hurd/msgportdemux.c | 66 + hurd/msgstub.c | 26 + hurd/new-fd.c | 39 + hurd/openport.c | 29 + hurd/pid2task.c | 32 + hurd/port2fd.c | 75 + hurd/ports-get.c | 46 + hurd/ports-set.c | 57 + hurd/preempt-sig.c | 68 + hurd/privports.c | 60 + hurd/setauth.c | 124 + hurd/setuids.c | 59 + hurd/siginfo.c | 27 + hurd/task2pid.c | 30 + hurd/vpprintf.c | 60 + inet/Makefile | 36 + inet/arpa/ftp.h | 109 + inet/arpa/inet.h | 53 + inet/arpa/telnet.h | 320 + inet/arpa/tftp.h | 80 + inet/getproto.c | 55 + inet/getprtent.c | 119 + inet/getprtname.c | 62 + inet/getservent.c | 121 + inet/getsrvbynm.c | 65 + inet/getsrvbypt.c | 60 + inet/inet_addr.c | 152 + inet/inet_lnaof.c | 59 + inet/inet_mkadr.c | 62 + inet/inet_net.c | 93 + inet/inet_netof.c | 58 + inet/inet_ntoa.c | 59 + inet/netdb.h | 147 + inet/netinet/in.h | 198 + inet/protocols/routed.h | 104 + inet/protocols/rwhod.h | 68 + inet/protocols/talkd.h | 114 + inet/protocols/timed.h | 99 + inet/rcmd.c | 414 + inet/rexec.c | 146 + install-sh | 238 + io/Makefile | 49 + io/creat.c | 30 + io/fcntl.h | 86 + io/fts.c | 981 ++ io/fts.h | 125 + io/ftw.c | 216 + io/ftw.h | 44 + io/getdirname.c | 45 + io/getwd.c | 47 + io/lockf.c | 68 + io/poll.h | 1 + io/pwd.c | 38 + io/sys/fcntl.h | 1 + io/sys/poll.h | 65 + io/sys/stat.h | 168 + io/test-utime.c | 78 + io/utime.h | 49 + libc-symbols.h | 182 + limits.h | 112 + locale.h | 1 + locale/.cvsignore | 4 + locale/C-collate.c | 7 + locale/C-ctype.c | 14 + locale/C-ctype_ct.c | 793 ++ locale/C-ctype_mb.c | 9 + locale/C-monetary.c | 22 + locale/C-numeric.c | 12 + locale/C-response.c | 12 + locale/C-time.c | 25 + locale/Makefile | 31 + locale/locale.h | 97 + locale/localeconv.c | 51 + locale/localeinfo.h | 208 + locale/setlocale.c | 45 + localeinfo.h | 1 + mach/.cvsignore | 4 + mach/Machrules | 212 + mach/Makefile | 195 + mach/bootprivport.c | 64 + mach/devstream.c | 264 + mach/err_boot.sub | 63 + mach/err_ipc.sub | 109 + mach/err_kern.sub | 188 + mach/err_mach.sub | 130 + mach/err_server.sub | 374 + mach/err_us.sub | 56 + mach/error_compat.c | 70 + mach/errorlib.h | 87 + mach/errstring.c | 100 + mach/errsystems.awk | 21 + mach/errsystems.c | 27 + mach/hello.c | 48 + mach/lock-intern.h | 89 + mach/mach.h | 95 + mach/mach/error.h | 140 + mach/mach/mach.h | 3 + mach/mach/mach_traps.h | 76 + mach/mach/mig_support.h | 68 + mach/mach_error.c | 85 + mach/mach_error.h | 80 + mach/mach_init.c | 39 + mach/mach_init.h | 48 + mach/mach_shortcuts.c | 13 + mach/mach_syscalls.c | 10 + mach/mach_syscalls.h | 31 + mach/mach_traps.S | 15 + mach/mig-alloc.c | 28 + mach/mig-dealloc.c | 28 + mach/mig_strncpy.c | 11 + mach/msg-destroy.c | 160 + mach/msg.c | 82 + mach/msg_destroy.c | 4 + mach/msgserver.c | 194 + mach/mutex-solid.c | 50 + mach/setup-thread.c | 99 + mach/shortcut.awk | 45 + mach/spin-lock.c | 8 + mach/spin-lock.h | 34 + mach/spin-solid.c | 28 + mach/syscalls.awk | 9 + mach/vm_page_size.c | 3 + malloc.h | 1 + manual/.cvsignore | 10 + manual/=copying.texinfo | 540 + manual/=float.texinfo | 416 + manual/=limits.texinfo | 593 + manual/=process.texinfo | 1452 ++ manual/=stdarg.texi | 290 + manual/=stddef.texi | 81 + manual/Makefile | 186 + manual/arith.texi | 623 + manual/assert.texi | 113 + manual/conf.texi | 1091 ++ manual/creature.texi | 113 + manual/ctype.texi | 250 + manual/errno.texi | 1015 ++ manual/examples/add.c | 30 + manual/examples/atexit.c | 15 + manual/examples/db.c | 52 + manual/examples/dir.c | 25 + manual/examples/filecli.c | 54 + manual/examples/filesrv.c | 46 + manual/examples/inetcli.c | 59 + manual/examples/inetsrv.c | 103 + manual/examples/isockad.c | 23 + manual/examples/longopt.c | 92 + manual/examples/memopen.c | 17 + manual/examples/memstrm.c | 19 + manual/examples/mkfsock.c | 43 + manual/examples/mkisock.c | 31 + manual/examples/pipe.c | 66 + manual/examples/popen.c | 33 + manual/examples/rprintf.c | 52 + manual/examples/search | Bin 0 -> 24576 bytes manual/examples/search.c | 93 + manual/examples/select.c | 40 + manual/examples/setjmp.c | 32 + manual/examples/sigh1.c | 36 + manual/examples/sigusr.c | 61 + manual/examples/stpcpy.c | 13 + manual/examples/strftim.c | 31 + manual/examples/strncat.c | 14 + manual/examples/termios.c | 60 + manual/examples/testopt.c | 50 + manual/filesys.texi | 2080 +++ manual/header.texi | 14 + manual/intro.texi | 689 + manual/io.texi | 396 + manual/job.texi | 1249 ++ manual/lang.texi | 1213 ++ manual/lgpl.texinfo | 546 + manual/libc.texinfo | 1007 ++ manual/libcbook.texi | 3 + manual/llio.texi | 1979 +++ manual/locale.texi | 605 + manual/maint.texi | 966 ++ manual/math.texi | 505 + manual/mbyte.texi | 695 + manual/memory.texi | 1751 +++ manual/pattern.texi | 1189 ++ manual/pipe.texi | 208 + manual/process.texi | 775 + manual/search.texi | 195 + manual/setjmp.texi | 213 + manual/signal.texi | 3316 +++++ manual/socket.texi | 2748 ++++ manual/startup.texi | 908 ++ manual/stdio.texi | 3635 +++++ manual/string.texi | 947 ++ manual/summary.awk | 110 + manual/sysinfo.texi | 180 + manual/terminal.texi | 1787 +++ manual/time.texi | 1574 ++ manual/users.texi | 1012 ++ math.h | 1 + math/.cvsignore | 4 + math/Makefile | 39 + math/finite.c | 31 + math/math.h | 317 + math/test-math.c | 148 + memory.h | 1 + misc/Makefile | 67 + misc/bsd-compat.c | 50 + misc/daemon.c | 71 + misc/fstab.c | 205 + misc/fstab.h | 79 + misc/getpass.c | 92 + misc/getttyent.c | 199 + misc/getusershell.c | 137 + misc/init-misc.c | 42 + misc/insremque.c | 55 + misc/ioctltst.c | 55 + misc/nlist.h | 48 + misc/paths.h | 69 + misc/progname.c | 50 + misc/sgtty.h | 36 + misc/sys/cdefs.h | 104 + misc/sys/dir.h | 28 + misc/sys/file.h | 55 + misc/sys/ioctl.h | 130 + misc/sys/ptrace.h | 137 + misc/sys/syslog.h | 196 + misc/sys/uio.h | 58 + misc/syslog.c | 235 + misc/syslog.h | 1 + misc/ttyent.h | 66 + misc/ttyslot.c | 68 + mkinstalldirs | 32 + munch-tmpl.c | 41 + munch.awk | 11 + netdb.h | 1 + netinet/in.h | 1 + nlist.h | 1 + obstack.h | 1 + paths.h | 1 + poll.h | 1 + posix/.cvsignore | 4 + posix/Makefile | 84 + posix/confstr.c | 54 + posix/execl.c | 48 + posix/execle.c | 45 + posix/execlp.c | 44 + posix/execv.c | 31 + posix/execvp.c | 112 + posix/fnmatch.c | 200 + posix/fnmatch.h | 67 + posix/getconf.c | 134 + posix/getopt.c | 759 + posix/getopt.h | 133 + posix/getopt1.c | 191 + posix/glob.c | 671 + posix/glob.h | 97 + posix/glob/.cvsignore | 1 + posix/glob/Makefile.in | 66 + posix/glob/configure | 1123 ++ posix/glob/configure.bat | 23 + posix/glob/configure.in | 19 + posix/gnu/types.h | 84 + posix/id.c | 173 + posix/posix1_lim.h | 87 + posix/posix2_lim.h | 82 + posix/sys/times.h | 54 + posix/sys/types.h | 114 + posix/sys/unistd.h | 1 + posix/sys/utsname.h | 64 + posix/sys/wait.h | 151 + posix/tar.h | 110 + posix/testfnm.args | 1 + posix/testfnm.c | 12 + posix/tstgetopt.args | 1 + posix/tstgetopt.c | 41 + posix/unistd.h | 642 + posix/wordexp.c | 184 + posix/wordexp.h | 66 + posix1_lim.h | 1 + posix2_lim.h | 1 + printf.h | 1 + printsources | 29 + protocols/routed.h | 1 + protocols/rwhod.h | 1 + protocols/talkd.h | 1 + protocols/timed.h | 1 + pwd.h | 1 + pwd/Makefile | 26 + pwd/fgetpwent.c | 40 + pwd/getpw.c | 48 + pwd/getpwent.c | 67 + pwd/getpwnam.c | 50 + pwd/getpwuid.c | 50 + pwd/putpwent.c | 43 + pwd/pwd.h | 92 + pwd/pwdopen.c | 28 + pwd/pwdread.c | 116 + resolv.h | 1 + resolv/Makefile | 31 + resolv/arpa/nameser.h | 347 + resolv/gethnamaddr.c | 736 + resolv/getnetbyaddr.c | 57 + resolv/getnetbyname.c | 68 + resolv/getnetent.c | 161 + resolv/getnetnamadr.c | 294 + resolv/herror.c | 118 + resolv/nsap_addr.c | 97 + resolv/res_comp.c | 433 + resolv/res_debug.c | 814 ++ resolv/res_init.c | 609 + resolv/res_mkquery.c | 247 + resolv/res_query.c | 384 + resolv/res_send.c | 746 + resolv/resolv.h | 240 + resolv/sethostent.c | 80 + resolv/sys/bitypes.h | 3 + resource/Makefile | 26 + resource/sys/resource.h | 154 + resource/sys/vlimit.h | 68 + resource/sys/vtimes.h | 69 + rpc/auth.h | 1 + rpc/auth_unix.h | 1 + rpc/clnt.h | 1 + rpc/netdb.h | 1 + rpc/pmap_clnt.h | 1 + rpc/pmap_prot.h | 1 + rpc/pmap_rmt.h | 1 + rpc/rpc.h | 1 + rpc/rpc_msg.h | 1 + rpc/svc.h | 1 + rpc/svc_auth.h | 1 + rpc/types.h | 1 + rpc/xdr.h | 1 + set-hooks.h | 56 + set-init.c | 42 + setjmp.h | 1 + setjmp/Makefile | 32 + setjmp/longjmp.c | 40 + setjmp/setjmp.h | 112 + setjmp/sigjmp.c | 36 + setjmp/tst-setjmp.c | 61 + sgtty.h | 1 + signal.h | 1 + signal/.cvsignore | 4 + signal/Makefile | 40 + signal/gsignal.c | 28 + signal/sigaddset.c | 32 + signal/sigdelset.c | 32 + signal/sigempty.c | 32 + signal/sigfillset.c | 32 + signal/sigismem.c | 32 + signal/signal.h | 248 + signal/sigsetops.c | 6 + signal/sigsetops.h | 34 + signal/ssignal.c | 29 + signal/sys/signal.h | 1 + signal/tst-signal.c | 44 + socket/Makefile | 30 + socket/sys/socket.h | 310 + socket/sys/un.h | 33 + stdio.h | 1 + stdio/.cvsignore | 4 + stdio/Makefile | 114 + stdio/_itoa.c | 45 + stdio/_itoa.h | 54 + stdio/asprintf.c | 39 + stdio/bug1.c | 28 + stdio/bug1.input | 1 + stdio/bug2.c | 12 + stdio/bug3.c | 52 + stdio/bug4.c | 50 + stdio/bug5.c | 60 + stdio/bug6.c | 27 + stdio/bug6.input | 1 + stdio/bug7.c | 53 + stdio/clearerr.c | 31 + stdio/dprintf.c | 37 + stdio/errnobug.c | 60 + stdio/fclose.c | 69 + stdio/feof.c | 37 + stdio/ferror.c | 37 + stdio/fflush.c | 45 + stdio/fgetc.c | 35 + stdio/fgetpos.c | 40 + stdio/fgets.c | 121 + stdio/fileno.c | 48 + stdio/fmemopen.c | 108 + stdio/fopen.c | 110 + stdio/fopncook.c | 48 + stdio/fpioconst.c | 401 + stdio/fpioconst.h | 52 + stdio/fprintf.c | 38 + stdio/fputc.c | 35 + stdio/fputs.c | 35 + stdio/fread.c | 128 + stdio/freopen.c | 74 + stdio/fscanf.c | 38 + stdio/fseek.c | 177 + stdio/fsetpos.c | 37 + stdio/ftell.c | 54 + stdio/fwrite.c | 208 + stdio/gen-mpn-copy | 31 + stdio/getc.c | 5 + stdio/getchar.c | 30 + stdio/getdelim.c | 173 + stdio/getline.c | 33 + stdio/gets.c | 59 + stdio/getw.c | 33 + stdio/glue.c | 114 + stdio/gmp-impl.h | 283 + stdio/gmp.h | 525 + stdio/internals.c | 667 + stdio/longlong.h | 1295 ++ stdio/memstream.c | 177 + stdio/mp_clz_tab.c | 39 + stdio/newstream.c | 54 + stdio/obstream.c | 187 + stdio/perror.c | 42 + stdio/printf-prs.c | 211 + stdio/printf.c | 37 + stdio/printf.h | 114 + stdio/printf_fp.c | 991 ++ stdio/psignal.c | 49 + stdio/putc.c | 5 + stdio/putchar.c | 30 + stdio/puts.c | 32 + stdio/putw.c | 31 + stdio/reg-printf.c | 47 + stdio/rewind.c | 33 + stdio/scanf.c | 37 + stdio/setbuf.c | 30 + stdio/setbuffer.c | 30 + stdio/setlinebuf.c | 29 + stdio/setvbuf.c | 85 + stdio/snprintf.c | 39 + stdio/sprintf.c | 37 + stdio/sscanf.c | 37 + stdio/stdio.h | 681 + stdio/tempnam.c | 50 + stdio/temptest.c | 31 + stdio/test-fseek.c | 67 + stdio/test-fwrite.c | 68 + stdio/test-popen.c | 67 + stdio/test_rdwr.c | 129 + stdio/tmpfile.c | 43 + stdio/tmpnam.c | 42 + stdio/tst-fileno.c | 37 + stdio/tst-printf.c | 298 + stdio/tstgetln.c | 46 + stdio/tstgetln.input | 3 + stdio/tstscanf.c | 100 + stdio/tstscanf.input | 7 + stdio/ungetc.c | 58 + stdio/vasprintf.c | 86 + stdio/vdprintf.c | 51 + stdio/vfprintf.c | 907 ++ stdio/vfscanf.c | 570 + stdio/vprintf.c | 33 + stdio/vscanf.c | 32 + stdio/vsnprintf.c | 56 + stdio/vsprintf.c | 50 + stdio/vsscanf.c | 58 + stdio/xbug.c | 63 + stdlib.h | 1 + stdlib/Makefile | 43 + stdlib/abs.c | 30 + stdlib/alloca.h | 44 + stdlib/atexit.c | 65 + stdlib/atof.c | 30 + stdlib/atoi.c | 30 + stdlib/atol.c | 30 + stdlib/bsearch.c | 51 + stdlib/div.c | 92 + stdlib/exit.c | 70 + stdlib/exit.h | 44 + stdlib/labs.c | 31 + stdlib/ldiv.c | 92 + stdlib/mblen.c | 31 + stdlib/mbstowcs.c | 78 + stdlib/mbtowc.c | 84 + stdlib/msort.c | 103 + stdlib/on_exit.c | 37 + stdlib/qsort.c | 243 + stdlib/rand.c | 30 + stdlib/random.c | 357 + stdlib/stdlib.h | 289 + stdlib/strtod.c | 1027 ++ stdlib/strtof.c | 12 + stdlib/strtol.c | 189 + stdlib/strtold.c | 12 + stdlib/strtoq.c | 22 + stdlib/strtoul.c | 21 + stdlib/strtouq.c | 22 + stdlib/testdiv.c | 33 + stdlib/testdiv.input | 2 + stdlib/testmb.c | 69 + stdlib/testrand.c | 51 + stdlib/testsort.c | 38 + stdlib/tst-strtod.c | 94 + stdlib/tst-strtol.c | 127 + stdlib/wcstombs.c | 77 + stdlib/wctomb.c | 72 + string.h | 1 + string/.cvsignore | 4 + string/Makefile | 39 + string/endian.h | 43 + string/memfrob.c | 32 + string/memory.h | 34 + string/strcoll.c | 70 + string/strdup.c | 38 + string/strerror.c | 33 + string/strfry.c | 46 + string/string.h | 186 + string/strings.h | 32 + string/strsignal.c | 49 + string/strtok.c | 73 + string/strxfrm.c | 76 + string/swab.c | 32 + string/test-ffs.c | 54 + string/testcopy.c | 111 + string/tester.c | 570 + strings.h | 1 + sunrpc/.cvsignore | 6 + sunrpc/Makefile | 128 + sunrpc/auth_none.c | 133 + sunrpc/auth_unix.c | 319 + sunrpc/authuxprot.c | 66 + sunrpc/bindrsvprt.c | 78 + sunrpc/clnt_gen.c | 110 + sunrpc/clnt_perr.c | 305 + sunrpc/clnt_raw.c | 238 + sunrpc/clnt_simp.c | 112 + sunrpc/clnt_tcp.c | 466 + sunrpc/clnt_udp.c | 442 + sunrpc/etc.rpc | 33 + sunrpc/get_myaddr.c | 91 + sunrpc/getrpcent.c | 235 + sunrpc/getrpcport.c | 55 + sunrpc/pm_getmaps.c | 86 + sunrpc/pm_getport.c | 89 + sunrpc/pmap_clnt.c | 115 + sunrpc/pmap_prot.c | 57 + sunrpc/pmap_prot2.c | 116 + sunrpc/pmap_rmt.c | 392 + sunrpc/portmap.c | 481 + sunrpc/rpc/auth.h | 166 + sunrpc/rpc/auth_unix.h | 72 + sunrpc/rpc/clnt.h | 331 + sunrpc/rpc/netdb.h | 52 + sunrpc/rpc/pmap_clnt.h | 65 + sunrpc/rpc/pmap_prot.h | 94 + sunrpc/rpc/pmap_rmt.h | 53 + sunrpc/rpc/rpc.h | 73 + sunrpc/rpc/rpc_msg.h | 187 + sunrpc/rpc/svc.h | 280 + sunrpc/rpc/svc_auth.h | 42 + sunrpc/rpc/types.h | 63 + sunrpc/rpc/xdr.h | 270 + sunrpc/rpc_clntout.c | 126 + sunrpc/rpc_cmsg.c | 190 + sunrpc/rpc_common.c | 41 + sunrpc/rpc_cout.c | 350 + sunrpc/rpc_dtable.c | 46 + sunrpc/rpc_hout.c | 370 + sunrpc/rpc_main.c | 433 + sunrpc/rpc_parse.c | 419 + sunrpc/rpc_parse.h | 157 + sunrpc/rpc_prot.c | 289 + sunrpc/rpc_scan.c | 473 + sunrpc/rpc_scan.h | 101 + sunrpc/rpc_svcout.c | 275 + sunrpc/rpc_util.c | 436 + sunrpc/rpc_util.h | 114 + sunrpc/rpcinfo.c | 665 + sunrpc/rpcsvc/bootparam.x | 97 + sunrpc/rpcsvc/klm_prot.x | 134 + sunrpc/rpcsvc/mount.x | 161 + sunrpc/rpcsvc/nfs_prot.x | 355 + sunrpc/rpcsvc/nlm_prot.x | 179 + sunrpc/rpcsvc/rex.x | 229 + sunrpc/rpcsvc/rnusers.x | 86 + sunrpc/rpcsvc/rquota.x | 61 + sunrpc/rpcsvc/rstat.x | 145 + sunrpc/rpcsvc/sm_inter.x | 116 + sunrpc/rpcsvc/spray.x | 84 + sunrpc/rpcsvc/yp.x | 291 + sunrpc/rpcsvc/yppasswd.x | 63 + sunrpc/svc.c | 479 + sunrpc/svc_auth.c | 114 + sunrpc/svc_authux.c | 134 + sunrpc/svc_raw.c | 166 + sunrpc/svc_run.c | 72 + sunrpc/svc_simple.c | 143 + sunrpc/svc_tcp.c | 419 + sunrpc/svc_udp.c | 475 + sunrpc/xdr.c | 577 + sunrpc/xdr_array.c | 153 + sunrpc/xdr_float.c | 267 + sunrpc/xdr_mem.c | 184 + sunrpc/xdr_rec.c | 580 + sunrpc/xdr_ref.c | 132 + sunrpc/xdr_stdio.c | 189 + sys/bitypes.h | 1 + sys/cdefs.h | 1 + sys/dir.h | 1 + sys/errno.h | 1 + sys/fcntl.h | 1 + sys/file.h | 1 + sys/ioctl.h | 1 + sys/poll.h | 1 + sys/ptrace.h | 1 + sys/resource.h | 1 + sys/signal.h | 1 + sys/socket.h | 1 + sys/stat.h | 1 + sys/syslog.h | 1 + sys/termios.h | 1 + sys/time.h | 1 + sys/timeb.h | 1 + sys/times.h | 1 + sys/ttydefaults.h | 1 + sys/types.h | 1 + sys/uio.h | 1 + sys/un.h | 1 + sys/unistd.h | 1 + sys/utsname.h | 1 + sys/vlimit.h | 1 + sys/vtimes.h | 1 + sys/wait.h | 1 + sysdeps/alpha/DEFS.h | 27 + sysdeps/alpha/Dist | 4 + sysdeps/alpha/Implies | 2 + sysdeps/alpha/Makefile | 94 + sysdeps/alpha/__longjmp.c | 91 + sysdeps/alpha/__math.h | 35 + sysdeps/alpha/bsd-_setjmp.S | 30 + sysdeps/alpha/bsd-setjmp.S | 30 + sysdeps/alpha/bytesex.h | 3 + sysdeps/alpha/copysign.c | 31 + sysdeps/alpha/divl.S | 54 + sysdeps/alpha/divlu.S | 54 + sysdeps/alpha/divq.S | 51 + sysdeps/alpha/divqu.S | 57 + sysdeps/alpha/divrem.m4 | 48 + sysdeps/alpha/fabs.c | 28 + sysdeps/alpha/gmp-mparam.h | 26 + sysdeps/alpha/jmp_buf.h | 46 + sysdeps/alpha/macros.m4 | 34 + sysdeps/alpha/memchr.c | 86 + sysdeps/alpha/reml.S | 57 + sysdeps/alpha/remlu.S | 57 + sysdeps/alpha/remq.S | 54 + sysdeps/alpha/remqu.S | 60 + sysdeps/alpha/setjmp.S | 29 + sysdeps/alpha/setjmp_aux.c | 74 + sysdeps/alpha/strchr.c | 84 + sysdeps/alpha/strlen.c | 54 + sysdeps/alpha/udiv_qrnnd.S | 152 + sysdeps/am29k/ffs.c | 40 + sysdeps/generic/Dist | 8 + sysdeps/generic/Makefile | 60 + sysdeps/generic/_strerror.c | 43 + sysdeps/generic/abort.c | 42 + sysdeps/generic/acos.c | 42 + sysdeps/generic/acosh.c | 102 + sysdeps/generic/add_1.c | 61 + sysdeps/generic/add_n.c | 61 + sysdeps/generic/addmul_1.c | 64 + sysdeps/generic/asin.c | 44 + sysdeps/generic/asincos.c | 169 + sysdeps/generic/asinh.c | 101 + sysdeps/generic/atan.c | 27 + sysdeps/generic/atan2.c | 281 + sysdeps/generic/atanh.c | 83 + sysdeps/generic/bcopy.c | 31 + sysdeps/generic/bzero.c | 81 + sysdeps/generic/cabs.c | 26 + sysdeps/generic/ceil.c | 68 + sysdeps/generic/cmp.c | 55 + sysdeps/generic/configure | 52 + sysdeps/generic/configure.in | 7 + sysdeps/generic/confname.h | 76 + sysdeps/generic/copysign.c | 30 + sysdeps/generic/cosh.c | 133 + sysdeps/generic/det_endian.c | 34 + sysdeps/generic/divmod.c | 234 + sysdeps/generic/divmod_1.c | 209 + sysdeps/generic/exp.c | 203 + sysdeps/generic/exp__E.c | 136 + sysdeps/generic/expm1.c | 169 + sysdeps/generic/fabs.c | 27 + sysdeps/generic/ffs.c | 47 + sysdeps/generic/floor.c | 74 + sysdeps/generic/fmod.c | 155 + sysdeps/generic/frexp.c | 53 + sysdeps/generic/ftime.c | 44 + sysdeps/generic/get_str.c | 213 + sysdeps/generic/getenv.c | 44 + sysdeps/generic/getpgrp.c | 28 + sysdeps/generic/gmp-mparam.h | 26 + sysdeps/generic/htonl.c | 32 + sysdeps/generic/htons.c | 32 + sysdeps/generic/hypot.c | 27 + sysdeps/generic/infnan.c | 48 + sysdeps/generic/isnan.c | 29 + sysdeps/generic/ldexp.c | 27 + sysdeps/generic/log.c | 486 + sysdeps/generic/log10.c | 37 + sysdeps/generic/log1p.c | 170 + sysdeps/generic/log__L.c | 110 + sysdeps/generic/lshift.c | 86 + sysdeps/generic/lstat.c | 31 + sysdeps/generic/make_siglist.c | 51 + sysdeps/generic/mathimpl.h | 127 + sysdeps/generic/memccpy.c | 44 + sysdeps/generic/memchr.c | 168 + sysdeps/generic/memcmp.c | 369 + sysdeps/generic/memcopy.h | 149 + sysdeps/generic/memcpy.c | 55 + sysdeps/generic/memmem.c | 46 + sysdeps/generic/memmove.c | 99 + sysdeps/generic/memset.c | 85 + sysdeps/generic/mig-reply.c | 53 + sysdeps/generic/mod_1.c | 198 + sysdeps/generic/modf.c | 31 + sysdeps/generic/morecore.c | 48 + sysdeps/generic/mul.c | 147 + sysdeps/generic/mul_1.c | 58 + sysdeps/generic/mul_n.c | 420 + sysdeps/generic/ntohl.c | 32 + sysdeps/generic/ntohs.c | 32 + sysdeps/generic/pow.c | 215 + sysdeps/generic/putenv.c | 101 + sysdeps/generic/resourcebits.h | 53 + sysdeps/generic/rint.c | 87 + sysdeps/generic/rshift.c | 87 + sysdeps/generic/sbrk.c | 42 + sysdeps/generic/setenv.c | 86 + sysdeps/generic/sigaction.h | 50 + sysdeps/generic/signame.c | 275 + sysdeps/generic/signame.h | 57 + sysdeps/generic/sigset.h | 79 + sysdeps/generic/sincos.c | 98 + sysdeps/generic/sinh.c | 121 + sysdeps/generic/sockaddrcom.h | 34 + sysdeps/generic/speed.c | 67 + sysdeps/generic/stpcpy.c | 35 + sysdeps/generic/stpncpy.c | 89 + sysdeps/generic/strcasecmp.c | 46 + sysdeps/generic/strcat.c | 48 + sysdeps/generic/strchr.c | 183 + sysdeps/generic/strcmp.c | 43 + sysdeps/generic/strcpy.c | 41 + sysdeps/generic/strcspn.c | 38 + sysdeps/generic/strlen.c | 149 + sysdeps/generic/strncase.c | 47 + sysdeps/generic/strncat.c | 76 + sysdeps/generic/strncmp.c | 69 + sysdeps/generic/strncpy.c | 82 + sysdeps/generic/strpbrk.c | 38 + sysdeps/generic/strrchr.c | 49 + sysdeps/generic/strsep.c | 39 + sysdeps/generic/strspn.c | 44 + sysdeps/generic/strstr.c | 56 + sysdeps/generic/sub_n.c | 61 + sysdeps/generic/submul_1.c | 64 + sysdeps/generic/sys/mman.h | 106 + sysdeps/generic/sysd-stdio.c | 189 + sysdeps/generic/tan.c | 74 + sysdeps/generic/tanh.c | 99 + sysdeps/generic/termbits.h | 202 + sysdeps/generic/trig.h | 215 + sysdeps/generic/uname.c | 63 + sysdeps/generic/utsnamelen.h | 3 + sysdeps/generic/varargs.h | 61 + sysdeps/generic/vfork.c | 31 + sysdeps/generic/vlimit.c | 51 + sysdeps/generic/vtimes.c | 66 + sysdeps/generic/waitstatus.h | 103 + sysdeps/generic/wordcopy.c | 405 + sysdeps/i386/Implies | 1 + sysdeps/i386/Makefile | 3 + sysdeps/i386/__longjmp.c | 66 + sysdeps/i386/abort.c | 28 + sysdeps/i386/add_n.S | 94 + sysdeps/i386/addmul_1.S | 75 + sysdeps/i386/asm-syntax.h | 64 + sysdeps/i386/bsd-_setjmp.S | 32 + sysdeps/i386/bsd-setjmp.S | 32 + sysdeps/i386/bytesex.h | 3 + sysdeps/i386/bzero.c | 81 + sysdeps/i386/ffs.c | 45 + sysdeps/i386/i586/memcopy.h | 94 + sysdeps/i386/jmp_buf.h | 9 + sysdeps/i386/lshift.S | 84 + sysdeps/i386/memchr.c | 48 + sysdeps/i386/memcopy.h | 86 + sysdeps/i386/memset.c | 83 + sysdeps/i386/mul_1.S | 74 + sysdeps/i386/rshift.S | 86 + sysdeps/i386/setjmp.c | 55 + sysdeps/i386/strlen.c | 36 + sysdeps/i386/sub_n.S | 94 + sysdeps/i386/submul_1.S | 75 + sysdeps/i860/memcopy.h | 33 + sysdeps/i960/Implies | 2 + sysdeps/i960/ffs.c | 43 + sysdeps/ieee754/Dist | 2 + sysdeps/ieee754/cabs.c | 228 + sysdeps/ieee754/cbrt.c | 120 + sysdeps/ieee754/copysign.c | 37 + sysdeps/ieee754/dbl2mpn.c | 107 + sysdeps/ieee754/drem.c | 107 + sysdeps/ieee754/frexp.c | 42 + sysdeps/ieee754/huge_val.h | 87 + sysdeps/ieee754/ieee754.h | 153 + sysdeps/ieee754/infnan.c | 50 + sysdeps/ieee754/isinf.c | 40 + sysdeps/ieee754/isinfl.c | 44 + sysdeps/ieee754/isnan.c | 37 + sysdeps/ieee754/isnanl.c | 40 + sysdeps/ieee754/ldbl2mpn.c | 93 + sysdeps/ieee754/ldexp.c | 145 + sysdeps/ieee754/log10.c | 30 + sysdeps/ieee754/logb.c | 48 + sysdeps/ieee754/mpn2dbl.c | 46 + sysdeps/ieee754/mpn2flt.c | 42 + sysdeps/ieee754/mpn2ldbl.c | 46 + sysdeps/ieee754/nan.h | 46 + sysdeps/ieee754/sqrt.c | 120 + sysdeps/ieee754/support.c | 524 + sysdeps/m68k/Implies | 2 + sysdeps/m68k/Makefile | 32 + sysdeps/m68k/__longjmp.c | 56 + sysdeps/m68k/bsd-_setjmp.S | 42 + sysdeps/m68k/bsd-setjmp.S | 42 + sysdeps/m68k/bytesex.h | 3 + sysdeps/m68k/ffs.c | 42 + sysdeps/m68k/fpu/Makefile | 11 + sysdeps/m68k/fpu/__math.h | 168 + sysdeps/m68k/fpu/acos.c | 32 + sysdeps/m68k/fpu/asin.c | 2 + sysdeps/m68k/fpu/atan.c | 2 + sysdeps/m68k/fpu/atan2.c | 71 + sysdeps/m68k/fpu/atanh.c | 2 + sysdeps/m68k/fpu/ceil.c | 4 + sysdeps/m68k/fpu/cos.c | 2 + sysdeps/m68k/fpu/cosh.c | 2 + sysdeps/m68k/fpu/drem.c | 31 + sysdeps/m68k/fpu/exp.c | 3 + sysdeps/m68k/fpu/expm1.c | 3 + sysdeps/m68k/fpu/fabs.c | 3 + sysdeps/m68k/fpu/fl.h | 41 + sysdeps/m68k/fpu/floor.c | 3 + sysdeps/m68k/fpu/fmod.c | 27 + sysdeps/m68k/fpu/frexp.c | 27 + sysdeps/m68k/fpu/isinf.c | 34 + sysdeps/m68k/fpu/isnan.c | 4 + sysdeps/m68k/fpu/ldexp.c | 27 + sysdeps/m68k/fpu/log.c | 3 + sysdeps/m68k/fpu/log10.c | 2 + sysdeps/m68k/fpu/log1p.c | 2 + sysdeps/m68k/fpu/logb.c | 46 + sysdeps/m68k/fpu/pow.c | 27 + sysdeps/m68k/fpu/rint.c | 5 + sysdeps/m68k/fpu/sin.c | 2 + sysdeps/m68k/fpu/sinh.c | 2 + sysdeps/m68k/fpu/sqrt.c | 2 + sysdeps/m68k/fpu/switch/68881-sw.h | 64 + sysdeps/m68k/fpu/switch/Dist | 1 + sysdeps/m68k/fpu/switch/Makefile | 52 + sysdeps/m68k/fpu/switch/__math.h | 1 + sysdeps/m68k/fpu/switch/switch.c | 86 + sysdeps/m68k/fpu/tan.c | 2 + sysdeps/m68k/fpu/tanh.c | 2 + sysdeps/m68k/jmp_buf.h | 19 + sysdeps/m68k/m68020/add_n.S | 76 + sysdeps/m68k/m68020/addmul_1.S | 80 + sysdeps/m68k/m68020/asm-syntax.h | 105 + sysdeps/m68k/m68020/mul_1.S | 87 + sysdeps/m68k/m68020/sub_n.S | 76 + sysdeps/m68k/m68020/submul_1.S | 80 + sysdeps/m68k/memcopy.h | 95 + sysdeps/m68k/setjmp.c | 48 + sysdeps/m88k/ffs.c | 42 + sysdeps/m88k/m88100/add_n.S | 133 + sysdeps/m88k/m88100/mul_1.S | 127 + sysdeps/m88k/m88100/sub_n.S | 134 + sysdeps/m88k/m88110/mul_1.S | 80 + sysdeps/mach/Makefile | 74 + sysdeps/mach/Subdirs | 1 + sysdeps/mach/_strerror.c | 60 + sysdeps/mach/adjtime.c | 46 + sysdeps/mach/alpha/machine-lock.h | 80 + sysdeps/mach/alpha/machine-sp.h | 36 + sysdeps/mach/alpha/syscall.S | 39 + sysdeps/mach/alpha/sysdep.h | 41 + sysdeps/mach/alpha/thread_state.h | 39 + sysdeps/mach/configure | 17 + sysdeps/mach/configure.in | 15 + sysdeps/mach/getpagesize.c | 32 + sysdeps/mach/gettimeofday.c | 47 + sysdeps/mach/hppa/machine-lock.h | 63 + sysdeps/mach/hurd/.cvsignore | 4 + sysdeps/mach/hurd/Dist | 3 + sysdeps/mach/hurd/Implies | 2 + sysdeps/mach/hurd/Makefile | 132 + sysdeps/mach/hurd/Subdirs | 1 + sysdeps/mach/hurd/_exit.c | 54 + sysdeps/mach/hurd/accept.c | 71 + sysdeps/mach/hurd/access.c | 138 + sysdeps/mach/hurd/adjtime.c | 53 + sysdeps/mach/hurd/alpha/exc2signal.c | 76 + sysdeps/mach/hurd/alpha/longjmp-ctx.c | 38 + sysdeps/mach/hurd/alpha/longjmp-ts.c | 41 + sysdeps/mach/hurd/alpha/sigcontext.h | 65 + sysdeps/mach/hurd/alpha/sigreturn.c | 212 + sysdeps/mach/hurd/alpha/trampoline.c | 286 + sysdeps/mach/hurd/bind.c | 102 + sysdeps/mach/hurd/brk.c | 130 + sysdeps/mach/hurd/chdir.c | 45 + sysdeps/mach/hurd/chflags.c | 38 + sysdeps/mach/hurd/chmod.c | 40 + sysdeps/mach/hurd/chown.c | 41 + sysdeps/mach/hurd/chroot.c | 45 + sysdeps/mach/hurd/close.c | 36 + sysdeps/mach/hurd/closedir.c | 52 + sysdeps/mach/hurd/configure | 21 + sysdeps/mach/hurd/configure.in | 19 + sysdeps/mach/hurd/connect.c | 75 + sysdeps/mach/hurd/defs.c | 85 + sysdeps/mach/hurd/dirstream.h | 40 + sysdeps/mach/hurd/dup2.c | 114 + sysdeps/mach/hurd/err_hurd.sub | 11 + sysdeps/mach/hurd/errlist.awk | 77 + sysdeps/mach/hurd/errlist.c | 93 + sysdeps/mach/hurd/errnos.awk | 157 + sysdeps/mach/hurd/errnos.h | 266 + sysdeps/mach/hurd/execve.c | 45 + sysdeps/mach/hurd/fchdir.c | 45 + sysdeps/mach/hurd/fchflags.c | 36 + sysdeps/mach/hurd/fchmod.c | 38 + sysdeps/mach/hurd/fchown.c | 39 + sysdeps/mach/hurd/fcntl.c | 159 + sysdeps/mach/hurd/fcntlbits.h | 178 + sysdeps/mach/hurd/fdopen.c | 69 + sysdeps/mach/hurd/fexecve.c | 34 + sysdeps/mach/hurd/flock.c | 39 + sysdeps/mach/hurd/fork.c | 574 + sysdeps/mach/hurd/fstat.c | 38 + sysdeps/mach/hurd/fsync.c | 33 + sysdeps/mach/hurd/ftruncate.c | 34 + sysdeps/mach/hurd/getcwd.c | 250 + sysdeps/mach/hurd/getdents.c | 62 + sysdeps/mach/hurd/getdtsz.c | 39 + sysdeps/mach/hurd/getegid.c | 58 + sysdeps/mach/hurd/geteuid.c | 58 + sysdeps/mach/hurd/getgid.c | 55 + sysdeps/mach/hurd/getgroups.c | 68 + sysdeps/mach/hurd/gethostid.c | 33 + sysdeps/mach/hurd/gethostname.c | 48 + sysdeps/mach/hurd/getitimer.c | 104 + sysdeps/mach/hurd/getlogin.c | 40 + sysdeps/mach/hurd/getpeername.c | 59 + sysdeps/mach/hurd/getpgid.c | 44 + sysdeps/mach/hurd/getpid.c | 32 + sysdeps/mach/hurd/getppid.c | 34 + sysdeps/mach/hurd/getpriority.c | 73 + sysdeps/mach/hurd/getrlimit.c | 46 + sysdeps/mach/hurd/getsockname.c | 58 + sysdeps/mach/hurd/getsockopt.c | 53 + sysdeps/mach/hurd/getuid.c | 55 + sysdeps/mach/hurd/hppa/sigcontext.h | 86 + sysdeps/mach/hurd/hppa/trampoline.c | 258 + sysdeps/mach/hurd/i386/exc2signal.c | 165 + sysdeps/mach/hurd/i386/init-fault.c | 41 + sysdeps/mach/hurd/i386/longjmp-ctx.c | 35 + sysdeps/mach/hurd/i386/longjmp-ts.c | 39 + sysdeps/mach/hurd/i386/sigcontext.h | 106 + sysdeps/mach/hurd/i386/sigreturn.c | 126 + sysdeps/mach/hurd/i386/trampoline.c | 271 + sysdeps/mach/hurd/ioctl.c | 242 + sysdeps/mach/hurd/ioctls.h | 323 + sysdeps/mach/hurd/isatty.c | 39 + sysdeps/mach/hurd/kill.c | 106 + sysdeps/mach/hurd/libc-ldscript | 5 + sysdeps/mach/hurd/link.c | 60 + sysdeps/mach/hurd/listen.c | 36 + sysdeps/mach/hurd/local_lim.h | 40 + sysdeps/mach/hurd/lseek.c | 35 + sysdeps/mach/hurd/lstat.c | 40 + sysdeps/mach/hurd/mig-reply.c | 86 + sysdeps/mach/hurd/mips/exc2signal.c | 98 + sysdeps/mach/hurd/mips/init-fault.c | 41 + sysdeps/mach/hurd/mips/longjmp-ctx.c | 41 + sysdeps/mach/hurd/mips/longjmp-ts.c | 45 + sysdeps/mach/hurd/mips/sigcontext.h | 71 + sysdeps/mach/hurd/mips/sigreturn.c | 169 + sysdeps/mach/hurd/mips/trampoline.c | 260 + sysdeps/mach/hurd/mkdir.c | 41 + sysdeps/mach/hurd/mknod.c | 114 + sysdeps/mach/hurd/mmap.c | 105 + sysdeps/mach/hurd/open.c | 51 + sysdeps/mach/hurd/opendir.c | 60 + sysdeps/mach/hurd/pipe.c | 99 + sysdeps/mach/hurd/ptrace.c | 392 + sysdeps/mach/hurd/read.c | 34 + sysdeps/mach/hurd/readdir.c | 90 + sysdeps/mach/hurd/readlink.c | 76 + sysdeps/mach/hurd/reboot.c | 51 + sysdeps/mach/hurd/recv.c | 60 + sysdeps/mach/hurd/recvfrom.c | 85 + sysdeps/mach/hurd/rename.c | 47 + sysdeps/mach/hurd/rewinddir.c | 31 + sysdeps/mach/hurd/rmdir.c | 41 + sysdeps/mach/hurd/sbrk.c | 42 + sysdeps/mach/hurd/seekdir.c | 35 + sysdeps/mach/hurd/select.c | 275 + sysdeps/mach/hurd/send.c | 40 + sysdeps/mach/hurd/sendto.c | 60 + sysdeps/mach/hurd/setegid.c | 67 + sysdeps/mach/hurd/seteuid.c | 67 + sysdeps/mach/hurd/setgid.c | 76 + sysdeps/mach/hurd/setgroups.c | 63 + sysdeps/mach/hurd/sethostid.c | 31 + sysdeps/mach/hurd/sethostname.c | 34 + sysdeps/mach/hurd/setitimer.c | 332 + sysdeps/mach/hurd/setlogin.c | 32 + sysdeps/mach/hurd/setpgid.c | 57 + sysdeps/mach/hurd/setpriority.c | 85 + sysdeps/mach/hurd/setregid.c | 71 + sysdeps/mach/hurd/setreuid.c | 71 + sysdeps/mach/hurd/setrlimit.c | 58 + sysdeps/mach/hurd/setsid.c | 59 + sysdeps/mach/hurd/setsockopt.c | 40 + sysdeps/mach/hurd/settimeofday.c | 56 + sysdeps/mach/hurd/setuid.c | 76 + sysdeps/mach/hurd/shutdown.c | 40 + sysdeps/mach/hurd/sigaction.c | 84 + sysdeps/mach/hurd/sigaltstack.c | 62 + sysdeps/mach/hurd/sigpending.c | 46 + sysdeps/mach/hurd/sigprocmask.c | 87 + sysdeps/mach/hurd/sigstack.c | 46 + sysdeps/mach/hurd/sigsuspend.c | 81 + sysdeps/mach/hurd/socket.c | 57 + sysdeps/mach/hurd/socketpair.c | 93 + sysdeps/mach/hurd/start.c | 316 + sysdeps/mach/hurd/stat.c | 40 + sysdeps/mach/hurd/statbuf.h | 119 + sysdeps/mach/hurd/stdio_init.c | 63 + sysdeps/mach/hurd/symlink.c | 68 + sysdeps/mach/hurd/sync.c | 33 + sysdeps/mach/hurd/sys/param.h | 135 + sysdeps/mach/hurd/sysd-stdio.c | 237 + sysdeps/mach/hurd/telldir.c | 31 + sysdeps/mach/hurd/truncate.c | 42 + sysdeps/mach/hurd/ttyname.c | 38 + sysdeps/mach/hurd/umask.c | 34 + sysdeps/mach/hurd/uname.c | 31 + sysdeps/mach/hurd/unlink.c | 46 + sysdeps/mach/hurd/utimes.c | 43 + sysdeps/mach/hurd/wait4.c | 40 + sysdeps/mach/hurd/write.c | 35 + sysdeps/mach/i386/machine-lock.h | 66 + sysdeps/mach/i386/machine-sp.h | 38 + sysdeps/mach/i386/syscall.S | 26 + sysdeps/mach/i386/sysdep.h | 47 + sysdeps/mach/i386/thread_state.h | 38 + sysdeps/mach/mips/Dist | 1 + sysdeps/mach/mips/Makefile | 3 + sysdeps/mach/mips/cacheflush.c | 44 + sysdeps/mach/mips/machine-lock.h | 73 + sysdeps/mach/mips/machine-sp.h | 38 + sysdeps/mach/mips/syscall.S | 37 + sysdeps/mach/mips/sysdep.h | 69 + sysdeps/mach/mips/thread_state.h | 37 + sysdeps/mach/mprotect.c | 50 + sysdeps/mach/munmap.c | 39 + sysdeps/mach/sleep.c | 45 + sysdeps/mach/start.c | 89 + sysdeps/mach/sys/reboot.h | 153 + sysdeps/mach/syscall.h | 1 + sysdeps/mach/sysdep.h | 82 + sysdeps/mach/thread_state.h | 87 + sysdeps/mach/usleep.c | 43 + sysdeps/mips/.cvsignore | 4 + sysdeps/mips/Dist | 1 + sysdeps/mips/Implies | 2 + sysdeps/mips/Makefile | 3 + sysdeps/mips/__longjmp.c | 81 + sysdeps/mips/bsd-_setjmp.S | 28 + sysdeps/mips/bsd-setjmp.S | 28 + sysdeps/mips/dec/bytesex.h | 4 + sysdeps/mips/jmp_buf.h | 47 + sysdeps/mips/mips64/gmp-mparam.h | 26 + sysdeps/mips/mipsel/bytesex.h | 4 + sysdeps/mips/p40/bytesex.h | 4 + sysdeps/mips/setjmp.S | 31 + sysdeps/mips/setjmp_aux.c | 64 + sysdeps/posix/Dist | 1 + sysdeps/posix/Makefile | 40 + sysdeps/posix/clock.c | 33 + sysdeps/posix/ctermid.c | 39 + sysdeps/posix/cuserid.c | 46 + sysdeps/posix/defs.c | 76 + sysdeps/posix/dup.c | 32 + sysdeps/posix/dup2.c | 59 + sysdeps/posix/fdopen.c | 72 + sysdeps/posix/flock.c | 58 + sysdeps/posix/fpathconf.c | 116 + sysdeps/posix/getcwd.c | 366 + sysdeps/posix/getdtsz.c | 32 + sysdeps/posix/getpagesize.c | 31 + sysdeps/posix/gettimeofday.c | 75 + sysdeps/posix/isatty.c | 39 + sysdeps/posix/killpg.c | 37 + sysdeps/posix/libc_fatal.c | 56 + sysdeps/posix/mk-stdiolim.c | 71 + sysdeps/posix/mkstemp.c | 64 + sysdeps/posix/mktemp.c | 64 + sysdeps/posix/pipestream.c | 223 + sysdeps/posix/raise.c | 28 + sysdeps/posix/readv.c | 68 + sysdeps/posix/remove.c | 40 + sysdeps/posix/rename.c | 50 + sysdeps/posix/sigblock.c | 55 + sysdeps/posix/sigintr.c | 57 + sysdeps/posix/signal.c | 47 + sysdeps/posix/sigpause.c | 45 + sysdeps/posix/sigsetmask.c | 55 + sysdeps/posix/sigsuspend.c | 51 + sysdeps/posix/sigvec.c | 162 + sysdeps/posix/sleep.c | 106 + sysdeps/posix/stdio_init.c | 70 + sysdeps/posix/sysconf.c | 183 + sysdeps/posix/system.c | 145 + sysdeps/posix/tempname.c | 208 + sysdeps/posix/truncate.c | 41 + sysdeps/posix/ttyname.c | 82 + sysdeps/posix/wait.c | 31 + sysdeps/posix/wait3.c | 42 + sysdeps/posix/writev.c | 64 + sysdeps/rs6000/ffs.c | 39 + sysdeps/rs6000/memcopy.h | 86 + sysdeps/sparc/DEFS.h | 4 + sysdeps/sparc/Dist | 4 + sysdeps/sparc/Implies | 2 + sysdeps/sparc/Makefile | 57 + sysdeps/sparc/__longjmp.S | 47 + sysdeps/sparc/add_n.S | 134 + sysdeps/sparc/addmul_1.S | 146 + sysdeps/sparc/alloca.S | 32 + sysdeps/sparc/bsd-_setjmp.S | 26 + sysdeps/sparc/bsd-setjmp.S | 26 + sysdeps/sparc/bytesex.h | 3 + sysdeps/sparc/divrem.m4 | 234 + sysdeps/sparc/jmp_buf.h | 14 + sysdeps/sparc/memcopy.h | 21 + sysdeps/sparc/mul_1.S | 198 + sysdeps/sparc/rem.S | 365 + sysdeps/sparc/sdiv.S | 365 + sysdeps/sparc/setjmp.S | 31 + sysdeps/sparc/sparc8/addmul_1.S | 116 + sysdeps/sparc/sparc8/mul_1.S | 91 + sysdeps/sparc/sparc8/submul_1.S | 57 + sysdeps/sparc/sparc8/udiv_qrnnd.S | 186 + sysdeps/sparc/sqrt.c | 34 + sysdeps/sparc/sub_n.S | 134 + sysdeps/sparc/submul_1.S | 146 + sysdeps/sparc/udiv.S | 348 + sysdeps/sparc/udiv_qrnnd.S | 143 + sysdeps/sparc/umul.S | 153 + sysdeps/sparc/urem.S | 348 + sysdeps/standalone/Dist | 2 + sysdeps/standalone/Subdirs | 4 + sysdeps/standalone/brk.c | 65 + sysdeps/standalone/close.c | 44 + sysdeps/standalone/dirstream.h | 43 + sysdeps/standalone/filedesc.h | 48 + sysdeps/standalone/i386/Dist | 1 + sysdeps/standalone/i386/force_cpu386/Dist | 1 + sysdeps/standalone/i386/force_cpu386/Makefile | 24 + sysdeps/standalone/i386/force_cpu386/_exit.c | 47 + .../standalone/i386/force_cpu386/brdinit.c | 44 + .../standalone/i386/force_cpu386/console.c | 163 + .../standalone/i386/force_cpu386/strtsupp.S | 89 + .../standalone/i386/force_cpu386/target.ld | 59 + sysdeps/standalone/i386/i386.h | 327 + sysdeps/standalone/i386/start.S | 323 + sysdeps/standalone/i960/Dist | 1 + sysdeps/standalone/i960/i960ca.h | 207 + sysdeps/standalone/i960/nindy960/Makefile | 23 + sysdeps/standalone/i960/nindy960/_exit.c | 55 + sysdeps/standalone/i960/nindy960/brdinit.c | 66 + sysdeps/standalone/i960/nindy960/console.c | 76 + sysdeps/standalone/i960/start.S | 137 + sysdeps/standalone/m68k/m68020/Dist | 1 + sysdeps/standalone/m68k/m68020/m68020.h | 88 + .../standalone/m68k/m68020/mvme135/Implies | 2 + sysdeps/standalone/m68k/m68020/mvme136/Dist | 1 + .../standalone/m68k/m68020/mvme136/Makefile | 22 + .../standalone/m68k/m68020/mvme136/_exit.c | 49 + .../standalone/m68k/m68020/mvme136/brdinit.c | 53 + .../standalone/m68k/m68020/mvme136/console.c | 101 + .../standalone/m68k/m68020/mvme136/mvme136.ld | 62 + sysdeps/standalone/m68k/m68020/start.S | 155 + sysdeps/standalone/open.c | 122 + sysdeps/standalone/read.c | 87 + sysdeps/standalone/standalone.h | 32 + sysdeps/standalone/stdio_lim.h | 27 + sysdeps/standalone/write.c | 74 + sysdeps/stub/__longjmp.c | 44 + sysdeps/stub/__math.h | 6 + sysdeps/stub/_exit.c | 40 + sysdeps/stub/accept.c | 43 + sysdeps/stub/access.c | 39 + sysdeps/stub/acct.c | 33 + sysdeps/stub/acos.c | 38 + sysdeps/stub/adjtime.c | 37 + sysdeps/stub/alarm.c | 44 + sysdeps/stub/asin.c | 38 + sysdeps/stub/asm-syntax.h | 3 + sysdeps/stub/atan2.c | 37 + sysdeps/stub/bind.c | 39 + sysdeps/stub/brdinit.c | 34 + sysdeps/stub/brk.c | 32 + sysdeps/stub/bsd-_setjmp.c | 33 + sysdeps/stub/bsd-setjmp.c | 33 + sysdeps/stub/bytesex.h | 9 + sysdeps/stub/cbrt.c | 38 + sysdeps/stub/chdir.c | 39 + sysdeps/stub/chflags.c | 38 + sysdeps/stub/chmod.c | 40 + sysdeps/stub/chown.c | 41 + sysdeps/stub/chroot.c | 39 + sysdeps/stub/clock.c | 30 + sysdeps/stub/close.c | 38 + sysdeps/stub/closedir.c | 41 + sysdeps/stub/confstr.h | 4 + sysdeps/stub/connect.c | 42 + sysdeps/stub/console.c | 42 + sysdeps/stub/cos.c | 38 + sysdeps/stub/cosh.c | 38 + sysdeps/stub/ctermid.c | 41 + sysdeps/stub/cuserid.c | 40 + sysdeps/stub/dbl2mpn.c | 32 + sysdeps/stub/defs.c | 51 + sysdeps/stub/direct.h | 5 + sysdeps/stub/dirstream.h | 30 + sysdeps/stub/drem.c | 33 + sysdeps/stub/dup.c | 33 + sysdeps/stub/dup2.c | 45 + sysdeps/stub/errlist.c | 42 + sysdeps/stub/errnos.h | 38 + sysdeps/stub/exc2signal.c | 68 + sysdeps/stub/execve.c | 43 + sysdeps/stub/exp.c | 38 + sysdeps/stub/fchdir.c | 32 + sysdeps/stub/fchflags.c | 38 + sysdeps/stub/fchmod.c | 40 + sysdeps/stub/fchown.c | 41 + sysdeps/stub/fcntl.c | 38 + sysdeps/stub/fcntlbits.h | 88 + sysdeps/stub/fdopen.c | 29 + sysdeps/stub/fexecve.c | 42 + sysdeps/stub/flock.c | 33 + sysdeps/stub/fmod.c | 38 + sysdeps/stub/fork.c | 35 + sysdeps/stub/fpathconf.c | 57 + sysdeps/stub/frexp.c | 39 + sysdeps/stub/fstat.c | 44 + sysdeps/stub/fsync.c | 38 + sysdeps/stub/ftruncate.c | 30 + sysdeps/stub/getcwd.c | 45 + sysdeps/stub/getdents.c | 33 + sysdeps/stub/getdomain.c | 34 + sysdeps/stub/getdtsz.c | 33 + sysdeps/stub/getegid.c | 32 + sysdeps/stub/getenv.c | 38 + sysdeps/stub/geteuid.c | 33 + sysdeps/stub/getgid.c | 33 + sysdeps/stub/getgroups.c | 46 + sysdeps/stub/gethostid.c | 38 + sysdeps/stub/gethostname.c | 35 + sysdeps/stub/getitimer.c | 41 + sysdeps/stub/getlogin.c | 40 + sysdeps/stub/getpagesize.c | 32 + sysdeps/stub/getpeername.c | 40 + sysdeps/stub/getpgid.c | 32 + sysdeps/stub/getpid.c | 33 + sysdeps/stub/getppid.c | 33 + sysdeps/stub/getpriority.c | 42 + sysdeps/stub/getrlimit.c | 40 + sysdeps/stub/getrusage.c | 34 + sysdeps/stub/getsockname.c | 39 + sysdeps/stub/getsockopt.c | 42 + sysdeps/stub/gettimeofday.c | 35 + sysdeps/stub/getuid.c | 33 + sysdeps/stub/gtty.c | 37 + sysdeps/stub/huge_val.h | 27 + sysdeps/stub/init-fault.c | 38 + sysdeps/stub/init-posix.c | 38 + sysdeps/stub/ioctl.c | 34 + sysdeps/stub/ioctls.h | 1 + sysdeps/stub/isatty.c | 31 + sysdeps/stub/isinf.c | 31 + sysdeps/stub/isinfl.c | 33 + sysdeps/stub/isnanl.c | 33 + sysdeps/stub/jmp_buf.h | 3 + sysdeps/stub/kill.c | 35 + sysdeps/stub/killpg.c | 32 + sysdeps/stub/ldbl2mpn.c | 32 + sysdeps/stub/libc_fatal.c | 31 + sysdeps/stub/link.c | 40 + sysdeps/stub/listen.c | 41 + sysdeps/stub/local_lim.h | 3 + sysdeps/stub/log.c | 38 + sysdeps/stub/log10.c | 38 + sysdeps/stub/logb.c | 31 + sysdeps/stub/longjmp-ctx.c | 32 + sysdeps/stub/longjmp-ts.c | 32 + sysdeps/stub/lseek.c | 49 + sysdeps/stub/lstat.c | 40 + sysdeps/stub/machine-lock.h | 64 + sysdeps/stub/machine-sp.h | 37 + sysdeps/stub/madvise.c | 31 + sysdeps/stub/mkdir.c | 41 + sysdeps/stub/mkfifo.c | 47 + sysdeps/stub/mknod.c | 36 + sysdeps/stub/mkstemp.c | 38 + sysdeps/stub/mktemp.c | 37 + sysdeps/stub/mmap.c | 38 + sysdeps/stub/morecore.c | 43 + sysdeps/stub/mpn2dbl.c | 31 + sysdeps/stub/mpn2flt.c | 31 + sysdeps/stub/mpn2ldbl.c | 31 + sysdeps/stub/mprotect.c | 33 + sysdeps/stub/msync.c | 32 + sysdeps/stub/munmap.c | 32 + sysdeps/stub/nan.h | 6 + sysdeps/stub/nice.c | 39 + sysdeps/stub/nlist.c | 48 + sysdeps/stub/open.c | 51 + sysdeps/stub/opendir.c | 40 + sysdeps/stub/pathconf.c | 37 + sysdeps/stub/pause.c | 42 + sysdeps/stub/pipe.c | 42 + sysdeps/stub/pipestream.c | 64 + sysdeps/stub/poll.c | 36 + sysdeps/stub/posix_opt.h | 2 + sysdeps/stub/ptrace.c | 108 + sysdeps/stub/putenv.c | 39 + sysdeps/stub/raise.c | 29 + sysdeps/stub/read.c | 47 + sysdeps/stub/readdir.c | 39 + sysdeps/stub/readlink.c | 35 + sysdeps/stub/readv.c | 35 + sysdeps/stub/reboot.c | 38 + sysdeps/stub/recv.c | 40 + sysdeps/stub/recvfrom.c | 42 + sysdeps/stub/recvmsg.c | 33 + sysdeps/stub/remove.c | 31 + sysdeps/stub/rename.c | 45 + sysdeps/stub/rewinddir.c | 40 + sysdeps/stub/rmdir.c | 40 + sysdeps/stub/sbrk.c | 33 + sysdeps/stub/seekdir.c | 45 + sysdeps/stub/select.c | 39 + sysdeps/stub/send.c | 39 + sysdeps/stub/sendmsg.c | 33 + sysdeps/stub/sendto.c | 41 + sysdeps/stub/setdomain.c | 33 + sysdeps/stub/setegid.c | 38 + sysdeps/stub/setenv.c | 29 + sysdeps/stub/seteuid.c | 38 + sysdeps/stub/setgid.c | 36 + sysdeps/stub/setgroups.c | 39 + sysdeps/stub/sethostid.c | 39 + sysdeps/stub/sethostname.c | 40 + sysdeps/stub/setitimer.c | 43 + sysdeps/stub/setjmp.c | 42 + sysdeps/stub/setlogin.c | 29 + sysdeps/stub/setpgid.c | 35 + sysdeps/stub/setpriority.c | 40 + sysdeps/stub/setregid.c | 35 + sysdeps/stub/setreuid.c | 35 + sysdeps/stub/setrlimit.c | 41 + sysdeps/stub/setsid.c | 35 + sysdeps/stub/setsockopt.c | 42 + sysdeps/stub/settimeofday.c | 34 + sysdeps/stub/setuid.c | 36 + sysdeps/stub/shutdown.c | 44 + sysdeps/stub/sigaction.c | 41 + sysdeps/stub/sigaltstack.c | 31 + sysdeps/stub/sigblock.c | 32 + sysdeps/stub/sigcontext.h | 29 + sysdeps/stub/sigintr.c | 32 + sysdeps/stub/siglist.c | 43 + sysdeps/stub/signal.c | 40 + sysdeps/stub/signum.h | 53 + sysdeps/stub/sigpause.c | 31 + sysdeps/stub/sigpending.c | 39 + sysdeps/stub/sigprocmask.c | 50 + sysdeps/stub/sigreturn.c | 31 + sysdeps/stub/sigsetmask.c | 31 + sysdeps/stub/sigstack.c | 31 + sysdeps/stub/sigsuspend.c | 40 + sysdeps/stub/sigvec.c | 37 + sysdeps/stub/sin.c | 38 + sysdeps/stub/sinh.c | 38 + sysdeps/stub/sleep.c | 37 + sysdeps/stub/socket.c | 41 + sysdeps/stub/socketpair.c | 42 + sysdeps/stub/sqrt.c | 38 + sysdeps/stub/sstk.c | 29 + sysdeps/stub/start.c | 16 + sysdeps/stub/stat.c | 39 + sysdeps/stub/statbuf.h | 71 + sysdeps/stub/stdio_init.c | 30 + sysdeps/stub/stdio_lim.h | 6 + sysdeps/stub/stime.c | 37 + sysdeps/stub/strtsupp.c | 31 + sysdeps/stub/stty.c | 37 + sysdeps/stub/swapon.c | 32 + sysdeps/stub/symlink.c | 40 + sysdeps/stub/sync.c | 38 + sysdeps/stub/sys/param.h | 8 + sysdeps/stub/sys/reboot.h | 9 + sysdeps/stub/syscall.c | 31 + sysdeps/stub/syscall.h | 2 + sysdeps/stub/sysconf.c | 69 + sysdeps/stub/sysd-stdio.c | 111 + sysdeps/stub/sysdep.c | 2 + sysdeps/stub/sysdep.h | 3 + sysdeps/stub/system.c | 42 + sysdeps/stub/tan.c | 38 + sysdeps/stub/tanh.c | 38 + sysdeps/stub/tcdrain.c | 44 + sysdeps/stub/tcflow.c | 57 + sysdeps/stub/tcflush.c | 50 + sysdeps/stub/tcgetattr.c | 45 + sysdeps/stub/tcgetpgrp.c | 45 + sysdeps/stub/tcsendbrk.c | 44 + sysdeps/stub/tcsetattr.c | 100 + sysdeps/stub/tcsetpgrp.c | 46 + sysdeps/stub/telldir.c | 46 + sysdeps/stub/tempname.c | 47 + sysdeps/stub/thread_state.h | 47 + sysdeps/stub/time.c | 43 + sysdeps/stub/times.c | 42 + sysdeps/stub/trampoline.c | 37 + sysdeps/stub/truncate.c | 30 + sysdeps/stub/ttyname.c | 43 + sysdeps/stub/ualarm.c | 33 + sysdeps/stub/udiv_qrnnd.c | 10 + sysdeps/stub/ulimit.c | 45 + sysdeps/stub/umask.c | 33 + sysdeps/stub/unlink.c | 40 + sysdeps/stub/usleep.c | 28 + sysdeps/stub/utime.c | 47 + sysdeps/stub/utimes.c | 40 + sysdeps/stub/vhangup.c | 33 + sysdeps/stub/wait.c | 33 + sysdeps/stub/wait3.c | 44 + sysdeps/stub/wait4.c | 34 + sysdeps/stub/waitflags.h | 28 + sysdeps/stub/waitpid.c | 52 + sysdeps/stub/write.c | 48 + sysdeps/stub/writev.c | 35 + sysdeps/tahoe/Implies | 2 + sysdeps/tahoe/log10.c | 22 + sysdeps/unix/Dist | 4 + sysdeps/unix/Implies | 1 + sysdeps/unix/Makefile | 267 + sysdeps/unix/_exit.S | 22 + sysdeps/unix/acct.S | 22 + sysdeps/unix/bsd/Attic/osf1/=dirstream.h | 44 + sysdeps/unix/bsd/Attic/osf1/Implies | 2 + sysdeps/unix/bsd/Attic/osf1/Makefile | 3 + sysdeps/unix/bsd/Attic/osf1/alpha/brk.S | 53 + sysdeps/unix/bsd/Attic/osf1/alpha/fork.S | 25 + sysdeps/unix/bsd/Attic/osf1/alpha/getdents.S | 25 + sysdeps/unix/bsd/Attic/osf1/alpha/killpg.S | 25 + sysdeps/unix/bsd/Attic/osf1/alpha/pipe.S | 30 + sysdeps/unix/bsd/Attic/osf1/alpha/recv.S | 25 + sysdeps/unix/bsd/Attic/osf1/alpha/send.S | 25 + sysdeps/unix/bsd/Attic/osf1/alpha/sigblock.S | 27 + sysdeps/unix/bsd/Attic/osf1/alpha/sigpause.S | 27 + .../unix/bsd/Attic/osf1/alpha/sigsetmask.S | 27 + sysdeps/unix/bsd/Attic/osf1/alpha/sigvec.S | 27 + sysdeps/unix/bsd/Attic/osf1/alpha/start.S | 72 + sysdeps/unix/bsd/Attic/osf1/alpha/statbuf.h | 75 + sysdeps/unix/bsd/Attic/osf1/alpha/sysdep.S | 40 + sysdeps/unix/bsd/Attic/osf1/alpha/sysdep.h | 73 + sysdeps/unix/bsd/Attic/osf1/alpha/vhangup.S | 25 + sysdeps/unix/bsd/Attic/osf1/alpha/wait4.S | 1 + sysdeps/unix/bsd/Attic/osf1/alpha/waitpid.c | 1 + sysdeps/unix/bsd/Attic/osf1/msync.S | 1 + sysdeps/unix/bsd/Attic/osf1/sigaction.h | 45 + sysdeps/unix/bsd/Attic/osf1/sys/mman.h | 114 + sysdeps/unix/bsd/Attic/osf1/system.c | 2 + sysdeps/unix/bsd/Dist | 1 + sysdeps/unix/bsd/Implies | 5 + sysdeps/unix/bsd/alarm.c | 43 + sysdeps/unix/bsd/bsd4.4/Implies | 2 + sysdeps/unix/bsd/bsd4.4/chflags.S | 22 + sysdeps/unix/bsd/bsd4.4/direct.h | 16 + sysdeps/unix/bsd/bsd4.4/errnos.h | 168 + sysdeps/unix/bsd/bsd4.4/fchdir.S | 22 + sysdeps/unix/bsd/bsd4.4/fchflags.S | 22 + sysdeps/unix/bsd/bsd4.4/fcntlbits.h | 116 + sysdeps/unix/bsd/bsd4.4/getdents.S | 1 + sysdeps/unix/bsd/bsd4.4/getdomain.S | 22 + sysdeps/unix/bsd/bsd4.4/ioctls.h | 292 + sysdeps/unix/bsd/bsd4.4/setdomain.S | 22 + sysdeps/unix/bsd/bsd4.4/setegid.S | 22 + sysdeps/unix/bsd/bsd4.4/seteuid.S | 22 + sysdeps/unix/bsd/bsd4.4/setlogin.S | 22 + sysdeps/unix/bsd/bsd4.4/setsid.S | 24 + sysdeps/unix/bsd/bsd4.4/sigaltstack.S | 22 + sysdeps/unix/bsd/bsd4.4/sigblock.c | 1 + sysdeps/unix/bsd/bsd4.4/sigsetmask.c | 1 + sysdeps/unix/bsd/bsd4.4/sigvec.c | 1 + sysdeps/unix/bsd/bsd4.4/sockaddrcom.h | 35 + sysdeps/unix/bsd/bsd4.4/sstk.S | 23 + sysdeps/unix/bsd/bsd4.4/system.c | 2 + sysdeps/unix/bsd/bsd4.4/tcdrain.c | 28 + sysdeps/unix/bsd/bsd4.4/tcgetattr.c | 41 + sysdeps/unix/bsd/bsd4.4/tcsetattr.c | 61 + sysdeps/unix/bsd/bsd4.4/wait.c | 33 + sysdeps/unix/bsd/bsd4.4/wait3.c | 36 + sysdeps/unix/bsd/bsd4.4/wait4.S | 24 + sysdeps/unix/bsd/bsd4.4/waitpid.c | 44 + sysdeps/unix/bsd/bsdstat.h | 112 + sysdeps/unix/bsd/bsdtty.h | 218 + sysdeps/unix/bsd/clock.c | 45 + sysdeps/unix/bsd/confstr.h | 1 + sysdeps/unix/bsd/direct.h | 13 + sysdeps/unix/bsd/dirstream.h | 48 + sysdeps/unix/bsd/fcntlbits.h | 117 + sysdeps/unix/bsd/flock.S | 24 + sysdeps/unix/bsd/ftime.c | 37 + sysdeps/unix/bsd/getdtsz.S | 24 + sysdeps/unix/bsd/getpagesize.S | 24 + sysdeps/unix/bsd/gtty.c | 29 + sysdeps/unix/bsd/hp/m68k/brk.S | 46 + sysdeps/unix/bsd/hp/m68k/getdents.S | 1 + sysdeps/unix/bsd/hp/m68k/start.c | 10 + sysdeps/unix/bsd/hp/m68k/sysdep.h | 56 + sysdeps/unix/bsd/hp/m68k/wait3.S | 39 + sysdeps/unix/bsd/i386/wait3.S | 44 + sysdeps/unix/bsd/init-posix.c | 36 + sysdeps/unix/bsd/isatty.c | 39 + sysdeps/unix/bsd/killpg.S | 22 + sysdeps/unix/bsd/m68k/pipe.S | 32 + sysdeps/unix/bsd/m68k/start.c | 3 + sysdeps/unix/bsd/m68k/syscall.S | 26 + sysdeps/unix/bsd/m68k/sysdep.S | 44 + sysdeps/unix/bsd/m68k/wait.S | 35 + sysdeps/unix/bsd/nice.c | 45 + sysdeps/unix/bsd/pause.c | 31 + sysdeps/unix/bsd/poll.c | 81 + sysdeps/unix/bsd/posix_opt.h | 5 + sysdeps/unix/bsd/readdir.c | 70 + sysdeps/unix/bsd/seekdir.c | 1 + sysdeps/unix/bsd/sequent/i386/getgroups.S | 44 + sysdeps/unix/bsd/sequent/i386/sigvec.S | 45 + sysdeps/unix/bsd/sequent/i386/syscall.S | 31 + sysdeps/unix/bsd/sequent/i386/sysdep.h | 82 + sysdeps/unix/bsd/setegid.c | 27 + sysdeps/unix/bsd/seteuid.c | 27 + sysdeps/unix/bsd/setgid.c | 35 + sysdeps/unix/bsd/setrgid.c | 27 + sysdeps/unix/bsd/setruid.c | 27 + sysdeps/unix/bsd/setsid.c | 59 + sysdeps/unix/bsd/settimeofday.S | 24 + sysdeps/unix/bsd/setuid.c | 35 + sysdeps/unix/bsd/sigaction.c | 62 + sysdeps/unix/bsd/sigblock.S | 24 + sysdeps/unix/bsd/signum.h | 70 + sysdeps/unix/bsd/sigpause.S | 24 + sysdeps/unix/bsd/sigprocmask.c | 65 + sysdeps/unix/bsd/sigsetmask.S | 24 + sysdeps/unix/bsd/sigstack.S | 22 + sysdeps/unix/bsd/sigsuspend.c | 46 + sysdeps/unix/bsd/sigvec.S | 24 + sysdeps/unix/bsd/sony/newsos/m68k/Implies | 2 + sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h | 56 + sysdeps/unix/bsd/sony/newsos4/Dist | 1 + sysdeps/unix/bsd/sony/newsos4/Makefile | 3 + sysdeps/unix/bsd/sony/newsos4/fchdir.S | 1 + sysdeps/unix/bsd/sony/newsos4/sys_wait4.S | 1 + sysdeps/unix/bsd/sony/newsos4/wait.c | 1 + sysdeps/unix/bsd/sony/newsos4/wait3.c | 1 + sysdeps/unix/bsd/sony/newsos4/wait4.c | 1 + sysdeps/unix/bsd/statbuf.h | 84 + sysdeps/unix/bsd/stime.c | 39 + sysdeps/unix/bsd/stty.c | 29 + sysdeps/unix/bsd/sun/getdents.S | 24 + sysdeps/unix/bsd/sun/m68k/Dist | 1 + sysdeps/unix/bsd/sun/m68k/Makefile | 3 + sysdeps/unix/bsd/sun/m68k/brk.S | 49 + sysdeps/unix/bsd/sun/m68k/sethostid.S | 44 + sysdeps/unix/bsd/sun/m68k/sigcontext.h | 26 + sysdeps/unix/bsd/sun/m68k/sigtramp.c | 142 + sysdeps/unix/bsd/sun/m68k/syscall.S | 28 + sysdeps/unix/bsd/sun/m68k/sysdep.h | 62 + sysdeps/unix/bsd/sun/sethostid.c | 1 + sysdeps/unix/bsd/sun/signum.h | 69 + sysdeps/unix/bsd/sun/sigreturn.S | 28 + sysdeps/unix/bsd/sun/sigvec.S | 26 + sysdeps/unix/bsd/sun/sparc/Dist | 1 + sysdeps/unix/bsd/sun/sparc/Makefile | 7 + sysdeps/unix/bsd/sun/sparc/sethostid.S | 46 + sysdeps/unix/bsd/sun/sparc/sigcontext.h | 31 + sysdeps/unix/bsd/sun/sparc/sigtramp.c | 246 + sysdeps/unix/bsd/sun/sunos3/m68k/wait.S | 1 + sysdeps/unix/bsd/sun/sunos4/.cvsignore | 4 + sysdeps/unix/bsd/sun/sunos4/Dist | 2 + sysdeps/unix/bsd/sun/sunos4/Implies | 2 + sysdeps/unix/bsd/sun/sunos4/Makefile | 7 + sysdeps/unix/bsd/sun/sunos4/fcntlbits.h | 145 + sysdeps/unix/bsd/sun/sunos4/mmap.c | 41 + sysdeps/unix/bsd/sun/sunos4/msync.S | 22 + sysdeps/unix/bsd/sun/sunos4/poll.S | 1 + sysdeps/unix/bsd/sun/sunos4/resourcebits.h | 48 + sysdeps/unix/bsd/sun/sunos4/setsid.S | 1 + sysdeps/unix/bsd/sun/sunos4/speed.c | 113 + sysdeps/unix/bsd/sun/sunos4/sys/mman.h | 107 + sysdeps/unix/bsd/sun/sunos4/sys_mmap.S | 22 + sysdeps/unix/bsd/sun/sunos4/sys_wait4.S | 22 + sysdeps/unix/bsd/sun/sunos4/system.c | 2 + sysdeps/unix/bsd/sun/sunos4/tcflow.c | 29 + sysdeps/unix/bsd/sun/sunos4/tcflush.c | 29 + sysdeps/unix/bsd/sun/sunos4/tcgetattr.c | 33 + sysdeps/unix/bsd/sun/sunos4/tcsendbrk.c | 31 + sysdeps/unix/bsd/sun/sunos4/tcsetattr.c | 49 + sysdeps/unix/bsd/sun/sunos4/termbits.h | 208 + sysdeps/unix/bsd/sun/sunos4/uname.S | 1 + sysdeps/unix/bsd/sun/sunos4/utsnamelen.h | 2 + sysdeps/unix/bsd/sun/sunos4/wait.c | 1 + sysdeps/unix/bsd/sun/sunos4/wait3.c | 1 + sysdeps/unix/bsd/sun/sunos4/wait4.c | 50 + sysdeps/unix/bsd/sun/sunos4/waitpid.c | 1 + sysdeps/unix/bsd/sys/reboot.h | 88 + sysdeps/unix/bsd/tahoe/Implies | 1 + sysdeps/unix/bsd/tahoe/sysdep.h | 5 + sysdeps/unix/bsd/tcdrain.c | 38 + sysdeps/unix/bsd/tcflow.c | 57 + sysdeps/unix/bsd/tcflush.c | 50 + sysdeps/unix/bsd/tcgetattr.c | 130 + sysdeps/unix/bsd/tcgetpgrp.c | 33 + sysdeps/unix/bsd/tcsendbrk.c | 55 + sysdeps/unix/bsd/tcsetattr.c | 186 + sysdeps/unix/bsd/tcsetpgrp.c | 30 + sysdeps/unix/bsd/telldir.c | 93 + sysdeps/unix/bsd/time.c | 40 + sysdeps/unix/bsd/times.c | 68 + sysdeps/unix/bsd/ualarm.c | 42 + sysdeps/unix/bsd/ulimit.c | 86 + sysdeps/unix/bsd/ultrix4/Dist | 1 + sysdeps/unix/bsd/ultrix4/Implies | 2 + sysdeps/unix/bsd/ultrix4/Makefile | 3 + sysdeps/unix/bsd/ultrix4/fcntlbits.h | 125 + sysdeps/unix/bsd/ultrix4/getdents.S | 1 + sysdeps/unix/bsd/ultrix4/getsysinfo.S | 25 + sysdeps/unix/bsd/ultrix4/mips/Dist | 1 + sysdeps/unix/bsd/ultrix4/mips/Makefile | 3 + sysdeps/unix/bsd/ultrix4/mips/__handler.S | 113 + sysdeps/unix/bsd/ultrix4/mips/sigcontext.h | 60 + sysdeps/unix/bsd/ultrix4/mips/sigtramp.c | 55 + sysdeps/unix/bsd/ultrix4/mips/sigvec.S | 24 + sysdeps/unix/bsd/ultrix4/mips/start.S | 77 + sysdeps/unix/bsd/ultrix4/mips/vfork.S | 33 + sysdeps/unix/bsd/ultrix4/posix_opt.h | 23 + sysdeps/unix/bsd/ultrix4/setsid.S | 1 + sysdeps/unix/bsd/ultrix4/sys/mman.h | 99 + sysdeps/unix/bsd/ultrix4/sysconf.c | 61 + sysdeps/unix/bsd/ultrix4/system.c | 2 + sysdeps/unix/bsd/ultrix4/uname.S | 1 + sysdeps/unix/bsd/ultrix4/utsnamelen.h | 1 + sysdeps/unix/bsd/ultrix4/wait3.S | 24 + sysdeps/unix/bsd/ultrix4/waitpid.S | 24 + sysdeps/unix/bsd/usleep.c | 37 + sysdeps/unix/bsd/utime.c | 50 + sysdeps/unix/bsd/utimes.S | 24 + sysdeps/unix/bsd/vax/brk.S | 47 + sysdeps/unix/bsd/vax/pipe.S | 28 + sysdeps/unix/bsd/vax/sysdep.S | 35 + sysdeps/unix/bsd/vax/sysdep.h | 55 + sysdeps/unix/bsd/vax/wait.S | 27 + sysdeps/unix/bsd/vax/wait3.S | 37 + sysdeps/unix/bsd/waitflags.h | 28 + sysdeps/unix/chdir.S | 24 + sysdeps/unix/chmod.S | 24 + sysdeps/unix/chown.S | 24 + sysdeps/unix/chroot.S | 22 + sysdeps/unix/close.S | 24 + sysdeps/unix/closedir.c | 46 + sysdeps/unix/common/.cvsignore | 4 + sysdeps/unix/common/Dist | 1 + sysdeps/unix/common/Makefile | 35 + sysdeps/unix/common/access.S | 24 + sysdeps/unix/common/adjtime.S | 24 + sysdeps/unix/common/configure | 101 + sysdeps/unix/common/configure.in | 22 + sysdeps/unix/common/direct.h | 43 + sysdeps/unix/common/dup2.S | 24 + sysdeps/unix/common/fchmod.S | 24 + sysdeps/unix/common/fchown.S | 24 + sysdeps/unix/common/fcntlbits.h | 122 + sysdeps/unix/common/ftruncate.S | 22 + sysdeps/unix/common/getgroups.S | 24 + sysdeps/unix/common/getitimer.S | 24 + sysdeps/unix/common/getpgid.S | 24 + sysdeps/unix/common/getpriority.S | 22 + sysdeps/unix/common/getrlimit.S | 22 + sysdeps/unix/common/getrusage.S | 24 + sysdeps/unix/common/gettimeofday.S | 24 + sysdeps/unix/common/glue-ctype.c | 91 + sysdeps/unix/common/lstat.S | 24 + sysdeps/unix/common/mk-local_lim.c | 78 + sysdeps/unix/common/mkdir.S | 24 + sysdeps/unix/common/readlink.S | 24 + sysdeps/unix/common/readv.S | 22 + sysdeps/unix/common/rename.S | 22 + sysdeps/unix/common/rmdir.S | 24 + sysdeps/unix/common/select.S | 24 + sysdeps/unix/common/setgroups.S | 22 + sysdeps/unix/common/setitimer.S | 24 + sysdeps/unix/common/setpgid.S | 25 + sysdeps/unix/common/setpriority.S | 22 + sysdeps/unix/common/setregid.S | 24 + sysdeps/unix/common/setreuid.S | 24 + sysdeps/unix/common/setrlimit.S | 22 + sysdeps/unix/common/swapon.S | 22 + sysdeps/unix/common/symlink.S | 24 + sysdeps/unix/common/truncate.S | 22 + sysdeps/unix/common/vhangup.S | 22 + sysdeps/unix/common/writev.S | 22 + sysdeps/unix/configure | 127 + sysdeps/unix/configure.in | 136 + sysdeps/unix/confstr.h | 1 + sysdeps/unix/dirstream.h | 43 + sysdeps/unix/dup.S | 24 + sysdeps/unix/errnos-tmpl.c | 98 + sysdeps/unix/errnos.awk | 12 + sysdeps/unix/execve.S | 32 + sysdeps/unix/fcntl.S | 24 + sysdeps/unix/fork.S | 32 + sysdeps/unix/fstat.S | 24 + sysdeps/unix/fsync.S | 22 + sysdeps/unix/getdents.c | 36 + sysdeps/unix/getegid.S | 29 + sysdeps/unix/geteuid.S | 29 + sysdeps/unix/getgid.S | 24 + sysdeps/unix/getlogin.c | 90 + sysdeps/unix/getpagesize.c | 40 + sysdeps/unix/getpid.S | 24 + sysdeps/unix/getppid.S | 29 + sysdeps/unix/getuid.S | 24 + sysdeps/unix/i386/brk.S | 41 + sysdeps/unix/i386/fork.S | 30 + sysdeps/unix/i386/pipe.S | 28 + sysdeps/unix/i386/sigreturn.S | 27 + sysdeps/unix/i386/start.c | 2 + sysdeps/unix/i386/syscall.S | 28 + sysdeps/unix/i386/sysdep.S | 42 + sysdeps/unix/i386/sysdep.h | 55 + sysdeps/unix/i386/wait.S | 28 + sysdeps/unix/inet/Subdirs | 3 + sysdeps/unix/inet/accept.S | 22 + sysdeps/unix/inet/bind.S | 22 + sysdeps/unix/inet/connect.S | 22 + sysdeps/unix/inet/gethostid.S | 22 + sysdeps/unix/inet/gethostname.S | 24 + sysdeps/unix/inet/getpeername.S | 22 + sysdeps/unix/inet/getsockname.S | 22 + sysdeps/unix/inet/getsockopt.S | 22 + sysdeps/unix/inet/listen.S | 22 + sysdeps/unix/inet/recv.S | 22 + sysdeps/unix/inet/recvfrom.S | 22 + sysdeps/unix/inet/recvmsg.S | 22 + sysdeps/unix/inet/send.S | 22 + sysdeps/unix/inet/sendmsg.S | 22 + sysdeps/unix/inet/sendto.S | 22 + sysdeps/unix/inet/sethostid.S | 22 + sysdeps/unix/inet/sethostname.S | 22 + sysdeps/unix/inet/setsockopt.S | 22 + sysdeps/unix/inet/shutdown.S | 22 + sysdeps/unix/inet/socket.S | 22 + sysdeps/unix/inet/socketpair.S | 22 + sysdeps/unix/ioctl.S | 24 + sysdeps/unix/ioctls-tmpl.c | 134 + sysdeps/unix/ioctls.awk | 10 + sysdeps/unix/kill.S | 24 + sysdeps/unix/link.S | 24 + sysdeps/unix/lseek.S | 24 + sysdeps/unix/make_errlist.c | 51 + sysdeps/unix/mips/brk.S | 67 + sysdeps/unix/mips/fork.S | 29 + sysdeps/unix/mips/pipe.S | 31 + sysdeps/unix/mips/sigreturn.S | 29 + sysdeps/unix/mips/sysdep.S | 41 + sysdeps/unix/mips/sysdep.h | 52 + sysdeps/unix/mips/wait.S | 44 + sysdeps/unix/mk-local_lim.c | 118 + sysdeps/unix/mkfifo.c | 29 + sysdeps/unix/mknod.S | 24 + sysdeps/unix/mman/madvise.S | 22 + sysdeps/unix/mman/mmap.S | 22 + sysdeps/unix/mman/mprotect.S | 22 + sysdeps/unix/mman/msync.S | 22 + sysdeps/unix/mman/munmap.S | 22 + sysdeps/unix/nlist.c | 91 + sysdeps/unix/open.S | 24 + sysdeps/unix/opendir.c | 95 + sysdeps/unix/pipestream.c | 2 + sysdeps/unix/ptrace.S | 22 + sysdeps/unix/read.S | 24 + sysdeps/unix/readdir.c | 82 + sysdeps/unix/reboot.S | 22 + sysdeps/unix/rewinddir.c | 33 + sysdeps/unix/seekdir.c | 33 + sysdeps/unix/setgid.S | 24 + sysdeps/unix/setuid.S | 24 + sysdeps/unix/siglist.c | 46 + sysdeps/unix/snarf-ioctls | 46 + sysdeps/unix/sparc/brk.S | 55 + sysdeps/unix/sparc/fork.S | 30 + sysdeps/unix/sparc/pipe.S | 29 + sysdeps/unix/sparc/start.c | 184 + sysdeps/unix/sparc/sysdep.S | 47 + sysdeps/unix/sparc/sysdep.h | 50 + sysdeps/unix/sparc/vfork.S | 34 + sysdeps/unix/start.c | 106 + sysdeps/unix/stat.S | 24 + sysdeps/unix/sync.S | 22 + sysdeps/unix/syscall.S | 29 + sysdeps/unix/sysdep.h | 59 + sysdeps/unix/system.c | 2 + sysdeps/unix/sysv/Dist | 3 + sysdeps/unix/sysv/Makefile | 42 + sysdeps/unix/sysv/alarm.S | 22 + sysdeps/unix/sysv/direct.h | 10 + sysdeps/unix/sysv/fcntlbits.h | 86 + sysdeps/unix/sysv/getdents.c | 37 + sysdeps/unix/sysv/gethostname.c | 38 + sysdeps/unix/sysv/i386/linux/socket.S | 55 + sysdeps/unix/sysv/i386/linux/sysdep.S | 38 + sysdeps/unix/sysv/i386/linux/sysdep.h | 57 + sysdeps/unix/sysv/i386/linux/wait.S | 31 + sysdeps/unix/sysv/i386/signal.S | 31 + sysdeps/unix/sysv/i386/sigreturn.S | 27 + sysdeps/unix/sysv/i386/sysdep.h | 4 + sysdeps/unix/sysv/i386/time.S | 26 + sysdeps/unix/sysv/irix4/Dist | 2 + sysdeps/unix/sysv/irix4/Implies | 4 + sysdeps/unix/sysv/irix4/Makefile | 25 + sysdeps/unix/sysv/irix4/__handler.S | 116 + sysdeps/unix/sysv/irix4/confname.h | 80 + sysdeps/unix/sysv/irix4/direct.h | 15 + sysdeps/unix/sysv/irix4/dup2.c | 3 + sysdeps/unix/sysv/irix4/fcntlbits.h | 98 + sysdeps/unix/sysv/irix4/fpathconf.c | 34 + sysdeps/unix/sysv/irix4/getgroups.c | 33 + sysdeps/unix/sysv/irix4/getpgid.S | 24 + sysdeps/unix/sysv/irix4/getpriority.c | 46 + sysdeps/unix/sysv/irix4/getrusage.c | 35 + sysdeps/unix/sysv/irix4/gettimeofday.c | 1 + sysdeps/unix/sysv/irix4/msync.S | 1 + sysdeps/unix/sysv/irix4/pathconf.c | 34 + sysdeps/unix/sysv/irix4/readv.c | 1 + sysdeps/unix/sysv/irix4/reboot.c | 1 + sysdeps/unix/sysv/irix4/setgroups.c | 31 + sysdeps/unix/sysv/irix4/setpgid.S | 25 + sysdeps/unix/sysv/irix4/setpriority.c | 41 + sysdeps/unix/sysv/irix4/signal.S | 22 + sysdeps/unix/sysv/irix4/signum.h | 67 + sysdeps/unix/sysv/irix4/sigreturn.S | 25 + sysdeps/unix/sysv/irix4/sigtramp.c | 54 + sysdeps/unix/sysv/irix4/start.c | 68 + sysdeps/unix/sysv/irix4/statbuf.h | 61 + sysdeps/unix/sysv/irix4/swapon.c | 1 + sysdeps/unix/sysv/irix4/sys/mman.h | 101 + sysdeps/unix/sysv/irix4/sysconf.c | 35 + sysdeps/unix/sysv/irix4/sysmp.S | 22 + sysdeps/unix/sysv/irix4/syssgi.S | 22 + sysdeps/unix/sysv/irix4/time.S | 1 + sysdeps/unix/sysv/irix4/uname.S | 26 + sysdeps/unix/sysv/irix4/wait.S | 42 + sysdeps/unix/sysv/irix4/wait3.S | 1 + sysdeps/unix/sysv/irix4/waitpid.c | 1 + sysdeps/unix/sysv/irix4/writev.c | 1 + sysdeps/unix/sysv/isc2.2/rename.S | 1 + sysdeps/unix/sysv/isc3/direct.h | 1 + sysdeps/unix/sysv/linux/Implies | 2 + sysdeps/unix/sysv/linux/accept.S | 2 + sysdeps/unix/sysv/linux/bind.S | 2 + sysdeps/unix/sysv/linux/connect.S | 2 + sysdeps/unix/sysv/linux/getpeername.S | 2 + sysdeps/unix/sysv/linux/getpgrp.S | 22 + sysdeps/unix/sysv/linux/getsockname.S | 2 + sysdeps/unix/sysv/linux/listen.S | 2 + sysdeps/unix/sysv/linux/rename.S | 1 + sysdeps/unix/sysv/linux/setsid.S | 1 + sysdeps/unix/sysv/linux/socketpair.S | 2 + sysdeps/unix/sysv/linux/syscall.h | 124 + sysdeps/unix/sysv/linux/wait4.S | 1 + sysdeps/unix/sysv/linux/waitpid.S | 24 + sysdeps/unix/sysv/local_lim.h | 32 + sysdeps/unix/sysv/minix/sigaction.h | 49 + sysdeps/unix/sysv/mkdir.c | 97 + sysdeps/unix/sysv/nice.S | 22 + sysdeps/unix/sysv/pause.S | 22 + sysdeps/unix/sysv/poll.S | 22 + sysdeps/unix/sysv/rmdir.c | 78 + sysdeps/unix/sysv/s_getdents.S | 22 + sysdeps/unix/sysv/sco3.2.4/Dist | 2 + sysdeps/unix/sysv/sco3.2.4/Makefile | 3 + sysdeps/unix/sysv/sco3.2.4/__setpgid.c | 30 + sysdeps/unix/sysv/sco3.2.4/confname.h | 50 + sysdeps/unix/sysv/sco3.2.4/direct.h | 22 + sysdeps/unix/sysv/sco3.2.4/getgroups.c | 45 + sysdeps/unix/sysv/sco3.2.4/getpgid.c | 1 + sysdeps/unix/sysv/sco3.2.4/pathconf.S | 24 + sysdeps/unix/sysv/sco3.2.4/pgrpsys.S | 1 + sysdeps/unix/sysv/sco3.2.4/pipestream.c | 3 + sysdeps/unix/sysv/sco3.2.4/sco_getgrp.S | 22 + sysdeps/unix/sysv/sco3.2.4/setpgid.c | 1 + sysdeps/unix/sysv/sco3.2.4/setsid.c | 1 + sysdeps/unix/sysv/sco3.2.4/sigaction.S | 29 + sysdeps/unix/sysv/sco3.2.4/sigaction.h | 39 + sysdeps/unix/sysv/sco3.2.4/sigpending.S | 22 + sysdeps/unix/sysv/sco3.2.4/sigprocmask.S | 24 + sysdeps/unix/sysv/sco3.2.4/sigsuspend.S | 1 + sysdeps/unix/sysv/sco3.2.4/syscall.h | 107 + sysdeps/unix/sysv/sco3.2.4/sysconf.S | 30 + sysdeps/unix/sysv/sco3.2.4/system.c | 10 + sysdeps/unix/sysv/sco3.2.4/uname.S | 42 + sysdeps/unix/sysv/sco3.2.4/waitpid.S | 36 + sysdeps/unix/sysv/sco3.2/Dist | 1 + sysdeps/unix/sysv/sco3.2/Makefile | 23 + sysdeps/unix/sysv/sco3.2/__fltused.c | 3 + sysdeps/unix/sysv/sco3.2/local_lim.h | 37 + sysdeps/unix/sysv/setrlimit.c | 58 + sysdeps/unix/sysv/settimeofday.c | 47 + sysdeps/unix/sysv/sigaction.c | 83 + sysdeps/unix/sysv/signal.S | 22 + sysdeps/unix/sysv/signum.h | 56 + sysdeps/unix/sysv/statbuf.h | 61 + sysdeps/unix/sysv/stime.S | 22 + sysdeps/unix/sysv/sysd-stdio.c | 2 + sysdeps/unix/sysv/sysv4/Dist | 7 + sysdeps/unix/sysv/sysv4/Implies | 3 + sysdeps/unix/sysv/sysv4/Makefile | 36 + sysdeps/unix/sysv/sysv4/__getpgid.c | 31 + sysdeps/unix/sysv/sysv4/__setpgid.c | 31 + sysdeps/unix/sysv/sysv4/__waitid.S | 25 + sysdeps/unix/sysv/sysv4/dup2.c | 4 + sysdeps/unix/sysv/sysv4/fchdir.S | 2 + sysdeps/unix/sysv/sysv4/ftruncate.c | 37 + sysdeps/unix/sysv/sysv4/getdtsz.c | 2 + sysdeps/unix/sysv/sysv4/gethostname.c | 33 + sysdeps/unix/sysv/sysv4/getpagesize.c | 2 + sysdeps/unix/sysv/sysv4/getpgid.c | 33 + sysdeps/unix/sysv/sysv4/i386/Dist | 1 + sysdeps/unix/sysv/sysv4/i386/Makefile | 3 + sysdeps/unix/sysv/sysv4/i386/fstat.S | 37 + sysdeps/unix/sysv/sysv4/i386/lstat.S | 37 + sysdeps/unix/sysv/sysv4/i386/mknod.S | 36 + sysdeps/unix/sysv/sysv4/i386/stat.S | 37 + sysdeps/unix/sysv/sysv4/i386/statbuf.h | 84 + sysdeps/unix/sysv/sysv4/i386/sys-sig.S | 30 + sysdeps/unix/sysv/sysv4/i386/sysdep.h | 38 + sysdeps/unix/sysv/sysv4/i386/vfork.S | 1 + sysdeps/unix/sysv/sysv4/pgrpsys.S | 22 + sysdeps/unix/sysv/sysv4/pipestream.c | 2 + sysdeps/unix/sysv/sysv4/setegid.S | 2 + sysdeps/unix/sysv/sysv4/seteuid.S | 2 + sysdeps/unix/sysv/sysv4/sethostname.c | 31 + sysdeps/unix/sysv/sysv4/setpgid.c | 35 + sysdeps/unix/sysv/sysv4/setsid.c | 34 + sysdeps/unix/sysv/sysv4/sigaction.c | 79 + sysdeps/unix/sysv/sysv4/sigaction.h | 51 + sysdeps/unix/sysv/sysv4/sigaltstack.S | 2 + sysdeps/unix/sysv/sysv4/siginfo.h | 58 + sysdeps/unix/sysv/sysv4/signum.h | 66 + sysdeps/unix/sysv/sysv4/sigprocmask.S | 24 + sysdeps/unix/sysv/sysv4/sigset.h | 97 + sysdeps/unix/sysv/sysv4/sigsuspend.S | 22 + sysdeps/unix/sysv/sysv4/solaris2/Makefile | 6 + sysdeps/unix/sysv/sysv4/solaris2/direct.h | 39 + sysdeps/unix/sysv/sysv4/solaris2/fsync.S | 29 + sysdeps/unix/sysv/sysv4/solaris2/signum.h | 73 + sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist | 1 + .../unix/sysv/sysv4/solaris2/sparc/Makefile | 5 + .../unix/sysv/sysv4/solaris2/sparc/start.c | 4 + .../unix/sysv/sysv4/solaris2/sparc/sys-sig.S | 25 + .../unix/sysv/sysv4/solaris2/sparc/sysdep.S | 46 + .../unix/sysv/sysv4/solaris2/sparc/sysdep.h | 51 + sysdeps/unix/sysv/sysv4/solaris2/statbuf.h | 82 + sysdeps/unix/sysv/sysv4/solaris2/utimes.S | 2 + sysdeps/unix/sysv/sysv4/sysconf.c | 181 + sysdeps/unix/sysv/sysv4/sysconfig.S | 22 + sysdeps/unix/sysv/sysv4/sysconfig.h | 28 + sysdeps/unix/sysv/sysv4/sysinfo.S | 22 + sysdeps/unix/sysv/sysv4/system.c | 2 + sysdeps/unix/sysv/sysv4/time.S | 22 + sysdeps/unix/sysv/sysv4/utsnamelen.h | 1 + sysdeps/unix/sysv/sysv4/waitflags.h | 34 + sysdeps/unix/sysv/sysv4/waitpid.c | 120 + sysdeps/unix/sysv/sysv_termio.h | 155 + sysdeps/unix/sysv/tcdrain.c | 33 + sysdeps/unix/sysv/tcflow.c | 46 + sysdeps/unix/sysv/tcflush.c | 44 + sysdeps/unix/sysv/tcgetattr.c | 171 + sysdeps/unix/sysv/tcgetpgrp.c | 35 + sysdeps/unix/sysv/tcsendbrk.c | 43 + sysdeps/unix/sysv/tcsetattr.c | 208 + sysdeps/unix/sysv/tcsetpgrp.c | 31 + sysdeps/unix/sysv/times.S | 24 + sysdeps/unix/sysv/ulimit.S | 22 + sysdeps/unix/sysv/uname.S | 22 + sysdeps/unix/sysv/utime.S | 22 + sysdeps/unix/sysv/utmp.h | 23 + sysdeps/unix/sysv/utsnamelen.h | 1 + sysdeps/unix/telldir.c | 42 + sysdeps/unix/umask.S | 24 + sysdeps/unix/unlink.S | 24 + sysdeps/unix/write.S | 24 + sysdeps/vax/DEFS.h | 61 + sysdeps/vax/Dist | 1 + sysdeps/vax/Makefile | 32 + sysdeps/vax/__longjmp.c | 100 + sysdeps/vax/bcmp.s | 57 + sysdeps/vax/bcopy.s | 78 + sysdeps/vax/bsd-_setjmp.S | 32 + sysdeps/vax/bsd-setjmp.S | 32 + sysdeps/vax/bzero.s | 53 + sysdeps/vax/ffs.s | 48 + sysdeps/vax/fl.h | 68 + sysdeps/vax/htonl.s | 30 + sysdeps/vax/htons.s | 30 + sysdeps/vax/huge_val.h | 27 + sysdeps/vax/index.s | 99 + sysdeps/vax/infnan.c | 62 + sysdeps/vax/jmp_buf.h | 7 + sysdeps/vax/log10.c | 28 + sysdeps/vax/memccpy.c | 45 + sysdeps/vax/memchr.s | 73 + sysdeps/vax/memcmp.s | 61 + sysdeps/vax/memmove.s | 93 + sysdeps/vax/memset.s | 55 + sysdeps/vax/ntohl.s | 30 + sysdeps/vax/ntohs.s | 30 + sysdeps/vax/rindex.s | 113 + sysdeps/vax/setjmp.c | 33 + sysdeps/vax/strcat.s | 66 + sysdeps/vax/strchr.s | 105 + sysdeps/vax/strcpy.s | 62 + sysdeps/vax/strcspn.s | 66 + sysdeps/vax/strlen.s | 52 + sysdeps/vax/strncat.s | 83 + sysdeps/vax/strncmp.s | 89 + sysdeps/vax/strncpy.s | 84 + sysdeps/vax/strpbrk.s | 68 + sysdeps/vax/strrchr.s | 114 + sysdeps/vax/strsep.s | 85 + sysdeps/vax/strspn.s | 70 + sysdeps/vax/strstr.s | 113 + sysdeps/z8000/gmp-mparam.h | 26 + syslog.h | 1 + tar.h | 1 + termios.h | 1 + termios/Makefile | 28 + termios/cfmakeraw.c | 33 + termios/cfsetspeed.c | 31 + termios/sys/termios.h | 4 + termios/sys/ttydefaults.h | 96 + termios/termios.h | 98 + time.h | 1 + time/.cvsignore | 4 + time/Makefile | 126 + time/africa | 603 + time/antarctica | 19 + time/ap.c | 46 + time/asctime.c | 50 + time/asia | 803 ++ time/australasia | 783 + time/backward | 75 + time/clocktest.c | 16 + time/ctime.c | 35 + time/date.c | 49 + time/difftime.c | 66 + time/dysize.c | 26 + time/emkdir.c | 85 + time/etcetera | 54 + time/europe | 2072 +++ time/factory | 8 + time/gmtime.c | 33 + time/ialloc.c | 103 + time/leapseconds | 41 + time/localtime.c | 84 + time/mktime.c | 506 + time/northamerica | 953 ++ time/offtime.c | 84 + time/pacificnew | 26 + time/private.h | 210 + time/scheck.c | 62 + time/solar87 | 386 + time/solar88 | 386 + time/solar89 | 391 + time/southamerica | 397 + time/strftime.c | 296 + time/sys/time.h | 147 + time/sys/timeb.h | 43 + time/systemv | 35 + time/test_time.args | 2 + time/test_time.c | 117 + time/time.h | 204 + time/timegm.c | 27 + time/tzfile.c | 332 + time/tzfile.h | 170 + time/tzset.c | 487 + time/yearistype | 26 + time/zdump.c | 331 + time/zic.c | 1956 +++ ttyent.h | 1 + unistd.h | 1 + utime.h | 1 + version.c | 44 + wordexp.h | 1 + 2263 files changed, 218361 insertions(+) create mode 100644 .cvsignore create mode 100755 =__ify create mode 100644 ChangeLog create mode 100644 INSTALL create mode 100644 Make-dist create mode 100644 MakeTAGS create mode 100644 Makeconfig create mode 100644 Makefile create mode 100644 Makefile.in create mode 100644 Makerules create mode 100644 NEWS create mode 100644 NOTES create mode 100644 README create mode 100644 README.template create mode 100644 Rules create mode 100644 a.out.h create mode 100644 aclocal.m4 create mode 100644 alloca.h create mode 100644 ansidecl.h create mode 100644 arpa/ftp.h create mode 100644 arpa/inet.h create mode 100644 arpa/nameser.h create mode 100644 arpa/telnet.h create mode 100644 arpa/tftp.h create mode 100644 assert.h create mode 100644 assert/Makefile create mode 100644 assert/assert-perr.c create mode 100644 assert/assert.c create mode 100644 assert/assert.h create mode 100644 bare/Makefile create mode 100644 conf/portability.h create mode 100644 config-name.in create mode 100755 config.guess create mode 100644 config.h.in create mode 100644 config.make.in create mode 100755 config.sub create mode 100755 configure create mode 100644 configure.in create mode 100644 crypt-README create mode 100644 csu/Makefile create mode 100644 csu/initfini.c create mode 100644 ctype.h create mode 100644 ctype/Makefile create mode 100644 ctype/ctype-extn.c create mode 100644 ctype/ctype-info.c create mode 100644 ctype/ctype.c create mode 100644 ctype/ctype.h create mode 100644 ctype/test_ctype.c create mode 100644 dirent.h create mode 100644 dirent/Makefile create mode 100644 dirent/alphasort.c create mode 100644 dirent/dirent.h create mode 100644 dirent/list.c create mode 100644 dirent/scandir.c create mode 100644 dirent/tst-seekdir.c create mode 100644 elf/elf.h create mode 100644 endian.h create mode 100644 errno.h create mode 100644 fcntl.h create mode 100644 features.h create mode 100644 fnmatch.h create mode 100644 ftw.h create mode 100644 getopt.h create mode 100644 glob.h create mode 100644 gnu-stabs.h create mode 100644 gnu/signal.h create mode 100644 gnu/time.h create mode 100644 gnu/types.h create mode 100644 gnu/wait.h create mode 100644 gnulib/.cvsignore create mode 100644 gnulib/Makefile create mode 100644 grp.h create mode 100644 grp/Makefile create mode 100644 grp/fgetgrent.c create mode 100644 grp/getgrent.c create mode 100644 grp/getgrgid.c create mode 100644 grp/getgrnam.c create mode 100644 grp/grp.h create mode 100644 grp/grpopen.c create mode 100644 grp/grpread.c create mode 100644 grp/initgroups.c create mode 100644 grp/testgrp.c create mode 100644 hurd/.cvsignore create mode 100644 hurd/Makefile create mode 100644 hurd/Notes create mode 100644 hurd/STATUS create mode 100644 hurd/alloc-fd.c create mode 100644 hurd/catch-exc.c create mode 100644 hurd/ctty-input.c create mode 100644 hurd/ctty-output.c create mode 100644 hurd/dtable.c create mode 100644 hurd/fchroot.c create mode 100644 hurd/fd-close.c create mode 100644 hurd/fd-read.c create mode 100644 hurd/fd-write.c create mode 100644 hurd/fopenport.c create mode 100644 hurd/getdport.c create mode 100644 hurd/getuids.c create mode 100644 hurd/getumask.c create mode 100644 hurd/hurd-raise.c create mode 100644 hurd/hurd.h create mode 100644 hurd/hurd/fd.h create mode 100644 hurd/hurd/id.h create mode 100644 hurd/hurd/ioctl.h create mode 100644 hurd/hurd/port.h create mode 100644 hurd/hurd/resource.h create mode 100644 hurd/hurd/signal.h create mode 100644 hurd/hurd/threadvar.h create mode 100644 hurd/hurd/userlink.h create mode 100644 hurd/hurdauth.c create mode 100644 hurd/hurdexec.c create mode 100644 hurd/hurdfault.c create mode 100644 hurd/hurdfault.h create mode 100644 hurd/hurdid.c create mode 100644 hurd/hurdinit.c create mode 100644 hurd/hurdinline.c create mode 100644 hurd/hurdintr.awk create mode 100644 hurd/hurdioctl.c create mode 100644 hurd/hurdkill.c create mode 100644 hurd/hurdlookup.c create mode 100644 hurd/hurdmalloc.c create mode 100644 hurd/hurdmalloc.h create mode 100644 hurd/hurdmsg.c create mode 100644 hurd/hurdpid.c create mode 100644 hurd/hurdports.c create mode 100644 hurd/hurdprio.c create mode 100644 hurd/hurdrlimit.c create mode 100644 hurd/hurdsig.c create mode 100644 hurd/hurdsock.c create mode 100644 hurd/intern-fd.c create mode 100644 hurd/intr-rpc.awk create mode 100644 hurd/intr-rpc.defs create mode 100644 hurd/invoke-trans.c create mode 100644 hurd/msgportdemux.c create mode 100644 hurd/msgstub.c create mode 100644 hurd/new-fd.c create mode 100644 hurd/openport.c create mode 100644 hurd/pid2task.c create mode 100644 hurd/port2fd.c create mode 100644 hurd/ports-get.c create mode 100644 hurd/ports-set.c create mode 100644 hurd/preempt-sig.c create mode 100644 hurd/privports.c create mode 100644 hurd/setauth.c create mode 100644 hurd/setuids.c create mode 100644 hurd/siginfo.c create mode 100644 hurd/task2pid.c create mode 100644 hurd/vpprintf.c create mode 100644 inet/Makefile create mode 100644 inet/arpa/ftp.h create mode 100644 inet/arpa/inet.h create mode 100644 inet/arpa/telnet.h create mode 100644 inet/arpa/tftp.h create mode 100644 inet/getproto.c create mode 100644 inet/getprtent.c create mode 100644 inet/getprtname.c create mode 100644 inet/getservent.c create mode 100644 inet/getsrvbynm.c create mode 100644 inet/getsrvbypt.c create mode 100644 inet/inet_addr.c create mode 100644 inet/inet_lnaof.c create mode 100644 inet/inet_mkadr.c create mode 100644 inet/inet_net.c create mode 100644 inet/inet_netof.c create mode 100644 inet/inet_ntoa.c create mode 100644 inet/netdb.h create mode 100644 inet/netinet/in.h create mode 100644 inet/protocols/routed.h create mode 100644 inet/protocols/rwhod.h create mode 100644 inet/protocols/talkd.h create mode 100644 inet/protocols/timed.h create mode 100644 inet/rcmd.c create mode 100644 inet/rexec.c create mode 100755 install-sh create mode 100644 io/Makefile create mode 100644 io/creat.c create mode 100644 io/fcntl.h create mode 100644 io/fts.c create mode 100644 io/fts.h create mode 100644 io/ftw.c create mode 100644 io/ftw.h create mode 100644 io/getdirname.c create mode 100644 io/getwd.c create mode 100644 io/lockf.c create mode 100644 io/poll.h create mode 100644 io/pwd.c create mode 100644 io/sys/fcntl.h create mode 100644 io/sys/poll.h create mode 100644 io/sys/stat.h create mode 100644 io/test-utime.c create mode 100644 io/utime.h create mode 100644 libc-symbols.h create mode 100644 limits.h create mode 100644 locale.h create mode 100644 locale/.cvsignore create mode 100644 locale/C-collate.c create mode 100644 locale/C-ctype.c create mode 100644 locale/C-ctype_ct.c create mode 100644 locale/C-ctype_mb.c create mode 100644 locale/C-monetary.c create mode 100644 locale/C-numeric.c create mode 100644 locale/C-response.c create mode 100644 locale/C-time.c create mode 100644 locale/Makefile create mode 100644 locale/locale.h create mode 100644 locale/localeconv.c create mode 100644 locale/localeinfo.h create mode 100644 locale/setlocale.c create mode 100644 localeinfo.h create mode 100644 mach/.cvsignore create mode 100644 mach/Machrules create mode 100644 mach/Makefile create mode 100644 mach/bootprivport.c create mode 100644 mach/devstream.c create mode 100644 mach/err_boot.sub create mode 100644 mach/err_ipc.sub create mode 100644 mach/err_kern.sub create mode 100644 mach/err_mach.sub create mode 100644 mach/err_server.sub create mode 100644 mach/err_us.sub create mode 100644 mach/error_compat.c create mode 100644 mach/errorlib.h create mode 100644 mach/errstring.c create mode 100644 mach/errsystems.awk create mode 100644 mach/errsystems.c create mode 100644 mach/hello.c create mode 100644 mach/lock-intern.h create mode 100644 mach/mach.h create mode 100644 mach/mach/error.h create mode 100644 mach/mach/mach.h create mode 100644 mach/mach/mach_traps.h create mode 100644 mach/mach/mig_support.h create mode 100644 mach/mach_error.c create mode 100644 mach/mach_error.h create mode 100644 mach/mach_init.c create mode 100644 mach/mach_init.h create mode 100644 mach/mach_shortcuts.c create mode 100644 mach/mach_syscalls.c create mode 100644 mach/mach_syscalls.h create mode 100644 mach/mach_traps.S create mode 100644 mach/mig-alloc.c create mode 100644 mach/mig-dealloc.c create mode 100644 mach/mig_strncpy.c create mode 100644 mach/msg-destroy.c create mode 100644 mach/msg.c create mode 100644 mach/msg_destroy.c create mode 100644 mach/msgserver.c create mode 100644 mach/mutex-solid.c create mode 100644 mach/setup-thread.c create mode 100644 mach/shortcut.awk create mode 100644 mach/spin-lock.c create mode 100644 mach/spin-lock.h create mode 100644 mach/spin-solid.c create mode 100644 mach/syscalls.awk create mode 100644 mach/vm_page_size.c create mode 100644 malloc.h create mode 100644 manual/.cvsignore create mode 100644 manual/=copying.texinfo create mode 100644 manual/=float.texinfo create mode 100644 manual/=limits.texinfo create mode 100644 manual/=process.texinfo create mode 100644 manual/=stdarg.texi create mode 100644 manual/=stddef.texi create mode 100644 manual/Makefile create mode 100644 manual/arith.texi create mode 100644 manual/assert.texi create mode 100644 manual/conf.texi create mode 100644 manual/creature.texi create mode 100644 manual/ctype.texi create mode 100644 manual/errno.texi create mode 100644 manual/examples/add.c create mode 100644 manual/examples/atexit.c create mode 100644 manual/examples/db.c create mode 100644 manual/examples/dir.c create mode 100644 manual/examples/filecli.c create mode 100644 manual/examples/filesrv.c create mode 100644 manual/examples/inetcli.c create mode 100644 manual/examples/inetsrv.c create mode 100644 manual/examples/isockad.c create mode 100644 manual/examples/longopt.c create mode 100644 manual/examples/memopen.c create mode 100644 manual/examples/memstrm.c create mode 100644 manual/examples/mkfsock.c create mode 100644 manual/examples/mkisock.c create mode 100644 manual/examples/pipe.c create mode 100644 manual/examples/popen.c create mode 100644 manual/examples/rprintf.c create mode 100755 manual/examples/search create mode 100644 manual/examples/search.c create mode 100644 manual/examples/select.c create mode 100644 manual/examples/setjmp.c create mode 100644 manual/examples/sigh1.c create mode 100644 manual/examples/sigusr.c create mode 100644 manual/examples/stpcpy.c create mode 100644 manual/examples/strftim.c create mode 100644 manual/examples/strncat.c create mode 100644 manual/examples/termios.c create mode 100644 manual/examples/testopt.c create mode 100644 manual/filesys.texi create mode 100644 manual/header.texi create mode 100644 manual/intro.texi create mode 100644 manual/io.texi create mode 100644 manual/job.texi create mode 100644 manual/lang.texi create mode 100644 manual/lgpl.texinfo create mode 100644 manual/libc.texinfo create mode 100644 manual/libcbook.texi create mode 100644 manual/llio.texi create mode 100644 manual/locale.texi create mode 100644 manual/maint.texi create mode 100644 manual/math.texi create mode 100644 manual/mbyte.texi create mode 100644 manual/memory.texi create mode 100644 manual/pattern.texi create mode 100644 manual/pipe.texi create mode 100644 manual/process.texi create mode 100644 manual/search.texi create mode 100644 manual/setjmp.texi create mode 100644 manual/signal.texi create mode 100644 manual/socket.texi create mode 100644 manual/startup.texi create mode 100644 manual/stdio.texi create mode 100644 manual/string.texi create mode 100644 manual/summary.awk create mode 100644 manual/sysinfo.texi create mode 100644 manual/terminal.texi create mode 100644 manual/time.texi create mode 100644 manual/users.texi create mode 100644 math.h create mode 100644 math/.cvsignore create mode 100644 math/Makefile create mode 100644 math/finite.c create mode 100644 math/math.h create mode 100644 math/test-math.c create mode 100644 memory.h create mode 100644 misc/Makefile create mode 100644 misc/bsd-compat.c create mode 100644 misc/daemon.c create mode 100644 misc/fstab.c create mode 100644 misc/fstab.h create mode 100644 misc/getpass.c create mode 100644 misc/getttyent.c create mode 100644 misc/getusershell.c create mode 100644 misc/init-misc.c create mode 100644 misc/insremque.c create mode 100644 misc/ioctltst.c create mode 100644 misc/nlist.h create mode 100644 misc/paths.h create mode 100644 misc/progname.c create mode 100644 misc/sgtty.h create mode 100644 misc/sys/cdefs.h create mode 100644 misc/sys/dir.h create mode 100644 misc/sys/file.h create mode 100644 misc/sys/ioctl.h create mode 100644 misc/sys/ptrace.h create mode 100644 misc/sys/syslog.h create mode 100644 misc/sys/uio.h create mode 100644 misc/syslog.c create mode 100644 misc/syslog.h create mode 100644 misc/ttyent.h create mode 100644 misc/ttyslot.c create mode 100755 mkinstalldirs create mode 100644 munch-tmpl.c create mode 100644 munch.awk create mode 100644 netdb.h create mode 100644 netinet/in.h create mode 100644 nlist.h create mode 100644 obstack.h create mode 100644 paths.h create mode 100644 poll.h create mode 100644 posix/.cvsignore create mode 100644 posix/Makefile create mode 100644 posix/confstr.c create mode 100644 posix/execl.c create mode 100644 posix/execle.c create mode 100644 posix/execlp.c create mode 100644 posix/execv.c create mode 100644 posix/execvp.c create mode 100644 posix/fnmatch.c create mode 100644 posix/fnmatch.h create mode 100644 posix/getconf.c create mode 100644 posix/getopt.c create mode 100644 posix/getopt.h create mode 100644 posix/getopt1.c create mode 100644 posix/glob.c create mode 100644 posix/glob.h create mode 100644 posix/glob/.cvsignore create mode 100644 posix/glob/Makefile.in create mode 100755 posix/glob/configure create mode 100644 posix/glob/configure.bat create mode 100644 posix/glob/configure.in create mode 100644 posix/gnu/types.h create mode 100644 posix/id.c create mode 100644 posix/posix1_lim.h create mode 100644 posix/posix2_lim.h create mode 100644 posix/sys/times.h create mode 100644 posix/sys/types.h create mode 100644 posix/sys/unistd.h create mode 100644 posix/sys/utsname.h create mode 100644 posix/sys/wait.h create mode 100644 posix/tar.h create mode 100644 posix/testfnm.args create mode 100644 posix/testfnm.c create mode 100644 posix/tstgetopt.args create mode 100644 posix/tstgetopt.c create mode 100644 posix/unistd.h create mode 100644 posix/wordexp.c create mode 100644 posix/wordexp.h create mode 100644 posix1_lim.h create mode 100644 posix2_lim.h create mode 100644 printf.h create mode 100755 printsources create mode 100644 protocols/routed.h create mode 100644 protocols/rwhod.h create mode 100644 protocols/talkd.h create mode 100644 protocols/timed.h create mode 100644 pwd.h create mode 100644 pwd/Makefile create mode 100644 pwd/fgetpwent.c create mode 100644 pwd/getpw.c create mode 100644 pwd/getpwent.c create mode 100644 pwd/getpwnam.c create mode 100644 pwd/getpwuid.c create mode 100644 pwd/putpwent.c create mode 100644 pwd/pwd.h create mode 100644 pwd/pwdopen.c create mode 100644 pwd/pwdread.c create mode 100644 resolv.h create mode 100644 resolv/Makefile create mode 100644 resolv/arpa/nameser.h create mode 100644 resolv/gethnamaddr.c create mode 100644 resolv/getnetbyaddr.c create mode 100644 resolv/getnetbyname.c create mode 100644 resolv/getnetent.c create mode 100644 resolv/getnetnamadr.c create mode 100644 resolv/herror.c create mode 100644 resolv/nsap_addr.c create mode 100644 resolv/res_comp.c create mode 100644 resolv/res_debug.c create mode 100644 resolv/res_init.c create mode 100644 resolv/res_mkquery.c create mode 100644 resolv/res_query.c create mode 100644 resolv/res_send.c create mode 100644 resolv/resolv.h create mode 100644 resolv/sethostent.c create mode 100644 resolv/sys/bitypes.h create mode 100644 resource/Makefile create mode 100644 resource/sys/resource.h create mode 100644 resource/sys/vlimit.h create mode 100644 resource/sys/vtimes.h create mode 100644 rpc/auth.h create mode 100644 rpc/auth_unix.h create mode 100644 rpc/clnt.h create mode 100644 rpc/netdb.h create mode 100644 rpc/pmap_clnt.h create mode 100644 rpc/pmap_prot.h create mode 100644 rpc/pmap_rmt.h create mode 100644 rpc/rpc.h create mode 100644 rpc/rpc_msg.h create mode 100644 rpc/svc.h create mode 100644 rpc/svc_auth.h create mode 100644 rpc/types.h create mode 100644 rpc/xdr.h create mode 100644 set-hooks.h create mode 100644 set-init.c create mode 100644 setjmp.h create mode 100644 setjmp/Makefile create mode 100644 setjmp/longjmp.c create mode 100644 setjmp/setjmp.h create mode 100644 setjmp/sigjmp.c create mode 100644 setjmp/tst-setjmp.c create mode 100644 sgtty.h create mode 100644 signal.h create mode 100644 signal/.cvsignore create mode 100644 signal/Makefile create mode 100644 signal/gsignal.c create mode 100644 signal/sigaddset.c create mode 100644 signal/sigdelset.c create mode 100644 signal/sigempty.c create mode 100644 signal/sigfillset.c create mode 100644 signal/sigismem.c create mode 100644 signal/signal.h create mode 100644 signal/sigsetops.c create mode 100644 signal/sigsetops.h create mode 100644 signal/ssignal.c create mode 100644 signal/sys/signal.h create mode 100644 signal/tst-signal.c create mode 100644 socket/Makefile create mode 100644 socket/sys/socket.h create mode 100644 socket/sys/un.h create mode 100644 stdio.h create mode 100644 stdio/.cvsignore create mode 100644 stdio/Makefile create mode 100644 stdio/_itoa.c create mode 100644 stdio/_itoa.h create mode 100644 stdio/asprintf.c create mode 100644 stdio/bug1.c create mode 100644 stdio/bug1.input create mode 100644 stdio/bug2.c create mode 100644 stdio/bug3.c create mode 100644 stdio/bug4.c create mode 100644 stdio/bug5.c create mode 100644 stdio/bug6.c create mode 100644 stdio/bug6.input create mode 100644 stdio/bug7.c create mode 100644 stdio/clearerr.c create mode 100644 stdio/dprintf.c create mode 100644 stdio/errnobug.c create mode 100644 stdio/fclose.c create mode 100644 stdio/feof.c create mode 100644 stdio/ferror.c create mode 100644 stdio/fflush.c create mode 100644 stdio/fgetc.c create mode 100644 stdio/fgetpos.c create mode 100644 stdio/fgets.c create mode 100644 stdio/fileno.c create mode 100644 stdio/fmemopen.c create mode 100644 stdio/fopen.c create mode 100644 stdio/fopncook.c create mode 100644 stdio/fpioconst.c create mode 100644 stdio/fpioconst.h create mode 100644 stdio/fprintf.c create mode 100644 stdio/fputc.c create mode 100644 stdio/fputs.c create mode 100644 stdio/fread.c create mode 100644 stdio/freopen.c create mode 100644 stdio/fscanf.c create mode 100644 stdio/fseek.c create mode 100644 stdio/fsetpos.c create mode 100644 stdio/ftell.c create mode 100644 stdio/fwrite.c create mode 100644 stdio/gen-mpn-copy create mode 100644 stdio/getc.c create mode 100644 stdio/getchar.c create mode 100644 stdio/getdelim.c create mode 100644 stdio/getline.c create mode 100644 stdio/gets.c create mode 100644 stdio/getw.c create mode 100644 stdio/glue.c create mode 100644 stdio/gmp-impl.h create mode 100644 stdio/gmp.h create mode 100644 stdio/internals.c create mode 100644 stdio/longlong.h create mode 100644 stdio/memstream.c create mode 100644 stdio/mp_clz_tab.c create mode 100644 stdio/newstream.c create mode 100644 stdio/obstream.c create mode 100644 stdio/perror.c create mode 100644 stdio/printf-prs.c create mode 100644 stdio/printf.c create mode 100644 stdio/printf.h create mode 100644 stdio/printf_fp.c create mode 100644 stdio/psignal.c create mode 100644 stdio/putc.c create mode 100644 stdio/putchar.c create mode 100644 stdio/puts.c create mode 100644 stdio/putw.c create mode 100644 stdio/reg-printf.c create mode 100644 stdio/rewind.c create mode 100644 stdio/scanf.c create mode 100644 stdio/setbuf.c create mode 100644 stdio/setbuffer.c create mode 100644 stdio/setlinebuf.c create mode 100644 stdio/setvbuf.c create mode 100644 stdio/snprintf.c create mode 100644 stdio/sprintf.c create mode 100644 stdio/sscanf.c create mode 100644 stdio/stdio.h create mode 100644 stdio/tempnam.c create mode 100644 stdio/temptest.c create mode 100644 stdio/test-fseek.c create mode 100644 stdio/test-fwrite.c create mode 100644 stdio/test-popen.c create mode 100644 stdio/test_rdwr.c create mode 100644 stdio/tmpfile.c create mode 100644 stdio/tmpnam.c create mode 100644 stdio/tst-fileno.c create mode 100644 stdio/tst-printf.c create mode 100644 stdio/tstgetln.c create mode 100644 stdio/tstgetln.input create mode 100644 stdio/tstscanf.c create mode 100644 stdio/tstscanf.input create mode 100644 stdio/ungetc.c create mode 100644 stdio/vasprintf.c create mode 100644 stdio/vdprintf.c create mode 100644 stdio/vfprintf.c create mode 100644 stdio/vfscanf.c create mode 100644 stdio/vprintf.c create mode 100644 stdio/vscanf.c create mode 100644 stdio/vsnprintf.c create mode 100644 stdio/vsprintf.c create mode 100644 stdio/vsscanf.c create mode 100644 stdio/xbug.c create mode 100644 stdlib.h create mode 100644 stdlib/Makefile create mode 100644 stdlib/abs.c create mode 100644 stdlib/alloca.h create mode 100644 stdlib/atexit.c create mode 100644 stdlib/atof.c create mode 100644 stdlib/atoi.c create mode 100644 stdlib/atol.c create mode 100644 stdlib/bsearch.c create mode 100644 stdlib/div.c create mode 100644 stdlib/exit.c create mode 100644 stdlib/exit.h create mode 100644 stdlib/labs.c create mode 100644 stdlib/ldiv.c create mode 100644 stdlib/mblen.c create mode 100644 stdlib/mbstowcs.c create mode 100644 stdlib/mbtowc.c create mode 100644 stdlib/msort.c create mode 100644 stdlib/on_exit.c create mode 100644 stdlib/qsort.c create mode 100644 stdlib/rand.c create mode 100644 stdlib/random.c create mode 100644 stdlib/stdlib.h create mode 100644 stdlib/strtod.c create mode 100644 stdlib/strtof.c create mode 100644 stdlib/strtol.c create mode 100644 stdlib/strtold.c create mode 100644 stdlib/strtoq.c create mode 100644 stdlib/strtoul.c create mode 100644 stdlib/strtouq.c create mode 100644 stdlib/testdiv.c create mode 100644 stdlib/testdiv.input create mode 100644 stdlib/testmb.c create mode 100644 stdlib/testrand.c create mode 100644 stdlib/testsort.c create mode 100644 stdlib/tst-strtod.c create mode 100644 stdlib/tst-strtol.c create mode 100644 stdlib/wcstombs.c create mode 100644 stdlib/wctomb.c create mode 100644 string.h create mode 100644 string/.cvsignore create mode 100644 string/Makefile create mode 100644 string/endian.h create mode 100644 string/memfrob.c create mode 100644 string/memory.h create mode 100644 string/strcoll.c create mode 100644 string/strdup.c create mode 100644 string/strerror.c create mode 100644 string/strfry.c create mode 100644 string/string.h create mode 100644 string/strings.h create mode 100644 string/strsignal.c create mode 100644 string/strtok.c create mode 100644 string/strxfrm.c create mode 100644 string/swab.c create mode 100644 string/test-ffs.c create mode 100644 string/testcopy.c create mode 100644 string/tester.c create mode 100644 strings.h create mode 100644 sunrpc/.cvsignore create mode 100644 sunrpc/Makefile create mode 100644 sunrpc/auth_none.c create mode 100644 sunrpc/auth_unix.c create mode 100644 sunrpc/authuxprot.c create mode 100644 sunrpc/bindrsvprt.c create mode 100644 sunrpc/clnt_gen.c create mode 100644 sunrpc/clnt_perr.c create mode 100644 sunrpc/clnt_raw.c create mode 100644 sunrpc/clnt_simp.c create mode 100644 sunrpc/clnt_tcp.c create mode 100644 sunrpc/clnt_udp.c create mode 100644 sunrpc/etc.rpc create mode 100644 sunrpc/get_myaddr.c create mode 100644 sunrpc/getrpcent.c create mode 100644 sunrpc/getrpcport.c create mode 100644 sunrpc/pm_getmaps.c create mode 100644 sunrpc/pm_getport.c create mode 100644 sunrpc/pmap_clnt.c create mode 100644 sunrpc/pmap_prot.c create mode 100644 sunrpc/pmap_prot2.c create mode 100644 sunrpc/pmap_rmt.c create mode 100644 sunrpc/portmap.c create mode 100644 sunrpc/rpc/auth.h create mode 100644 sunrpc/rpc/auth_unix.h create mode 100644 sunrpc/rpc/clnt.h create mode 100644 sunrpc/rpc/netdb.h create mode 100644 sunrpc/rpc/pmap_clnt.h create mode 100644 sunrpc/rpc/pmap_prot.h create mode 100644 sunrpc/rpc/pmap_rmt.h create mode 100644 sunrpc/rpc/rpc.h create mode 100644 sunrpc/rpc/rpc_msg.h create mode 100644 sunrpc/rpc/svc.h create mode 100644 sunrpc/rpc/svc_auth.h create mode 100644 sunrpc/rpc/types.h create mode 100644 sunrpc/rpc/xdr.h create mode 100644 sunrpc/rpc_clntout.c create mode 100644 sunrpc/rpc_cmsg.c create mode 100644 sunrpc/rpc_common.c create mode 100644 sunrpc/rpc_cout.c create mode 100644 sunrpc/rpc_dtable.c create mode 100644 sunrpc/rpc_hout.c create mode 100644 sunrpc/rpc_main.c create mode 100644 sunrpc/rpc_parse.c create mode 100644 sunrpc/rpc_parse.h create mode 100644 sunrpc/rpc_prot.c create mode 100644 sunrpc/rpc_scan.c create mode 100644 sunrpc/rpc_scan.h create mode 100644 sunrpc/rpc_svcout.c create mode 100644 sunrpc/rpc_util.c create mode 100644 sunrpc/rpc_util.h create mode 100644 sunrpc/rpcinfo.c create mode 100644 sunrpc/rpcsvc/bootparam.x create mode 100644 sunrpc/rpcsvc/klm_prot.x create mode 100644 sunrpc/rpcsvc/mount.x create mode 100644 sunrpc/rpcsvc/nfs_prot.x create mode 100644 sunrpc/rpcsvc/nlm_prot.x create mode 100644 sunrpc/rpcsvc/rex.x create mode 100644 sunrpc/rpcsvc/rnusers.x create mode 100644 sunrpc/rpcsvc/rquota.x create mode 100644 sunrpc/rpcsvc/rstat.x create mode 100644 sunrpc/rpcsvc/sm_inter.x create mode 100644 sunrpc/rpcsvc/spray.x create mode 100644 sunrpc/rpcsvc/yp.x create mode 100644 sunrpc/rpcsvc/yppasswd.x create mode 100644 sunrpc/svc.c create mode 100644 sunrpc/svc_auth.c create mode 100644 sunrpc/svc_authux.c create mode 100644 sunrpc/svc_raw.c create mode 100644 sunrpc/svc_run.c create mode 100644 sunrpc/svc_simple.c create mode 100644 sunrpc/svc_tcp.c create mode 100644 sunrpc/svc_udp.c create mode 100644 sunrpc/xdr.c create mode 100644 sunrpc/xdr_array.c create mode 100644 sunrpc/xdr_float.c create mode 100644 sunrpc/xdr_mem.c create mode 100644 sunrpc/xdr_rec.c create mode 100644 sunrpc/xdr_ref.c create mode 100644 sunrpc/xdr_stdio.c create mode 100644 sys/bitypes.h create mode 100644 sys/cdefs.h create mode 100644 sys/dir.h create mode 100644 sys/errno.h create mode 100644 sys/fcntl.h create mode 100644 sys/file.h create mode 100644 sys/ioctl.h create mode 100644 sys/poll.h create mode 100644 sys/ptrace.h create mode 100644 sys/resource.h create mode 100644 sys/signal.h create mode 100644 sys/socket.h create mode 100644 sys/stat.h create mode 100644 sys/syslog.h create mode 100644 sys/termios.h create mode 100644 sys/time.h create mode 100644 sys/timeb.h create mode 100644 sys/times.h create mode 100644 sys/ttydefaults.h create mode 100644 sys/types.h create mode 100644 sys/uio.h create mode 100644 sys/un.h create mode 100644 sys/unistd.h create mode 100644 sys/utsname.h create mode 100644 sys/vlimit.h create mode 100644 sys/vtimes.h create mode 100644 sys/wait.h create mode 100644 sysdeps/alpha/DEFS.h create mode 100644 sysdeps/alpha/Dist create mode 100644 sysdeps/alpha/Implies create mode 100644 sysdeps/alpha/Makefile create mode 100644 sysdeps/alpha/__longjmp.c create mode 100644 sysdeps/alpha/__math.h create mode 100644 sysdeps/alpha/bsd-_setjmp.S create mode 100644 sysdeps/alpha/bsd-setjmp.S create mode 100644 sysdeps/alpha/bytesex.h create mode 100644 sysdeps/alpha/copysign.c create mode 100644 sysdeps/alpha/divl.S create mode 100644 sysdeps/alpha/divlu.S create mode 100644 sysdeps/alpha/divq.S create mode 100644 sysdeps/alpha/divqu.S create mode 100644 sysdeps/alpha/divrem.m4 create mode 100644 sysdeps/alpha/fabs.c create mode 100644 sysdeps/alpha/gmp-mparam.h create mode 100644 sysdeps/alpha/jmp_buf.h create mode 100644 sysdeps/alpha/macros.m4 create mode 100644 sysdeps/alpha/memchr.c create mode 100644 sysdeps/alpha/reml.S create mode 100644 sysdeps/alpha/remlu.S create mode 100644 sysdeps/alpha/remq.S create mode 100644 sysdeps/alpha/remqu.S create mode 100644 sysdeps/alpha/setjmp.S create mode 100644 sysdeps/alpha/setjmp_aux.c create mode 100644 sysdeps/alpha/strchr.c create mode 100644 sysdeps/alpha/strlen.c create mode 100644 sysdeps/alpha/udiv_qrnnd.S create mode 100644 sysdeps/am29k/ffs.c create mode 100644 sysdeps/generic/Dist create mode 100644 sysdeps/generic/Makefile create mode 100644 sysdeps/generic/_strerror.c create mode 100644 sysdeps/generic/abort.c create mode 100644 sysdeps/generic/acos.c create mode 100644 sysdeps/generic/acosh.c create mode 100644 sysdeps/generic/add_1.c create mode 100644 sysdeps/generic/add_n.c create mode 100644 sysdeps/generic/addmul_1.c create mode 100644 sysdeps/generic/asin.c create mode 100644 sysdeps/generic/asincos.c create mode 100644 sysdeps/generic/asinh.c create mode 100644 sysdeps/generic/atan.c create mode 100644 sysdeps/generic/atan2.c create mode 100644 sysdeps/generic/atanh.c create mode 100644 sysdeps/generic/bcopy.c create mode 100644 sysdeps/generic/bzero.c create mode 100644 sysdeps/generic/cabs.c create mode 100644 sysdeps/generic/ceil.c create mode 100644 sysdeps/generic/cmp.c create mode 100755 sysdeps/generic/configure create mode 100644 sysdeps/generic/configure.in create mode 100644 sysdeps/generic/confname.h create mode 100644 sysdeps/generic/copysign.c create mode 100644 sysdeps/generic/cosh.c create mode 100644 sysdeps/generic/det_endian.c create mode 100644 sysdeps/generic/divmod.c create mode 100644 sysdeps/generic/divmod_1.c create mode 100644 sysdeps/generic/exp.c create mode 100644 sysdeps/generic/exp__E.c create mode 100644 sysdeps/generic/expm1.c create mode 100644 sysdeps/generic/fabs.c create mode 100644 sysdeps/generic/ffs.c create mode 100644 sysdeps/generic/floor.c create mode 100644 sysdeps/generic/fmod.c create mode 100644 sysdeps/generic/frexp.c create mode 100644 sysdeps/generic/ftime.c create mode 100644 sysdeps/generic/get_str.c create mode 100644 sysdeps/generic/getenv.c create mode 100644 sysdeps/generic/getpgrp.c create mode 100644 sysdeps/generic/gmp-mparam.h create mode 100644 sysdeps/generic/htonl.c create mode 100644 sysdeps/generic/htons.c create mode 100644 sysdeps/generic/hypot.c create mode 100644 sysdeps/generic/infnan.c create mode 100644 sysdeps/generic/isnan.c create mode 100644 sysdeps/generic/ldexp.c create mode 100644 sysdeps/generic/log.c create mode 100644 sysdeps/generic/log10.c create mode 100644 sysdeps/generic/log1p.c create mode 100644 sysdeps/generic/log__L.c create mode 100644 sysdeps/generic/lshift.c create mode 100644 sysdeps/generic/lstat.c create mode 100644 sysdeps/generic/make_siglist.c create mode 100644 sysdeps/generic/mathimpl.h create mode 100644 sysdeps/generic/memccpy.c create mode 100644 sysdeps/generic/memchr.c create mode 100644 sysdeps/generic/memcmp.c create mode 100644 sysdeps/generic/memcopy.h create mode 100644 sysdeps/generic/memcpy.c create mode 100644 sysdeps/generic/memmem.c create mode 100644 sysdeps/generic/memmove.c create mode 100644 sysdeps/generic/memset.c create mode 100644 sysdeps/generic/mig-reply.c create mode 100644 sysdeps/generic/mod_1.c create mode 100644 sysdeps/generic/modf.c create mode 100644 sysdeps/generic/morecore.c create mode 100644 sysdeps/generic/mul.c create mode 100644 sysdeps/generic/mul_1.c create mode 100644 sysdeps/generic/mul_n.c create mode 100644 sysdeps/generic/ntohl.c create mode 100644 sysdeps/generic/ntohs.c create mode 100644 sysdeps/generic/pow.c create mode 100644 sysdeps/generic/putenv.c create mode 100644 sysdeps/generic/resourcebits.h create mode 100644 sysdeps/generic/rint.c create mode 100644 sysdeps/generic/rshift.c create mode 100644 sysdeps/generic/sbrk.c create mode 100644 sysdeps/generic/setenv.c create mode 100644 sysdeps/generic/sigaction.h create mode 100644 sysdeps/generic/signame.c create mode 100644 sysdeps/generic/signame.h create mode 100644 sysdeps/generic/sigset.h create mode 100644 sysdeps/generic/sincos.c create mode 100644 sysdeps/generic/sinh.c create mode 100644 sysdeps/generic/sockaddrcom.h create mode 100644 sysdeps/generic/speed.c create mode 100644 sysdeps/generic/stpcpy.c create mode 100644 sysdeps/generic/stpncpy.c create mode 100644 sysdeps/generic/strcasecmp.c create mode 100644 sysdeps/generic/strcat.c create mode 100644 sysdeps/generic/strchr.c create mode 100644 sysdeps/generic/strcmp.c create mode 100644 sysdeps/generic/strcpy.c create mode 100644 sysdeps/generic/strcspn.c create mode 100644 sysdeps/generic/strlen.c create mode 100644 sysdeps/generic/strncase.c create mode 100644 sysdeps/generic/strncat.c create mode 100644 sysdeps/generic/strncmp.c create mode 100644 sysdeps/generic/strncpy.c create mode 100644 sysdeps/generic/strpbrk.c create mode 100644 sysdeps/generic/strrchr.c create mode 100644 sysdeps/generic/strsep.c create mode 100644 sysdeps/generic/strspn.c create mode 100644 sysdeps/generic/strstr.c create mode 100644 sysdeps/generic/sub_n.c create mode 100644 sysdeps/generic/submul_1.c create mode 100644 sysdeps/generic/sys/mman.h create mode 100644 sysdeps/generic/sysd-stdio.c create mode 100644 sysdeps/generic/tan.c create mode 100644 sysdeps/generic/tanh.c create mode 100644 sysdeps/generic/termbits.h create mode 100644 sysdeps/generic/trig.h create mode 100644 sysdeps/generic/uname.c create mode 100644 sysdeps/generic/utsnamelen.h create mode 100644 sysdeps/generic/varargs.h create mode 100644 sysdeps/generic/vfork.c create mode 100644 sysdeps/generic/vlimit.c create mode 100644 sysdeps/generic/vtimes.c create mode 100644 sysdeps/generic/waitstatus.h create mode 100644 sysdeps/generic/wordcopy.c create mode 100644 sysdeps/i386/Implies create mode 100644 sysdeps/i386/Makefile create mode 100644 sysdeps/i386/__longjmp.c create mode 100644 sysdeps/i386/abort.c create mode 100644 sysdeps/i386/add_n.S create mode 100644 sysdeps/i386/addmul_1.S create mode 100644 sysdeps/i386/asm-syntax.h create mode 100644 sysdeps/i386/bsd-_setjmp.S create mode 100644 sysdeps/i386/bsd-setjmp.S create mode 100644 sysdeps/i386/bytesex.h create mode 100644 sysdeps/i386/bzero.c create mode 100644 sysdeps/i386/ffs.c create mode 100644 sysdeps/i386/i586/memcopy.h create mode 100644 sysdeps/i386/jmp_buf.h create mode 100644 sysdeps/i386/lshift.S create mode 100644 sysdeps/i386/memchr.c create mode 100644 sysdeps/i386/memcopy.h create mode 100644 sysdeps/i386/memset.c create mode 100644 sysdeps/i386/mul_1.S create mode 100644 sysdeps/i386/rshift.S create mode 100644 sysdeps/i386/setjmp.c create mode 100644 sysdeps/i386/strlen.c create mode 100644 sysdeps/i386/sub_n.S create mode 100644 sysdeps/i386/submul_1.S create mode 100644 sysdeps/i860/memcopy.h create mode 100644 sysdeps/i960/Implies create mode 100644 sysdeps/i960/ffs.c create mode 100644 sysdeps/ieee754/Dist create mode 100644 sysdeps/ieee754/cabs.c create mode 100644 sysdeps/ieee754/cbrt.c create mode 100644 sysdeps/ieee754/copysign.c create mode 100644 sysdeps/ieee754/dbl2mpn.c create mode 100644 sysdeps/ieee754/drem.c create mode 100644 sysdeps/ieee754/frexp.c create mode 100644 sysdeps/ieee754/huge_val.h create mode 100644 sysdeps/ieee754/ieee754.h create mode 100644 sysdeps/ieee754/infnan.c create mode 100644 sysdeps/ieee754/isinf.c create mode 100644 sysdeps/ieee754/isinfl.c create mode 100644 sysdeps/ieee754/isnan.c create mode 100644 sysdeps/ieee754/isnanl.c create mode 100644 sysdeps/ieee754/ldbl2mpn.c create mode 100644 sysdeps/ieee754/ldexp.c create mode 100644 sysdeps/ieee754/log10.c create mode 100644 sysdeps/ieee754/logb.c create mode 100644 sysdeps/ieee754/mpn2dbl.c create mode 100644 sysdeps/ieee754/mpn2flt.c create mode 100644 sysdeps/ieee754/mpn2ldbl.c create mode 100644 sysdeps/ieee754/nan.h create mode 100644 sysdeps/ieee754/sqrt.c create mode 100644 sysdeps/ieee754/support.c create mode 100644 sysdeps/m68k/Implies create mode 100644 sysdeps/m68k/Makefile create mode 100644 sysdeps/m68k/__longjmp.c create mode 100644 sysdeps/m68k/bsd-_setjmp.S create mode 100644 sysdeps/m68k/bsd-setjmp.S create mode 100644 sysdeps/m68k/bytesex.h create mode 100644 sysdeps/m68k/ffs.c create mode 100644 sysdeps/m68k/fpu/Makefile create mode 100644 sysdeps/m68k/fpu/__math.h create mode 100644 sysdeps/m68k/fpu/acos.c create mode 100644 sysdeps/m68k/fpu/asin.c create mode 100644 sysdeps/m68k/fpu/atan.c create mode 100644 sysdeps/m68k/fpu/atan2.c create mode 100644 sysdeps/m68k/fpu/atanh.c create mode 100644 sysdeps/m68k/fpu/ceil.c create mode 100644 sysdeps/m68k/fpu/cos.c create mode 100644 sysdeps/m68k/fpu/cosh.c create mode 100644 sysdeps/m68k/fpu/drem.c create mode 100644 sysdeps/m68k/fpu/exp.c create mode 100644 sysdeps/m68k/fpu/expm1.c create mode 100644 sysdeps/m68k/fpu/fabs.c create mode 100644 sysdeps/m68k/fpu/fl.h create mode 100644 sysdeps/m68k/fpu/floor.c create mode 100644 sysdeps/m68k/fpu/fmod.c create mode 100644 sysdeps/m68k/fpu/frexp.c create mode 100644 sysdeps/m68k/fpu/isinf.c create mode 100644 sysdeps/m68k/fpu/isnan.c create mode 100644 sysdeps/m68k/fpu/ldexp.c create mode 100644 sysdeps/m68k/fpu/log.c create mode 100644 sysdeps/m68k/fpu/log10.c create mode 100644 sysdeps/m68k/fpu/log1p.c create mode 100644 sysdeps/m68k/fpu/logb.c create mode 100644 sysdeps/m68k/fpu/pow.c create mode 100644 sysdeps/m68k/fpu/rint.c create mode 100644 sysdeps/m68k/fpu/sin.c create mode 100644 sysdeps/m68k/fpu/sinh.c create mode 100644 sysdeps/m68k/fpu/sqrt.c create mode 100644 sysdeps/m68k/fpu/switch/68881-sw.h create mode 100644 sysdeps/m68k/fpu/switch/Dist create mode 100644 sysdeps/m68k/fpu/switch/Makefile create mode 100644 sysdeps/m68k/fpu/switch/__math.h create mode 100644 sysdeps/m68k/fpu/switch/switch.c create mode 100644 sysdeps/m68k/fpu/tan.c create mode 100644 sysdeps/m68k/fpu/tanh.c create mode 100644 sysdeps/m68k/jmp_buf.h create mode 100644 sysdeps/m68k/m68020/add_n.S create mode 100644 sysdeps/m68k/m68020/addmul_1.S create mode 100644 sysdeps/m68k/m68020/asm-syntax.h create mode 100644 sysdeps/m68k/m68020/mul_1.S create mode 100644 sysdeps/m68k/m68020/sub_n.S create mode 100644 sysdeps/m68k/m68020/submul_1.S create mode 100644 sysdeps/m68k/memcopy.h create mode 100644 sysdeps/m68k/setjmp.c create mode 100644 sysdeps/m88k/ffs.c create mode 100644 sysdeps/m88k/m88100/add_n.S create mode 100644 sysdeps/m88k/m88100/mul_1.S create mode 100644 sysdeps/m88k/m88100/sub_n.S create mode 100644 sysdeps/m88k/m88110/mul_1.S create mode 100644 sysdeps/mach/Makefile create mode 100644 sysdeps/mach/Subdirs create mode 100644 sysdeps/mach/_strerror.c create mode 100644 sysdeps/mach/adjtime.c create mode 100644 sysdeps/mach/alpha/machine-lock.h create mode 100644 sysdeps/mach/alpha/machine-sp.h create mode 100644 sysdeps/mach/alpha/syscall.S create mode 100644 sysdeps/mach/alpha/sysdep.h create mode 100644 sysdeps/mach/alpha/thread_state.h create mode 100644 sysdeps/mach/configure create mode 100644 sysdeps/mach/configure.in create mode 100644 sysdeps/mach/getpagesize.c create mode 100644 sysdeps/mach/gettimeofday.c create mode 100644 sysdeps/mach/hppa/machine-lock.h create mode 100644 sysdeps/mach/hurd/.cvsignore create mode 100644 sysdeps/mach/hurd/Dist create mode 100644 sysdeps/mach/hurd/Implies create mode 100644 sysdeps/mach/hurd/Makefile create mode 100644 sysdeps/mach/hurd/Subdirs create mode 100644 sysdeps/mach/hurd/_exit.c create mode 100644 sysdeps/mach/hurd/accept.c create mode 100644 sysdeps/mach/hurd/access.c create mode 100644 sysdeps/mach/hurd/adjtime.c create mode 100644 sysdeps/mach/hurd/alpha/exc2signal.c create mode 100644 sysdeps/mach/hurd/alpha/longjmp-ctx.c create mode 100644 sysdeps/mach/hurd/alpha/longjmp-ts.c create mode 100644 sysdeps/mach/hurd/alpha/sigcontext.h create mode 100644 sysdeps/mach/hurd/alpha/sigreturn.c create mode 100644 sysdeps/mach/hurd/alpha/trampoline.c create mode 100644 sysdeps/mach/hurd/bind.c create mode 100644 sysdeps/mach/hurd/brk.c create mode 100644 sysdeps/mach/hurd/chdir.c create mode 100644 sysdeps/mach/hurd/chflags.c create mode 100644 sysdeps/mach/hurd/chmod.c create mode 100644 sysdeps/mach/hurd/chown.c create mode 100644 sysdeps/mach/hurd/chroot.c create mode 100644 sysdeps/mach/hurd/close.c create mode 100644 sysdeps/mach/hurd/closedir.c create mode 100755 sysdeps/mach/hurd/configure create mode 100644 sysdeps/mach/hurd/configure.in create mode 100644 sysdeps/mach/hurd/connect.c create mode 100644 sysdeps/mach/hurd/defs.c create mode 100644 sysdeps/mach/hurd/dirstream.h create mode 100644 sysdeps/mach/hurd/dup2.c create mode 100644 sysdeps/mach/hurd/err_hurd.sub create mode 100644 sysdeps/mach/hurd/errlist.awk create mode 100644 sysdeps/mach/hurd/errlist.c create mode 100644 sysdeps/mach/hurd/errnos.awk create mode 100644 sysdeps/mach/hurd/errnos.h create mode 100644 sysdeps/mach/hurd/execve.c create mode 100644 sysdeps/mach/hurd/fchdir.c create mode 100644 sysdeps/mach/hurd/fchflags.c create mode 100644 sysdeps/mach/hurd/fchmod.c create mode 100644 sysdeps/mach/hurd/fchown.c create mode 100644 sysdeps/mach/hurd/fcntl.c create mode 100644 sysdeps/mach/hurd/fcntlbits.h create mode 100644 sysdeps/mach/hurd/fdopen.c create mode 100644 sysdeps/mach/hurd/fexecve.c create mode 100644 sysdeps/mach/hurd/flock.c create mode 100644 sysdeps/mach/hurd/fork.c create mode 100644 sysdeps/mach/hurd/fstat.c create mode 100644 sysdeps/mach/hurd/fsync.c create mode 100644 sysdeps/mach/hurd/ftruncate.c create mode 100644 sysdeps/mach/hurd/getcwd.c create mode 100644 sysdeps/mach/hurd/getdents.c create mode 100644 sysdeps/mach/hurd/getdtsz.c create mode 100644 sysdeps/mach/hurd/getegid.c create mode 100644 sysdeps/mach/hurd/geteuid.c create mode 100644 sysdeps/mach/hurd/getgid.c create mode 100644 sysdeps/mach/hurd/getgroups.c create mode 100644 sysdeps/mach/hurd/gethostid.c create mode 100644 sysdeps/mach/hurd/gethostname.c create mode 100644 sysdeps/mach/hurd/getitimer.c create mode 100644 sysdeps/mach/hurd/getlogin.c create mode 100644 sysdeps/mach/hurd/getpeername.c create mode 100644 sysdeps/mach/hurd/getpgid.c create mode 100644 sysdeps/mach/hurd/getpid.c create mode 100644 sysdeps/mach/hurd/getppid.c create mode 100644 sysdeps/mach/hurd/getpriority.c create mode 100644 sysdeps/mach/hurd/getrlimit.c create mode 100644 sysdeps/mach/hurd/getsockname.c create mode 100644 sysdeps/mach/hurd/getsockopt.c create mode 100644 sysdeps/mach/hurd/getuid.c create mode 100644 sysdeps/mach/hurd/hppa/sigcontext.h create mode 100644 sysdeps/mach/hurd/hppa/trampoline.c create mode 100644 sysdeps/mach/hurd/i386/exc2signal.c create mode 100644 sysdeps/mach/hurd/i386/init-fault.c create mode 100644 sysdeps/mach/hurd/i386/longjmp-ctx.c create mode 100644 sysdeps/mach/hurd/i386/longjmp-ts.c create mode 100644 sysdeps/mach/hurd/i386/sigcontext.h create mode 100644 sysdeps/mach/hurd/i386/sigreturn.c create mode 100644 sysdeps/mach/hurd/i386/trampoline.c create mode 100644 sysdeps/mach/hurd/ioctl.c create mode 100644 sysdeps/mach/hurd/ioctls.h create mode 100644 sysdeps/mach/hurd/isatty.c create mode 100644 sysdeps/mach/hurd/kill.c create mode 100644 sysdeps/mach/hurd/libc-ldscript create mode 100644 sysdeps/mach/hurd/link.c create mode 100644 sysdeps/mach/hurd/listen.c create mode 100644 sysdeps/mach/hurd/local_lim.h create mode 100644 sysdeps/mach/hurd/lseek.c create mode 100644 sysdeps/mach/hurd/lstat.c create mode 100644 sysdeps/mach/hurd/mig-reply.c create mode 100644 sysdeps/mach/hurd/mips/exc2signal.c create mode 100644 sysdeps/mach/hurd/mips/init-fault.c create mode 100644 sysdeps/mach/hurd/mips/longjmp-ctx.c create mode 100644 sysdeps/mach/hurd/mips/longjmp-ts.c create mode 100644 sysdeps/mach/hurd/mips/sigcontext.h create mode 100644 sysdeps/mach/hurd/mips/sigreturn.c create mode 100644 sysdeps/mach/hurd/mips/trampoline.c create mode 100644 sysdeps/mach/hurd/mkdir.c create mode 100644 sysdeps/mach/hurd/mknod.c create mode 100644 sysdeps/mach/hurd/mmap.c create mode 100644 sysdeps/mach/hurd/open.c create mode 100644 sysdeps/mach/hurd/opendir.c create mode 100644 sysdeps/mach/hurd/pipe.c create mode 100644 sysdeps/mach/hurd/ptrace.c create mode 100644 sysdeps/mach/hurd/read.c create mode 100644 sysdeps/mach/hurd/readdir.c create mode 100644 sysdeps/mach/hurd/readlink.c create mode 100644 sysdeps/mach/hurd/reboot.c create mode 100644 sysdeps/mach/hurd/recv.c create mode 100644 sysdeps/mach/hurd/recvfrom.c create mode 100644 sysdeps/mach/hurd/rename.c create mode 100644 sysdeps/mach/hurd/rewinddir.c create mode 100644 sysdeps/mach/hurd/rmdir.c create mode 100644 sysdeps/mach/hurd/sbrk.c create mode 100644 sysdeps/mach/hurd/seekdir.c create mode 100644 sysdeps/mach/hurd/select.c create mode 100644 sysdeps/mach/hurd/send.c create mode 100644 sysdeps/mach/hurd/sendto.c create mode 100644 sysdeps/mach/hurd/setegid.c create mode 100644 sysdeps/mach/hurd/seteuid.c create mode 100644 sysdeps/mach/hurd/setgid.c create mode 100644 sysdeps/mach/hurd/setgroups.c create mode 100644 sysdeps/mach/hurd/sethostid.c create mode 100644 sysdeps/mach/hurd/sethostname.c create mode 100644 sysdeps/mach/hurd/setitimer.c create mode 100644 sysdeps/mach/hurd/setlogin.c create mode 100644 sysdeps/mach/hurd/setpgid.c create mode 100644 sysdeps/mach/hurd/setpriority.c create mode 100644 sysdeps/mach/hurd/setregid.c create mode 100644 sysdeps/mach/hurd/setreuid.c create mode 100644 sysdeps/mach/hurd/setrlimit.c create mode 100644 sysdeps/mach/hurd/setsid.c create mode 100644 sysdeps/mach/hurd/setsockopt.c create mode 100644 sysdeps/mach/hurd/settimeofday.c create mode 100644 sysdeps/mach/hurd/setuid.c create mode 100644 sysdeps/mach/hurd/shutdown.c create mode 100644 sysdeps/mach/hurd/sigaction.c create mode 100644 sysdeps/mach/hurd/sigaltstack.c create mode 100644 sysdeps/mach/hurd/sigpending.c create mode 100644 sysdeps/mach/hurd/sigprocmask.c create mode 100644 sysdeps/mach/hurd/sigstack.c create mode 100644 sysdeps/mach/hurd/sigsuspend.c create mode 100644 sysdeps/mach/hurd/socket.c create mode 100644 sysdeps/mach/hurd/socketpair.c create mode 100644 sysdeps/mach/hurd/start.c create mode 100644 sysdeps/mach/hurd/stat.c create mode 100644 sysdeps/mach/hurd/statbuf.h create mode 100644 sysdeps/mach/hurd/stdio_init.c create mode 100644 sysdeps/mach/hurd/symlink.c create mode 100644 sysdeps/mach/hurd/sync.c create mode 100644 sysdeps/mach/hurd/sys/param.h create mode 100644 sysdeps/mach/hurd/sysd-stdio.c create mode 100644 sysdeps/mach/hurd/telldir.c create mode 100644 sysdeps/mach/hurd/truncate.c create mode 100644 sysdeps/mach/hurd/ttyname.c create mode 100644 sysdeps/mach/hurd/umask.c create mode 100644 sysdeps/mach/hurd/uname.c create mode 100644 sysdeps/mach/hurd/unlink.c create mode 100644 sysdeps/mach/hurd/utimes.c create mode 100644 sysdeps/mach/hurd/wait4.c create mode 100644 sysdeps/mach/hurd/write.c create mode 100644 sysdeps/mach/i386/machine-lock.h create mode 100644 sysdeps/mach/i386/machine-sp.h create mode 100644 sysdeps/mach/i386/syscall.S create mode 100644 sysdeps/mach/i386/sysdep.h create mode 100644 sysdeps/mach/i386/thread_state.h create mode 100644 sysdeps/mach/mips/Dist create mode 100644 sysdeps/mach/mips/Makefile create mode 100644 sysdeps/mach/mips/cacheflush.c create mode 100644 sysdeps/mach/mips/machine-lock.h create mode 100644 sysdeps/mach/mips/machine-sp.h create mode 100644 sysdeps/mach/mips/syscall.S create mode 100644 sysdeps/mach/mips/sysdep.h create mode 100644 sysdeps/mach/mips/thread_state.h create mode 100644 sysdeps/mach/mprotect.c create mode 100644 sysdeps/mach/munmap.c create mode 100644 sysdeps/mach/sleep.c create mode 100644 sysdeps/mach/start.c create mode 100644 sysdeps/mach/sys/reboot.h create mode 100644 sysdeps/mach/syscall.h create mode 100644 sysdeps/mach/sysdep.h create mode 100644 sysdeps/mach/thread_state.h create mode 100644 sysdeps/mach/usleep.c create mode 100644 sysdeps/mips/.cvsignore create mode 100644 sysdeps/mips/Dist create mode 100644 sysdeps/mips/Implies create mode 100644 sysdeps/mips/Makefile create mode 100644 sysdeps/mips/__longjmp.c create mode 100644 sysdeps/mips/bsd-_setjmp.S create mode 100644 sysdeps/mips/bsd-setjmp.S create mode 100644 sysdeps/mips/dec/bytesex.h create mode 100644 sysdeps/mips/jmp_buf.h create mode 100644 sysdeps/mips/mips64/gmp-mparam.h create mode 100644 sysdeps/mips/mipsel/bytesex.h create mode 100644 sysdeps/mips/p40/bytesex.h create mode 100644 sysdeps/mips/setjmp.S create mode 100644 sysdeps/mips/setjmp_aux.c create mode 100644 sysdeps/posix/Dist create mode 100644 sysdeps/posix/Makefile create mode 100644 sysdeps/posix/clock.c create mode 100644 sysdeps/posix/ctermid.c create mode 100644 sysdeps/posix/cuserid.c create mode 100644 sysdeps/posix/defs.c create mode 100644 sysdeps/posix/dup.c create mode 100644 sysdeps/posix/dup2.c create mode 100644 sysdeps/posix/fdopen.c create mode 100644 sysdeps/posix/flock.c create mode 100644 sysdeps/posix/fpathconf.c create mode 100644 sysdeps/posix/getcwd.c create mode 100644 sysdeps/posix/getdtsz.c create mode 100644 sysdeps/posix/getpagesize.c create mode 100644 sysdeps/posix/gettimeofday.c create mode 100644 sysdeps/posix/isatty.c create mode 100644 sysdeps/posix/killpg.c create mode 100644 sysdeps/posix/libc_fatal.c create mode 100644 sysdeps/posix/mk-stdiolim.c create mode 100644 sysdeps/posix/mkstemp.c create mode 100644 sysdeps/posix/mktemp.c create mode 100644 sysdeps/posix/pipestream.c create mode 100644 sysdeps/posix/raise.c create mode 100644 sysdeps/posix/readv.c create mode 100644 sysdeps/posix/remove.c create mode 100644 sysdeps/posix/rename.c create mode 100644 sysdeps/posix/sigblock.c create mode 100644 sysdeps/posix/sigintr.c create mode 100644 sysdeps/posix/signal.c create mode 100644 sysdeps/posix/sigpause.c create mode 100644 sysdeps/posix/sigsetmask.c create mode 100644 sysdeps/posix/sigsuspend.c create mode 100644 sysdeps/posix/sigvec.c create mode 100644 sysdeps/posix/sleep.c create mode 100644 sysdeps/posix/stdio_init.c create mode 100644 sysdeps/posix/sysconf.c create mode 100644 sysdeps/posix/system.c create mode 100644 sysdeps/posix/tempname.c create mode 100644 sysdeps/posix/truncate.c create mode 100644 sysdeps/posix/ttyname.c create mode 100644 sysdeps/posix/wait.c create mode 100644 sysdeps/posix/wait3.c create mode 100644 sysdeps/posix/writev.c create mode 100644 sysdeps/rs6000/ffs.c create mode 100644 sysdeps/rs6000/memcopy.h create mode 100644 sysdeps/sparc/DEFS.h create mode 100644 sysdeps/sparc/Dist create mode 100644 sysdeps/sparc/Implies create mode 100644 sysdeps/sparc/Makefile create mode 100644 sysdeps/sparc/__longjmp.S create mode 100644 sysdeps/sparc/add_n.S create mode 100644 sysdeps/sparc/addmul_1.S create mode 100644 sysdeps/sparc/alloca.S create mode 100644 sysdeps/sparc/bsd-_setjmp.S create mode 100644 sysdeps/sparc/bsd-setjmp.S create mode 100644 sysdeps/sparc/bytesex.h create mode 100644 sysdeps/sparc/divrem.m4 create mode 100644 sysdeps/sparc/jmp_buf.h create mode 100644 sysdeps/sparc/memcopy.h create mode 100644 sysdeps/sparc/mul_1.S create mode 100644 sysdeps/sparc/rem.S create mode 100644 sysdeps/sparc/sdiv.S create mode 100644 sysdeps/sparc/setjmp.S create mode 100644 sysdeps/sparc/sparc8/addmul_1.S create mode 100644 sysdeps/sparc/sparc8/mul_1.S create mode 100644 sysdeps/sparc/sparc8/submul_1.S create mode 100644 sysdeps/sparc/sparc8/udiv_qrnnd.S create mode 100644 sysdeps/sparc/sqrt.c create mode 100644 sysdeps/sparc/sub_n.S create mode 100644 sysdeps/sparc/submul_1.S create mode 100644 sysdeps/sparc/udiv.S create mode 100644 sysdeps/sparc/udiv_qrnnd.S create mode 100644 sysdeps/sparc/umul.S create mode 100644 sysdeps/sparc/urem.S create mode 100644 sysdeps/standalone/Dist create mode 100644 sysdeps/standalone/Subdirs create mode 100644 sysdeps/standalone/brk.c create mode 100644 sysdeps/standalone/close.c create mode 100644 sysdeps/standalone/dirstream.h create mode 100644 sysdeps/standalone/filedesc.h create mode 100644 sysdeps/standalone/i386/Dist create mode 100644 sysdeps/standalone/i386/force_cpu386/Dist create mode 100644 sysdeps/standalone/i386/force_cpu386/Makefile create mode 100644 sysdeps/standalone/i386/force_cpu386/_exit.c create mode 100644 sysdeps/standalone/i386/force_cpu386/brdinit.c create mode 100644 sysdeps/standalone/i386/force_cpu386/console.c create mode 100644 sysdeps/standalone/i386/force_cpu386/strtsupp.S create mode 100644 sysdeps/standalone/i386/force_cpu386/target.ld create mode 100644 sysdeps/standalone/i386/i386.h create mode 100644 sysdeps/standalone/i386/start.S create mode 100644 sysdeps/standalone/i960/Dist create mode 100644 sysdeps/standalone/i960/i960ca.h create mode 100644 sysdeps/standalone/i960/nindy960/Makefile create mode 100644 sysdeps/standalone/i960/nindy960/_exit.c create mode 100644 sysdeps/standalone/i960/nindy960/brdinit.c create mode 100644 sysdeps/standalone/i960/nindy960/console.c create mode 100644 sysdeps/standalone/i960/start.S create mode 100644 sysdeps/standalone/m68k/m68020/Dist create mode 100644 sysdeps/standalone/m68k/m68020/m68020.h create mode 100644 sysdeps/standalone/m68k/m68020/mvme135/Implies create mode 100644 sysdeps/standalone/m68k/m68020/mvme136/Dist create mode 100644 sysdeps/standalone/m68k/m68020/mvme136/Makefile create mode 100644 sysdeps/standalone/m68k/m68020/mvme136/_exit.c create mode 100644 sysdeps/standalone/m68k/m68020/mvme136/brdinit.c create mode 100644 sysdeps/standalone/m68k/m68020/mvme136/console.c create mode 100644 sysdeps/standalone/m68k/m68020/mvme136/mvme136.ld create mode 100644 sysdeps/standalone/m68k/m68020/start.S create mode 100644 sysdeps/standalone/open.c create mode 100644 sysdeps/standalone/read.c create mode 100644 sysdeps/standalone/standalone.h create mode 100644 sysdeps/standalone/stdio_lim.h create mode 100644 sysdeps/standalone/write.c create mode 100644 sysdeps/stub/__longjmp.c create mode 100644 sysdeps/stub/__math.h create mode 100644 sysdeps/stub/_exit.c create mode 100644 sysdeps/stub/accept.c create mode 100644 sysdeps/stub/access.c create mode 100644 sysdeps/stub/acct.c create mode 100644 sysdeps/stub/acos.c create mode 100644 sysdeps/stub/adjtime.c create mode 100644 sysdeps/stub/alarm.c create mode 100644 sysdeps/stub/asin.c create mode 100644 sysdeps/stub/asm-syntax.h create mode 100644 sysdeps/stub/atan2.c create mode 100644 sysdeps/stub/bind.c create mode 100644 sysdeps/stub/brdinit.c create mode 100644 sysdeps/stub/brk.c create mode 100644 sysdeps/stub/bsd-_setjmp.c create mode 100644 sysdeps/stub/bsd-setjmp.c create mode 100644 sysdeps/stub/bytesex.h create mode 100644 sysdeps/stub/cbrt.c create mode 100644 sysdeps/stub/chdir.c create mode 100644 sysdeps/stub/chflags.c create mode 100644 sysdeps/stub/chmod.c create mode 100644 sysdeps/stub/chown.c create mode 100644 sysdeps/stub/chroot.c create mode 100644 sysdeps/stub/clock.c create mode 100644 sysdeps/stub/close.c create mode 100644 sysdeps/stub/closedir.c create mode 100644 sysdeps/stub/confstr.h create mode 100644 sysdeps/stub/connect.c create mode 100644 sysdeps/stub/console.c create mode 100644 sysdeps/stub/cos.c create mode 100644 sysdeps/stub/cosh.c create mode 100644 sysdeps/stub/ctermid.c create mode 100644 sysdeps/stub/cuserid.c create mode 100644 sysdeps/stub/dbl2mpn.c create mode 100644 sysdeps/stub/defs.c create mode 100644 sysdeps/stub/direct.h create mode 100644 sysdeps/stub/dirstream.h create mode 100644 sysdeps/stub/drem.c create mode 100644 sysdeps/stub/dup.c create mode 100644 sysdeps/stub/dup2.c create mode 100644 sysdeps/stub/errlist.c create mode 100644 sysdeps/stub/errnos.h create mode 100644 sysdeps/stub/exc2signal.c create mode 100644 sysdeps/stub/execve.c create mode 100644 sysdeps/stub/exp.c create mode 100644 sysdeps/stub/fchdir.c create mode 100644 sysdeps/stub/fchflags.c create mode 100644 sysdeps/stub/fchmod.c create mode 100644 sysdeps/stub/fchown.c create mode 100644 sysdeps/stub/fcntl.c create mode 100644 sysdeps/stub/fcntlbits.h create mode 100644 sysdeps/stub/fdopen.c create mode 100644 sysdeps/stub/fexecve.c create mode 100644 sysdeps/stub/flock.c create mode 100644 sysdeps/stub/fmod.c create mode 100644 sysdeps/stub/fork.c create mode 100644 sysdeps/stub/fpathconf.c create mode 100644 sysdeps/stub/frexp.c create mode 100644 sysdeps/stub/fstat.c create mode 100644 sysdeps/stub/fsync.c create mode 100644 sysdeps/stub/ftruncate.c create mode 100644 sysdeps/stub/getcwd.c create mode 100644 sysdeps/stub/getdents.c create mode 100644 sysdeps/stub/getdomain.c create mode 100644 sysdeps/stub/getdtsz.c create mode 100644 sysdeps/stub/getegid.c create mode 100644 sysdeps/stub/getenv.c create mode 100644 sysdeps/stub/geteuid.c create mode 100644 sysdeps/stub/getgid.c create mode 100644 sysdeps/stub/getgroups.c create mode 100644 sysdeps/stub/gethostid.c create mode 100644 sysdeps/stub/gethostname.c create mode 100644 sysdeps/stub/getitimer.c create mode 100644 sysdeps/stub/getlogin.c create mode 100644 sysdeps/stub/getpagesize.c create mode 100644 sysdeps/stub/getpeername.c create mode 100644 sysdeps/stub/getpgid.c create mode 100644 sysdeps/stub/getpid.c create mode 100644 sysdeps/stub/getppid.c create mode 100644 sysdeps/stub/getpriority.c create mode 100644 sysdeps/stub/getrlimit.c create mode 100644 sysdeps/stub/getrusage.c create mode 100644 sysdeps/stub/getsockname.c create mode 100644 sysdeps/stub/getsockopt.c create mode 100644 sysdeps/stub/gettimeofday.c create mode 100644 sysdeps/stub/getuid.c create mode 100644 sysdeps/stub/gtty.c create mode 100644 sysdeps/stub/huge_val.h create mode 100644 sysdeps/stub/init-fault.c create mode 100644 sysdeps/stub/init-posix.c create mode 100644 sysdeps/stub/ioctl.c create mode 100644 sysdeps/stub/ioctls.h create mode 100644 sysdeps/stub/isatty.c create mode 100644 sysdeps/stub/isinf.c create mode 100644 sysdeps/stub/isinfl.c create mode 100644 sysdeps/stub/isnanl.c create mode 100644 sysdeps/stub/jmp_buf.h create mode 100644 sysdeps/stub/kill.c create mode 100644 sysdeps/stub/killpg.c create mode 100644 sysdeps/stub/ldbl2mpn.c create mode 100644 sysdeps/stub/libc_fatal.c create mode 100644 sysdeps/stub/link.c create mode 100644 sysdeps/stub/listen.c create mode 100644 sysdeps/stub/local_lim.h create mode 100644 sysdeps/stub/log.c create mode 100644 sysdeps/stub/log10.c create mode 100644 sysdeps/stub/logb.c create mode 100644 sysdeps/stub/longjmp-ctx.c create mode 100644 sysdeps/stub/longjmp-ts.c create mode 100644 sysdeps/stub/lseek.c create mode 100644 sysdeps/stub/lstat.c create mode 100644 sysdeps/stub/machine-lock.h create mode 100644 sysdeps/stub/machine-sp.h create mode 100644 sysdeps/stub/madvise.c create mode 100644 sysdeps/stub/mkdir.c create mode 100644 sysdeps/stub/mkfifo.c create mode 100644 sysdeps/stub/mknod.c create mode 100644 sysdeps/stub/mkstemp.c create mode 100644 sysdeps/stub/mktemp.c create mode 100644 sysdeps/stub/mmap.c create mode 100644 sysdeps/stub/morecore.c create mode 100644 sysdeps/stub/mpn2dbl.c create mode 100644 sysdeps/stub/mpn2flt.c create mode 100644 sysdeps/stub/mpn2ldbl.c create mode 100644 sysdeps/stub/mprotect.c create mode 100644 sysdeps/stub/msync.c create mode 100644 sysdeps/stub/munmap.c create mode 100644 sysdeps/stub/nan.h create mode 100644 sysdeps/stub/nice.c create mode 100644 sysdeps/stub/nlist.c create mode 100644 sysdeps/stub/open.c create mode 100644 sysdeps/stub/opendir.c create mode 100644 sysdeps/stub/pathconf.c create mode 100644 sysdeps/stub/pause.c create mode 100644 sysdeps/stub/pipe.c create mode 100644 sysdeps/stub/pipestream.c create mode 100644 sysdeps/stub/poll.c create mode 100644 sysdeps/stub/posix_opt.h create mode 100644 sysdeps/stub/ptrace.c create mode 100644 sysdeps/stub/putenv.c create mode 100644 sysdeps/stub/raise.c create mode 100644 sysdeps/stub/read.c create mode 100644 sysdeps/stub/readdir.c create mode 100644 sysdeps/stub/readlink.c create mode 100644 sysdeps/stub/readv.c create mode 100644 sysdeps/stub/reboot.c create mode 100644 sysdeps/stub/recv.c create mode 100644 sysdeps/stub/recvfrom.c create mode 100644 sysdeps/stub/recvmsg.c create mode 100644 sysdeps/stub/remove.c create mode 100644 sysdeps/stub/rename.c create mode 100644 sysdeps/stub/rewinddir.c create mode 100644 sysdeps/stub/rmdir.c create mode 100644 sysdeps/stub/sbrk.c create mode 100644 sysdeps/stub/seekdir.c create mode 100644 sysdeps/stub/select.c create mode 100644 sysdeps/stub/send.c create mode 100644 sysdeps/stub/sendmsg.c create mode 100644 sysdeps/stub/sendto.c create mode 100644 sysdeps/stub/setdomain.c create mode 100644 sysdeps/stub/setegid.c create mode 100644 sysdeps/stub/setenv.c create mode 100644 sysdeps/stub/seteuid.c create mode 100644 sysdeps/stub/setgid.c create mode 100644 sysdeps/stub/setgroups.c create mode 100644 sysdeps/stub/sethostid.c create mode 100644 sysdeps/stub/sethostname.c create mode 100644 sysdeps/stub/setitimer.c create mode 100644 sysdeps/stub/setjmp.c create mode 100644 sysdeps/stub/setlogin.c create mode 100644 sysdeps/stub/setpgid.c create mode 100644 sysdeps/stub/setpriority.c create mode 100644 sysdeps/stub/setregid.c create mode 100644 sysdeps/stub/setreuid.c create mode 100644 sysdeps/stub/setrlimit.c create mode 100644 sysdeps/stub/setsid.c create mode 100644 sysdeps/stub/setsockopt.c create mode 100644 sysdeps/stub/settimeofday.c create mode 100644 sysdeps/stub/setuid.c create mode 100644 sysdeps/stub/shutdown.c create mode 100644 sysdeps/stub/sigaction.c create mode 100644 sysdeps/stub/sigaltstack.c create mode 100644 sysdeps/stub/sigblock.c create mode 100644 sysdeps/stub/sigcontext.h create mode 100644 sysdeps/stub/sigintr.c create mode 100644 sysdeps/stub/siglist.c create mode 100644 sysdeps/stub/signal.c create mode 100644 sysdeps/stub/signum.h create mode 100644 sysdeps/stub/sigpause.c create mode 100644 sysdeps/stub/sigpending.c create mode 100644 sysdeps/stub/sigprocmask.c create mode 100644 sysdeps/stub/sigreturn.c create mode 100644 sysdeps/stub/sigsetmask.c create mode 100644 sysdeps/stub/sigstack.c create mode 100644 sysdeps/stub/sigsuspend.c create mode 100644 sysdeps/stub/sigvec.c create mode 100644 sysdeps/stub/sin.c create mode 100644 sysdeps/stub/sinh.c create mode 100644 sysdeps/stub/sleep.c create mode 100644 sysdeps/stub/socket.c create mode 100644 sysdeps/stub/socketpair.c create mode 100644 sysdeps/stub/sqrt.c create mode 100644 sysdeps/stub/sstk.c create mode 100644 sysdeps/stub/start.c create mode 100644 sysdeps/stub/stat.c create mode 100644 sysdeps/stub/statbuf.h create mode 100644 sysdeps/stub/stdio_init.c create mode 100644 sysdeps/stub/stdio_lim.h create mode 100644 sysdeps/stub/stime.c create mode 100644 sysdeps/stub/strtsupp.c create mode 100644 sysdeps/stub/stty.c create mode 100644 sysdeps/stub/swapon.c create mode 100644 sysdeps/stub/symlink.c create mode 100644 sysdeps/stub/sync.c create mode 100644 sysdeps/stub/sys/param.h create mode 100644 sysdeps/stub/sys/reboot.h create mode 100644 sysdeps/stub/syscall.c create mode 100644 sysdeps/stub/syscall.h create mode 100644 sysdeps/stub/sysconf.c create mode 100644 sysdeps/stub/sysd-stdio.c create mode 100644 sysdeps/stub/sysdep.c create mode 100644 sysdeps/stub/sysdep.h create mode 100644 sysdeps/stub/system.c create mode 100644 sysdeps/stub/tan.c create mode 100644 sysdeps/stub/tanh.c create mode 100644 sysdeps/stub/tcdrain.c create mode 100644 sysdeps/stub/tcflow.c create mode 100644 sysdeps/stub/tcflush.c create mode 100644 sysdeps/stub/tcgetattr.c create mode 100644 sysdeps/stub/tcgetpgrp.c create mode 100644 sysdeps/stub/tcsendbrk.c create mode 100644 sysdeps/stub/tcsetattr.c create mode 100644 sysdeps/stub/tcsetpgrp.c create mode 100644 sysdeps/stub/telldir.c create mode 100644 sysdeps/stub/tempname.c create mode 100644 sysdeps/stub/thread_state.h create mode 100644 sysdeps/stub/time.c create mode 100644 sysdeps/stub/times.c create mode 100644 sysdeps/stub/trampoline.c create mode 100644 sysdeps/stub/truncate.c create mode 100644 sysdeps/stub/ttyname.c create mode 100644 sysdeps/stub/ualarm.c create mode 100644 sysdeps/stub/udiv_qrnnd.c create mode 100644 sysdeps/stub/ulimit.c create mode 100644 sysdeps/stub/umask.c create mode 100644 sysdeps/stub/unlink.c create mode 100644 sysdeps/stub/usleep.c create mode 100644 sysdeps/stub/utime.c create mode 100644 sysdeps/stub/utimes.c create mode 100644 sysdeps/stub/vhangup.c create mode 100644 sysdeps/stub/wait.c create mode 100644 sysdeps/stub/wait3.c create mode 100644 sysdeps/stub/wait4.c create mode 100644 sysdeps/stub/waitflags.h create mode 100644 sysdeps/stub/waitpid.c create mode 100644 sysdeps/stub/write.c create mode 100644 sysdeps/stub/writev.c create mode 100644 sysdeps/tahoe/Implies create mode 100644 sysdeps/tahoe/log10.c create mode 100644 sysdeps/unix/Dist create mode 100644 sysdeps/unix/Implies create mode 100644 sysdeps/unix/Makefile create mode 100644 sysdeps/unix/_exit.S create mode 100644 sysdeps/unix/acct.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/=dirstream.h create mode 100644 sysdeps/unix/bsd/Attic/osf1/Implies create mode 100644 sysdeps/unix/bsd/Attic/osf1/Makefile create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/brk.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/fork.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/getdents.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/killpg.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/pipe.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/recv.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/send.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/sigblock.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/sigpause.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/sigsetmask.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/sigvec.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/start.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/statbuf.h create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/sysdep.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/sysdep.h create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/vhangup.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/wait4.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/alpha/waitpid.c create mode 100644 sysdeps/unix/bsd/Attic/osf1/msync.S create mode 100644 sysdeps/unix/bsd/Attic/osf1/sigaction.h create mode 100644 sysdeps/unix/bsd/Attic/osf1/sys/mman.h create mode 100644 sysdeps/unix/bsd/Attic/osf1/system.c create mode 100644 sysdeps/unix/bsd/Dist create mode 100644 sysdeps/unix/bsd/Implies create mode 100644 sysdeps/unix/bsd/alarm.c create mode 100644 sysdeps/unix/bsd/bsd4.4/Implies create mode 100644 sysdeps/unix/bsd/bsd4.4/chflags.S create mode 100644 sysdeps/unix/bsd/bsd4.4/direct.h create mode 100644 sysdeps/unix/bsd/bsd4.4/errnos.h create mode 100644 sysdeps/unix/bsd/bsd4.4/fchdir.S create mode 100644 sysdeps/unix/bsd/bsd4.4/fchflags.S create mode 100644 sysdeps/unix/bsd/bsd4.4/fcntlbits.h create mode 100644 sysdeps/unix/bsd/bsd4.4/getdents.S create mode 100644 sysdeps/unix/bsd/bsd4.4/getdomain.S create mode 100644 sysdeps/unix/bsd/bsd4.4/ioctls.h create mode 100644 sysdeps/unix/bsd/bsd4.4/setdomain.S create mode 100644 sysdeps/unix/bsd/bsd4.4/setegid.S create mode 100644 sysdeps/unix/bsd/bsd4.4/seteuid.S create mode 100644 sysdeps/unix/bsd/bsd4.4/setlogin.S create mode 100644 sysdeps/unix/bsd/bsd4.4/setsid.S create mode 100644 sysdeps/unix/bsd/bsd4.4/sigaltstack.S create mode 100644 sysdeps/unix/bsd/bsd4.4/sigblock.c create mode 100644 sysdeps/unix/bsd/bsd4.4/sigsetmask.c create mode 100644 sysdeps/unix/bsd/bsd4.4/sigvec.c create mode 100644 sysdeps/unix/bsd/bsd4.4/sockaddrcom.h create mode 100644 sysdeps/unix/bsd/bsd4.4/sstk.S create mode 100644 sysdeps/unix/bsd/bsd4.4/system.c create mode 100644 sysdeps/unix/bsd/bsd4.4/tcdrain.c create mode 100644 sysdeps/unix/bsd/bsd4.4/tcgetattr.c create mode 100644 sysdeps/unix/bsd/bsd4.4/tcsetattr.c create mode 100644 sysdeps/unix/bsd/bsd4.4/wait.c create mode 100644 sysdeps/unix/bsd/bsd4.4/wait3.c create mode 100644 sysdeps/unix/bsd/bsd4.4/wait4.S create mode 100644 sysdeps/unix/bsd/bsd4.4/waitpid.c create mode 100644 sysdeps/unix/bsd/bsdstat.h create mode 100644 sysdeps/unix/bsd/bsdtty.h create mode 100644 sysdeps/unix/bsd/clock.c create mode 100644 sysdeps/unix/bsd/confstr.h create mode 100644 sysdeps/unix/bsd/direct.h create mode 100644 sysdeps/unix/bsd/dirstream.h create mode 100644 sysdeps/unix/bsd/fcntlbits.h create mode 100644 sysdeps/unix/bsd/flock.S create mode 100644 sysdeps/unix/bsd/ftime.c create mode 100644 sysdeps/unix/bsd/getdtsz.S create mode 100644 sysdeps/unix/bsd/getpagesize.S create mode 100644 sysdeps/unix/bsd/gtty.c create mode 100644 sysdeps/unix/bsd/hp/m68k/brk.S create mode 100644 sysdeps/unix/bsd/hp/m68k/getdents.S create mode 100644 sysdeps/unix/bsd/hp/m68k/start.c create mode 100644 sysdeps/unix/bsd/hp/m68k/sysdep.h create mode 100644 sysdeps/unix/bsd/hp/m68k/wait3.S create mode 100644 sysdeps/unix/bsd/i386/wait3.S create mode 100644 sysdeps/unix/bsd/init-posix.c create mode 100644 sysdeps/unix/bsd/isatty.c create mode 100644 sysdeps/unix/bsd/killpg.S create mode 100644 sysdeps/unix/bsd/m68k/pipe.S create mode 100644 sysdeps/unix/bsd/m68k/start.c create mode 100644 sysdeps/unix/bsd/m68k/syscall.S create mode 100644 sysdeps/unix/bsd/m68k/sysdep.S create mode 100644 sysdeps/unix/bsd/m68k/wait.S create mode 100644 sysdeps/unix/bsd/nice.c create mode 100644 sysdeps/unix/bsd/pause.c create mode 100644 sysdeps/unix/bsd/poll.c create mode 100644 sysdeps/unix/bsd/posix_opt.h create mode 100644 sysdeps/unix/bsd/readdir.c create mode 100644 sysdeps/unix/bsd/seekdir.c create mode 100644 sysdeps/unix/bsd/sequent/i386/getgroups.S create mode 100644 sysdeps/unix/bsd/sequent/i386/sigvec.S create mode 100644 sysdeps/unix/bsd/sequent/i386/syscall.S create mode 100644 sysdeps/unix/bsd/sequent/i386/sysdep.h create mode 100644 sysdeps/unix/bsd/setegid.c create mode 100644 sysdeps/unix/bsd/seteuid.c create mode 100644 sysdeps/unix/bsd/setgid.c create mode 100644 sysdeps/unix/bsd/setrgid.c create mode 100644 sysdeps/unix/bsd/setruid.c create mode 100644 sysdeps/unix/bsd/setsid.c create mode 100644 sysdeps/unix/bsd/settimeofday.S create mode 100644 sysdeps/unix/bsd/setuid.c create mode 100644 sysdeps/unix/bsd/sigaction.c create mode 100644 sysdeps/unix/bsd/sigblock.S create mode 100644 sysdeps/unix/bsd/signum.h create mode 100644 sysdeps/unix/bsd/sigpause.S create mode 100644 sysdeps/unix/bsd/sigprocmask.c create mode 100644 sysdeps/unix/bsd/sigsetmask.S create mode 100644 sysdeps/unix/bsd/sigstack.S create mode 100644 sysdeps/unix/bsd/sigsuspend.c create mode 100644 sysdeps/unix/bsd/sigvec.S create mode 100644 sysdeps/unix/bsd/sony/newsos/m68k/Implies create mode 100644 sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h create mode 100644 sysdeps/unix/bsd/sony/newsos4/Dist create mode 100644 sysdeps/unix/bsd/sony/newsos4/Makefile create mode 100644 sysdeps/unix/bsd/sony/newsos4/fchdir.S create mode 100644 sysdeps/unix/bsd/sony/newsos4/sys_wait4.S create mode 100644 sysdeps/unix/bsd/sony/newsos4/wait.c create mode 100644 sysdeps/unix/bsd/sony/newsos4/wait3.c create mode 100644 sysdeps/unix/bsd/sony/newsos4/wait4.c create mode 100644 sysdeps/unix/bsd/statbuf.h create mode 100644 sysdeps/unix/bsd/stime.c create mode 100644 sysdeps/unix/bsd/stty.c create mode 100644 sysdeps/unix/bsd/sun/getdents.S create mode 100644 sysdeps/unix/bsd/sun/m68k/Dist create mode 100644 sysdeps/unix/bsd/sun/m68k/Makefile create mode 100644 sysdeps/unix/bsd/sun/m68k/brk.S create mode 100644 sysdeps/unix/bsd/sun/m68k/sethostid.S create mode 100644 sysdeps/unix/bsd/sun/m68k/sigcontext.h create mode 100644 sysdeps/unix/bsd/sun/m68k/sigtramp.c create mode 100644 sysdeps/unix/bsd/sun/m68k/syscall.S create mode 100644 sysdeps/unix/bsd/sun/m68k/sysdep.h create mode 100644 sysdeps/unix/bsd/sun/sethostid.c create mode 100644 sysdeps/unix/bsd/sun/signum.h create mode 100644 sysdeps/unix/bsd/sun/sigreturn.S create mode 100644 sysdeps/unix/bsd/sun/sigvec.S create mode 100644 sysdeps/unix/bsd/sun/sparc/Dist create mode 100644 sysdeps/unix/bsd/sun/sparc/Makefile create mode 100644 sysdeps/unix/bsd/sun/sparc/sethostid.S create mode 100644 sysdeps/unix/bsd/sun/sparc/sigcontext.h create mode 100644 sysdeps/unix/bsd/sun/sparc/sigtramp.c create mode 100644 sysdeps/unix/bsd/sun/sunos3/m68k/wait.S create mode 100644 sysdeps/unix/bsd/sun/sunos4/.cvsignore create mode 100644 sysdeps/unix/bsd/sun/sunos4/Dist create mode 100644 sysdeps/unix/bsd/sun/sunos4/Implies create mode 100644 sysdeps/unix/bsd/sun/sunos4/Makefile create mode 100644 sysdeps/unix/bsd/sun/sunos4/fcntlbits.h create mode 100644 sysdeps/unix/bsd/sun/sunos4/mmap.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/msync.S create mode 100644 sysdeps/unix/bsd/sun/sunos4/poll.S create mode 100644 sysdeps/unix/bsd/sun/sunos4/resourcebits.h create mode 100644 sysdeps/unix/bsd/sun/sunos4/setsid.S create mode 100644 sysdeps/unix/bsd/sun/sunos4/speed.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/sys/mman.h create mode 100644 sysdeps/unix/bsd/sun/sunos4/sys_mmap.S create mode 100644 sysdeps/unix/bsd/sun/sunos4/sys_wait4.S create mode 100644 sysdeps/unix/bsd/sun/sunos4/system.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/tcflow.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/tcflush.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/tcgetattr.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/tcsendbrk.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/tcsetattr.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/termbits.h create mode 100644 sysdeps/unix/bsd/sun/sunos4/uname.S create mode 100644 sysdeps/unix/bsd/sun/sunos4/utsnamelen.h create mode 100644 sysdeps/unix/bsd/sun/sunos4/wait.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/wait3.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/wait4.c create mode 100644 sysdeps/unix/bsd/sun/sunos4/waitpid.c create mode 100644 sysdeps/unix/bsd/sys/reboot.h create mode 100644 sysdeps/unix/bsd/tahoe/Implies create mode 100644 sysdeps/unix/bsd/tahoe/sysdep.h create mode 100644 sysdeps/unix/bsd/tcdrain.c create mode 100644 sysdeps/unix/bsd/tcflow.c create mode 100644 sysdeps/unix/bsd/tcflush.c create mode 100644 sysdeps/unix/bsd/tcgetattr.c create mode 100644 sysdeps/unix/bsd/tcgetpgrp.c create mode 100644 sysdeps/unix/bsd/tcsendbrk.c create mode 100644 sysdeps/unix/bsd/tcsetattr.c create mode 100644 sysdeps/unix/bsd/tcsetpgrp.c create mode 100644 sysdeps/unix/bsd/telldir.c create mode 100644 sysdeps/unix/bsd/time.c create mode 100644 sysdeps/unix/bsd/times.c create mode 100644 sysdeps/unix/bsd/ualarm.c create mode 100644 sysdeps/unix/bsd/ulimit.c create mode 100644 sysdeps/unix/bsd/ultrix4/Dist create mode 100644 sysdeps/unix/bsd/ultrix4/Implies create mode 100644 sysdeps/unix/bsd/ultrix4/Makefile create mode 100644 sysdeps/unix/bsd/ultrix4/fcntlbits.h create mode 100644 sysdeps/unix/bsd/ultrix4/getdents.S create mode 100644 sysdeps/unix/bsd/ultrix4/getsysinfo.S create mode 100644 sysdeps/unix/bsd/ultrix4/mips/Dist create mode 100644 sysdeps/unix/bsd/ultrix4/mips/Makefile create mode 100644 sysdeps/unix/bsd/ultrix4/mips/__handler.S create mode 100644 sysdeps/unix/bsd/ultrix4/mips/sigcontext.h create mode 100644 sysdeps/unix/bsd/ultrix4/mips/sigtramp.c create mode 100644 sysdeps/unix/bsd/ultrix4/mips/sigvec.S create mode 100644 sysdeps/unix/bsd/ultrix4/mips/start.S create mode 100644 sysdeps/unix/bsd/ultrix4/mips/vfork.S create mode 100644 sysdeps/unix/bsd/ultrix4/posix_opt.h create mode 100644 sysdeps/unix/bsd/ultrix4/setsid.S create mode 100644 sysdeps/unix/bsd/ultrix4/sys/mman.h create mode 100644 sysdeps/unix/bsd/ultrix4/sysconf.c create mode 100644 sysdeps/unix/bsd/ultrix4/system.c create mode 100644 sysdeps/unix/bsd/ultrix4/uname.S create mode 100644 sysdeps/unix/bsd/ultrix4/utsnamelen.h create mode 100644 sysdeps/unix/bsd/ultrix4/wait3.S create mode 100644 sysdeps/unix/bsd/ultrix4/waitpid.S create mode 100644 sysdeps/unix/bsd/usleep.c create mode 100644 sysdeps/unix/bsd/utime.c create mode 100644 sysdeps/unix/bsd/utimes.S create mode 100644 sysdeps/unix/bsd/vax/brk.S create mode 100644 sysdeps/unix/bsd/vax/pipe.S create mode 100644 sysdeps/unix/bsd/vax/sysdep.S create mode 100644 sysdeps/unix/bsd/vax/sysdep.h create mode 100644 sysdeps/unix/bsd/vax/wait.S create mode 100644 sysdeps/unix/bsd/vax/wait3.S create mode 100644 sysdeps/unix/bsd/waitflags.h create mode 100644 sysdeps/unix/chdir.S create mode 100644 sysdeps/unix/chmod.S create mode 100644 sysdeps/unix/chown.S create mode 100644 sysdeps/unix/chroot.S create mode 100644 sysdeps/unix/close.S create mode 100644 sysdeps/unix/closedir.c create mode 100644 sysdeps/unix/common/.cvsignore create mode 100644 sysdeps/unix/common/Dist create mode 100644 sysdeps/unix/common/Makefile create mode 100644 sysdeps/unix/common/access.S create mode 100644 sysdeps/unix/common/adjtime.S create mode 100755 sysdeps/unix/common/configure create mode 100644 sysdeps/unix/common/configure.in create mode 100644 sysdeps/unix/common/direct.h create mode 100644 sysdeps/unix/common/dup2.S create mode 100644 sysdeps/unix/common/fchmod.S create mode 100644 sysdeps/unix/common/fchown.S create mode 100644 sysdeps/unix/common/fcntlbits.h create mode 100644 sysdeps/unix/common/ftruncate.S create mode 100644 sysdeps/unix/common/getgroups.S create mode 100644 sysdeps/unix/common/getitimer.S create mode 100644 sysdeps/unix/common/getpgid.S create mode 100644 sysdeps/unix/common/getpriority.S create mode 100644 sysdeps/unix/common/getrlimit.S create mode 100644 sysdeps/unix/common/getrusage.S create mode 100644 sysdeps/unix/common/gettimeofday.S create mode 100644 sysdeps/unix/common/glue-ctype.c create mode 100644 sysdeps/unix/common/lstat.S create mode 100644 sysdeps/unix/common/mk-local_lim.c create mode 100644 sysdeps/unix/common/mkdir.S create mode 100644 sysdeps/unix/common/readlink.S create mode 100644 sysdeps/unix/common/readv.S create mode 100644 sysdeps/unix/common/rename.S create mode 100644 sysdeps/unix/common/rmdir.S create mode 100644 sysdeps/unix/common/select.S create mode 100644 sysdeps/unix/common/setgroups.S create mode 100644 sysdeps/unix/common/setitimer.S create mode 100644 sysdeps/unix/common/setpgid.S create mode 100644 sysdeps/unix/common/setpriority.S create mode 100644 sysdeps/unix/common/setregid.S create mode 100644 sysdeps/unix/common/setreuid.S create mode 100644 sysdeps/unix/common/setrlimit.S create mode 100644 sysdeps/unix/common/swapon.S create mode 100644 sysdeps/unix/common/symlink.S create mode 100644 sysdeps/unix/common/truncate.S create mode 100644 sysdeps/unix/common/vhangup.S create mode 100644 sysdeps/unix/common/writev.S create mode 100755 sysdeps/unix/configure create mode 100644 sysdeps/unix/configure.in create mode 100644 sysdeps/unix/confstr.h create mode 100644 sysdeps/unix/dirstream.h create mode 100644 sysdeps/unix/dup.S create mode 100644 sysdeps/unix/errnos-tmpl.c create mode 100644 sysdeps/unix/errnos.awk create mode 100644 sysdeps/unix/execve.S create mode 100644 sysdeps/unix/fcntl.S create mode 100644 sysdeps/unix/fork.S create mode 100644 sysdeps/unix/fstat.S create mode 100644 sysdeps/unix/fsync.S create mode 100644 sysdeps/unix/getdents.c create mode 100644 sysdeps/unix/getegid.S create mode 100644 sysdeps/unix/geteuid.S create mode 100644 sysdeps/unix/getgid.S create mode 100644 sysdeps/unix/getlogin.c create mode 100644 sysdeps/unix/getpagesize.c create mode 100644 sysdeps/unix/getpid.S create mode 100644 sysdeps/unix/getppid.S create mode 100644 sysdeps/unix/getuid.S create mode 100644 sysdeps/unix/i386/brk.S create mode 100644 sysdeps/unix/i386/fork.S create mode 100644 sysdeps/unix/i386/pipe.S create mode 100644 sysdeps/unix/i386/sigreturn.S create mode 100644 sysdeps/unix/i386/start.c create mode 100644 sysdeps/unix/i386/syscall.S create mode 100644 sysdeps/unix/i386/sysdep.S create mode 100644 sysdeps/unix/i386/sysdep.h create mode 100644 sysdeps/unix/i386/wait.S create mode 100644 sysdeps/unix/inet/Subdirs create mode 100644 sysdeps/unix/inet/accept.S create mode 100644 sysdeps/unix/inet/bind.S create mode 100644 sysdeps/unix/inet/connect.S create mode 100644 sysdeps/unix/inet/gethostid.S create mode 100644 sysdeps/unix/inet/gethostname.S create mode 100644 sysdeps/unix/inet/getpeername.S create mode 100644 sysdeps/unix/inet/getsockname.S create mode 100644 sysdeps/unix/inet/getsockopt.S create mode 100644 sysdeps/unix/inet/listen.S create mode 100644 sysdeps/unix/inet/recv.S create mode 100644 sysdeps/unix/inet/recvfrom.S create mode 100644 sysdeps/unix/inet/recvmsg.S create mode 100644 sysdeps/unix/inet/send.S create mode 100644 sysdeps/unix/inet/sendmsg.S create mode 100644 sysdeps/unix/inet/sendto.S create mode 100644 sysdeps/unix/inet/sethostid.S create mode 100644 sysdeps/unix/inet/sethostname.S create mode 100644 sysdeps/unix/inet/setsockopt.S create mode 100644 sysdeps/unix/inet/shutdown.S create mode 100644 sysdeps/unix/inet/socket.S create mode 100644 sysdeps/unix/inet/socketpair.S create mode 100644 sysdeps/unix/ioctl.S create mode 100644 sysdeps/unix/ioctls-tmpl.c create mode 100644 sysdeps/unix/ioctls.awk create mode 100644 sysdeps/unix/kill.S create mode 100644 sysdeps/unix/link.S create mode 100644 sysdeps/unix/lseek.S create mode 100644 sysdeps/unix/make_errlist.c create mode 100644 sysdeps/unix/mips/brk.S create mode 100644 sysdeps/unix/mips/fork.S create mode 100644 sysdeps/unix/mips/pipe.S create mode 100644 sysdeps/unix/mips/sigreturn.S create mode 100644 sysdeps/unix/mips/sysdep.S create mode 100644 sysdeps/unix/mips/sysdep.h create mode 100644 sysdeps/unix/mips/wait.S create mode 100644 sysdeps/unix/mk-local_lim.c create mode 100644 sysdeps/unix/mkfifo.c create mode 100644 sysdeps/unix/mknod.S create mode 100644 sysdeps/unix/mman/madvise.S create mode 100644 sysdeps/unix/mman/mmap.S create mode 100644 sysdeps/unix/mman/mprotect.S create mode 100644 sysdeps/unix/mman/msync.S create mode 100644 sysdeps/unix/mman/munmap.S create mode 100644 sysdeps/unix/nlist.c create mode 100644 sysdeps/unix/open.S create mode 100644 sysdeps/unix/opendir.c create mode 100644 sysdeps/unix/pipestream.c create mode 100644 sysdeps/unix/ptrace.S create mode 100644 sysdeps/unix/read.S create mode 100644 sysdeps/unix/readdir.c create mode 100644 sysdeps/unix/reboot.S create mode 100644 sysdeps/unix/rewinddir.c create mode 100644 sysdeps/unix/seekdir.c create mode 100644 sysdeps/unix/setgid.S create mode 100644 sysdeps/unix/setuid.S create mode 100644 sysdeps/unix/siglist.c create mode 100755 sysdeps/unix/snarf-ioctls create mode 100644 sysdeps/unix/sparc/brk.S create mode 100644 sysdeps/unix/sparc/fork.S create mode 100644 sysdeps/unix/sparc/pipe.S create mode 100644 sysdeps/unix/sparc/start.c create mode 100644 sysdeps/unix/sparc/sysdep.S create mode 100644 sysdeps/unix/sparc/sysdep.h create mode 100644 sysdeps/unix/sparc/vfork.S create mode 100644 sysdeps/unix/start.c create mode 100644 sysdeps/unix/stat.S create mode 100644 sysdeps/unix/sync.S create mode 100644 sysdeps/unix/syscall.S create mode 100644 sysdeps/unix/sysdep.h create mode 100644 sysdeps/unix/system.c create mode 100644 sysdeps/unix/sysv/Dist create mode 100644 sysdeps/unix/sysv/Makefile create mode 100644 sysdeps/unix/sysv/alarm.S create mode 100644 sysdeps/unix/sysv/direct.h create mode 100644 sysdeps/unix/sysv/fcntlbits.h create mode 100644 sysdeps/unix/sysv/getdents.c create mode 100644 sysdeps/unix/sysv/gethostname.c create mode 100644 sysdeps/unix/sysv/i386/linux/socket.S create mode 100644 sysdeps/unix/sysv/i386/linux/sysdep.S create mode 100644 sysdeps/unix/sysv/i386/linux/sysdep.h create mode 100644 sysdeps/unix/sysv/i386/linux/wait.S create mode 100644 sysdeps/unix/sysv/i386/signal.S create mode 100644 sysdeps/unix/sysv/i386/sigreturn.S create mode 100644 sysdeps/unix/sysv/i386/sysdep.h create mode 100644 sysdeps/unix/sysv/i386/time.S create mode 100644 sysdeps/unix/sysv/irix4/Dist create mode 100644 sysdeps/unix/sysv/irix4/Implies create mode 100644 sysdeps/unix/sysv/irix4/Makefile create mode 100644 sysdeps/unix/sysv/irix4/__handler.S create mode 100644 sysdeps/unix/sysv/irix4/confname.h create mode 100644 sysdeps/unix/sysv/irix4/direct.h create mode 100644 sysdeps/unix/sysv/irix4/dup2.c create mode 100644 sysdeps/unix/sysv/irix4/fcntlbits.h create mode 100644 sysdeps/unix/sysv/irix4/fpathconf.c create mode 100644 sysdeps/unix/sysv/irix4/getgroups.c create mode 100644 sysdeps/unix/sysv/irix4/getpgid.S create mode 100644 sysdeps/unix/sysv/irix4/getpriority.c create mode 100644 sysdeps/unix/sysv/irix4/getrusage.c create mode 100644 sysdeps/unix/sysv/irix4/gettimeofday.c create mode 100644 sysdeps/unix/sysv/irix4/msync.S create mode 100644 sysdeps/unix/sysv/irix4/pathconf.c create mode 100644 sysdeps/unix/sysv/irix4/readv.c create mode 100644 sysdeps/unix/sysv/irix4/reboot.c create mode 100644 sysdeps/unix/sysv/irix4/setgroups.c create mode 100644 sysdeps/unix/sysv/irix4/setpgid.S create mode 100644 sysdeps/unix/sysv/irix4/setpriority.c create mode 100644 sysdeps/unix/sysv/irix4/signal.S create mode 100644 sysdeps/unix/sysv/irix4/signum.h create mode 100644 sysdeps/unix/sysv/irix4/sigreturn.S create mode 100644 sysdeps/unix/sysv/irix4/sigtramp.c create mode 100644 sysdeps/unix/sysv/irix4/start.c create mode 100644 sysdeps/unix/sysv/irix4/statbuf.h create mode 100644 sysdeps/unix/sysv/irix4/swapon.c create mode 100644 sysdeps/unix/sysv/irix4/sys/mman.h create mode 100644 sysdeps/unix/sysv/irix4/sysconf.c create mode 100644 sysdeps/unix/sysv/irix4/sysmp.S create mode 100644 sysdeps/unix/sysv/irix4/syssgi.S create mode 100644 sysdeps/unix/sysv/irix4/time.S create mode 100644 sysdeps/unix/sysv/irix4/uname.S create mode 100644 sysdeps/unix/sysv/irix4/wait.S create mode 100644 sysdeps/unix/sysv/irix4/wait3.S create mode 100644 sysdeps/unix/sysv/irix4/waitpid.c create mode 100644 sysdeps/unix/sysv/irix4/writev.c create mode 100644 sysdeps/unix/sysv/isc2.2/rename.S create mode 100644 sysdeps/unix/sysv/isc3/direct.h create mode 100644 sysdeps/unix/sysv/linux/Implies create mode 100644 sysdeps/unix/sysv/linux/accept.S create mode 100644 sysdeps/unix/sysv/linux/bind.S create mode 100644 sysdeps/unix/sysv/linux/connect.S create mode 100644 sysdeps/unix/sysv/linux/getpeername.S create mode 100644 sysdeps/unix/sysv/linux/getpgrp.S create mode 100644 sysdeps/unix/sysv/linux/getsockname.S create mode 100644 sysdeps/unix/sysv/linux/listen.S create mode 100644 sysdeps/unix/sysv/linux/rename.S create mode 100644 sysdeps/unix/sysv/linux/setsid.S create mode 100644 sysdeps/unix/sysv/linux/socketpair.S create mode 100644 sysdeps/unix/sysv/linux/syscall.h create mode 100644 sysdeps/unix/sysv/linux/wait4.S create mode 100644 sysdeps/unix/sysv/linux/waitpid.S create mode 100644 sysdeps/unix/sysv/local_lim.h create mode 100644 sysdeps/unix/sysv/minix/sigaction.h create mode 100644 sysdeps/unix/sysv/mkdir.c create mode 100644 sysdeps/unix/sysv/nice.S create mode 100644 sysdeps/unix/sysv/pause.S create mode 100644 sysdeps/unix/sysv/poll.S create mode 100644 sysdeps/unix/sysv/rmdir.c create mode 100644 sysdeps/unix/sysv/s_getdents.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/Dist create mode 100644 sysdeps/unix/sysv/sco3.2.4/Makefile create mode 100644 sysdeps/unix/sysv/sco3.2.4/__setpgid.c create mode 100644 sysdeps/unix/sysv/sco3.2.4/confname.h create mode 100644 sysdeps/unix/sysv/sco3.2.4/direct.h create mode 100644 sysdeps/unix/sysv/sco3.2.4/getgroups.c create mode 100644 sysdeps/unix/sysv/sco3.2.4/getpgid.c create mode 100644 sysdeps/unix/sysv/sco3.2.4/pathconf.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/pgrpsys.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/pipestream.c create mode 100644 sysdeps/unix/sysv/sco3.2.4/sco_getgrp.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/setpgid.c create mode 100644 sysdeps/unix/sysv/sco3.2.4/setsid.c create mode 100644 sysdeps/unix/sysv/sco3.2.4/sigaction.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/sigaction.h create mode 100644 sysdeps/unix/sysv/sco3.2.4/sigpending.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/sigprocmask.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/sigsuspend.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/syscall.h create mode 100644 sysdeps/unix/sysv/sco3.2.4/sysconf.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/system.c create mode 100644 sysdeps/unix/sysv/sco3.2.4/uname.S create mode 100644 sysdeps/unix/sysv/sco3.2.4/waitpid.S create mode 100644 sysdeps/unix/sysv/sco3.2/Dist create mode 100644 sysdeps/unix/sysv/sco3.2/Makefile create mode 100644 sysdeps/unix/sysv/sco3.2/__fltused.c create mode 100644 sysdeps/unix/sysv/sco3.2/local_lim.h create mode 100644 sysdeps/unix/sysv/setrlimit.c create mode 100644 sysdeps/unix/sysv/settimeofday.c create mode 100644 sysdeps/unix/sysv/sigaction.c create mode 100644 sysdeps/unix/sysv/signal.S create mode 100644 sysdeps/unix/sysv/signum.h create mode 100644 sysdeps/unix/sysv/statbuf.h create mode 100644 sysdeps/unix/sysv/stime.S create mode 100644 sysdeps/unix/sysv/sysd-stdio.c create mode 100644 sysdeps/unix/sysv/sysv4/Dist create mode 100644 sysdeps/unix/sysv/sysv4/Implies create mode 100644 sysdeps/unix/sysv/sysv4/Makefile create mode 100644 sysdeps/unix/sysv/sysv4/__getpgid.c create mode 100644 sysdeps/unix/sysv/sysv4/__setpgid.c create mode 100644 sysdeps/unix/sysv/sysv4/__waitid.S create mode 100644 sysdeps/unix/sysv/sysv4/dup2.c create mode 100644 sysdeps/unix/sysv/sysv4/fchdir.S create mode 100644 sysdeps/unix/sysv/sysv4/ftruncate.c create mode 100644 sysdeps/unix/sysv/sysv4/getdtsz.c create mode 100644 sysdeps/unix/sysv/sysv4/gethostname.c create mode 100644 sysdeps/unix/sysv/sysv4/getpagesize.c create mode 100644 sysdeps/unix/sysv/sysv4/getpgid.c create mode 100644 sysdeps/unix/sysv/sysv4/i386/Dist create mode 100644 sysdeps/unix/sysv/sysv4/i386/Makefile create mode 100644 sysdeps/unix/sysv/sysv4/i386/fstat.S create mode 100644 sysdeps/unix/sysv/sysv4/i386/lstat.S create mode 100644 sysdeps/unix/sysv/sysv4/i386/mknod.S create mode 100644 sysdeps/unix/sysv/sysv4/i386/stat.S create mode 100644 sysdeps/unix/sysv/sysv4/i386/statbuf.h create mode 100644 sysdeps/unix/sysv/sysv4/i386/sys-sig.S create mode 100644 sysdeps/unix/sysv/sysv4/i386/sysdep.h create mode 100644 sysdeps/unix/sysv/sysv4/i386/vfork.S create mode 100644 sysdeps/unix/sysv/sysv4/pgrpsys.S create mode 100644 sysdeps/unix/sysv/sysv4/pipestream.c create mode 100644 sysdeps/unix/sysv/sysv4/setegid.S create mode 100644 sysdeps/unix/sysv/sysv4/seteuid.S create mode 100644 sysdeps/unix/sysv/sysv4/sethostname.c create mode 100644 sysdeps/unix/sysv/sysv4/setpgid.c create mode 100644 sysdeps/unix/sysv/sysv4/setsid.c create mode 100644 sysdeps/unix/sysv/sysv4/sigaction.c create mode 100644 sysdeps/unix/sysv/sysv4/sigaction.h create mode 100644 sysdeps/unix/sysv/sysv4/sigaltstack.S create mode 100644 sysdeps/unix/sysv/sysv4/siginfo.h create mode 100644 sysdeps/unix/sysv/sysv4/signum.h create mode 100644 sysdeps/unix/sysv/sysv4/sigprocmask.S create mode 100644 sysdeps/unix/sysv/sysv4/sigset.h create mode 100644 sysdeps/unix/sysv/sysv4/sigsuspend.S create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/Makefile create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/direct.h create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/fsync.S create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/signum.h create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/sparc/start.c create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/sparc/sys-sig.S create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.S create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/statbuf.h create mode 100644 sysdeps/unix/sysv/sysv4/solaris2/utimes.S create mode 100644 sysdeps/unix/sysv/sysv4/sysconf.c create mode 100644 sysdeps/unix/sysv/sysv4/sysconfig.S create mode 100644 sysdeps/unix/sysv/sysv4/sysconfig.h create mode 100644 sysdeps/unix/sysv/sysv4/sysinfo.S create mode 100644 sysdeps/unix/sysv/sysv4/system.c create mode 100644 sysdeps/unix/sysv/sysv4/time.S create mode 100644 sysdeps/unix/sysv/sysv4/utsnamelen.h create mode 100644 sysdeps/unix/sysv/sysv4/waitflags.h create mode 100644 sysdeps/unix/sysv/sysv4/waitpid.c create mode 100644 sysdeps/unix/sysv/sysv_termio.h create mode 100644 sysdeps/unix/sysv/tcdrain.c create mode 100644 sysdeps/unix/sysv/tcflow.c create mode 100644 sysdeps/unix/sysv/tcflush.c create mode 100644 sysdeps/unix/sysv/tcgetattr.c create mode 100644 sysdeps/unix/sysv/tcgetpgrp.c create mode 100644 sysdeps/unix/sysv/tcsendbrk.c create mode 100644 sysdeps/unix/sysv/tcsetattr.c create mode 100644 sysdeps/unix/sysv/tcsetpgrp.c create mode 100644 sysdeps/unix/sysv/times.S create mode 100644 sysdeps/unix/sysv/ulimit.S create mode 100644 sysdeps/unix/sysv/uname.S create mode 100644 sysdeps/unix/sysv/utime.S create mode 100644 sysdeps/unix/sysv/utmp.h create mode 100644 sysdeps/unix/sysv/utsnamelen.h create mode 100644 sysdeps/unix/telldir.c create mode 100644 sysdeps/unix/umask.S create mode 100644 sysdeps/unix/unlink.S create mode 100644 sysdeps/unix/write.S create mode 100644 sysdeps/vax/DEFS.h create mode 100644 sysdeps/vax/Dist create mode 100644 sysdeps/vax/Makefile create mode 100644 sysdeps/vax/__longjmp.c create mode 100644 sysdeps/vax/bcmp.s create mode 100644 sysdeps/vax/bcopy.s create mode 100644 sysdeps/vax/bsd-_setjmp.S create mode 100644 sysdeps/vax/bsd-setjmp.S create mode 100644 sysdeps/vax/bzero.s create mode 100644 sysdeps/vax/ffs.s create mode 100644 sysdeps/vax/fl.h create mode 100644 sysdeps/vax/htonl.s create mode 100644 sysdeps/vax/htons.s create mode 100644 sysdeps/vax/huge_val.h create mode 100644 sysdeps/vax/index.s create mode 100644 sysdeps/vax/infnan.c create mode 100644 sysdeps/vax/jmp_buf.h create mode 100644 sysdeps/vax/log10.c create mode 100644 sysdeps/vax/memccpy.c create mode 100644 sysdeps/vax/memchr.s create mode 100644 sysdeps/vax/memcmp.s create mode 100644 sysdeps/vax/memmove.s create mode 100644 sysdeps/vax/memset.s create mode 100644 sysdeps/vax/ntohl.s create mode 100644 sysdeps/vax/ntohs.s create mode 100644 sysdeps/vax/rindex.s create mode 100644 sysdeps/vax/setjmp.c create mode 100644 sysdeps/vax/strcat.s create mode 100644 sysdeps/vax/strchr.s create mode 100644 sysdeps/vax/strcpy.s create mode 100644 sysdeps/vax/strcspn.s create mode 100644 sysdeps/vax/strlen.s create mode 100644 sysdeps/vax/strncat.s create mode 100644 sysdeps/vax/strncmp.s create mode 100644 sysdeps/vax/strncpy.s create mode 100644 sysdeps/vax/strpbrk.s create mode 100644 sysdeps/vax/strrchr.s create mode 100644 sysdeps/vax/strsep.s create mode 100644 sysdeps/vax/strspn.s create mode 100644 sysdeps/vax/strstr.s create mode 100644 sysdeps/z8000/gmp-mparam.h create mode 100644 syslog.h create mode 100644 tar.h create mode 100644 termios.h create mode 100644 termios/Makefile create mode 100644 termios/cfmakeraw.c create mode 100644 termios/cfsetspeed.c create mode 100644 termios/sys/termios.h create mode 100644 termios/sys/ttydefaults.h create mode 100644 termios/termios.h create mode 100644 time.h create mode 100644 time/.cvsignore create mode 100644 time/Makefile create mode 100644 time/africa create mode 100644 time/antarctica create mode 100644 time/ap.c create mode 100644 time/asctime.c create mode 100644 time/asia create mode 100644 time/australasia create mode 100644 time/backward create mode 100644 time/clocktest.c create mode 100644 time/ctime.c create mode 100644 time/date.c create mode 100644 time/difftime.c create mode 100644 time/dysize.c create mode 100644 time/emkdir.c create mode 100644 time/etcetera create mode 100644 time/europe create mode 100644 time/factory create mode 100644 time/gmtime.c create mode 100644 time/ialloc.c create mode 100644 time/leapseconds create mode 100644 time/localtime.c create mode 100644 time/mktime.c create mode 100644 time/northamerica create mode 100644 time/offtime.c create mode 100644 time/pacificnew create mode 100644 time/private.h create mode 100644 time/scheck.c create mode 100644 time/solar87 create mode 100644 time/solar88 create mode 100644 time/solar89 create mode 100644 time/southamerica create mode 100644 time/strftime.c create mode 100644 time/sys/time.h create mode 100644 time/sys/timeb.h create mode 100644 time/systemv create mode 100644 time/test_time.args create mode 100644 time/test_time.c create mode 100644 time/time.h create mode 100644 time/timegm.c create mode 100644 time/tzfile.c create mode 100644 time/tzfile.h create mode 100644 time/tzset.c create mode 100755 time/yearistype create mode 100644 time/zdump.c create mode 100644 time/zic.c create mode 100644 ttyent.h create mode 100644 unistd.h create mode 100644 utime.h create mode 100644 version.c create mode 100644 wordexp.h diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 00000000000..f0db6e6f5b7 --- /dev/null +++ b/.cvsignore @@ -0,0 +1,10 @@ +*.gz *.Z *.tar *.tgz +=* +TODO COPYING* AUTHORS copyr-* copying.* +glibc-* + +configparms + +sun4 i386 i386-gnuelf hp300-netbsd hp300 + +ieeetest hppa-sysdeps regex diff --git a/=__ify b/=__ify new file mode 100755 index 00000000000..017d909a1a8 --- /dev/null +++ b/=__ify @@ -0,0 +1,12 @@ +for func in $*; do + for file in `find sysdeps -name "${func}.c"`; + do + script=/tmp/foo$$; + ( echo "%s/${func}/__&/g"; + echo x )>$script ; + ex $file <$script ; + newfile=`echo $file | sed "s/${func}/__&/"`; + mv $file $newfile; + echo $newfile; + done +done diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 00000000000..f43f045752a --- /dev/null +++ b/ChangeLog @@ -0,0 +1,11886 @@ +Fri Feb 17 12:16:27 1995 Roland McGrath + + * sysdeps/mach/hurd/Makefile (errlist.c, errnos.h): Do cvs commit + if there is a CVS directory. + * sysdeps/sparc/Makefile (divrem output): Likewise. + * sysdeps/alpha/Makefile (divrem output): Likewise. + + * Makerules (rule to install lib%.a from $(install-lib)): Fix + patsubst to elide ranlib for $(non-lib.a). + + * stdio/tst-printf.c: Enable FP tests. Add some new tests from rfg. + +Thu Feb 16 04:06:06 1995 Roland McGrath + + * sysdeps/mach/hurd/mig-reply.c: Add weak aliases to non-__ names. + * mach/mig-dealloc.c: Add weak alias mig_deallocate. + +Wed Feb 15 13:34:01 1995 Roland McGrath + + * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Take new arg + DEALLOC_REFPORT; deallocate the refport after use only if it + evaluates to nonzero. + * sysdeps/mach/hurd/kill.c: Pass DEALLOC_REFPORT arg of one. + * hurd/hurdkill.c: Pass DEALLOC_REFPORT arg of zero. + + * hurd/hurdsig.c (abort_rpcs): Take new arg int *STATE_CHANGE; set + *STATE_CHANGE to indicate whether or not we changed *STATE and it + should be committed to the thread. + (abort_all_rpcs): Take new arg LIVE; if nonzero and abort_rpcs changes + state for a thread, do thread_set_state on that thread. Don't use + SS->intr_port for collecting reply ports, it is not safe to + clobber that when suspending; instead, alloca a temporary array. + (_hurd_internal_post_signal): Pass LIVE flag to abort_all_rpcs: + zero when dying, one when suspending. Pass new arg to abort_rpcs. + + * sysdeps/mach/hurd/stdio_init.c: Don't lock the file descriptor; + HURD_FD_PORT_USE will. Don't use critical sections around + HURD_FD_PORT_USE invocations. + + * sysdeps/mach/hurd/stdio_init.c: Don't make pipes/FIFOs unbuffered. + * sysdeps/posix/stdio_init.c: Likewise. + +Tue Feb 14 03:01:12 1995 Roland McGrath + + * hurd/hurd/fd.h (_hurd_fd_get): Don't do critical section + locking; don't leave the descriptor locked on return. + (HURD_FD_PORT_USE): Don't expect _hurd_fd_get to return the fd locked. + Use a critical section around locking the descriptor. + Check for an empty descriptor and return EBADF. + * sysdeps/mach/hurd/dup2.c: Likewise. + * sysdeps/mach/hurd/fcntl.c: Likewise. + Use HURD_FD_PORT_USE macro for RPCs. + * sysdeps/mach/hurd/sysd-stdio.c: Don't lock the descriptor before + using HURD_FD_PORT_USE. + * sysdeps/mach/hurd/defs.c (init_stdio): Don't expect _hurd_fd_get + to lock the descriptor. + * sysdeps/mach/hurd/stdio_init.c: Use critical sections while + locking the descriptor. + * sysdeps/mach/hurd/fdopen.c: Likewise. + * hurd/fd-close.c: Likewise. + Don't expect the descriptor to be locked on entry. + Check for empty descriptor and return EBADF. + + Factor ctty RPC code for SIGTTIN/SIGTTOU generation out into + new functions _hurd_ctty_input and _hurd_ctty_output, each + called with (io_t port, io_t ctty, error_t (*rpc) (io_t)). + * hurd/ctty-input.c: New file. + * hurd/ctty-output.c: New file. + * hurd/Makefile (dtable): Add ctty-input and ctty-output. + * hurd/fd-read.c: Use _hurd_ctty_input. + * hurd/fd-write.c: Use _hurd_ctty_output. + * sysdeps/mach/hurd/ioctl.c: Likewise. + * hurd/hurd/fd.h (_hurd_ctty_input, _hurd_ctty_output): Declare them. + +Mon Feb 13 11:36:12 1995 Roland McGrath + + * stdio/vfscanf.c (%e, %f, %g): Use strtod, __strtold, or __strtof + as appropriate to the type. + + * sysdeps/ieee754/huge_val.h (__huge_val_t): New macro to avoid + repeating the union. + (HUGE_VAL, __huge_val): Use it. + [__USE_GNU] (HUGE_VALf, HUGE_VALl): New macros, along with + analogous macros to HUGE_VAL's: __huge_val[fl]_t, __HUGE_VAL[fl]_bytes. + * stdlib/strtold.c (FLOAT_HUGE_VAL): Define this to HUGE_VALl. + (STRTOF): Set to __strtold; define strtold as weak alias. + * stdlib/strtof.c (FLOAT_HUGE_VAL): Define this to HUGE_VALf. + (STRTOF): Set to __strtof; define strtof as weak alias. + + * sysdeps/ieee754/ieee754.h (union ieee754_float): New type. + (IEEE754_FLOAT_BIAS): New macro. + + * sysdeps/ieee754/mpn2ldbl.c: Fix typos. + + * stdlib/testmb.c: Add tests from rfg for using normal chars as + multibyte chars. + + * hurd/hurdmalloc.c (malloc_init): Add self reference to avoid not + only the `defined but not used' warning, but also to avoid GCC + optimizing out the entire function (!). + + * stdlib/wctomb.c: Include ctype.h. + + * Makerules (install-lib-non.a): Don't include $(non-lib.a). + + * hurd/hurdmalloc.c: Include string.h; #define bcopy using memcpy. + +Sat Feb 11 04:05:29 1995 Roland McGrath + + * stdio/printf_fp.c: Include "fpioconst.h". + (_tens_p): Table moved to fpioconst.c, renamed to _fpioconst_pow10. + (__printf_fp): All references changed. + Don't bother computing THOUSANDS_SEP if GROUPING is empty. + (group_number): Use memmove instead of memcpy, since operands overlap. + * stdio/fpioconst.c: New file, tables broken out of stdio/printf_fp.c. + * stdio/fpioconst.h: New file, header declaring the table data. + * stdio/Makefile (aux): Add fpioconst. + (distribute): Add fpioconst.h. + * stdlib/strtod.c: Complete rewrite from drepper. + * stdlib/strtof.c: New file. + * stdlib/strtold.c: New file. + * stdlib/Makefile (routines): Add strtof, strtold. + * stdio/Makefile (routines): Add mpn2flt, mpn2dbl, mpn2ldbl. + * sysdeps/stub/mpn2flt.c: New file. + * sysdeps/stub/mpn2dbl.c: New file. + * sysdeps/stub/mpn2ldbl.c: New file. + * sysdeps/ieee754/mpn2flt.c: New file. + * sysdeps/ieee754/mpn2dbl.c: New file. + * sysdeps/ieee754/mpn2ldbl.c: New file. + + * Makerules (install-lib.a): Don't filter out $(non-lib.a). + ($(install-lib.a) in $(libdir) rule): Elide ranlib command when $@ + appears in $(non-lib.a). + +Fri Feb 10 17:20:14 1995 Roland McGrath + + * stdlib/wctomb.c: A normal ASCII character translates to itself. + * stdlib/mbtowc.c: Likewise. + +Thu Feb 9 03:55:55 1995 Roland McGrath + + * setjmp/setjmp.h (longjmp, _longjmp, __longjmp, siglongjmp): + Remove `const' from prototypes. + * sysdeps/m68k/__longjmp.c: Likewise. + * setjmp/longjmp.c: Likewise. + * sysdeps/i386/__longjmp.c: Likewise. + + * sysdeps/posix/tempname.c: Increment *IDX at beginning of loop, + so when we return a name, it is incremented past the value that + produces that same name. + + * stdio/fgets.c (fgets): Change `size_t' to `int' in prototype. Sigh. + * stdio/stdio.h (fgets): Likewise. + + * stdio/vfprintf.c (printf_unknown): Print ' for INFO->group flag. + + * hurd/fd-write.c: Don't clobber ERR with the msg_sig_post call + when it's EBACKGROUND; we need to notice that it is EBACKGROUND + and retry the RPC. + * hurd/fd-read.c: Likewise. + +Wed Feb 8 05:01:11 1995 Roland McGrath + + * sysdeps/mach/sysdep.h (FATAL_PREPARE_INCLUDE): New macro, set to + . + * assert/assert-perr.c [FATAL_PREPARE_INCLUDE]: Include it. + * assert/assert.c: Likewise. + * sysdeps/posix/libc_fatal.c: Likewise. + +Tue Feb 7 12:17:58 1995 Roland McGrath + + * stdio/stdio.h [__STRICT_ANSI__] (stdin, stdout, stderr): Define + as macros, to satisfy ANSI pedants. + + * stdio/internals.c (flushbuf): When there is no new data after + priming the stream, return without writing out the buffer. + * stdio/Makefile (tests): Add bug7. + * stdio/bug7.c: New file. + + * io/sys/stat.h (S_IFIFO, S_IFLNK, S_IFSOCK, S_ISFIFO, S_ISLNK, + S_ISSOCK): Define only if the corresponding underlying __S_IF* macro + is defined. + + * stdio/getdelim.c: Decrement COPY after getting a char from __fillbf. + + * stdio/Makefile (tests): Add errnobug. + * stdio/errnobug.c: New file. + + * mach/mig_strncpy.c: Include string.h. + + * sysdeps/mach/sysdep.h: Don't #include . Its + inlines cause trouble for files defining global register + variables. + + * stdio/vfprintf.c: Use _strerror_internal for %m. + + * sysdeps/ieee754/dbl2mpn.c: Fixes from drepper for 64-bit limbs. + + * stdio/printf.h (struct printf_info): New member `group', for %' flag. + * stdio/printf-prs.c (parse_printf_format): Grok %' flag and set flag. + * stdio/vfprintf.c (group_number): New function. + (vfprintf): Support %' flag for integer formats, by calling + group_number after formatting the number in WORK. + * stdio/printf_fp.c (guess_grouping, group_number): New functions. + (__printf_fp): Implement `group' flag using them. + + * Makefile (include sysd-dirs): Protect with ifndef avoid-generated. + (parent-clean): Remove sysd-rules, not sysdirs. + (distclean): Pass avoid-generated=yes to submake. + (distclean-1): Remove $(sysdep-$(distclean-1)). + + * Makerules (objects, objs): Depend on $(extra-objs) too. + (include sysd-Makefile): Protect with ifndef avoid-generated. + + * Makeconfig (+defines, +gnu-stabs, gnu-as): Variables removed. + (CPPFLAGS): Use $(defines) in place of $(+defines). + Replace -D_LIBC with -include $(..)libc-symbols.h. + + * stdio/freopen.c: Set seen bit before calling fclose. + +Mon Feb 6 18:34:40 1995 Roland McGrath + + * sysdeps/mach/hurd/setpriority.c: Keep track of numbers of + successes and each kind of failure. Return EPERM or EACCES only + if every task failed that way. + + * sysdeps/mach/hurd/getpriority.c: Handle out of band buffers + correctly. + + * sysdeps/mach/hurd/ptrace.c (PTRACE_ATTACH, PTRACE_DETACH): Stop + or resume the process after frobbing. + + * hurd/hurdsig.c: Use spin lock operations on sigstate locks + throughout. + (_hurd_thread_sigstate): Don't lock the sigstate lock. + (_hurd_internal_post_signal): New subfunction `mark_pending'; replace + repeated sequences with calls to it. Don't expect the sigstate + lock to be held on entry; lock it just before examining sigaction. + In handler case, check SS->critical_section after calling + abort_rpcs; if set, mark the signal pending and resume the thread. + * hurd/hurd/signal.h (_hurd_self_sigstate_unlocked): Function removed. + (_hurd_self_sigstate): Don't lock the sigstate lock. + (HURD_EINTR_RPC): Call _hurd_self_sigstate instead of + _hurd_self_sigstate_unlocked. + * hurd/msgportdemux.c: Don't expect _hurd_self_sigstate to lock + the sigstate lock. + * hurd/hurdexec.c: Use spin lock operations on sigstate lock. + Don't expect _hurd_self_sigstate to lock it. Fix critical section + locking. + * hurd/hurd-raise.c: Likewise. + * sysdeps/mach/hurd/sigsuspend.c: Likewise. + * sysdeps/mach/hurd/sigpending.c: Likewise. + * sysdeps/mach/hurd/sigaltstack.c: Likewise. + * sysdeps/mach/hurd/sigaction.c: Likewise. + * sysdeps/mach/hurd/sigprocmask.c: Likewise. + * hurd/fd-write.c: Likewise. + * hurd/fd-read.c: Likewise. + * sysdeps/mach/hurd/ioctl.c: Likewise. + * sysdeps/mach/hurd/fork.c: Likewise. + * sysdeps/mach/hurd/i386/sigreturn.c: Likewise. + * sysdeps/mach/hurd/mips/sigreturn.c: Likewise. + * sysdeps/mach/hurd/alpha/sigreturn.c: Likewise. + * hurd/hurdmsg.c (get_int): Likewise. + + * stdio/vfprintf.c: Include stddef.h. Fix typos in libio code. + + * stdio/vfprintf.c (__pad): Function renamed to __printf_pad, made + global. + (PAD): Caller changed. + * stdio/printf_fp.c (__pad): Function removed. + (PAD): Use __printf_pad instead. + +Sun Feb 5 17:59:53 1995 Roland McGrath + + Merged new FP printer by Ulrich Drepper. + * stdio/printf_fp.c: Rewrite by drepper. + * stdio/Makefile (routines): Add ldbl2mpn. + * sysdeps/ieee754/ieee754.h (union ieee754_double): Add `ieee_nan' + member. + (union ieee854_long_double): New type, from drepper. + (IEEE754_DOUBLE_BIAS, IEEE854_LONG_DOUBLE_BIAS): New macros. + * sysdeps/ieee754/ldbl2mpn.c: New file, by drepper. + * sysdeps/stub/ldbl2mpn.c: New file. + * math/Makefile (routines): Add isinfl and isnanl. + * sysdeps/ieee754/isinfl.c: New file. + * sysdeps/stub/isinfl.c: New file. + * sysdeps/ieee754/isnanl.c: New file. + * sysdeps/stub/isnanl.c: New file. + + * malloc/malloc.c (__malloc_extra_blocks): New variable. + (malloc): When getting more core, get __malloc_extra_blocks extra; + put the new block at the end of the free list and let the next loop + iteration use the initial portion of it. + * malloc/free.c (_free_internal): Account for twice + __malloc_extra_blocks in deciding if we have so much extra memory + we should return it to the system. + * malloc/malloc.h (__malloc_extra_blocks): Declare it. + * posix/glob.c (prefix_array, glob_pattern_p): Remove gratuitous + const in parameter decl. + + * sysdeps/unix/mips/sysdep.h (ENTRY): Add `.ent' directive. + +Fri Feb 3 18:15:52 1995 Roland McGrath + + * munch.awk (EXTERNS): Print decls using __P instead of EXFUN. + + * sysdeps/mips/setjmp_aux.c: Use ENV[0].__jmpbuf[0]. + * sysdeps/mips/bsd-_setjmp.S: Use `li' insn instead of `move'. + * sysdeps/mips/bsd-setjmp.S: Likewise. + * sysdeps/mips/__longjmp.c: Remove obsolete __NORETURN keyword. + * sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler): + Use `long int' for sigcode. Use explicit register numbers instead + of names. + (_hurdsig_rcv_interrupted_p): Use _hurdsig_catch_fault. + * sysdeps/mach/hurd/mips/exc2signal.c: Use `long int' for sigcode. + +Thu Feb 2 20:06:45 1995 Roland McGrath + + * hurd/hurdmalloc.c: Remove bogus bcopy decl. + + * mach/mig_strncpy.c: Add missing `const' in prototype. Rewritten + using __stpncpy. + + * io/ftw.c (ftw, ftw_dir): Treat ENOENT from stat like EACCES. + + * stdio/vfprintf.c: Set PREC to zero for %. without following + digit. + +Tue Jan 31 13:49:57 1995 Roland McGrath + + * mach/mig_strncpy.c: Include mach.h instead of string.h. Use + vm_size_t instead of size_t for arg and return types. + + * mach/mach_init.c: Don't declare __mig_init; mach/mig_support.h + already does. + +Mon Jan 30 00:33:35 1995 Roland McGrath + + * set-hooks.h (RUN_HOOK): Dereference PTR properly. + + * configure.in (friendly stddef.h check): Write override defn for + `stddef.h' Make variable. + (AC_LINK_FILES): Use `echo ...` to avoid " " appearing nonempty. + + * configure.in (host_os=sysv4*|solaris2*): Set elf=yes. + + * Rules ($(objpfx)dummy.o): Write an empty function, not just an + empty file. + + * sysdeps/sparc/Makefile (sysdep-realclean): New variable. + +Sat Jan 28 03:38:56 1995 Roland McGrath + + * Makefile (distribute): Remove gnu-stabs.h; add libc-symbols.h. + + * sysdeps/mach/sysdep.h [ASSEMBLER]: Protect include of + mach/machine/syscall_sw.h with this. + +Fri Jan 27 18:33:20 1995 Roland McGrath + + * hurd/hurd/signal.h: Include , and + instead of . + (struct hurd_sigstate): Member `lock' changed to a `spin_lock_t'. + (_hurd_critical_section_lock): Use spin lock operators. + Don't hold the sigstate lock, unlock it after setting the flag. + (_hurd_critical_section_unlock): Take the sigstate lock + to clear the flag; while holding it, check pending signals. After + unlocking, sig_post ourselves if there were pending signals. + + * hurd/catch-exc.c (_S_catch_exception_raise): Don't take the + sigstate lock. If it is locked, clear SS->critical_section and + SS->context, and unlock it. + + * sysdeps/mach/sysdep.h (EXT, LEXT): New macros. + + * set-init.c (__libc_init) [HAVE_ELF]: Run _init and atexit (_fini). + * munch-tmpl.c: Likewise. + + * mach/Makefile (routines): Don't filter out syscall_% from + $(mach-syscalls). + +Fri Jan 27 17:53:49 1995 Jim Meyering (meyering@comco.com) + + * posix/fnmatch.c: Declare errno if it's not defined. + That's simpler than testing #if !defined(__GNU_LIBRARY__) + && !defined(STDC_HEADERS). + +Fri Jan 27 15:40:29 1995 Roland McGrath + + * csu/Makefile: New file. + * csu/initfini.c: New file. + * Makefile (+other_dirs): Add csu. + (+init): Variable renamed to libc-init. All references changed. + (aux): Remove start. + (install-lib): Variable removed. + (crt0.o, Mcrt1.o crt1.o): Targets removed. + + * mach/Machrules (static deps of RPC_*.o): Add $(..)libc-symbols.h + and $(objpfx)config.h. + (static deps of RPC alias *.o): Removed. + + * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h [ASSEMBLER]: + Protect macros with this. + * sysdeps/unix/bsd/osf1/alpha/sysdep.h: Likewise. + * sysdeps/unix/bsd/sequent/i386/sysdep.h: Likewise. + * sysdeps/unix/bsd/vax/sysdep.h: Likewise. + * sysdeps/unix/bsd/sun/m68k/sysdep.h: Likewise. + * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h: Likewise. + * sysdeps/unix/mips/sysdep.h: Likewise. + +Thu Jan 26 00:02:01 1995 Roland McGrath + + * Makerules (compile.[Sc]): Match gcc in $(CC) better. + (BUILD_CFLAGS): Instead of $(config-defines), use -include config.h. + + * hurd/intr-rpc.awk: Emit weak alias. + + * sysdeps/unix/bsd/sun/sunos4/wait4.c: Call getpgrp instead of + __getpgrp. + + * sysdeps/unix/bsd/hp/m68k/sysdep.h [ASSEMBLER]: Protect macros with + this. + * sysdeps/unix/i386/sysdep.h: Likewise. + * sysdeps/unix/sparc/sysdep.h: Likewise. + + * io/ftw.c: Avoid `ret' as variable name. + * posix/glob.c: Likewise. + + * ctype/ctype.h (_ISalpha): Define as its own bit. + * locale/C-ctype_ct.c (__ctype_b_C): Set _ISalpha bit in all letters. + + * stdlib/exit.c [HAVE_GNU_LD]: Protect #include "set-hooks.h" and + DEFINE_HOOK with this. + +Wed Jan 25 00:45:56 1995 Roland McGrath + + * hurd/hurdinit.c: Use DECLARE_HOOK instead of `extern DEFINE_HOOK'. + * mach/spin-solid.c (spin_lock_solid): Define as weak alias to __name. + * mach/shortcut.awk: Emit weak alias. + * mach/spin-lock.c: Add weak aliases for all spin-lock.h functions. + * mach/mach_init.c (mach_init, vm_page_size): Defin weak aliases for + __ names. + * mach/Makefile (lock): Remove spin-syms. + (routines): Remove __ names, vm_page_size, msgserver_t. + ($(mach-syscalls) rule): Generate files without __, add weak alias. + Remove symbol alias file rule. + ($(mach-shortcuts) rule): Likewise. + [!mach-shortcuts] (user-interfaces): Filter out mach/mach4 too. + * mach/Machrules (if-calls.c): Variable and rule removed. + (interface-headers): Don't add $($(if)-calls). + (transform-user-stub): Define to add weak alias. + * set-hooks.h: Use new libc-symbols.h set access macros. + * time/Makefile (routines): Remove __ names. + (aux): Variable removed. + * hurd/Makefile: Likewise. + * sysdeps/unix/start.c (environ): Define as weak alias for __environ. + (data_start): Define as weak alias for __data_start. + * sysdeps/mach/hurd/start.c: Likewise. + * sysdeps/unix/sparc/start.c: Likewise. + * sysdeps/unix/make_errlist.c: Emit weak aliases for sys_nerr and + sys_errlist. + * sysdeps/mach/hurd/errlist.awk: Likewise. + * sysdeps/unix/bsd/osf1/alpha/start.S (environ): Define as weak + alias for __environ. + * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise. + * sysdeps/stub/setdomain.c: Use new stub_warning macro. + * sysdeps/stub/getdomain.c: Likewise. + * sysdeps/stub/vhangup.c: Likewise. + * sysdeps/stub/swapon.c: Likewise. + * sysdeps/stub/sendmsg.c: Likewise. + * sysdeps/stub/recvmsg.c: Likewise. + * sysdeps/stub/acct.c: Likewise. + * sysdeps/stub/isinf.c: Likewise. Add weak alias isinf for __isinf. + * sysdeps/mach/hurd/_exit.c: Remove obsolete __NORETURN keyword. + * sysdeps/posix/libc_fatal.c: Likewise. + * sysdeps/i386/abort.c: Likewise. + * sysdeps/i386/__longjmp.c: Likewise. + * sysdeps/generic/make_siglist.c: Emit defn always for + _sys_siglist. Emit weak alias to sys_siglist. + * sysdeps/generic/atan.c: Remove obsolete __CONSTVALUE keyword. + * sysdeps/ieee754/log10.c: Likewise. + * time/difftime.c: Likewise. + * stdlib/random.c (srand): Define as weak alias for __srandom. + * stdlib/exit.c: Remove obsolete __NORETURN keyword. Use set-hooks + macros for __libc_atexit. + * stdlib/Makefile (routines): Remove __random, srand. + * stdio/gets.c: Use new link_warning macro instead of old + warn_references. + * stdio/Makefile (routines): Remove __ names. + (aux): Remove syms-stdio. + * socket/Makefile (routines): Added e on getpeernam and getsocknam. + * setjmp/longjmp.c: Remove obsolete __NORETURN keyword. + * setjmp/Makefile (routines): Remove _longjmp, siglongjmp. + * setjmp/setjmp.h: Replace __NORETURN keyword with __attribute__ uses. + * stdio/stdio.h: Likewise. + * misc/Makefile (routines): Remove __ names. + (aux): Remove data_start. + * sysdeps/mach/hurd/defs.c: Don't include gnu-stabs.h. + * sysdeps/mach/hurd/brk.c: Likewise. + * hurd/hurdid.c: Likewise. + * hurd/hurdpid.c: Likewise. + * hurd/openport.c: Likewise. + * hurd/hurdsock.c: Likewise. + * hurd/hurdsig.c: Likewise. + * hurd/hurdrlimit.c: Likewise. + * hurd/hurdmalloc.c: Likewise. + * hurd/dtable.c: Likewise. + * hurd/setauth.c: Likewise. + * misc/progname.c: Likewise. + * misc/init-misc.c: Likewise. + * sysdeps/generic/vfork.c: Likewise. + * sysdeps/unix/bsd/init-posix.c: Likewise. + * math/math.h: Replace __CONSTVALUE keyword with __attribute__ uses. + * time/time.h: Likewise. + * math/Makefile (routines): Remove __ names. + * io/Makefile: Likewise. + * termios/Makefile: Likewise. + * resource/Makefile: Likewise. + * signal/Makefile: Likewise. + * dirent/Makefile: Likewise. + * assert/assert.h: Replace __NORETURN keyword with __attribute__ + uses. Functions return void and macros deal with this. + * assert/assert-perr.c: Remove obsolete __NORETURN keyword. + Return void. Don't include gnu-stabs.h. + * assert/assert.c: Likewise. + * posix/Makefile (routines): Remove __ names, setpgrp. Add + getpgid. + (aux): Remove environ. + * stdlib/stdlib.h (abort, exit): Replace __NORETURN keyword with + __attribute__ use. + * posix/unistd.h (_exit): Likewise. + (__getpgrp, __setpgrp): Declarations removed. + (__getpgid, getpid): Declare these. + + * configure.in (host_os=gnuelf|linuxelf): Set elf=yes. Do AC_SUBST + for gnu_ld, gnu_as, elf, and weak. Call AC_LINK_FILEES on + $libc_link_{sources,dests}. + * sysdeps/unix/configure.in: Remove __ from file names. Don't + create files, just add to libc_link_{dests,sources}. + + * config.make.in (gnu-as, gnu-ld, elf, weak-symbols): New variables. + + * config.h.in: Add #undefs used by sysdeps configures. + + * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Removed + __setpgid, __getpgid. + * sysdeps/unix/sysv/sco3.2.4/setpgid.c: Included file was renamed + from setpgrp.c. + * sysdeps/unix/sysv/sco3.2.4/getpgid.c: Included file was renamed + from __getpgrp.c. + * sysdeps/unix/bsd/getpgrp.c: File removed. + * sysdeps/generic/getpgrp.c: Moved from sysdeps/stub/getpgrp.c. + Call __getpgid with zero. + * sysdeps/stub/setpgid.c: Renamed __setpgrp to __setpgid, added + weak aliases setpgid and setpgrp. + * sysdeps/unix/sysv/irix4/setpgid.S: Likewise. + * sysdeps/unix/common/setpgid.S: Likewise. + * sysdeps/mach/hurd/setpgid.c: Likewise. + * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise. + Use subcall 5 to __pgrpsys. + * sysdeps/stub/getpgid.c: Renamed __getpgrp to __getpgid, added + weak alias getpgid. + * sysdeps/mach/hurd/getpgid.c: Likewise. + * sysdeps/unix/sysv/irix4/getpgid.S: Likewise. + * sysdeps/unix/common/getpgid.S: Likewise. + * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise. + Use subcall 4 to __pgrpsys. + * sysdeps/stub/__getpgrp.c: Renamed to getpgid.c. + * sysdeps/unix/sysv/sysv4/__getpgrp.c: Renamed to getpgid.c. + * sysdeps/unix/sysv/sco3.2.4/__getpgrp.c: Renamed to getpgid.c. + * sysdeps/unix/sysv/irix4/__getpgrp.S: Renamed to getpgid.S. + * sysdeps/unix/common/__getpgrp.S: Renamed to getpgid.S. + * sysdeps/mach/hurd/__getpgrp.c: Renamed to getpgid.c. + * sysdeps/stub/setpgrp.c: Renamed to setpgid.c. + * sysdeps/unix/sysv/sysv4/setpgrp.c: Renamed to setpgid.c. + * sysdeps/unix/sysv/sco3.2.4/setpgrp.c: Renamed to setpgid.c. + * sysdeps/unix/sysv/irix4/setpgrp.S: Renamed to setpgid.S. + * sysdeps/unix/common/setpgrp.S: Renamed to setpgid.S. + * sysdeps/mach/hurd/setpgrp.c: Renamed to setpgid.c. + + * sysdeps/unix/bsd/hp/m68k/getdents.S: Included file was renamed + from __getdents.S. + + * sysdeps/posix/defs.c: Don't include gnu-stabs.h. + * sysdeps/stub/sigpending.c: Use new libc-symbols.h macro for stub + warning. + * sysdeps/stub/fexecve.c: Likewise. + * sysdeps/stub/fchdir.c: Likewise. + * sysdeps/stub/fchflags.c: Likewise. + * sysdeps/stub/chflags.c: Likewise. + + * sysdeps/m68k/__longjmp.c: Remove __NORETURN; it's obsolete. + * sysdeps/generic/abort.c: Likewise. + * sysdeps/ieee754/ldexp.c: Remove __CONSTVALUE; it's obsolete. + + * hurd/hurdioctl.c: Include hurd/ioctl.h. + (_hurd_ioctl_handler_lists): Define this set. + (_hurd_lookup_ioctl_handler): New function. + * hurd/hurd/fd.h: ioctl handler stuff moved to hurd/ioctl.h. + * hurd/hurd/ioctl.h: New file, broken out of hurd/fd.h. + (_hurd_lookup_ioctl_handler): Declare it. + (ioctl_handler_t): New typedef. Use it throughout. + * sysdeps/mach/hurd/ioctl.c: Include hurd/ioctl.h. + (_hurd_ioctl_handler_lists): Don't define. + (__ioctl): Call _hurd_lookup_ioctl_handler. + + * stdlib/strtol.c (maxquad): Make this const. + [__GNUC__ == 2 && __GNUC_MINOR__ < 7]: Only use maxquad in this case. + + * posix/glob/configure.in: Put AC_AIX and AC_MINIX early, before + any compile tests. + + * sysdeps/mach/hurd/setitimer.c (timer_thread): Call + __msg_sig_post_request, not __sig_post_request. + + * misc/getusersh.c: Renamed to getusershell.c. + * sysdeps/stub/sethostnam.c: Renamed to sethostname.c. + * sysdeps/unix/inet/sethostnam.S: Renamed to sethostname.S. + * sysdeps/unix/sysv/sysv4/sethostnam.c: Renamed to sethostname.c. + * sysdeps/mach/hurd/sethostnam.c: Renamed to sethostname.c. + +Tue Jan 24 00:14:30 1995 Roland McGrath + + * sysdeps/stub/settod.c: Renamed to settimeofday.c. + * sysdeps/unix/bsd/settod.S: Renamed to settimeofday.c. + * sysdeps/unix/sysv/settod.c: Renamed to settimeofday.c. + * sysdeps/mach/hurd/settod.c: Renamed to settimeofday.c. + * sysdeps/stub/setitmr.c: Renamed to setitimer.c. + * sysdeps/unix/common/setitmr.S: Renamed to setitimer.S. + * sysdeps/mach/hurd/setitmr.c: Renamed to setitimer.c. + * sysdeps/posix/fpathcon.c: Renamed to fpathconf.c. + * sysdeps/stub/fpathcon.c: Renamed to fpathconf.c. + * sysdeps/unix/sysv/irix4/fpathcon.c: Renamed to fpathconf.c. + * sysdeps/stub/getprio.c: Renamed to getpriority.c. + * sysdeps/unix/sysv/irix4/getprio.c: Renamed to getpriority.c. + * sysdeps/unix/common/getprio.S: Renamed to getpriority.S. + * sysdeps/mach/hurd/getprio.c: Renamed to getpriority.c. + * sysdeps/stub/setprio.c: Renamed to setpriority.c. + * sysdeps/unix/sysv/irix4/setprio.c: Renamed to setpriority.c. + * sysdeps/unix/common/setprio.S: Renamed to setpriority.S. + * sysdeps/mach/hurd/setprio.c: Renamed to setpriority.c. + * sysdeps/stub/getpeernam.c: Renamed to getpeername.c. + * sysdeps/unix/inet/getpeernam.S: Renamed to getpeername.S. + * sysdeps/unix/sysv/linux/getpeernam.S: Renamed to getpeername.S. + * sysdeps/mach/hurd/getpeernam.c: Renamed to getpeername.c. + * sysdeps/stub/getsocknam.c: Renamed to getsockname.c. + * sysdeps/unix/inet/getsocknam.S: Renamed to getsockname.S. + * sysdeps/unix/sysv/linux/getsocknam.S: Renamed to getsockname.S. + * sysdeps/mach/hurd/getsocknam.c: Renamed to getsockname.c. + * sysdeps/stub/sigaltstk.c: Renamed to sigaltstack.c. + * sysdeps/unix/bsd/bsd4.4/sigaltstk.S: Renamed to sigaltstack.S. + * sysdeps/unix/sysv/sysv4/sigaltstk.S: Renamed to sigaltstack.S. + * sysdeps/mach/hurd/sigaltstk.c: Renamed to sigaltstack.c. + + * sysdeps/mach/hurd/i386/sigreturn.c: Call __msg_sig_post instead + of __sig_post. + * sysdeps/mach/hurd/sigsuspend.c: Likewise. + * sysdeps/mach/hurd/kill.c: Likewise. + * sysdeps/mach/hurd/sigprocmask.c: Likewise. + + * misc/sys/cdefs.h (__NORETURN, __CONSTVALUE): Macros removed. + [!__GNUC__ || __GNUC__<2] (__attribute__): Define to empty. + + * sysdeps/stub/remove.c: New file. + * sysdeps/posix/remove.c: New file. + +Mon Jan 23 03:26:09 1995 Roland McGrath + + * time/mktime.c [weak_alias] (timelocal): Define as weak alias for + mktime. + * mach/mig_strncpy.c (mig_strncpy): Define as weak alias for + __mig_strncpy. + * mach/msg-destroy.c: Renamed from __msg_dest.c. + (mach_msg_destroy): Define as weak alias for __mach_msg_destroy. + * mach/setup-thread.c (mach_setup_thread): Define as weak alias. + * time/tzset.c (tzname, daylight, timezone): Define as weak + aliases for __ names. + * hurd/hurdkill.c (hurd_sig_post): Define as weak alias. + * hurd/hurdlookup.c: Add weak aliases for non-__ names. + * Makefile (+init): Test $(gnu-ld)=yes, not for $(+gnu-stabs) + being defined. + +Sun Jan 22 15:19:51 1995 Roland McGrath + + * string/Makefile (routines): Remove __ names, index, rindex, and + bcmp. + * sysdeps/alpha/strchr.c [weak_alias] (index): Define as weak + alias for strchr. + * sysdeps/generic/strchr.c: Likewise. + * sysdeps/generic/strrchr.c [weak_alias] (rindex): Define as weak + alias for strrchr. + * sysdeps/generic/memcmp.c [weak_alias] (bcmp): Define as weak + alias for memcmp. + + * malloc/free.c (cfree): Define this function, with weak_alias if + available, otherwise a C function. + * malloc/Makefile (gmalloc-routines): Remove cfree. + +Sat Jan 21 08:08:58 1995 Roland McGrath + + * stdio/fseek.c: Do move bufp by O when that puts it exactly at + get_limit. This has the effect of no-op'ing properly for zero. + + * configure.in: Add AC_CONFIG_HEADER(config.h). + (--with-elf, --with-weak-symbols): Grok these and define HAVE_*. + * config.h.in: New file. + + * setjmp/longjmp.c: Add weak aliases _longjmp, siglongjmp. + All code converted to use weak symbols, defined in the files which + define the real code (with the __ names, the non-__ names are weak). + All old symbol alias files removed. + Many files renamed to remove __ prefix since there is now just + the one file for both the __ and non-__ name for each function. + * libc-symbols.h: New file. + * set-hooks.h: Use libc-symbols.h macros for accessing symbol + sets. + * gnu-stabs.h: Prepend #error this file is obsolete. + * sysdeps/ieee754/ldexp.c: Add weak aliases scalb and __scalb. + * sysdeps/stub/__access.c: Renamed to access.c; added weak alias + access. + * sysdeps/unix/common/__access.S: Likewise. + * sysdeps/mach/hurd/__access.c: Likewise. + * sysdeps/stub/__adjtime.c: Renamed to adjtime.c; added weak alias + adjtime. + * sysdeps/unix/common/__adjtime.S: Likewise. + * sysdeps/mach/__adjtime.c: Likewise. + * sysdeps/mach/hurd/__adjtime.c: Likewise. + * sysdeps/stub/__brk.c: Renamed to brk.c; added weak alias brk. + * sysdeps/unix/bsd/sun/m68k/__brk.S: Likewise. + * sysdeps/unix/bsd/vax/__brk.S: Likewise. + * sysdeps/unix/bsd/hp/m68k/__brk.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__brk.S: Likewise. + * sysdeps/unix/i386/__brk.S: Likewise. + * sysdeps/unix/sparc/__brk.S: Likewise. + * sysdeps/unix/mips/__brk.S: Likewise. + * sysdeps/mach/hurd/__brk.c: Likewise. + * sysdeps/standalone/__brk.c: Likewise. + * sysdeps/stub/__chdir.c: Renamed to chdir.c; added weak alias chdir. + * sysdeps/unix/__chdir.S: Likewise. + * sysdeps/mach/hurd/__chdir.c: Likewise. + * sysdeps/stub/__chmod.c: Renamed to chmod.c; added weak alias chmod. + * sysdeps/unix/__chmod.S: Likewise. + * sysdeps/mach/hurd/__chmod.c: Likewise. + * sysdeps/stub/__chown.c: Renamed to chown.c; added weak alias chown. + * sysdeps/unix/__chown.S: Likewise. + * sysdeps/mach/hurd/__chown.c: Likewise. + * sysdeps/stub/__close.c: Renamed to close.c; added weak alias close. + * sysdeps/unix/__close.S: Likewise. + * sysdeps/mach/hurd/__close.c: Likewise. + * sysdeps/standalone/__close.c: Likewise. + * sysdeps/generic/__copysign.c: Renamed to copysign.c; added weak + alias copysign. + * sysdeps/ieee754/__copysign.c: Likewise. + * sysdeps/alpha/__copysign.c: Likewise. + * sysdeps/ieee754/__drem.c: Renamed to drem.c; added weak alias drem. + * sysdeps/m68k/fpu/__drem.c: Likewise. + * sysdeps/stub/__drem.c: Likewise. + * sysdeps/posix/__dup.c: Renamed to dup.c; added weak alias dup. + * sysdeps/stub/__dup.c: Likewise. + * sysdeps/unix/__dup.S: Likewise. + * sysdeps/posix/__dup2.c: Renamed to dup2.c; added weak alias dup2. + * sysdeps/stub/__dup2.c: Likewise. + * sysdeps/unix/sysv/sysv4/__dup2.c: Likewise. + * sysdeps/unix/sysv/irix4/__dup2.c: Likewise. + * sysdeps/unix/common/__dup2.S: Likewise. + * sysdeps/mach/hurd/__dup2.c: Likewise. + * sysdeps/stub/__execve.c: Renamed to execve.c; added weak alias + execve. + * sysdeps/unix/__execve.S: Likewise. + * sysdeps/mach/hurd/__execve.c: Likewise. + * sysdeps/generic/__expm1.c: Renamed to expm1.c; added weak alias + expm1. + * sysdeps/m68k/fpu/__expm1.c: Likewise. + * sysdeps/stub/__fchmod.c: Renamed to fchmod.c; added weak alias + fchmod. + * sysdeps/unix/common/__fchmod.S: Likewise. + * sysdeps/mach/hurd/__fchmod.c: Likewise. + * sysdeps/stub/__fchown.c: Renamed to fchown.c; added weak alias + fchown. + * sysdeps/unix/common/__fchown.S: Likewise. + * sysdeps/mach/hurd/__fchown.c: Likewise. + * sysdeps/stub/__fcntl.c: Renamed to fcntl.c; added weak alias fcntl. + * sysdeps/unix/__fcntl.S: Likewise. + * sysdeps/mach/hurd/__fcntl.c: Likewise. + * math/__finite.c: Renamed to finite.c; added weak alias finite. + * sysdeps/posix/__flock.c: Renamed to flock.c; added weak alias flock. + * sysdeps/stub/__flock.c: Likewise. + * sysdeps/unix/bsd/__flock.S: Likewise. + * sysdeps/mach/hurd/__flock.c: Likewise. + * hurd/__fopenport.c: Renamed to fopenport.c; added weak alias + fopenport. + * sysdeps/stub/__fork.c: Renamed to fork.c; added weak alias fork. + * sysdeps/unix/__fork.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__fork.S: Likewise. + * sysdeps/unix/i386/__fork.S: Likewise. + * sysdeps/unix/sparc/__fork.S: Likewise. + * sysdeps/unix/mips/__fork.S: Likewise. + * sysdeps/mach/hurd/__fork.c: Likewise. + * sysdeps/posix/__fpathcon.c: Renamed to fpathcon.c; added weak + alias fpathconf. + * sysdeps/stub/__fpathcon.c: Likewise. + * sysdeps/unix/sysv/irix4/__fpathcon.c: Likewise. + * sysdeps/stub/__fstat.c: Renamed to fstat.c; added weak alias fstat. + * sysdeps/unix/__fstat.S: Likewise. + * sysdeps/unix/sysv/sysv4/i386/__fstat.S: Likewise. + * sysdeps/mach/hurd/__fstat.c: Likewise. + * stdio/__getdelim.c: Renamed to getdelim.c; added weak alias + getdelim. + * sysdeps/stub/__getdents.c: Renamed to getdents.c; added weak + alias getdents. + * sysdeps/unix/__getdents.c: Likewise. + * sysdeps/unix/bsd/sun/__getdents.S: Likewise. + * sysdeps/unix/bsd/hp/m68k/__getdents.S: Likewise. + * sysdeps/unix/bsd/ultrix4/__getdents.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__getdents.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__getdents.S: Likewise. + * sysdeps/unix/sysv/__getdents.c: Likewise. + * sysdeps/mach/hurd/__getdents.c: Likewise. + * hurd/__getdport.c: Renamed to getdport.c; added weak alias getdport. + * sysdeps/posix/__getdtsz.c: Renamed to getdtsz.c; added weak + alias getdtablesize. + * sysdeps/stub/__getdtsz.c: Likewise. + * sysdeps/unix/bsd/__getdtsz.S: Likewise. + * sysdeps/unix/sysv/sysv4/__getdtsz.c: Likewise. + * sysdeps/mach/hurd/__getdtsz.c: Likewise. + * sysdeps/stub/__getegid.c: Renamed to getegid.c; added weak alias + getegid. + * sysdeps/unix/__getegid.S: Likewise. + * sysdeps/mach/hurd/__getegid.c: Likewise. + * sysdeps/stub/__geteuid.c: Renamed to geteuid.c; added weak alias + geteuid. + * sysdeps/unix/__geteuid.S: Likewise. + * sysdeps/mach/hurd/__geteuid.c: Likewise. + * sysdeps/stub/__getgid.c: Renamed to getgid.c; added weak alias + getgid. + * sysdeps/unix/__getgid.S: Likewise. + * sysdeps/mach/hurd/__getgid.c: Likewise. + * sysdeps/stub/__getgrps.c: Renamed to getgroups.c; added weak + alias getgroups. + * sysdeps/unix/bsd/sequent/i386/__getgrps.S: Likewise. + * sysdeps/unix/sysv/sco3.2.4/__getgrps.c: Likewise. + * sysdeps/unix/sysv/irix4/__getgrps.c: Likewise. + * sysdeps/unix/common/__getgrps.S: Likewise. + * sysdeps/mach/hurd/__getgrps.c: Likewise. + * sysdeps/stub/__gethstnm.c: Renamed to gethostname.c; added weak + alias gethostname. + * sysdeps/unix/inet/__gethstnm.S: Likewise. + * sysdeps/unix/sysv/__gethstnm.c: Likewise. + * sysdeps/unix/sysv/sysv4/__gethstnm.c: Likewise. + * sysdeps/mach/hurd/__gethstnm.c: Likewise. + * sysdeps/stub/__getitmr.c: Renamed to getitimer.c; added weak + alias getitimer. + * sysdeps/unix/common/__getitmr.S: Likewise. + * sysdeps/mach/hurd/__getitmr.c: Likewise. + * stdio/__getline.c: Renamed to getline.c; added weak alias getline. + * sysdeps/posix/__getpgsz.c: Renamed to getpagesize.c; added weak + alias getpagesize. + * sysdeps/stub/__getpgsz.c: Likewise. + * sysdeps/unix/__getpgsz.c: Likewise. + * sysdeps/unix/bsd/__getpgsz.S: Likewise. + * sysdeps/unix/sysv/sysv4/__getpgsz.c: Likewise. + * sysdeps/mach/__getpgsz.c: Likewise. + * sysdeps/stub/__getpid.c: Renamed to getpid.c; added weak alias + getpid. + * sysdeps/unix/__getpid.S: Likewise. + * sysdeps/mach/hurd/__getpid.c: Likewise. + * sysdeps/stub/__getppid.c: Renamed to getppid.c; added weak alias + getppid. + * sysdeps/unix/__getppid.S: Likewise. + * sysdeps/mach/hurd/__getppid.c: Likewise. + * sysdeps/posix/__gettod.c: Renamed to gettimeofday.c; added weak + alias gettimeofday. + * sysdeps/stub/__gettod.c: Likewise. + * sysdeps/unix/sysv/irix4/__gettod.c: Likewise. + * sysdeps/unix/common/__gettod.S: Likewise. + * sysdeps/mach/__gettod.c: Likewise. + * sysdeps/stub/__getuid.c: Renamed to getuid.c; added weak alias + getuid. + * sysdeps/unix/__getuid.S: Likewise. + * sysdeps/mach/hurd/__getuid.c: Likewise. + * sysdeps/generic/__infnan.c: Renamed to infnan.c; added weak + alias infnan. + * sysdeps/ieee754/__infnan.c: Likewise. + * sysdeps/vax/__infnan.c: Likewise. + * sysdeps/stub/__ioctl.c: Renamed to ioctl.c; added weak alias ioctl. + * sysdeps/unix/__ioctl.S: Likewise. + * sysdeps/mach/hurd/__ioctl.c: Likewise. + * sysdeps/posix/__isatty.c: Renamed to isatty.c; added weak alias + isatty. + * sysdeps/stub/__isatty.c: Likewise. + * sysdeps/unix/bsd/__isatty.c: Likewise. + * sysdeps/mach/hurd/__isatty.c: Likewise. + * sysdeps/ieee754/__isinf.c: Renamed to isinf.c; added weak alias + isinf. + * sysdeps/m68k/fpu/__isinf.c: Likewise. + * sysdeps/stub/__isinf.c: Likewise. + * sysdeps/generic/__isnan.c: Renamed to isnan.c; added weak alias + isnan. + * sysdeps/ieee754/__isnan.c: Likewise. + * sysdeps/m68k/fpu/__isnan.c: Likewise. + * sysdeps/stub/__kill.c: Renamed to kill.c; added weak alias kill. + * sysdeps/unix/__kill.S: Likewise. + * sysdeps/mach/hurd/__kill.c: Likewise. + * sysdeps/stub/__link.c: Renamed to link.c; added weak alias link. + * sysdeps/unix/__link.S: Likewise. + * sysdeps/mach/hurd/__link.c: Likewise. + * sysdeps/ieee754/__logb.c: Renamed to logb.c; added weak alias logb. + * sysdeps/m68k/fpu/__logb.c: Likewise. + * sysdeps/stub/__logb.c: Likewise. + * sysdeps/stub/__lseek.c: Renamed to lseek.c; added weak alias lseek. + * sysdeps/unix/__lseek.S: Likewise. + * sysdeps/mach/hurd/__lseek.c: Likewise. + * sysdeps/generic/__lstat.c: Renamed to lstat.c; added weak alias + lstat. + * sysdeps/stub/__lstat.c: Likewise. + * sysdeps/unix/sysv/sysv4/i386/__lstat.S: Likewise. + * sysdeps/unix/common/__lstat.S: Likewise. + * sysdeps/mach/hurd/__lstat.c: Likewise. + * sysdeps/generic/__memccpy.c: Renamed to memccpy.c; added weak + alias memccpy. + * sysdeps/vax/__memccpy.c: Likewise. + * sysdeps/stub/__mkdir.c: Renamed to mkdir.c; added weak alias mkdir. + * sysdeps/unix/sysv/__mkdir.c: Likewise. + * sysdeps/unix/common/__mkdir.S: Likewise. + * sysdeps/mach/hurd/__mkdir.c: Likewise. + * sysdeps/stub/__mknod.c: Renamed to mknod.c; added weak alias mknod. + * sysdeps/unix/__mknod.S: Likewise. + * sysdeps/unix/sysv/sysv4/i386/__mknod.S: Likewise. + * sysdeps/mach/hurd/__mknod.c: Likewise. + * mach/__msg.c: Renamed to msg.c; added weak alias mach_msg. + * mach/__msgserver.c: Renamed to msgserver.c; added weak alias + mach_msg_server. + * sysdeps/stub/__open.c: Renamed to open.c; added weak alias open. + * sysdeps/unix/__open.S: Likewise. + * sysdeps/mach/hurd/__open.c: Likewise. + * sysdeps/standalone/__open.c: Likewise. + * sysdeps/stub/__pathconf.c: Renamed to pathconf.c; added weak + alias pathconf. + * sysdeps/unix/sysv/sco3.2.4/__pathconf.S: Likewise. + * sysdeps/unix/sysv/irix4/__pathconf.c: Likewise. + * hurd/__pid2task.c: Renamed to pid2task.c; added weak alias pid2task. + * sysdeps/stub/__pipe.c: Renamed to pipe.c; added weak alias pipe. + * sysdeps/unix/bsd/vax/__pipe.S: Likewise. + * sysdeps/unix/bsd/m68k/__pipe.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__pipe.S: Likewise. + * sysdeps/unix/i386/__pipe.S: Likewise. + * sysdeps/unix/sparc/__pipe.S: Likewise. + * sysdeps/unix/mips/__pipe.S: Likewise. + * sysdeps/mach/hurd/__pipe.c: Likewise. + * stdlib/__random.c: Renamed to random.c; added weak alias random. + * sysdeps/stub/__read.c: Renamed to read.c; added weak alias read. + * sysdeps/unix/__read.S: Likewise. + * sysdeps/mach/hurd/__read.c: Likewise. + * sysdeps/standalone/__read.c: Likewise. + * sysdeps/stub/__readlink.c: Renamed to readlink.c; added weak + alias readlink. + * sysdeps/unix/common/__readlink.S: Likewise. + * sysdeps/mach/hurd/__readlink.c: Likewise. + * sysdeps/generic/__rint.c: Renamed to rint.c; added weak alias rint. + * sysdeps/m68k/fpu/__rint.c: Likewise. + * sysdeps/stub/__rmdir.c: Renamed to rmdir.c; added weak alias rmdir. + * sysdeps/unix/sysv/__rmdir.c: Likewise. + * sysdeps/unix/common/__rmdir.S: Likewise. + * sysdeps/mach/hurd/__rmdir.c: Likewise. + * sysdeps/generic/__sbrk.c: Renamed to sbrk.c; added weak alias sbrk. + * sysdeps/stub/__sbrk.c: Likewise. + * sysdeps/mach/hurd/__sbrk.c: Likewise. + * math/__scalb.c: Renamed to scalb.c; added weak alias scalb. + * sysdeps/stub/__select.c: Renamed to select.c; added weak alias + select. + * sysdeps/unix/common/__select.S: Likewise. + * sysdeps/mach/hurd/__select.c: Likewise. + * hurd/__setauth.c: Renamed to setauth.c; added weak alias setauth. + * sysdeps/stub/__setgid.c: Renamed to setgid.c; added weak alias + setgid. + * sysdeps/unix/__setgid.S: Likewise. + * sysdeps/unix/bsd/__setgid.c: Likewise. + * sysdeps/mach/hurd/__setgid.c: Likewise. + * sysdeps/stub/__setitmr.c: Renamed to setitmr.c; added weak alias + setitmr + * sysdeps/unix/common/__setitmr.S: Likewise. + * sysdeps/mach/hurd/__setitmr.c: Likewise. + * sysdeps/stub/__setpgrp.c: Renamed to setpgrp.c; added weak alias + setpgrp + * sysdeps/unix/sysv/sysv4/__setpgrp.c: Likewise. + * sysdeps/unix/sysv/sco3.2.4/__setpgrp.c: Likewise. + * sysdeps/unix/sysv/irix4/__setpgrp.S: Likewise. + * sysdeps/unix/common/__setpgrp.S: Likewise. + * sysdeps/mach/hurd/__setpgrp.c: Likewise. + * sysdeps/stub/__setregid.c: Renamed to setregid.c; added weak + alias setregid. + * sysdeps/unix/common/__setregid.S: Likewise. + * sysdeps/mach/hurd/__setregid.c: Likewise. + * sysdeps/stub/__setreuid.c: Renamed to setreuid.c; added weak + alias setreuid. + * sysdeps/unix/common/__setreuid.S: Likewise. + * sysdeps/mach/hurd/__setreuid.c: Likewise. + * sysdeps/stub/__setsid.c: Renamed to setsid.c; added weak alias + setsid. + * sysdeps/unix/bsd/__setsid.c: Likewise. + * sysdeps/unix/bsd/sun/sunos4/__setsid.S: Likewise. + * sysdeps/unix/bsd/ultrix4/__setsid.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__setsid.S: Likewise. + * sysdeps/unix/sysv/linux/__setsid.S: Likewise. + * sysdeps/unix/sysv/sysv4/__setsid.c: Likewise. + * sysdeps/unix/sysv/sco3.2.4/__setsid.c: Likewise. + * sysdeps/mach/hurd/__setsid.c: Likewise. + * sysdeps/stub/__settod.c: Renamed to settod.c; added weak alias + settimeofday. + * sysdeps/unix/bsd/__settod.S: Likewise. + * sysdeps/unix/sysv/__settod.c: Likewise. + * sysdeps/mach/hurd/__settod.c: Likewise. + * sysdeps/stub/__setuid.c: Renamed to setuid.c; added weak alias + setuid. + * sysdeps/unix/__setuid.S: Likewise. + * sysdeps/unix/bsd/__setuid.c: Likewise. + * sysdeps/mach/hurd/__setuid.c: Likewise. + * sysdeps/posix/__sigblock.c: Renamed to sigblock.c; added weak + alias sigblock. + * sysdeps/stub/__sigblock.c: Likewise. + * sysdeps/unix/bsd/__sigblock.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__sigblock.c: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__sigblock.S: Likewise. + * sysdeps/posix/__sigpause.c: Renamed to sigpause.c; added weak + alias sigpause. + * sysdeps/stub/__sigpause.c: Likewise. + * sysdeps/unix/bsd/__sigpause.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__sigpause.S: Likewise. + * sysdeps/stub/__sigproc.c: Renamed to sigprocmask.c; added weak + alias sigprocmask. + * sysdeps/unix/bsd/__sigproc.c: Likewise. + * sysdeps/unix/sysv/sysv4/__sigproc.S: Likewise. + * sysdeps/unix/sysv/sco3.2.4/__sigproc.S: Likewise. + * sysdeps/mach/hurd/__sigproc.c: Likewise. + * sysdeps/stub/__sigret.c: Renamed to sigreturn.c; added weak + alias sigreturn. + * sysdeps/unix/bsd/sun/__sigret.S: Likewise. + * sysdeps/unix/sysv/i386/__sigret.S: Likewise. + * sysdeps/unix/sysv/irix4/__sigret.S: Likewise. + * sysdeps/unix/i386/__sigret.S: Likewise. + * sysdeps/unix/mips/__sigret.S: Likewise. + * sysdeps/mach/hurd/i386/__sigret.c: Likewise. + * sysdeps/mach/hurd/alpha/__sigret.c: Likewise. + * sysdeps/mach/hurd/mips/__sigret.c: Likewise. + * sysdeps/posix/__sigvec.c: Renamed to sigvec.c; added weak alias + sigvec. + * sysdeps/stub/__sigvec.c: Likewise. + * sysdeps/unix/bsd/__sigvec.S: Likewise. + * sysdeps/unix/bsd/sun/__sigvec.S: Likewise. + * sysdeps/unix/bsd/sequent/i386/__sigvec.S: Likewise. + * sysdeps/unix/bsd/ultrix4/mips/__sigvec.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__sigvec.c: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__sigvec.S: Likewise. + * sysdeps/stub/__stat.c: Renamed to stat.c; added weak alias stat. + * sysdeps/unix/__stat.S: Likewise. + * sysdeps/unix/sysv/sysv4/i386/__stat.S: Likewise. + * sysdeps/mach/hurd/__stat.c: Likewise. + * sysdeps/generic/__stpncpy.c: Renamed to stpncpy.c; added weak + alias stpncpy. + * sysdeps/stub/__symlink.c: Renamed to symlink.c; added weak alias + symlink. + * sysdeps/unix/common/__symlink.S: Likewise. + * sysdeps/mach/hurd/__symlink.c: Likewise. + * sysdeps/posix/__sysconf.c: Renamed to sysconf.c; added weak + alias sysconf. + * sysdeps/stub/__sysconf.c: Likewise. + * sysdeps/unix/bsd/ultrix4/__sysconf.c: Likewise. + * sysdeps/unix/sysv/sysv4/__sysconf.c: Likewise. + * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Likewise. + * sysdeps/unix/sysv/irix4/__sysconf.c: Likewise. + * hurd/__task2pid.c: Renamed to task2pid.c; added weak alias task2pid. + * sysdeps/stub/__times.c: Renamed to times.c; added weak alias times. + * sysdeps/unix/bsd/__times.c: Likewise. + * sysdeps/unix/sysv/__times.S: Likewise. + * time/__tzset.c: Renamed to tzset.c; added weak alias tzset. + * sysdeps/stub/__umask.c: Renamed to umask.c; added weak alias umask. + * sysdeps/unix/__umask.S: Likewise. + * sysdeps/mach/hurd/__umask.c: Likewise. + * sysdeps/stub/__unlink.c: Renamed to unlink.c; added weak alias + unlink. + * sysdeps/unix/__unlink.S: Likewise. + * sysdeps/mach/hurd/__unlink.c: Likewise. + * sysdeps/stub/__utimes.c: Renamed to utimes.c; added weak alias + utimes. + * sysdeps/unix/bsd/__utimes.S: Likewise. + * sysdeps/unix/sysv/sysv4/solaris2/__utimes.S: Likewise. + * sysdeps/mach/hurd/__utimes.c: Likewise. + * sysdeps/generic/__vfork.c: Renamed to vfork.c; added weak alias + vfork. + * sysdeps/unix/bsd/sun/m68k/__vfork.S: Likewise. + * sysdeps/unix/bsd/vax/__vfork.S: Likewise. + * sysdeps/unix/bsd/i386/__vfork.S: Likewise. + * sysdeps/unix/bsd/hp/m68k/__vfork.S: Likewise. + * sysdeps/unix/bsd/ultrix4/mips/__vfork.S: Likewise. + * sysdeps/unix/sysv/sysv4/i386/__vfork.S: Likewise. + * sysdeps/unix/sparc/__vfork.S: Likewise. + * stdio/__vfscanf.c: Renamed to vfscanf.c; added weak alias vfscanf. + * stdio/__vsscanf.c: Renamed to vsscanf.c; added weak alias vsscanf. + * sysdeps/posix/__wait.c: Renamed to wait.c; added weak alias wait. + * sysdeps/stub/__wait.c: Likewise. + * sysdeps/unix/bsd/sony/newsos4/__wait.c: Likewise. + * sysdeps/unix/bsd/sun/sunos4/__wait.c: Likewise. + * sysdeps/unix/bsd/sun/sunos3/m68k/__wait.S: Likewise. + * sysdeps/unix/bsd/vax/__wait.S: Likewise. + * sysdeps/unix/bsd/m68k/__wait.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__wait.c: Likewise. + * sysdeps/unix/sysv/i386/linux/__wait.S: Likewise. + * sysdeps/unix/sysv/irix4/__wait.S: Likewise. + * sysdeps/unix/i386/__wait.S: Likewise. + * sysdeps/unix/mips/__wait.S: Likewise. + * sysdeps/posix/__wait3.c: Renamed to wait3.c; added weak alias wait3. + * sysdeps/stub/__wait3.c: Likewise. + * sysdeps/unix/bsd/sony/newsos4/__wait3.c: Likewise. + * sysdeps/unix/bsd/sun/sunos4/__wait3.c: Likewise. + * sysdeps/unix/bsd/vax/__wait3.S: Likewise. + * sysdeps/unix/bsd/i386/__wait3.S: Likewise. + * sysdeps/unix/bsd/hp/m68k/__wait3.S: Likewise. + * sysdeps/unix/bsd/ultrix4/__wait3.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__wait3.c: Likewise. + * sysdeps/unix/sysv/irix4/__wait3.S: Likewise. + * sysdeps/stub/__wait4.c: Renamed to wait4.c; added weak alias wait4. + * sysdeps/unix/bsd/sony/newsos4/__wait4.c: Likewise. + * sysdeps/unix/bsd/sun/sunos4/__wait4.c: Likewise. + * sysdeps/unix/bsd/bsd4.4/__wait4.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__wait4.S: Likewise. + * sysdeps/unix/sysv/linux/__wait4.S: Likewise. + * sysdeps/mach/hurd/__wait4.c: Likewise. + * sysdeps/stub/__waitpid.c: Renamed to waitpid.c; added weak alias + waitpid. + * sysdeps/unix/bsd/sun/sunos4/__waitpid.c: Likewise. + * sysdeps/unix/bsd/ultrix4/__waitpid.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__waitpid.c: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__waitpid.c: Likewise. + * sysdeps/unix/sysv/linux/__waitpid.S: Likewise. + * sysdeps/unix/sysv/sysv4/__waitpid.c: Likewise. + * sysdeps/unix/sysv/sco3.2.4/__waitpid.S: Likewise. + * sysdeps/unix/sysv/irix4/__waitpid.c: Likewise. + * sysdeps/stub/__write.c: Renamed to write.c; added weak alias write. + * sysdeps/unix/__write.S: Likewise. + * sysdeps/mach/hurd/__write.c: Likewise. + * sysdeps/standalone/__write.c: Likewise. + * sysdeps/stub/__tcgetatr.c: Renamed to tcgetattr.c; added weak + alias tcgetattr. + * sysdeps/unix/bsd/__tcgetatr.c: Likewise. + * sysdeps/unix/bsd/sun/sunos4/__tcgetatr.c: Likewise. + * sysdeps/unix/bsd/bsd4.4/__tcgetatr.c: Likewise. + * sysdeps/unix/sysv/__tcgetatr.c: Likewise. + * sysdeps/stub/__sigact.c: Renamed to sigaction.c; added weak + alias sigaction. + * sysdeps/unix/bsd/__sigact.c: Likewise. + * sysdeps/unix/sysv/__sigact.c: Likewise. + * sysdeps/unix/sysv/sysv4/__sigact.c: Likewise. + * sysdeps/unix/sysv/sco3.2.4/__sigact.S: Likewise. + * sysdeps/mach/hurd/__sigact.c: Likewise. + * sysdeps/posix/__sigstmsk.c: Renamed to sigsetmask.c; added weak + alias sigsetmask. + * sysdeps/stub/__sigstmsk.c: Likewise. + * sysdeps/unix/bsd/__sigstmsk.S: Likewise. + * sysdeps/unix/bsd/bsd4.4/__sigstmsk.c: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__sigstmsk.S: Likewise. + * sysdeps/stub/__getrusag.c: Renamed to getrusage.c; added weak + alias getrusage. + * sysdeps/unix/sysv/irix4/__getrusag.c: Likewise. + * sysdeps/unix/common/__getrusag.S: Likewise. + * hurd/task2pid.c: File removed. + * hurd/setauth.c: File removed. + * hurd/pid2task.c: File removed. + * hurd/hurdsyms.c: File removed. + * hurd/getdport.c: File removed. + * hurd/fopenport.c: File removed. + * mach/thread-sym.c: File removed. + * mach/spin-syms.c: File removed. + * mach/msgserver_t.c: File removed. + * mach/msgserver.c: File removed. + * mach/msg.c: File removed. + * mach/mig_syms.c: File removed. + * malloc/mcheck-init.c: File removed. + * malloc/cfree.c: File removed. + * io/flock.c: File removed. + * io/write.c: File removed. + * io/unlink.c: File removed. + * io/umask.c: File removed. + * io/symlink.c: File removed. + * io/rmdir.c: File removed. + * io/readlink.c: File removed. + * io/read.c: File removed. + * io/pipe.c: File removed. + * io/open.c: File removed. + * io/mkdir.c: File removed. + * io/lstat.c: File removed. + * io/lseek.c: File removed. + * io/link.c: File removed. + * io/isatty.c: File removed. + * io/stat.c: File removed. + * io/fstat.c: File removed. + * io/fchown.c: File removed. + * io/fchmod.c: File removed. + * io/dup2.c: File removed. + * io/dup.c: File removed. + * io/close.c: File removed. + * io/fcntl.c: File removed. + * io/chmod.c: File removed. + * io/chdir.c: File removed. + * io/access.c: File removed. + * io/chown.c: File removed. + * time/tzset.c: File removed. + * time/timelocal.c: File removed. + * time/syms-time.c: File removed. + * time/settod.c: File removed. + * time/setitmr.c: File removed. + * time/gettod.c: File removed. + * time/getitmr.c: File removed. + * time/adjtime.c: File removed. + * termios/tcgetattr.c: File removed. + * string/stpncpy.c: File removed. + * string/rindex.c: File removed. + * string/memccpy.c: File removed. + * string/index.c: File removed. + * string/bcmp.c: File removed. + * stdlib/srand.c: File removed. + * stdlib/random.c: File removed. + * stdio/vsscanf.c: File removed. + * stdio/vfscanf.c: File removed. + * stdio/syms-stdio.c: File removed. + * stdio/remove.c: File removed. + * stdio/getline.c: File removed. + * stdio/getdelim.c: File removed. + * signal/ssignal.c: File removed. + * signal/sigvec.c: File removed. + * signal/sigsetmask.c: File removed. + * signal/sigret.c: File removed. + * signal/sigproc.c: File removed. + * signal/sigpause.c: File removed. + * signal/sigblock.c: File removed. + * signal/sigaction.c: File removed. + * signal/kill.c: File removed. + * signal/gsignal.c: File removed. + * setjmp/siglongjmp.c: File removed. + * setjmp/_longjmp.c: File removed. + * resource/getrusage.c: File removed. + * posix/waitpid.c: File removed. + * posix/wait4.c: File removed. + * posix/wait3.c: File removed. + * posix/wait.c: File removed. + * posix/times.c: File removed. + * posix/sysconf.c: File removed. + * posix/setuid.c: File removed. + * posix/setsid.c: File removed. + * posix/setpgrp.c: File removed. + * posix/setpgid.c: File removed. + * posix/setgid.c: File removed. + * posix/pathconf.c: File removed. + * posix/getuid.c: File removed. + * posix/getppid.c: File removed. + * posix/getpid.c: File removed. + * posix/getgrps.c: File removed. + * posix/getgid.c: File removed. + * posix/geteuid.c: File removed. + * posix/getegid.c: File removed. + * posix/fpathcon.c: File removed. + * posix/fork.c: File removed. + * posix/execve.c: File removed. + * posix/environ.c: File removed. + * misc/utimes.c: File removed. + * misc/setreuid.c: File removed. + * misc/setregid.c: File removed. + * misc/select.c: File removed. + * misc/sbrk.c: File removed. + * misc/mknod.c: File removed. + * misc/ioctl.c: File removed. + * misc/getpgsz.c: File removed. + * misc/gethstnm.c: File removed. + * misc/getdtsz.c: File removed. + * misc/data_start.c: File removed. + * misc/brk.c: File removed. + * math/scalb.c: File removed. + * math/rint.c: File removed. + * math/logb.c: File removed. + * math/isnan.c: File removed. + * math/isinf.c: File removed. + * math/infnan.c: File removed. + * math/finite.c: File removed. + * math/expm1.c: File removed. + * math/drem.c: File removed. + * math/copysign.c: File removed. + * math/__scalb.c: File removed. + * dirent/getdents.c: File removed. + +Fri Jan 20 16:11:06 1995 Roland McGrath + + * sysdeps/generic/morecore.c (__default_morecore): Use + __malloc_ptrdiff_t; don't cast arg to int. + + * resolv/getnetnamadr.c: Include "conf/portability.h". + +Thu Jan 19 02:20:04 1995 Roland McGrath + + * stdlib/strtol.c: Include errno.h. + [QUAD] (ULONG_MAX): Define to a static variable initialized to + ULONG_LONG_MAX. This is to work around a GCC bug in using the + constant in arithmetic. + + * posix/unistd.h (daemon): Declare it. + + * malloc/mcheck-init.c: Remove GNU ld hacks. + (__malloc_initialize_hook): Initialize this hook to turn_on_mcheck. + * malloc/malloc.c (__malloc_initialize_hook): New hook variable. + (initialize): Call the hook if set. + * malloc/malloc.h: Use __malloc_{size,ptrdiff}_t in prototypes. + (__malloc_initialize_hook): Declare new hook variable. + +Wed Jan 18 01:43:39 1995 Roland McGrath + + * hurd/hurdsig.c: Prepend `msg_' to server RPC names. + * hurd/hurdpid.c: Likewise. + * hurd/hurdauth.c: Likewise. + +Tue Jan 17 03:16:47 1995 Roland McGrath + + * sysdeps/mach/hurd/__select.c: If some replies are EINTR, succeed + if any are successful. + + * hurd/hurdmsg.c: Prepend `msg_' to all RPC names. + (_S_msg_get_exec_flags, _S_msg_set_exec_flags, + _S_msg_set_some_exec_flags, _S_msg_clear_some_exec_flags): New + functions. + (_S_io_select_done, _S_dir_changed, _S_file_changed): Stubs removed. + + * hurd/hurdkill.c: __sig_post renamed to __msg_sig_post. + * hurd/hurd-raise.c: Likewise. + * hurd/hurdsig.c (post_reply): Prepend `msg_' to RPC names. + + * sysdeps/mach/hurd/ptrace.c: New file. + + * sysdeps/mach/hurd/__select.c: Revamped to use new io_select + interface, which has normal EINTR semantics. Instead of waiting + for io_select_done notification messages, send io_select messages + with short reply timeout and then wait for io_select_reply + messages. + + * hurd/hurdexec.c (_hurd_exec): Pass (_hurd_exec_flags & + EXEC_INHERITED) to file_exec. + + * hurd/hurdsig.c (post_reply): Take new arg UNTRACED; if nonzero, + use sig_post_untraced_reply. All callers changed. + (abort_thread, abort_rpcs): Take same new arg and pass it through. + All callers changed. + (_hurd_internal_post_signal): Take new arg UNTRACED. + If zero and process is traced, stop with SIGNO as stop signal. If + nonzero, resume process before delivering signal (unless + ACT==stop). Expand local fn sigwakeup into block at end taken iff + SIGNO!=0. + (signal_allowed): New function, broken out of _S_sig_post. + (_S_sig_post): Call it. Pass UNTRACED arg of false to + _hurd_internal_post_signal. + (_S_sig_post_untraced): New function. Just like _S_sig_post, but + pass true for UNTRACED. + * hurd/hurd/signal.h (_hurd_internal_post_signal): Take new arg + UNTRACED. + * hurd/catch-exc.c (_S_catch_exception_raise): Pass UNTRACED arg + to _hurd_internal_post_signal (value zero). + +Mon Jan 16 16:40:01 1995 Roland McGrath + + * hurd/hurdinit.c (_hurd_exec_flags): New variable. + (_hurd_init): Initialize it from FLAGS arg. + (_hurd_proc_init): If EXEC_TRACED is set in _hurd_exec_flags, + raise a SIGTRAP signal (with a sigcode of zero). + * hurd/hurd.h (_hurd_exec_flags): Declare it. + + * Version 1.09.5. + +Mon Jan 16 16:16:55 1995 Richard Stallman + + * malloc/malloc.c (malloc): Fix 1-off in previous change. + +Mon Jan 16 15:49:07 1995 Roland McGrath + + * posix/glob/Makefile.in: Remove config.h and config.log. + +Sun Jan 15 06:56:47 1995 Roland McGrath + + * posix/glob/configure.in: Add AC_CONST check. + + * conf/portability.h: #undef sun. + * resolv/res_query.c: Updated from BIND-4.9.3-BETA17. + * resolv/getnetnamadr.c: Likewise. + + * socket/Makefile (headers): Add sockaddrcom.h. + * inet/netinet/in.h: Include . + (struct sockaddr_in): Use the __SOCKADDR_COMMON macro. + * socket/sys/un.h (struct sockaddr_in): Likewise. + * socket/sys/socket.h (struct sockaddr): Likewise. + * sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: New file. + * sysdeps/generic/sockaddrcom.h: New file. + + * sysdeps/unix/sysv/sysv4/ftruncate.c: New file. + * sysdeps/unix/common/fcntlbits.h [__USE_SVID] (F_ALLOCSP, + F_FREESP): New macros. + * sysdeps/posix/truncate.c: New file. + + * malloc/malloc.c (malloc): Fix typos in RMS's change. + + * malloc/Makefile (dist-routines): Add malloc-find. + * malloc/malloc.h (malloc_find_object_address): Declare it. + * malloc/malloc-find.c: New file. + + * malloc/malloc.h (__malloc_ptrdiff_t): New macro, defined a la + __malloc_size_t. + (malloc_info): Use that type for member `busy.info.size'. + + * stdlib/strtol.c: Change uses of `long' keyword throughout to use + `LONG' macro. + [! QUAD] (LONG): Define as long. + [QUAD] (LONG): Define as long long. + [QUAD] (LONG_MIN, LONG_MAX, ULONG_MAX): Redefine to long long + versions. + [QUAD] (strtoul, strtol): Define to strtouq, strtoq. + * stdlib/Makefile (routines): Add strtoq and strtouq. + * stdlib/strtoq.c, stdlib/strtouq.c: New files. + * stdlib/stdlib.h [__GNUC__ && __USE_BSD] (strtoq, strtouq): + Declare them. + + * stdio/vfprintf.c: If there was a precision specified, ignore the + 0 flag and always pad with spaces. + + * stdio/vfprintf.c: Don't use strchr to skip text until next %. + Use a loop and also stop on first !isascii char. + +Wed Jan 11 00:07:10 1995 Richard Stallman + + * malloc/malloc.h (malloc_info): Change usage of .busy.info.size. + + * malloc/malloc.c (malloc): For a multi-block object, store a + negative number into the busy.info.size of all but the first block. + +Tue Jan 10 13:45:20 1995 Brendan Kehoe + + * sysdeps/unix/bsd/ultrix4/mips/start.S: Use s0, s1, and s2 + instead of t0, t1, and t2. + +Tue Jan 10 05:53:50 1995 Roland McGrath + + * malloc/memalign.c (__memalign_hook): New variable. + (memalign): Call it if set. + * malloc/malloc.h (__memalign_hook): Declare new variable. + +Wed Dec 28 03:27:21 1994 Roland McGrath + + * conf/portability.h: Include string.h and stdlib.h. + * inet/netdb.h (NETDB_INTERNAL, NETDB_SUCCESS): New macros. + * resolv/resolv.h, resolv/arpa/nameser.h, resolv/gethnamaddr.c, + resolv/getnetbyname.c, resolv/getnetent.c, resolv/herror.c, + resolv/res_mkquery.c, resolv/res_send.c, resolv/res_comp.c, + resolv/res_debug.c, resolv/res_init.c: Updated from BIND 4.9.3-BETA14. + + * sysdeps/m68k/fpu/__math.h (__m81_inline): New macro. Replace + all uses of `extern __inline' with `__m81_inline'. + + * sysdeps/unix/bsd/hp/m68k/__vfork.S: Use subl, not decl. + * sysdeps/unix/__fork.S: Swap args in subl. + + * posix/sys/types.h [__USE_MISC] (ushort, uint): New typedefs, for + compatibility. + +Tue Dec 20 13:33:20 1994 Michael I Bushnell + + * sysdeps/mach/hurd/__setpgrp.c (__setpgrp): Use __swtch_pri instead + of swtch. + * sysdeps/mach/hurd/__setsid.c (__setsid): Likewise. + * mach/spin-solid.c (__spin_lock_solid): Likewise. + +Thu Dec 15 12:01:07 1994 Roland McGrath + + * inet/rcmd.c (iruserok): Use alloca instead of fixed-size buffer + for PBUF. + (__ivaliduser): Use getline instead of fgets with fixed-size buffer. + + * sysdeps/mach/hurd/Makefile (subdirs): Don't elide inet. + +Wed Dec 14 18:20:56 1994 Roland McGrath + + * sysdeps/alpha/bsd-setjmp.S: Reverse register and immediate args + in `bis' insn; immediate must be second. + + * sysdeps/unix/__fork.S: Use subl instead of decl. + * sysdeps/unix/i386/__fork.S: New file. + + * sysdeps/mach/hurd/alpha/trampoline.c (_hurd_setup_sighandler): + Remove A macro; just use `asm volatile' with proper quotes in each + line. + * sysdeps/mach/alpha/sysdep.h (CALL_WITH_SP): Put parens around + jmp target register. + + * time/africa, time/asia, time/australasia, time/emkdir.c, + time/europe, time/ialloc.c, time/northamerica, time/private.h, + time/scheck.c, time/yearistype, time/zdump.c, time/zic.c: New code + and data from ADO 94h distribution. + + * sysdeps/sparc/setjmp.S: Use sethi and or to put address of + __sigjmp_save in %g1 and jmp there. jmp cannot contain a complete + absolute pointer. Put second store in jmp delay slot. + +Tue Dec 13 15:47:52 1994 Roland McGrath + + * sysdeps/sparc/bsd-_setjmp.S: Use sethi and or to put address of + __sigsetjmp in %g1 and jmp there. jmp cannot contain a complete + absolute pointer. + * sysdeps/sparc/bsd-setjmp.S: Likewise. + + * configure.in: Use ; before } in { ... } exprs. + +Mon Dec 12 01:41:07 1994 Roland McGrath + + * Version 1.09.3. + + * sysdeps/mach/hurd/alpha/trampoline.c: Use `long int' for sigcode + values. Use _hurdsig_catch_fault. Pass address of __sigreturn in + $27, SCP value in $25. In trampoline code, use those regs. + + * sysdeps/mach/hurd/alpha/__sigret.c: Use asms instead of global + register vars to restore FP regs. Fix typo in REI invocation. + +Sun Dec 11 14:10:11 1994 Roland McGrath + + * hurd/hurd/fd.h (hurd_register_ioctl_handler, + _HURD_HANDLE_IOCTLS): Third arg to handler is a void *, not a + __gnuc_va_list. + + * stdio/memstream.c (enlarge_buffer): Always add one char into + NEED for the char we are writing or the NUL terminator. + + * stdio/memstream.c (enlarge_buffer): If realloc fails, just set + error flag and preserve old buffer state. + + * stdio/fwrite.c: In fill_buffer case, check for zero buffer space + after fflush and write one char normally. + +Sat Dec 10 00:02:21 1994 Roland McGrath + + * sysdeps/mach/hurd/__fork.c: Use natural_t in place of int. + + * sysdeps/alpha/macros.m4: Use C comments instead of ! comments. + + * sysdeps/mach/hurd/mmap.c: Cast -1 to long int before casting to + caddr_t. + + * sysdeps/mach/alpha/syscall.S: Include + to define op_chmk. + + * sysdeps/mach/hurd/__mknod.c: Include . + * sysdeps/mach/hurd/setegid.c: Likewise. + * sysdeps/mach/hurd/seteuid.c: Likewise. + * sysdeps/mach/hurd/__setregid.c: Likewise. + * sysdeps/mach/hurd/__setreuid.c: Likewise. + * sysdeps/mach/hurd/__ioctl.c: Likewise. + + * sysdeps/mach/hurd/recvfrom.c: Include . Use + mach_msg_type_number_t in place of unsigned int. + * sysdeps/mach/hurd/recv.c: Likewise. + * sysdeps/mach/hurd/getsockopt.c: Likewise. + * sysdeps/mach/hurd/getsocknam.c: Likewise. + * sysdeps/mach/hurd/getpeernam.c: Likewise. + * sysdeps/mach/hurd/accept.c: Likewise. + * sysdeps/mach/hurd/__gethstnm.c: Likewise. + +Fri Dec 9 00:01:21 1994 Roland McGrath + + * sysdeps/mach/hurd/__readlink.c: Use mach_msg_type_number_t in + place of unsigned int. + * sysdeps/mach/hurd/__fork.c: Likewise. + + * sysdeps/mach/hurd/__setgid.c: Include . + * sysdeps/mach/hurd/__setuid.c: Likewise. + * sysdeps/mach/hurd/__getgrps.c: Likewise. + * hurd/getuids.c: Likewise. + * sysdeps/mach/hurd/__getdents.c: Likewise. + + * sysdeps/mach/hurd/dirstream.h (DIR): Use unsigned long int for + `__allocation' and `__size' members. + + * sysdeps/mach/hurd/alpha/exc2signal.c: Use `long int' for sigcode + values. + * sysdeps/mach/hurd/i386/exc2signal.c: Likewise. + + * mach/devstream.c (input): Use mach_msg_type_number_t for NREAD. + + * sysdeps/mach/hurd/__setitmr.c (preempt_sigalrm): Use `long int' + for SIGCODE; take SIGERROR arg. + + * sysdeps/alpha/divrem.m4: Include instead of + . Use C comments instead of ! comments. + + * sysdeps/alpha/memchr.c: Remove extra shift and OR of CHARMASK. + * sysdeps/alpha/strchr.c: Likewise. + + * sysdeps/mach/hurd/sysd-stdio.c: Use mach_msg_type_number_t in + place of unsigned int. + + * sysdeps/posix/tempname.c (__stdio_gen_tempname): Cast FD to long + int before casting to pointer. + + * stdio/printf_fp.c: Include . + + * sysdeps/alpha/setjmp_aux.c: Use ENV[0].__jmpbuf[0]. + + * sysdeps/mach/alpha/sysdep.h (ENTRY): New macro. + + * hurd/hurdioctl.c (fioctl): Pass a mach_msg_type_number_t* to + __io_readable. + + * hurd/hurd-raise.c: Use `long int' for sigcode values. + + * hurd/hurdfault.c: Use `long int' for sigcode values. + * hurd/hurdfault.h: Likewise. + + * hurd/hurd/signal.h (struct hurd_signal_preempt): Handler takes + new SIGERROR arg. + * hurd/preempt-sig.c: Likewise. + * hurd/hurdsig.c (_hurd_internal_post_signal): Pass SIGERROR to + PREEMPT. + + * hurd/hurdlookup.c: Use mach_msg_type_number_t and natural_t in + place of unsigned int and int. + + * hurd/hurd/id.h: Use mach_msg_type_number_t in place of unsigned int. + + * hurd/catch-exc.c: Use `long int' for sigcode values. + * sysdeps/mach/hurd/i386/trampoline.c: Likewise. + * hurd/preempt-sig.c: Likewise. + + * configure.in (machine): Don't recognize r[34]00. + Convert mips64* to mips/mips64/& and mips* to mips/&. + * sysdeps/mips/mipsel/bytesex.h: New file. + * sysdeps/mips/r4000: Directory renamed to sysdeps/mips/mips64. + + * sysdeps/mach/alpha/sysdep.h (START_MACHDEP): Add missing + backslashes. + (CALL_WITH_SP): Cast FN to long int. + + * sysdeps/mach/alpha/thread_state.h (struct machine_thread_all_state): + New member `exc'. + + * hurd/fd-read.c: Include . Use mach_msg_type_number_t + in place of mach_msg_type_size_t. + + * hurd/hurdfault.c: Use natural_t instead of int. + + * hurd/hurd/signal.h: Use `long int' for sigcode values. + * hurd/hurdsig.c: Use mach_msg_type_number_t and natural_t in + place of unsigned int and int. Use `long int' for sigcode values. + + * hurd/vpprintf.c (pwrite): Cast &N to mach_msg_type_number_t *. + + * hurd/__fopenport.c: Include . Use + mach_msg_type_number_t in place of unsigned int. + + * hurd/hurdauth.c: Include . + * hurd/hurdsock.c: Likewise. + + * sysdeps/mach/alpha/machine-lock.h: Remove ".set noreorder" et + al; GCC already emits them. Fix register constraints in asms. + Set RTN in C, not asm. + + * hurd/hurdprio.c: Use mach_msg_type_number_t in place of unsigned + int. + +Thu Dec 8 04:00:11 1994 Roland McGrath + + * sysdeps/mach/hurd/alpha/__sigret.c: Remove ".set noreorder" et + al; GCC already emits them. + * sysdeps/mach/hurd/alpha/trampoline.c: Likewise. + + * sysdeps/mach/thread_state.h: Use mach_msg_type_number_t and + natural_t in place of unsigned int and int. + + * sysdeps/mach/sysdep.h (ENTRY): Don't #error if undefined. + + * sysdeps/mach/syscall.h: New file. + + * sysdeps/mach/Makefile: Remove debugging printout. + + * sysdeps/mach/hurd/configure.in: Converted to an autoconf script + from sysdeps/mach/hurd/configure, to work better with autoconf + version 2. + * sysdeps/mach/configure.in: Likewise, from sysdeps/mach/configure. + + * hurd/hurdmsg.c: Use mach_msg_type_number_t in place of unsigned + int. + + * sysdeps/mach/alpha/sysdep.h: Rename variable `sp' to avoid + conflict with #define in . + + * sysdeps/mach/hurd/alpha/__sigret.c: Remove unused variable. + + * sysdeps/mach/hurd/__ioctl.c: Pass arg to + __mig_dealloc_reply_port. + + * configure.in: Converted to Autoconf version 2. + * sysdeps/generic/configure.in: Likewise. + * sysdeps/unix/common/configure.in: Likewise. + * sysdeps/unix/configure.in: New file, converted to a + part-autoconf script from sysdeps/unix/configure, to work better + with autoconf version 2. + * aclocal.m4: Converted to Autoconf version 2. + (AC_CHECK_SYMBOL): New macro. + * config.make.in: New file. + * config-name.in: New file. + * Makefile (distribute): Rename install.sh to install-sh. + Add config.make.in, config-name.in, Makefile.in. + (distclean-1): Remove config-name.h and config.cache. + * Makefile.in: New file. + * Makeconfig (+gnu-stabs, gnu-as): Match -DHAVE_GNU_{AS,LD}=1 too. + +Wed Dec 7 14:05:12 1994 Roland McGrath + + * sysdeps/mach/mips/cacheflush.c: New file. + * sysdeps/mach/mips/Makefile: New file. + * sysdeps/mach/mips/Dist: New file. + + * hurd/hurdmalloc.c (vm_allocate, vm_page_size): #define these to + __ names at top. + + * posix/glob/Makefile.in (realclean): Remove config.status. + + * posix/glob/Makefile.in (DEFS): New variable, set from @DEFS@. + (CPPFLAGS): Remove @DEFS@ from here. + (.c.o): Use $(DEFS). + + * setjmp/siglongjmp.c: First arg is const. + +Tue Dec 6 19:04:50 1994 Roland McGrath + + * posix/glob/Makefile.in (CPPFLAGS): Include @DEFS@. + +Mon Dec 5 12:05:10 1994 Roland McGrath + + * posix/glob/configure.in: Add AC_PROG_CC. + + * sysdeps/mach/hurd/alpha/longjmp-ts.c: Use ENV[0].__jmpbuf[0]. + * sysdeps/mach/hurd/mips/longjmp-ts.c: Likewise. + * sysdeps/mach/hurd/i386/longjmp-ts.c: Likewise. + + * Version 1.09.2. + + * sysdeps/mach/hurd/__select.c: Don't make TO const. + +Sun Dec 4 12:06:36 1994 Roland McGrath + + * sysdeps/unix/configure (config_vars): Add missing backslash + before a $. + + Revamp the `setjmp' interface to be cleaner: only one type + `jmp_buf'/`sigjmp_buf', and only one `longjmp' function (with + aliases `_longjmp', `siglongjmp'). Internal setjmp interface is + now __sigsetjmp, which takes SAVEMASK flag and optionally saves + the signal mask. Add extern entry points `setjmp' and `_setjmp' + for BSD compatiblity; they tail-call __sigsetjmp. + * setjmp/setjmp.h: Include for __sigset_t, not + + (jmp_buf): Define unconditionally with old `sigjmp_buf' defn. + (__sigjmp_save): Declare to return int. + (__setjmp): Remove declaration; this function no longer exists. + (__sigsetjmp): Declare it; this is the new internal function. + (setjmp): Define to call __sigsetjmp, second arg depending on + __FAVOR_BSD. + [__OPTIMIZE__] (longjmp): Remove #define. + [__USE_BSD] (_longjmp): Declare it, another name for `longjmp'. + [__USE_BSD] (_setjmp): Define macro to do __sigsetjmp (ENV, 0). + [__FAVOR_BSD]: Remove all these defns. + [__USE_POSIX] (sigjmp_buf): Define as another name for `jmp_buf'. + [__USE_POSIX] (sigsetjmp): Define to call __sigsetjmp. + * setjmp/sigjmp.c (__sigjmp_save): Return an int, always zero, not + void. + * setjmp/Makefile (routines): Remove _setjmp, add bsd-setjmp and + bsd-_setjmp. + * setjmp/longjmp.c: Define as a real funciton, which restores + signal mask and calls __longjmp. + * setjmp/siglongjmp.c: Make this an alias to longjmp. + * setjmp/_longjmp.c: Alias to longjmp, not siglongjmp. + * sysdeps/stub/setjmp.c: Implement __sigsetjmp instead of + __setjmp; call __sigjmp_save. + * sysdeps/sparc/setjmp.S: Likewise. + * sysdeps/m68k/setjmp.c: Likewise. + * sysdeps/i386/setjmp.c: Likewise. + * sysdeps/vax/setjmp.c: Likewise. + * sysdeps/mips/setjmp.S: Implement __sigsetjmp instead of + __setjmp; call __sigsetjmp_aux instead of __setjmp_aux. Pass SP + and FP as 3rd and 4th args, not 2nd and 3rd. + * sysdeps/alpha/setjmp.S: Likewise. + * sysdeps/mips/setjmp_aux.c: Implement __sigsetjmp_aux instead of + __setjmp_aux; call __sigjmp_save. + * sysdeps/alpha/setjmp_aux.c: Likewise. + * sysdeps/mips/bsd-setjmp.S, sysdeps/mips/bsd-_setjmp.S: New files. + * sysdeps/alpha/bsd-setjmp.S, sysdeps/alpha/bsd-_setjmp.S: New files. + * sysdeps/vax/bsd-setjmp.S, sysdeps/vax/bsd-_setjmp.S: New files. + * sysdeps/sparc/bsd-setjmp.S, sysdeps/sparc/bsd-_setjmp.S: New files. + * sysdeps/i386/bsd-setjmp.S, sysdeps/i386/bsd-_setjmp.S: New files. + * sysdeps/m68k/bsd-setjmp.S, sysdeps/m68k/bsd-_setjmp.S: New files. + * sysdeps/stub/bsd-setjmp.c, sysdeps/stub/bsd-_setjmp.c: New files. + * setjmp/_setjmp.c: File removed. + * sysdeps/alpha/__longjmp.c: Take arg of type __jmp_buf, not + jmp_buf. + * sysdeps/vax/__longjmp.c: Likewise. + * sysdeps/stub/__longjmp.c: Likewise. + * sysdeps/i386/__longjmp.c: Likewise. + * sysdeps/m68k/__longjmp.c: Likewise. + +Sat Dec 3 09:00:17 1994 Roland McGrath + + * sysdeps/mach/hurd/alpha/__sigret.c: Set up frame for `rei' to + restore on user stack, aligned to an 8-word boundary and with a PS + value that restores user's stack alignment. + +Fri Dec 2 19:31:24 1994 Roland McGrath + + * sysdeps/unix/readdir.c: Search one char more than D_NAMLEN(DP) + for the null terminator. Always set D->d_namlen, using + D_NAMLEN(DP) if no null is found. + + * sysdeps/unix/sysv/sco3.2.4/__sigact.S: Fix typo `.global' to + `.globl'. Silly me, I used a vowel in a Unix program. + +Mon Nov 28 16:11:39 1994 Roland McGrath + + * io/fts.c (ALIGN, ALIGNBYTES): New macros, defined if not already + defined. + +Tue Nov 22 06:39:49 1994 Roland McGrath + + * sysdeps/unix/bsd/osf1/dirstream.h: File removed. + + * sysdeps/stub/sigcontext.h (struct sigcontext): Use `__sigset_t' + instead of `sigset_t' for `sc_mask'. + * sysdeps/mach/hurd/i386/sigcontext.h: Likewise. + * sysdeps/mach/hurd/alpha/sigcontext.h: Likewise. + * sysdeps/mach/hurd/mips/sigcontext.h: Likewise. + * sysdeps/unix/bsd/ultrix4/mips/sigcontext.h: Likewise. + * sysdeps/unix/bsd/sun/m68k/sigcontext.h: Likewise. + * sysdeps/unix/bsd/sun/sparc/sigcontext.h: Likewise. + + * hurd/hurdsig.c (_hurd_internal_post_signal: case handle): Call + abort_thread always, first thing after thread_suspend. + +Mon Nov 21 13:18:07 1994 Roland McGrath + + * sysdeps/mach/hurd/__fcntl.c: Don't make this whole function a + critical section. + + * sysdeps/generic/strpbrk.c: Don't call strchr; do it by hand for + efficiency. + +Wed Nov 16 12:47:22 1994 Roland McGrath + + * sysdeps/unix/bsd/m68k/sysdep.S [__motorola__]: Swap operands in + cmp.l. + + * hurd/msgportdemux.c (_hurd_msgport_receive): Call + _hurd_self_sigstate to get sigstate cached before running any + signal thread code. + + * sysdeps/mach/hurd/__fork.c: Pass _hurd_msgport_thread to + __thread_get_state, not _hurd_sigthread. Don't do + __thread_get_state on THREAD_SELF--the kernel does not allow it. + + * hurd/hurdsig.c (_hurd_internal_post_signal): In stopping orphan + test, take sigmask of SIGNO, don't & its value with a mask. In + blocked signal test, be careful not to pass SIGNO=0 to __sigismember. + +Tue Nov 15 01:39:36 1994 Roland McGrath + + * Makerules (stub-$(subdir)): Save absolute name of + $(..)sysdeps/stub before cd'ing, transform gleaned file names to + refer to saved name. + + * sysdeps/mach/hurd/socketpair.c: Include . + + * time/test_time.args: Add CST as a test case. + + * sysdeps/mach/hurd/socketpair.c: Rewritten (copying __pipe.c). + + * sysdeps/unix/bsd/dirstream.h [__USE_BSD] (dirfd): New macro. + + * posix/unistd.h: Declare fchdir. + + * io/fts.c (MAXPATHLEN): Define if not defined. + + * io/fts.c, io/fts.h: New files, from 4.4 BSD code by Keith Bostic. + * io/Makefile (routines): Add fts. + (headers): Add fts.h. + + Mostly ported the Hurd to the DEC Alpha. + * sysdeps/mach/alpha/machine-sp.h: New file. + * sysdeps/mach/alpha/thread_state.h: New file. + * sysdeps/mach/alpha/sysdep.h: New file. + * sysdeps/mach/alpha/machine-lock.h: New file. + * sysdeps/mach/hurd/alpha/sigcontext.h: New file. + * sysdeps/mach/hurd/alpha/longjmp-ts.c: New file. + * sysdeps/mach/hurd/alpha/trampoline.c: New file. + * sysdeps/mach/hurd/alpha/exc2signal.c: New file. + * sysdeps/mach/hurd/alpha/__sigret.c: New file. + + * sysdeps/mach/hurd/Makefile (errlist.c, errnos.h): Make the + output unwritable. + * sysdeps/alpha/Makefile (divrem rule): Make the output + unwritable, use mv -f. + * sysdeps/sparc/Makefile (divrem rule): Likewise. + + * configure.in (sysnames): Put another loop on $mach inside $base + loop but outside $vendor loop. This should catch .../cpu/vendor. + +Mon Nov 14 22:52:03 1994 Roland McGrath + + * sysdeps/mach/hurd/start.c: Add missing #endif. + +Sun Nov 13 05:04:18 1994 Roland McGrath + + * sysdeps/mach/hurd/__select.c: At end of receiving loop, clear TO + instead of TIMEOUT. + + * malloc/mcheck-init.c (turn_on_mcheck): Add gratuitous self + reference to silence compiler warning. + (_hurd_preinit_hook): Add the function to this set too. + + * time/__tzset.c (__tzset): Give tz_rules coherent default when TZ + value is short or malformed. + + * mach/devstream.c: Echo input after reading it. + + * Make-dist (generated): Mutate to add .S and .s variations for .c + files. + +Fri Nov 11 11:43:26 1994 Michael I Bushnell + + * sysdeps/mach/hurd/i386/__sigret.c (__sigreturn): Don't actually + abort here; at least let the user continue with bogus FP; that's + better than a random crash until it's fixed. + +Thu Nov 10 04:56:28 1994 Roland McGrath + + * sysdeps/unix/bsd/sun/sunos4/sys/mman.h (msync): Use __caddr_t + instead of caddr_t in decl. + + * sysdeps/mach/start.c (START_ARGS): Define to void if undefined. + [START_MACHDEP]: Reference this if defined. + [START_MACHDEP] (_start): #define to _start0. + (_start): Take args START_ARGS. + * sysdeps/mach/hurd/start.c: Likewise. + +Wed Nov 9 08:02:59 1994 Roland McGrath + + * hurd/Makefile (sig): Remove longjmp-ctx (it is never called). + + * sysdeps/mach/hurd/__fork.c: Do thread_get_state on parent's + threads to modify and thread_set_state new child threads. + +Mon Nov 7 00:38:45 1994 Roland McGrath + + * posix/glob/configure.in: Converted to Autoconf v2. + * posix/glob.c: Test HAVE_DIRENT_H, HAVE_SYS_DIR_H, HAVE_NDIR_H + instead of DIRENT, SYSDIR, NDIR. + * posix/glob/Makefile.in (CC): New variable, set from @CC@. + (CPPFLAGS): Set from @CPPFLAGS@, not @DEFS@. + + * sysdeps/unix/__fork.S: Use decrement and AND instead of test and + branch. + * sysdeps/unix/sparc/__fork.S: Likewise. + * sysdeps/unix/sparc/__vfork.S: Likewise. + * sysdeps/unix/bsd/sun/m68k/__vfork.S: Likewise. + * sysdeps/unix/bsd/hp/m68k/__vfork.S: Likewise. + * sysdeps/unix/i386/__fork.S: File removed. + +Sun Nov 6 19:26:28 1994 Roland McGrath + + * Version 1.09. + +Fri Nov 4 16:52:05 1994 Roland McGrath + + * Version 1.08.14. + + * manual/Makefile (stamp-summary): Depend on $(chapters-incl) too. + +Thu Nov 3 18:33:50 1994 Roland McGrath + + * sysdeps/generic/sigset.h (__sigemptyset): Cast to __sigset_t. + (__sigfillset): Likewise. Use ~(__sigset_t)0 in place of -1. + (__SIGSETFN): Don't try to be clever. Test bounds of SIG with < + and >. + + * sysdeps/mach/hurd/__fork.c: Unlock signal state earlier, just + after unlocking _hurd_ports locks. + + * sysdeps/unix/bsd/osf1/direct.h: File removed. + * sysdeps/unix/bsd/direct.h (struct direct): Use `unsigned int' + instead of `unsigned long int' for `d_fileno' member. + + * Makerules (common-mostlyclean): Remove $(tests:=.out) too. + + * assert/assert-perr.c (__assert_perror_fail): Add missing comma. + + * sysdeps/unix/ioctls-tmpl.c [__osf__ && __alpha__] (FIOPIPESTAT, + SIOCSRREQR, SIOCSRREQW, SRVC_REQUEST): #undef these. + +Wed Nov 2 23:00:19 1994 Roland McGrath + + * sysdeps/mach/hurd/setegid.c: Pass poly and count args for + other_handles in correct order in call to auth_makeauth. + * sysdeps/mach/hurd/__setregid.c: Likewise. + * sysdeps/mach/hurd/__setreuid.c: Likewise. + + * Makerules (compile.S): Add -DASSEMBLER. + * sysdeps/mach/sysdep.h [ASSEMBLER]: Don't include + if this is defined. + +Wed Nov 2 22:39:55 1994 Michael I Bushnell + + * sysdeps/mach/hurd/seteuid.c: Pass poly and count args for + other_handles in correct order in call to auth_makeauth. + +Wed Nov 2 15:03:51 1994 Roland McGrath + + * stdio/internals.c (fillbuf): Make sure returned char doesn't get + sign extended. + +Tue Nov 1 01:25:28 1994 Roland McGrath + + * sysdeps/unix/common/Implies: File removed. + * sysdeps/unix/bsd/Implies: Add unix/inet. + + * assert/assert-perror.c: Renamed to assert-perr.c. + * assert/Makefile (routines): Rename assert-perror to assert-perr. + + * Version 1.08.13. + + * mach/Makefile (generated): Add __%.c for $(mach-shortcuts) too. + + * dirent/Makefile (tests): Add tst-seekdir. + * dirent/tst-seekdir.c (main): New file. + * sysdeps/unix/bsd/seekdir.c: New file. + * sysdeps/unix/bsd/telldir.c: New file. + * sysdeps/unix/bsd/dirstream.h (DIR): New member `__pos'. + * sysdeps/unix/bsd/readdir.c: Update DIRP->__pos in getdirentries + call. + * sysdeps/unix/opendir.c: Use calloc in place of malloc, to zero + fill new DIRs. + + * sysdeps/standalone/i386/force_cpu386/force_cpu386.ld: Renamed to + target.ld. + * sysdeps/standalone/i386/force_cpu386/Makefile: Install it from + that name (still into $(libdir)/force_cpu386.ld). + + * mach/Makefile (headers, user-interfaces, server-interfaces): + Don't add default_pager stuff. + +Mon Oct 31 07:00:40 1994 Roland McGrath + + * sysdeps/unix/bsd/sun/sunos4/termbits.h (TCSASOFT): Macro + removed. + + * malloc/malloc.h: Change #ifdef __STDC__ to #if defined + (__STDC__) && __STDC__. + +Fri Oct 28 00:09:24 1994 Roland McGrath + + * sysdeps/mach/sysdep.h: Include for decls. + (FATAL_PREPARE): Pass arg to __mig_dealloc_reply_port. + + * assert/Makefile (routines): Add assert-perror. + + * Makerules (stubs): cd into $(objdir) and use local file names, + making the cmd shorter. + + * sysdeps/mach/hurd/getprio.c (getonepriority): Call + proc_getprocinfo with proc port. + + * sysdeps/mach/hurd/errnos.awk: Grok "@comment errno %d" in + errno.texi, instead of assigning sequentially. + * sysdeps/mach/hurd/errlist.awk: Likewise. + + * stdio/fwrite.c: Reset BUFFER_SPACE after fflush in fill_buffer + case. + + * sysdeps/generic/sigset.h (__SIGSETFN): When losing, punt to + `raise (-1)'. Old method looped. + + * hurd/hurd/resource.h: Include . + +Thu Oct 27 15:00:50 1994 Roland McGrath + + * sysdeps/standalone/standalone.h: Fixed typo. + +Wed Oct 26 00:21:16 1994 Roland McGrath + + * sysdeps/unix/i386/vfork.S: New file. + + * sysdeps/generic/strchr.c: Increment CP properly in check for 5th + char of quadword hit. + + * sysdeps/mach/hurd/getprio.c (getonepriority): Always set ONERR. + +Tue Oct 25 03:53:26 1994 Roland McGrath + + * hurd/hurd/resource.h: Include . + + * stdio/ftell.c: If STREAM->__pushed_back, calculate from + pushback_bufp instead of bufp. + + * Makefile (format-me): New canned sequence; runs makeinfo + --no-headers. + (INSTALL): Use it. + (NOTES): New file rule. + + * manual/intro.texi (Feature Test Macros): Node moved off to + creature.texi. + * manual/creature.texi: New file, broken out of intro.texi. + + * manual/Makefile (indices): New variable; include ky. + (realclean): Use $(indices) to remove all index and sorted index + files. + + * sysdeps/mach/hurd/fcntlbits.h (O_ASYNC, O_FSYNC, O_SYNC): + Protect with [__USE_BSD]. + +Mon Oct 24 00:16:59 1994 Roland McGrath + + * sysdeps/unix/bsd/utime.c: Initialize tv_usec fields. + Use __gettimeofday instead of time. + + * sunrpc/pmap_rmt.c: Include before . + Undef _POSIX_SOURCE before that. + * sunrpc/pm_getport.c: Likewise. + * sunrpc/pm_getmaps.c: Likewise. + * sunrpc/get_myaddr.c: Likewise. + + * misc/sys/cdefs.h: Undef __P first. + + * Version 1.08.12. + + * sysdeps/mach/hurd/getprio.c: Rewritten. + * sysdeps/mach/hurd/setprio.c: New file. + * hurd/hurdprio.c: New file. + * hurd/Makefile (routines): Add hurdprio. + * hurd/hurd/resource.h (_hurd_priority_which_map): Declare it. + (NICE_TO_MACH_PRIORITY, MACH_PRIORITY_TO_NICE): New macros. + +Sun Oct 23 19:39:18 1994 Roland McGrath + + * Makerules (sources): Fix typo in last change. + +Fri Oct 21 13:15:39 1994 Roland McGrath + + * sysdeps/generic/termbits.h (ECHOKE): Remove gratuitous leading + space before #define. + + * Makerules (sources): Filter out $(elided-routines). + + * sysdeps/sparc/divrem.m4 (entry point): For OP=rem, set SIGN from + dividend only, ignoring divisor. + (Lgot_result): Test SIGN here for OP=rem too (as originally). + +Wed Oct 19 02:40:02 1994 Roland McGrath + + * hurd/hurdsig.c: Use assert_perror. + + * assert/assert-perror.c (__assert_perror_fail): New file. + * assert/assert.h (assert_perror): New macro. + + * Version 1.08.11. + + * hurd/hurdsig.c (abort_rpcs): Actually return a port instead of + boolean, as the type says. + + * hurd/hurdsig.c (abort_all_rpcs): If waiting for reply from + interrupted RPC returns error, print debugging msg with error + test, don't assert. + +Mon Oct 17 00:06:03 1994 Roland McGrath + + * stdlib/strtol.c: Deansideclized. + * sysdeps/generic/strcspn.c: Deansideclized. + * sysdeps/generic/putenv.c: Deansideclized, added portability + cruft. + +Fri Oct 14 14:00:11 1994 Roland McGrath + + * sysdeps/unix/sysv/sysv4/solaris2/utsnamelen.h: + Moved to sysdeps/unix/sysv/sysv4. + +Thu Oct 13 22:06:50 1994 Roland McGrath + + * sysdeps/unix/common/glue-ctype.c [HAVE__LOCP]: Move this defn to + first. Include sys/types.h. + + * sysdeps/unix/bsd/readdir.c: Include direct.h. + + * socket/sys/socket.h (__SOCKADDR_ARG): Always use non-GCC defn, + for now. + * posix/sys/wait.h (__WAIT_STATUS): Likewise. + +Tue Oct 11 00:42:50 1994 Roland McGrath + + * Version 1.08.10. + +Mon Oct 10 00:33:47 1994 Roland McGrath + + * malloc/malloc.h [_MALLOC_INTERNAL] (CHAR_BIT): Don't define if + already defined. + + * stdio/__vfscanf.c: Grok %q modifier like %ll. + + * mach/__msgserver.c: Increase default MAX_SIZE to two pages. + + * misc/init-misc.c: Cast string constant to non-const type. + + * sysdeps/i386/ffs.c: Use %1 again instead of listing TMP as an + input with constraint "1". This avoids a warning that TMP may be + used before set. + +Sun Oct 9 22:41:20 1994 Roland McGrath + + * hurd/hurdsig.c (abort_all_rpcs): Declare SS. + +Sun Oct 09 01:19:38 1994 Jim Meyering (meyering@comco.com) + + * posix/fnmatch.c: Remove CONFIG_BROKETS conditional. + +Fri Oct 7 15:28:07 1994 Roland McGrath + + * stdio/__vfscanf.c: Properly grok %a modifier. + + * hurd/hurdsig.c (abort_rpcs): Return the reply port or null, + instead of boolean. + (abort_all_rpcs): Record the returns from abort_rpcs and wait for + a message on each reply port. Don't bother locking _hurd_siglock. + +Thu Oct 6 18:57:44 1994 Roland McGrath + + * hurd/hurd.h (_hurd_socket_server): Take new arg DEAD; explain + its use in comment. + * hurd/hurdsock.c (_hurd_socket_server): Take new arg DEAD; if + nonzero, clear any old cached port and always do a fresh lookup. + * sysdeps/mach/hurd/socket.c: Pass new arg to _hurd_socket_server, + cope with dead server on socket_create. + * sysdeps/mach/hurd/__pipe.c: Likewise. + +Mon Oct 3 02:09:43 1994 Roland McGrath + + * sysdeps/generic/utsnamelen.h (_UTSNAME_LENGTH): Increase to + 1024. + +Sun Oct 2 18:35:16 1994 Roland McGrath + + * posix/glob.h (__P): Change arg name to `protos', for congruence + with 4.4 BSD. + * posix/fnmatch.h (__P): Likewise. + +Sat Oct 1 04:25:35 1994 Roland McGrath + + * misc/Makefile (routines): Add daemon. + +Fri Sep 30 16:49:09 1994 Roland McGrath + + * misc/daemon.c: New file, incorporated from BSD 4.4-Lite. + + * sysdeps/mach/hurd/__setsid.c: Call _hurd_setcttyid with + MACH_PORT_NULL after proc_setsid. + + * hurd/hurdioctl.c (_hurd_setcttyid): Don't do mod_refs if port is + null. + + Always use fds' `port' cell for the generic port. + For ctty fds, use the `ctty' cell for the ctty-special port. + * hurd/dtable.c (get_dtable_port): Use port, never ctty. + (fork_child_dtable): Reset D->ctty instead of D->port. + (ctty_new_pgrp): Likewise. + * sysdeps/mach/hurd/__ioctl.c: Use ctty port for RPC if set and + !NOCTTY. + * hurd/port2fd.c (_hurd_port2fd): Install normal port in D->port + cell, and ctty-special port in the D->ctty cell, not the reverse. + * hurd/hurdioctl.c (tiocsctty): Don't assume MACH_PORT_NULL is + zero. + * hurd/hurdexec.c (_hurd_exec): Always pass fds' normal port, + never its ctty port. + * hurd/fd-write.c (_hurd_fd_write): Use ctty port for RPC if set + and !NOCTTY. + * hurd/fd-read.c (_hurd_fd_read): Use ctty port for RPC if set. + +Thu Sep 29 18:28:01 1994 Roland McGrath + + * mach/mig_syms.c (mig_put_reply_port): Add symbol alias to __ + name. + +Thu Sep 29 12:23:07 1994 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h (ENTRY): Use + poundfnc instead of \#function, to satisfy gcc-2.6.0 and higher. + (cat, poundfnc): Define macros to pull it off. + + * sysdeps/unix/sysv/sysd-stdio.c: Include + sysdeps/generic/sysd-stdio.h, + not looking in sysdeps/posix. + +Thu Sep 29 05:38:14 1994 Roland McGrath + + * sysdeps/unix/common/configure.in (ctype check): In test prog, + just reference $ctype; we don't care what type it is. + + * sysdeps/unix/bsd/bsd4.4/direct.h: New file. + (HAVE_D_TYPE): Define this macro. + * dirent/dirent.h (struct dirent): New member `d_type'; shorten + `d_namlen' to a byte. + * sysdeps/unix/bsd/readdir.c [! HAVE_D_TYPE]: Shuffle d_namlen and + clear d_type. + +Wed Sep 28 17:23:26 1994 Roland McGrath + + * posix/sys/utsname.h [__USE_SVID] (SYS_NMLN): New macro. + + * dirent/scandir.c: Free storage on error from readdir. + +Mon Sep 26 00:55:34 1994 Roland McGrath + + * Version 1.08.9. + + * MakeTAGS (all-dist): Prepend the appropriate sysdep dir names. + + * hurd/hurdsig.c (_hurd_internal_post_signal: sigwakeup): Create a + send right. + +Sat Sep 24 13:44:51 1994 Jim Meyering (meyering@comco.com) + + * sysdeps/generic/memcmp.c [CMP_LT_OR_GT]: New macro. + (memcmp): Use it in place of each of ten 5-line #ifdef blocks. + +Fri Sep 23 16:55:54 1994 Roland McGrath + + * sysdeps/mach/hurd/sigsuspend.c: Include . + + * sysdeps/mach/hurd/sigsuspend.c: Add missing & in __mach_msg + call. + +Thu Sep 15 14:22:56 1994 Roland McGrath + + * sysdeps/standalone/i386/force_cpu386/Dist: New file. + * sysdeps/standalone/m68k/m68020/mvme136/Dist: New file. + * sysdeps/standalone/i960/Dist: New file. + * sysdeps/standalone/m68k/m68020/Dist: New file. + * sysdeps/standalone/i386/force_cpu386/force_cpu386.ld: New file. + * sysdeps/standalone/m68k/m68020/mvme136/mvme136.ld: New file. + * sysdeps/standalone/i960/i960ca.h: New file. + * sysdeps/standalone/m68k/m68020/m68020.h: New file. + + * sysdeps/unix/common/configure.in: Use AC_COMPILE_CHECK instead + of AC_HAVE_FUNCS. + + * sysdeps/generic/make_siglist.c (sys_siglist): Define as macro to + my_siglist. + + * sysdeps/mach/i386/thread_state.h: Include from mach/machine, not + mach/i386. + * sysdeps/mach/hurd/i386/sigcontext.h: Likewise. + + * mach/mach/mig_support.h (__mig_put_reply_port): Declare. + (__mig_dealloc_reply_port): Take arg. + * sysdeps/mach/hurd/mig-reply.c (__mig_put_reply_port): New + function. + (__mig_dealloc_reply_port): Take arg, ignore it. + +Wed Sep 14 18:16:07 1994 Roland McGrath + + * sysdeps/mach/hurd/Makefile (libc-name): Set to crt. + [!subdir]: Install libc-ldscript as libc.a. + * sysdeps/mach/hurd/Dist: Add libc-ldscript. + +Tue Sep 13 19:57:09 1994 Roland McGrath + + * sysdeps/mach/hurd/sync.c: Don't be synchronous: pass WAIT=0 to + file_syncfs. + + * Makerules (libc-name): New variable. + (install, libc installation rule): Use $(libc-name) in place of `c'. + +Sun Sep 11 23:28:20 1994 Roland McGrath + + * sysdeps/mach/hurd/__readlink.c: Only decrement LEN to remove the + null terminator when LEN is already large enough to include it. + + * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Add break + after FS_RETRY_MAGICAL case. + +Fri Sep 9 04:03:59 1994 Roland McGrath + + * stdio/vfprintf.c: Grok q modifier like ll. + + * Make-dist (sysdep-Subdir-files, subdirs): Set these early on, + before doing distinfo. + [parent] (+distinfo): Set inhibit_interface_rules=t in sub-make. + +Thu Sep 8 17:18:14 1994 Roland McGrath + + * sysdeps/generic/morecore.c (__default_morecore) [! __STDC__]: + Declare arg as `int' instead of `ptrdiff_t'. + +Tue Sep 6 19:06:00 1994 Roland McGrath + + * posix/glob.c (prefix_array, glob): Avoid const on initialized + variables. Some compiler generates bad code. + +Mon Sep 5 13:24:26 1994 Roland McGrath + + * malloc/Makefile (malloc/%: ../sysdeps/generic/%): New rule, to get + morecore.c. + + * malloc/malloc.h (size_t, ptrdiff_t): Never define these as macros. + (__malloc_size_t): Define this instead. + Change all uses of size_t to __malloc_size_t. + * malloc/valloc.c: Replace all uses of size_t with __malloc_size_t. + * malloc/memalign.c: Likewise. + * malloc/mcheck.c: Likewise. + * malloc/mtrace.c: Likewise. + * malloc/malloc.c: Likewise. + * malloc/free.c: Likewise. + * malloc/realloc.c: Likewise. + * malloc/calloc.c: Likewise. + + * MakeTAGS (TAGS): Define first so as to be default goal. + (sysdep_dirs): Set this by running find, if it is not already set. + (all-dirs): Include that value. + (all-dist): Filter output of cat, not args to it. + * Makerules (TAGS): Depend on distinfo, not distfile. + + * resolv/getnetnamadr.c (getnetbyname): Arg is always const, + regardless of [sun]. + +Sun Sep 4 00:04:55 1994 Roland McGrath + + * Version 1.08.8. + + * Makerules (distinfo-vars): Double $s in final emitted sources defn. + + * inet/Makefile (headers): Add netdb.h. + * resolv/Makefile (headers): Remove netdb.h. + * resolv/netdb.h: Moved to inet. + * inet/netdb.h: Incorporated from BSD 4.4-Lite. + Add back h_errno declaration. + + * hurd/Makefile (faultexc.c): Change this to a pattern rule to + build both faultexc.[ch]. + (hurdfault.o): Depend on faultexc.h and faultexc.c to get them built. + + * sysdeps/mach/hurd/i386/trampoline.c + (_hurdsig_rcv_interrupted_p): Make PC volatile. + (_hurd_setup_sighandler): Cast SS->context to int before comparing to + _hurdsig_fault_sigcode. + + * sysdeps/mach/thread_state.h (MACHINE_THREAD_STATE_SET_{SP,PC}): + Cast args to unsigned long int. + + * sysdeps/mach/hurd/i386/trampoline.c: Use _hurdsig_catch_fault. + + * Make-dist (subdirs): Use sed to remove comments from Subdirs files. + * MakeTAGS (subdirs): Likewise. + + * sysdeps/mach/i386/thread_state.h: Include + first thing. + + * hurd/Makefile (sig): Add faultexc. + ($(objpfx)faultexc.c): New target. + (generated): Append faultexc.c. + + * hurd/Makefile (sig): Add hurdfault; remove init-fault. + (distribute): Add hurdfault.h. + * hurd/hurdfault.h: New file. + * hurd/hurdfault.c: New file. + * hurd/hurdsig.c (interrupted_reply_port_location): Use + _hurdsig_catch_fault and _hurdsig_end_catch_fault. + (_hurdsig_getenv): Likewise. + * sysdeps/mach/hurd/i386/trampoline.c: Likewise. + + * hurd/catch-exc.c: Return EPERM if TASK is not right. + + * hurd/hurdsig.c (_hurd_sigthread_fault_env): Variable moved to + hurdfault.c. + (_hurdsig_fault_init): Function moved to hurdfault.c. + +Sat Sep 3 12:22:53 1994 Roland McGrath + + * sysdeps/mach/thread_state.h (MACHINE_THREAD_STATE_SET_PC, + MACHINE_THREAD_STATE_SET_SP): New macros. + * mach/setup-thread.c: Use MACHINE_THREAD_STATE_SET_PC. + * sysdeps/mach/hurd/__fork.c: Likewise. + + * string/test-ffs.c (main: try): Actually call ffs in the test. + +Fri Sep 2 21:20:17 1994 Roland McGrath + + * sysdeps/mach/hurd/mips/__sigret.c: Restore FPU state. Code from + kkojima. + + * sysdeps/mach/hurd/__mknod.c: Fixed copying of the translator + name into buffer with major and minor numbers, and setting of LEN. + + * sysdeps/unix/configure (unix_syscall): In sed cmd, do = first to + avoid clobbering produced assignments. + +Thu Sep 1 03:25:17 1994 Roland McGrath + + * Version 1.08.7. + + * sysdeps/mach/hurd/connect.c (connect): Fix accidental renaming + of sun_path to sun_file_name. + + * bare/Makefile (routines, elided-routines): Set these both to + $(bare-routines). + (distribute): Don't set this. + + * Makerules (distinfo-vars): Fix cmd to echo `sources' defn. + + * sysdeps/unix/configure: Handle dirs other than common. Check + for [gs]etdomainname. + * misc/Makefile (routines): Add getdomain, setdomain. + * sysdeps/unix/bsd/bsd4.4/setdomain.S: New file. + * sysdeps/unix/bsd/bsd4.4/getdomain.S: New file. + * sysdeps/stub/setdomain.c: New file. + * sysdeps/stub/getdomain.c: New file. + +Wed Aug 31 01:15:26 1994 Roland McGrath + + * hurd/hurdsig.c (_hurd_internal_post_signal: sigwakeup): Take no + args; use parent SS variable. Changed all calls. + + * hurd/hurd/signal.h (struct hurd_sigstate): Make `suspended' a + port; remove `arrived'. + * sysdeps/mach/hurd/sigsuspend.c (sigsuspend): Rewritten to set + SS->suspended port and wait for msg on it. Check for and deliver + pending signals properly. + * hurd/hurdsig.c (_hurd_internal_post_signal: sigwakeup): If + SS->suspended is set, send an empty message on it and clear it. + + * math/test-math.c (print_trig_stuff): New function, tests many + math functions. + (main): Call it at end. + + * string/Makefile (tests): Added test-ffs. + * string/test-ffs.c: New file. + +Tue Aug 30 20:33:49 1994 Roland McGrath + + * misc/fstab.c (error): Return void. + (fstabscan): Return int. + + * sysdeps/i386/ffs.c: Use & modifier in constraint for CNT. + + * misc/fstab.c (EFTYPE): If not defined by errno.h, define this to + EINVAL. + (fstabscan): Return void. + +Tue Aug 30 11:00:01 1994 Michael I Bushnell + + * sysdeps/mach/hurd/__access.c (__access): Use a send right, + not a send-once right, in the new auth protocol. + * hurd/__setauth.c (_hurd_setauth): Likewise. + * hurd/hurdsig.c (reauth_proc): Likewise. + * hurd/dtable.c (reauth_dtable): Likewise. + * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Likewise. + +Tue Aug 30 03:59:38 1994 Roland McGrath + + * socket/sys/socket.h (__SOCKADDR_ARG) [GCC>=2.6]: Use a typedef + with the transparent_union attribute. + + * sysdeps/mach/hurd/__access.c: Use new authentication protocol: + for each port, create a fresh receive right and pass send-once + rights in the auth calls, then destroy the port. + + * sysdeps/mach/mips/syscall.S: New file. + + * stdio/Makefile (mpn-headers, mpn-sysdep): Change asm.h to + asm-syntax.h. + + * misc/Makefile (headers): Added fstab.h. + (routines): Added fstab. + * misc/fstab.c: New file. + * misc/fstab.h: New file. + + * hurd/Makefile (routines): Changed hurdpath to hurdlookup. + * hurd/hurdpath.c: Renamed to hurd/hurdlookup.c. + * hurd/hurdlookup.c: Globally replace `pathtrans' with `lookup' and + `path' with `file_name'. + (__hurd_file_name_split): Don't bother skipping leading slashes. + * hurd/hurd.h: Rename likewise in decls. + * hurd/fchroot.c: Globally replace `pathtrans' with `lookup' and + `path' with `file_name'. + * hurd/hurdsig.c: Likewise. + * hurd/hurdsock.c: Likewise. + * hurd/hurdsyms.c: Likewise. + * hurd/invoke-trans.c: Likewise. + * sysdeps/mach/hurd/__access.c: Likewise. + * sysdeps/mach/hurd/__chmod.c: Likewise. + * sysdeps/mach/hurd/__chown.c: Likewise. + * sysdeps/mach/hurd/__execve.c: Likewise. + * sysdeps/mach/hurd/__link.c: Likewise. + * sysdeps/mach/hurd/__lstat.c: Likewise. + * sysdeps/mach/hurd/__mkdir.c: Likewise. + * sysdeps/mach/hurd/__mknod.c: Likewise. + * sysdeps/mach/hurd/__open.c: Likewise. + * sysdeps/mach/hurd/__rmdir.c: Likewise. + * sysdeps/mach/hurd/__readlink.c: Likewise. + * sysdeps/mach/hurd/__stat.c: Likewise. + * sysdeps/mach/hurd/__symlink.c: Likewise. + * sysdeps/mach/hurd/__unlink.c: Likewise. + * sysdeps/mach/hurd/__utimes.c: Likewise. + * sysdeps/mach/hurd/bind.c: Likewise. + * sysdeps/mach/hurd/chflags.c: Likewise. + * sysdeps/mach/hurd/connect.c: Likewise. + * sysdeps/mach/hurd/fchdir.c: Likewise. + * sysdeps/mach/hurd/opendir.c: Likewise. + * sysdeps/mach/hurd/sysd-stdio.c: Likewise. + * sysdeps/mach/hurd/truncate.c: Likewise. + * sysdeps/mach/hurd/rename.c: Likewise. + * sysdeps/mach/hurd/getcwd.c: Likewise. + * sysdeps/mach/hurd/chroot.c: Likewise. + * sysdeps/mach/hurd/__chdir.c: Likewise. + + * hurd/__setauth.c (_hurd_setauth): Use new authentication + protocol: for each port, create a fresh receive right and pass + send-once rights in the auth calls, then destroy the port. + * hurd/hurdsig.c (reauth_proc): Likewise. + * hurd/dtable.c (reauth_dtable): Likewise. + + * hurd/hurdpath.c (__hurd_path_lookup_retry): Don't handle + FS_RETRY_NONE (it's gone). Use new authentication protocol: + create a fresh receive right and pass send-once rights in the auth + calls, then destroy the port. + +Mon Aug 29 13:17:39 1994 Michael I Bushnell + + * sysdeps/mach/hurd/__symlink.c (__symlink): Use new + file_set_translator protocol. + * sysdeps/mach/hurd/bind.c (bind): Likewise. + * sysdeps/mach/hurd/__mknod.c (__mknod): Likewise. + + * sysdeps/mach/hurd/__pipe.c (__pipe): Use PF_LOCAL instead + of AF_FILE. + +Fri Aug 26 01:21:09 1994 Roland McGrath + + * Makefile ($(objpfx)sysd-dirs): Use sed to remove # comments from + Subdirs files. + + Support for miscellaneous standalone boards (no OS), contributed + by Joel Sherrill (jsherril@redstone-emh2.army.mil), On-Line + Applications Research Corporation. + * sysdeps/standalone: New directory. + * sysdeps/standalone/standalone.h: New file. + * sysdeps/standalone/stdio_lim.h: New file. + * sysdeps/stub/strtsupp.c: New file. + * sysdeps/standalone/filedesc.h: New file. + * sysdeps/posix/{setenv,putenv}.c: Moved to sysdeps/generic. + * sysdeps/unix/getenv.c: Moved to sysdeps/generic. + * sysdeps/unix/morecore.c: Moved to sysdeps/generic. + * sysdeps/posix/sysd-stdio.c: Moved to sysdeps/generic. + * sysdeps/stub/errnos.h: Add ENFILE and EMFILE. + * sysdeps/stub/errlist.c (_sys_errlist): Likewise. + * sysdeps/stub/console.c: New file. + * sysdeps/standalone/__open.c: New file. + * sysdeps/standalone/__read.c: New file. + * sysdeps/standalone/__write.c: New file. + * sysdeps/standalone/__close.c: New file. + * sysdeps/stub/brdinit.c: New file. + * sysdeps/unix/__sbrk.c: Moved to sysdeps/generic. + * sysdeps/standalone/__brk.c: New file. + * sysdeps/standalone/Subdirs: New file + * bare/Makefile: New file (and new directory). + * sysdeps/i960/ffs.c: New file. + * sysdeps/i960/Implies: New file. + * configure.in (os=none): base_os=standalone + +Thu Aug 25 23:56:32 1994 Roland McGrath + + * sysdeps/stub/__sigret.c: Arg is not const. + * signal/sigret.c: Likewise. + +Tue Aug 23 14:43:19 1994 Roland McGrath + + * socket/sys/socket.h (PF_FILE, AF_FILE): Removed (use LOCAL instead). + (PF_XTP, PF_COIP, PF_CNT, PF_RTIP, PF_IPX, PF_SIP, PF_PIP): New + macros. + (PF_MAX): Increased to 26. + (pseudo_AF_XTP, AF_COIP, AF_CNT, pseudo_AF_RTIP, AF_IPX, AF_SIP, + pseudo_AF_PIP): New macros. + (MSG_EOR, MSG_TRUNC, MSG_CTRUNC, MSG_WAITALL, MSG_DONTWAIT, + SO_REUSEPORT): New enum constants. + + * hurd/hurdsig.c (_hurd_internal_post_signal): If not preempted, + set ACT before checking for SIGCONT. When continuing and + ACT==handle, don't resume SS->thread; record that it is suspended + and in handler-setup code, don't suspend it again. + + * sysdeps/mach/hurd/sys/param.h: Include (BSD does). + + * sysdeps/mach/hurd/__fork.c: When unchaining old sigstates, check + for SS being head of chain. + +Mon Aug 22 00:29:02 1994 Roland McGrath + + * time/{asia,australasia,europe,northamerica}: New data from ADO. + + * hurd/hurdsig.c (abort_rpcs): After destroying MSGING_PORT, + change the return value register in STATE to EINTR. + * sysdeps/mach/mips/thread_state.h (SYSRETURN): New macro. + * sysdeps/mach/i386/thread_state.h (SYSRETURN): New macro. + + * hurd/hurdsig.c (default_sigaction): New function. + (_hurd_thread_sigstate): Use it to initialize SS->actions. + Initialize rest of new sigstate by hand, don't just bzero it. + + * hurd/hurdsig.c (_hurd_internal_post_signal): Initialize + THREAD_STATE.set to zero. + + * posix/execl.c: Use ARG instead of PATH in va_start. + + * sysdeps/mach/hurd/__fork.c: In child fork, unchain stale + structures from _hurd_sigstates first, and only free them after + other processing is complete. + + * hurd/hurdpath.c (__hurd_path_lookup_retry): For malformed number + in magic "fd/N", return ENOENT instead of treating it as bogus + magic. + + * sysdeps/mach/hurd/__chdir.c: After __path_lookup on arg, use + __hurd_path_lookup of empty file name on resultant port to check + that it's a directory. + * sysdeps/mach/hurd/chroot.c: Likewise. + * sysdeps/mach/hurd/fchdir.c: Use __hurd_path_lookup of empty file + name on FD port to check that it's a directory and acquire a + reference at the same time. + * hurd/fchroot.c: Likewise. + + * hurd/hurdpid.c (init_pids): Add gratuitous self reference to + silence compiler. + + * hurd/hurdpath.c: Include for cttyid opening rpc. + (__hurd_path_lookup_retry): Fixed typo. + + * sysdeps/mach/hurd/i386/__sigret.c: Push state onto the user's + stack, switch to it, pop and return. + + Major rewrite of Hurd signal delivery. + * hurd/hurd/signal.h (struct hurd_sigstate): New member `context'. + * sysdeps/mach/hurd/i386/trampoline.c: Include "thread_state.h" + instead of . + (struct mach_msg_trap_args): New type. + (trampoline): Function removed. + (_hurd_setup_sighandler): Take struct hurd_sigstate * arg instead + of FLAGS and SIGALTSTACK args; take new flag arg RPC_WAIT; use + struct machine_thread_all_state * for STATE arg. New declared + labels `trampoline', `rpc_wait_trampoline' mark asm code at end of + function (after return). Add another struct sigcontext * to + STACKFRAME after the first one, for the arg to __sigreturn. If + SS->context is set, fill registers in SCP from that instead of + STATE, and reset SS->INTR_PORT from it. Use memcpy to copy from + STATE into SCP; the structures are congruent. If RPC_WAIT is set, + set up to use rpc_wait_trampoline and frob args to mach_msg_trap + syscall in progress so that it will retry the receive operation + (but not resend!). + {rpc_wait_trampoline, trampoline}: New trampoline code. + (_hurd_rcv_interrupted_p): New function. + * sysdeps/mach/hurd/mips/trampoline.c: Likewise. + * hurd/hurdsig.c (write_corefile): Take new arg SIGERROR. Use + _hurdsig_getenv instead of getenv. Use dir_mkfile to create an + unlinked node for the core file; then use dir_link to name it, + only if core_dump_task succeeded. + (post_reply): New function. + (abort_thread): New function. + (interrupted_reply_port_location): New function. + (interrupted_reply_port): Function removed (replaced by above). + (abort_all_rpcs): Take struct machine_thread_all_state * for STATE. + (abort_rpcs): Likewise. + Return int, nonzero iff interrupt_operation RPC was done. Take + args for reply port and its port type; call abort_thread instead + of doing thread_abort and thread_get_state. Call + _hurdsig_rcv_interrupted_p instead of _hurd_thread_state_msging_p. + Use __interrupt_operation mig stub instead of manual packing. If + we destroy the msging port, and it is the thread's mig reply port, + clear its reply port slot. Fix inverted SA_RESTART test. + (_hurd_internal_post_signal): Take new arg SIGERROR. + Remove `cont' from ACT enum; SIGCONT processing is independent of + handling. Removed local function `check_pending'; add `reply'. + Use mask macro STOPSIGS instead of alternation to check for stop + signals. Process SIGCONT and do continuation before examining the + handler. Use SS->pending_data instead of SS->sigcodes. When + dying, don't lock _hurd_siglock around __proc_dostop call. When + dying, reply immediately after stopping user threads. When + handling, notice return from abort_rpcs and pass it to + _hurd_setup_sighandler; also pass SS instead of its components. + Set SCP->sc_error from SIGERROR; clear SS->intr_port after saving + it in SCP->sc_intr_port. For pending checks, use macro PENDING + and goto pending if returns true. + (_S_sig_post): Eliminate unnecessary variable WIN; pass SIGERROR + value of zero to _hurd_internal_post_signal. + (_hurdsig_getenv): New function. + * sysdeps/mach/hurd/i386/__sigret.c (sp): New global register + variable. + (__sigreturn): Arg is not const. + After restoring SCP->sc_mask, check for pending signals (newly + unblocked); if any, set SS->context to SCP, clear SS->intr_port, + and send sig_post to the signal thread to deliver the pending + signals. Point SP directly at &SCP->sc_gs and used popa;iret to + restore. (This does not actually work; iret is unhelpful.) + * sysdeps/mach/hurd/mips/__sigret.c (__sigreturn): Arg is not + const. After restoring SCP->sc_mask, check for pending signals + (newly unblocked); if any, set SS->context to SCP, clear + SS->intr_port, and send sig_post to the signal thread to deliver + the pending signals. Don't write $1 value into the user stack. + Instead, write it into the word just past SCP->sc_pc; then point + $1 at SCP->sc_pc and use `op_sigreturn' pseudo-instruction to + restore the PC and $1 from that. + +Fri Aug 19 15:39:54 1994 Roland McGrath + + * configure.in (machine): Grok i586 -> i386/i586. + * sysdeps/i386/pentium: Directory renamed to sysdeps/i386/i586. + + * hurd/hurd.h (_hurd_pids_changed_stamp, _hurd_pids_changed_sync): + New variables. + * hurd/hurdpid.c (_S_proc_newids): Last thing, increment + _hurd_pids_changed_stamp and broadcast on _hurd_pids_changed_sync. + * sysdeps/mach/hurd/__setpgrp.c: After proc_setpgrp succeeds and + PID is ourself, wait on _hurd_pids_changed_sync until + _hurd_pids_changed_stamp increases from the value before the RPC. + * sysdeps/mach/hurd/__setsid.c: After proc_setsid succeeds, wait + on _hurd_pids_changed_sync until _hurd_pids_changed_stamp + increases from the value before the RPC. + + * posix/sys/wait.h [GCC>=2.6] (__WAIT_STATUS): Define this with + typedef as a union with the new (GCC 2.6.1) `transparent_union' + attribute. + + * stdio/printf_fp.c (MPNSIZE): New macro, computed from DBL_MAX_EXP. + (MPN_VAR): Use that for size of bignums. + + * sysdeps/mach/hurd/__kill.c: For pgrp, ignore ESRCH error from + kill_pid of individual pids, unless from all of them. + * hurd/hurdkill.c (_hurd_sig_post): Likewise. + +Fri Aug 19 00:54:50 1994 Roland McGrath + + * configure.in (INSTALL): Quote this shell goop from m4. + + * sysdeps/stub/start.c (errno, __environ): Define these variables. + + * sysdeps/stub/errnos.h (ENOMEM, EACCES): New macros. + * sysdeps/stub/errlist.c (_sys_errlist): Add strings for all + macros defined in stub/errnos.h. + (_sys_nerr): Use value computed from sizeof (_sys_errlist). + +Wed Aug 17 15:32:39 1994 Roland McGrath + + * hurd/hurdmsg.c (_S_io_select_done): Take poly arg for notify + port arg. + + * mach/mach_init.h (vm_page_size): Remove macro defn. + + * hurd/Makefile (distribute): Added STATUS. + + * sysdeps/mach/thread_state.h: Include and + . + + * sysdeps/mach/hurd/__select.c: Pass port-type arg to io_select. + + * sysdeps/mach/hurd/__fork.c: Include "hurdmalloc.h", so we use + the right `free'. + + * sysdeps/mach/hurd/__select.c (SELECT_DONE_MSGID): Correct value + to 23020. + (__select): Don't set PORT until just before sending io_select calls. + Pass proper send-size for io_select_done reply message. Clear the + reply port slot in io_select_done reply message header. + + * sysdeps/mach/hurd/__kill.c: Rename parameter to ARG_SIG, make + SIG a local variable initialized to that (this to work around a + GCC bug). + Initialize PIDS and NPIDS properly for proc_getpgrppids call. + + * signal/signal.h (__sigreturn, sigreturn): Arg is not const. + + * hurd/hurdpath.c (__hurd_path_lookup_retry): For REAUTH or NORMAL + with empty retryname, treat like NONE (which is now obsolete) + after reauthentication. For magic "tty", use new + termctty_open_terminal RPC on cttyid port. + +Tue Aug 16 01:58:21 1994 Roland McGrath + + * sysdeps/mach/hurd/__kill.c (kill_pid): Make non-inline. Treat + null msgport like EPERM return from sig_post. + * hurd/hurdkill.c (_hurd_sig_post): Treat null msgport like EPERM. + + * sysdeps/mach/thread_state.h (machine_get_state, + machine_get_basic_state): Initialize count arg before calling + thread_get_state. + + * hurd/hurdpath.c (__hurd_path_lookup_retry): Initialize ERR to zero. + + * hurd/hurdpath.c (__hurd_path_lookup_retry): Grok magic "tty". + + * hurd/hurd/signal.h (struct hurd_sigstate): Replace `sigcodes' with + `pending_data'. + (_hurd_raise_signal, _hurd_setup_sighandler): Update prototypes. + (_hurd_thread_state_msging_p): Don't declare. + (_hurdsig_rcv_interrupted_p): Declare this instead. + (HURD_EINTR_RPC): Invert sense of restart test. + + * hurd/hurdrlimit.c (_hurd_rlimits): Add braces to initializer. + + * hurd/catch-exc.c: Unlock _hurd_siglock when done with it. Use + __spin_lock_locked on `held' member instead of __mutex_lock_locked. + + * sysdeps/mach/thread_state.h: New file. + * sysdeps/mach/i386/thread_state.h: Don't #include + . Add #include_next at end. + * sysdeps/mach/mips/thread_state.h: Likewise. + + * sysdeps/mach/hurd/i386/sigcontext.h (struct sigcontext): Lay out + corresponding to i386_thread_state and i386_float_state. + * sysdeps/mach/hurd/mips/sigcontext.h (sc_mips_thread_state, + sc_mips_exc_state, sc_mips_float_state): New macros, marking + members that correspond to thread_state.h structs. + +Mon Aug 15 17:21:20 1994 Roland McGrath + + * Rules [cross-compiling=yes] (tests): Depend on the binaries, not + the output files. + + * Makerules: Replace uses of HOST_CC with BUILD_CC and + native-CFLAGS with BUILD_CFLAGS. + + * sysdeps/unix/Makefile (mk-local_lim, make-ioctls): Replace uses + of CC with BUILD_CC and native-CFLAGS with BUILD_CFLAGS. + * sysdeps/unix/sysv/sysv4/solaris2/Makefile: Replace uses of + HOST_CC with BUILD_CC and native-CFLAGS with BUILD_CFLAGS. + * sysdeps/posix/Makefile: Likewise. + + * Makeconfig (+cc_version): Variable and associated code removed. + (HOST_CC): Use BUILD_CC instead; all uses changed. + (cross-compiling): Set to no if not the case. + + * sysdeps/m68k/fpu/__math.h: Replace all uses of __const with + __CONSTVALUE. + + * Makerules (distinfo-vars): Remove $@.new first thing. Write + elided-routines instead of sysdep_routines. After writing + variables, append to sources from $(elided-routines). + * sysdeps/vax/Makefile (elided-routines): New variable (append to + it). + (aux, routines): Don't set these. + (sysdep_routines): Append things here instead. + * sysdeps/generic/Makefile (elided-routines): New variable (append + to it). + (aux): Don't set this. + * sysdeps/generic/Makefile (routines): Don't set this. + (sysdep_routines): Append exp__E and log__L here instead. + + * time/test_time.c (main): Set TBUF.tm_isdst to -1 before calling + mktime. + + * stdlib/stdlib.h (atof, atoi, atol, random, srandom, setstate, + initstate, mblen): Never define as macros. + [__OPTIMZE__ && __GNUC__ >= 2]: Define those functions as extern + inlines. + + * hurd/hurdpath.c (__hurd_path_lookup_retry): For magic "fd/%u", + lose on random chars after number; for / after number, retry + remainder properly. + + * hurd/hurdpath.c (pathtrans_error): New function; filters errors + from dir_pathtrans: EOPNOTSUPP and MIG_BAD_ID become ENOTDIR. + (__hurd_path_lookup, __hurd_path_lookup_retry): Call it. + +Thu Aug 11 11:59:33 1994 Noel Cragg (noel@churchy.gnu.ai.mit.edu) + + * time/mktime.c (_mktime_internal): Add code to normalize value of + TM_ISDST to -1, 0, or 1 so code doesn't loop forever. + +Thu Aug 11 02:26:37 1994 Roland McGrath + + * resolv/Makefile (subdir): Set to resolv, not res. + + * sysdeps/mach/hurd/sysd-stdio.c (fd_fail): Pass ERR to + _hurd_raise_signal. + + * sysdeps/mach/i386/thread_state.h (struct machine_thread_all_state): + Add new member `fpu'. + +Wed Aug 10 23:39:49 1994 Karl Heuer + + * malloc/mcheck.c (mcheck): Remove obsolete extern declaration. + + * malloc/mcheck.c (flood): Add an arg. + (freehook, mallochook, reallochook): Use different flood bytes to + distinguish freed space from uninitialized allocated space. + + * malloc/mtrace.c (mtrace): Guard against being called twice. + (muntrace): New function, to turn off tracing. + * malloc/malloc.h: Declare it. + +Wed Aug 10 02:47:24 1994 Roland McGrath + + * sysdeps/mach/hurd/mips/sigcontext.h (struct sigcontext): Renamed + member `sc_err' to `sc_error'. + + * hurd/hurd-raise.c: Take new arg SIGERROR. Set + SS->pending_data[SIGNO] from SIGCODE and SIGERROR instead of + setting SS->sigcodes[SIGNO]. + + * Makeconfig (+includes): Use text manipulation to avoid + conditional for $(..). Append $(last-includes). + * sysdeps/mach/hurd/Makefile (last-includes): Append + -I.../libthreads to this. + (includes): Not to this. + + * hurd/hurd/fd.h (_hurd_fd_error): Pass ERR to _hurd_raise_signal. + + * stdlib/stdlib.h [__OPTIMIZE__] (cfree, rand, srand, random, + srandom, initstate, setstate): Macros removed. + + * malloc/mcheck.c (reallochook): Fixed typo. + (mabort) [! __GNU_LIBRARY__]: Use fprintf and abort instead of + __libc_fatal. + + * hurd/Makefile (sig): Remove msging-p; that function will go in + trampoline.c. + * sysdeps/stub/msging-p.c: File removed. + * sysdeps/mach/hurd/mips/msging-p.c: File removed. + * sysdeps/mach/hurd/i386/msging-p.c: File removed. + +Tue Aug 9 19:20:29 1994 Roland McGrath + + * hurd/catch-exc.c: Get error code from _hurd_exception2signal and + pass it to _hurd_internal_post_signal. Search for SS manually + rather than using _hurd_thread_sigstate, to avoid locks. + + * sysdeps/mach/hurd/mips/msging-p.c: Fetch port argument from + register $8 (t0) instead of stack. Change type of STATE arg to + `struct machine_thread_all_state *'. + + * inet/inet_netof.c: Incorporated from BSD 4.4-Lite. + * inet/inet_net.c: Incorporated from BSD 4.4-Lite. + +Tue Aug 9 18:28:40 1994 Karl Heuer + + * malloc/mtrace.c (tr_mallochook, tr_reallochook): Don't assume + %lx format matches size_t arg. + * malloc/mtrace.c: Enable file- and line-number tracing. + * malloc/mtrace.awk: Postprocess that trace information. + + * malloc/mcheck.c (flood): New function. + (freehook, mallochook, reallochook): Initialize new space and + freed space to non-zero garbage, to help find code that makes + unwarranted assumptions. + +Mon Aug 8 01:20:56 1994 Roland McGrath + + * sysdeps/mach/hurd/mips/exc2signal.c (_hurd_exception2signal): Take + new arg `int *error'; set it. + * sysdeps/mach/hurd/i386/exc2signal.c: Likewise. + * sysdeps/stub/exc2signal.c: Likewise. + * hurd/hurd/signal.h (_hurd_exception2signal): Take new arg + `int *error'. + (_hurd_internal_post_signal): Take new arg `int error'. + + * res: Directory renamed to resolv. + * sysdeps/unix/inet/Subdirs: Change res to resolv. + + * Version 1.08.6. + + * sysdeps/sparc/divrem.m4 (DEVELOP_QUOTIENT_BITS): Use ** instead of + ^ for exponentiation. Pinard says it is more portable. + + * sysdeps/mach/hurd/mips/sigcontext.h (struct sigcontext): Added + member `sc_err'. + * sysdeps/mach/hurd/i386/sigcontext.h (struct sigcontext): Move + sc_err to front machine-independent section; change its comment. + + * sysdeps/stub/thread_state.h (struct machine_thread_all_state): New + type. + * sysdeps/mach/i386/thread_state.h: Likewise. + * sysdeps/mach/mips/thread_state.h: Likewise. + + * sysdeps/mach/i386/Implies: File removed; it was superfluous. + + * sysdeps/sparc/divrem.m4 (Lgot_result): Add more quotes in ifelse. + + * configure.in (fpu_dirs): Fixed typo. + +Sun Aug 7 01:13:04 1994 Roland McGrath + + * inet/inet_lnaof.c: Incorporated from BSD 4.4-Lite. + * inet/inet_mkadr.c: Incorporated from BSD 4.4-Lite. + * inet/inet_addr.c: Incorporated from BSD 4.4-Lite. + * res/Makefile (headers): Use only arpa/nameser.h, not arpa/*.h. + * res/arpa/inet.h: Moved to inet/arpa/inet.h. + * inet/arpa/inet.h: Incorporated from BSD 4.4-Lite. + + * misc/init-misc.c: New file. + * misc/Makefile (aux): Added init-misc. + + * Makeconfig (localtime-file): Use $(sysconfdir) instead of + $(etcdir). + + * Makerules (install-bin-nosubdir): Use $(install-bin) instead of + $(install). + (install-sbin-nosubdir): New target. + (install-no-libc.a-nosubdir): Depend on that. + + * configure.in ($nfp check): Iterate through $mach and use all + fpu/ dirs that exist. + +Wed Aug 3 02:46:03 1994 Roland McGrath + + * sysdeps/mach/hurd/mips/sigcontext.h: Rearranged structure so + machine-dependent portion is laid out like `struct mips_thread_state; + struct mips_exc_state; struct mips_float_state;'. + + * Version 1.08.5. + + * sysdeps/mach/hurd/mips/__sigret.c: Compare *reply_port to + MACH_PORT_NULL, not implicit zero. + (restore_gpr): Use N-1 as subscript into sc_gpr (sc_gpr[0] => $1). + Before general regs, restore from sc_mdlo and sc_mdhi. Don't + treat sp, fp specially; use restore_gpr for them too. For final + return, store user $1 value beyond top of user stack ahead of + time; then use $1 to hold the user PC, and restore it from the + stack in the delay slot. + +Tue Aug 2 21:03:51 1994 Roland McGrath + + * sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler): + Copy TS to SCP all at once. + * sysdeps/mach/hurd/mips/sigcontext.h (struct sigcontext): sc_gpr + has 31 elts; sc_gpr, sc_pc, sc_mdlo, sc_mdhi are arranged in that + order to mimic struct mips_thread_state. + + * Make-dist (all-headers): Instead of removing rpcsvc/%, use + $(wildcard) to remove all headers that don't exist at top level, + but preserve top-level $(headers). + + * Make-dist (sysdep_dirs): Avoid directories called RCS. + (%/configure): Pass -f to mv. + + * sysdeps/mips/setjmp.S [__sgi__]: Use `fp' instead of `$fp'. + +Mon Aug 1 20:12:23 1994 Roland McGrath + + * sysdeps/mach/hurd/mips/sigcontext.h (struct sigcontext): Add + members sc_mdlo, sc_mdhi. + * sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler): + Save mdlo and mdhi. + +Sun Jul 31 14:21:16 1994 Roland McGrath + + * time/mktime.c: Remove errant comment end sequence. + + * termios/sys/ttydefaults.h: Incorporated from BSD 4.4-Lite. + * sysdeps/vax/DEFS.h: Incorporated from BSD 4.4-Lite. + * sysdeps/unix/bsd/sys/reboot.h: Incorporated from BSD 4.4-Lite. + * sysdeps/unix/bsd/bsd4.4/errnos.h: Updated from 4.4-Lite sys/errno.h. + [__USE_BSD] (EAUTH, ENEEDAUTH, ELAST): New macros. + * sysdeps/ieee754/support.c: Incorporated from BSD 4.4-Lite. + * sysdeps/ieee754/cbrt.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/trig.h: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/tanh.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/tan.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/sinh.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/sincos.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/pow.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/mathimpl.h: Incorporated from BSD 4.4-Lite. + Add back __izing #define's, except for exp__E and log__L, which + have been renamed with __s in 4.4-Lite. + * sysdeps/generic/log__L.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/log1p.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/log.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/fmod.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/exp__E.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/exp.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/cosh.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/atanh.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/atan2.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/asinh.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/asincos.c: Incorporated from BSD 4.4-Lite. + * misc/getusersh.c: Incorporated from BSD 4.4-Lite. + (initshells): Reapply fix of 16 Nov 1992. + * sysdeps/generic/acosh.c: Incorporated from BSD 4.4-Lite. + * sysdeps/generic/__expm1.c: Incorporated from BSD 4.4-Lite. + * misc/ttyslot.c: Incorporated from BSD 4.4-Lite. + * misc/ttyent.h: Incorporated from BSD 4.4-Lite. + * misc/syslog.c: Incorporated from BSD 4.4-Lite. + * misc/paths.h: Incorporated from BSD 4.4-Lite. + * misc/getttyent.c: Incorporated from BSD 4.4-Lite. + * misc/sys/syslog.h: Incorporated from BSD 4.4-Lite. + Don't include ; define _BSD_VA_LIST_ to __gnuc_va_list. + * inet/rexec.c: Incorporated from BSD 4.4-Lite. + * inet/rcmd.c: Incorporated from BSD 4.4-Lite. + (rcmd): Reapply select max fd fix of 3 Jun 1994. + * inet/pathnames.h: File removed. + * inet/inet_ntoa.c: Incorporated from BSD 4.4-Lite. + * inet/getsrvbypt.c: Incorporated from BSD 4.4-Lite. + * inet/getsrvbynm.c: Incorporated from BSD 4.4-Lite. + * inet/getservent.c: Incorporated from BSD 4.4-Lite. + * inet/getprtname.c: Incorporated from BSD 4.4-Lite. + * inet/getprtent.c: Incorporated from BSD 4.4-Lite. + * inet/getproto.c: Incorporated from BSD 4.4-Lite. + * inet/protocols/timed.h: Incorporated from BSD 4.4-Lite. + * inet/protocols/talkd.h: Incorporated from BSD 4.4-Lite. + * inet/protocols/rwhod.h: Incorporated from BSD 4.4-Lite. + * inet/protocols/routed.h: Incorporated from BSD 4.4-Lite. + * inet/arpa/tftp.h: Incorporated from BSD 4.4-Lite. + * inet/arpa/telnet.h: Incorporated from BSD 4.4-Lite. + * inet/arpa/ftp.h: Incorporated from BSD 4.4-Lite. + +Fri Jul 29 01:50:37 1994 Roland McGrath + + * Version 1.08.4. + + * res/Makefile (routines): Add missing backslash. + + * sysdeps/mach/hurd/mips/__sigret.c: Rename variable AT (which is + the register's name) to SCPREG. Fix some SCP references in + register loads to use SCPREG instead. Load SCPREG->sc_pc into $24 + and jump to it, restoring $at in the delay slot. This still + leaves $24 clobbered. + + * sysdeps/mach/hurd/mips/sigcontext.h: Use `unsigned int' + consistently for port names. + + * sysdeps/mach/hurd/mips/trampoline.c: Don't set up args on the + stack; pass them in registers. + + * Makefile (%/configure, sysd-dirs, munch-init.c): Pass -f to mv. + + * misc/sys/cdefs.h (__NORETURN, __CONSTVALUE): Use the + __attribute__ defn for GCC>=2.7, not >=2.6. Use the keyword defn + only for GCC<2.5. Use __volatile__ and __const__ instead of + noreturn and const for namespace safety. + + * sysdeps/mach/hurd/__readlink.c: If BUF is null, return the size + of buffer required. + +Thu Jul 28 17:17:11 1994 Roland McGrath + + * res/netdb.h: Declare h_errno. + + * res: New directory, for all code incoporated from BIND. + * inet/arpa/inet.h, inet/arpa/resolv.h: Moved to res/arpa. + * inet/sys/bitypes.h: Moved to res/sys. + * inet/gethstnamad.c: Renamed to res/gethnamaddr.c. + * inet/getnetbyad.c: Renamed to res/getnetbyaddr.c. + * inet/getnetbynm.c: Renamed to res/getnetbyname.c. + * inet/res_mkqry.c: Renamed to res/res_mkquery.c. + * inet/Makefile (headers): Removed netdb.h, resolv.h, and + sys/bitypes.h. + (routines): Removed res_comp res_debug res_init res_mkqry res_query + res_send gethstnmad sethostent. + (aux, distribute): Variables removed. + * res/getnetnamadr.c, res/nsap_addr.c: New files. + * All .c and .h in res/ updated from BIND-4.9.3-BETA9. + * res/Makefile: New file. + * sysdeps/unix/inet/Subdirs: Added res. + + * Makerules: Replace all uses of `.dep' suffix with `.d' suffix. + (+make-deps): Replace `.dtm' suffix with `.T' suffix. + +Wed Jul 27 06:13:30 1994 Noel Cragg (noel@churchy.gnu.ai.mit.edu) + + * time/mktime.c: Add code to support tm_isdst flag in struct tm. + Fixed bug with handling of DST sections. + +Mon Jul 25 17:17:28 1994 Roland McGrath + + * sysdeps/sparc/divrem.m4 (Lgot_result) [S=true]: Only test SIGN + and negate for [OP=div]. + + * socket/sys/socket.h (__SOCKADDR_ARG): New macro; for GCC 2.6 and + later, a funky union similar to __WAIT_STATUS in . + (bind, getsockname, connect, getpeername, sendto, recvfrom, + accept): Use __SOCKADDR_ARG in place of `struct sockaddr *' in + declarations. + + * posix/glob/configure.bat: New file. + * posix/Makefile (glob.tar): Add glob/configure.bat. + + * sysdeps/unix/opendir.c: Fail with ENOENT when passed "". + Check STATBUF and fail with ENOTDIR if it's not a directory. + +Mon Jul 25 15:44:18 1994 Noel Cragg (noel@churchy.gnu.ai.mit.edu) + + * time/mktime.c: Fix range-checking bug in NORMALIZE macro. + +Fri Jul 22 02:42:44 1994 Roland McGrath + + * sysdeps/unix/readdir.c: Search for NUL character to limit + d_namlen. Some systems return very bogus values. + + * sysdeps/unix/sysv/sysv4/i386/sysdep.h (PSEUDO): Remove ret at end. + + * mach/Makefile (mach-shortcuts): Filter out device_writev_request. + + * limits.h (_LIBC_LIMITS_H_): Don't define if already defined. + [__GNUC__ < 2]: Only protect this section from multiple inclusion. + + * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): + Declare SIGSP volatile. + + * hurd/hurdinit.c (_hurd_setproc): Fixed arg in + _hurd_pgrp_changed_hook decl. + + * hurd/hurd/signal.h (_hurd_self_sigstate_unlocked): New function. + (HURD_EINTR_RPC): Use it instead of _hurd_self_sigstate followed by + __mutex_unlock; this thread might already hold the lock. + +Wed Jul 20 18:53:54 1994 Michael I Bushnell + + * hurd/fd-read.c (_hurd_fd_read): Test for EBACKGROUND in + do loop was reversed. + + * hurd/hurdpath.c (__hurd_path_lookup): Skip over initial slashes + before calling __dir_pathtrans. + +Tue Jul 19 15:28:39 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mach/Makefile (user-interfaces): Add mach/mach4. + (mach-shortcuts): Match all syscall_% again; the missing ones are in + mach4.defs. + + * mach/Machrules (%.ir): Match SimpleRoutine as well as Routine + comments. + + * sysdeps/mach/hurd/Makefile ($(hurd)/errlist.c): Use -f flag to mv. + +Sat Jul 16 00:42:30 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules [install]: Rewrite this rule to use install-bin. + [install-sbin]: New rule parallel to that one, installs in $(sbindir). + + * time/Makefile (install-sbin): Set this instead of install. + * sunrpc/Makefile (install-others): Use $(sysconfdir)/rpc instead + of $(etcdir)/rpc. + (install-bin): Set this instead of install; set it to just rpocgen. + (install-sbin): Put rpcinfo and portmap here instead. + ($(sysconfdir)/rpc): Rule renamed from $(etcdir)/rpc. + (defines): Rename it in _PATH_RPC defn here too. + + * posix/Makefile (install-bin): Set this instead of install. + + * Makeconfig (datadir): Default to $(prefix)/share, not $(prefix)/lib. + (sbindir): New variable. + (sysconfdir): Variable renamed from etcdir. + + * sysdeps/unix/bsd/sun/signum.h: New file; no SIGINFO, SIGLOST is 29. + + * sysdeps/unix/sysv/sco3.2.4/uname.S: New file from Scott Bartram. + + * sysdeps/unix/sysv/sco3.2.4/__getgrps.c: Include alloca.h. + + * configure.in (INSTALL): If it is $srcdir/install.sh after + AC_PROG_INSTALL, reset it to '$(..)./install.sh'. + + * sysdeps/mach/hurd/__ioctl.c (io2mach_type): Move macro defn before + first use. + (__ioctl): Fix swapped args to __sigismember; remove unused variable. + + * sysdeps/mach/hurd/send.c: Fix portsPoly arg to __socket_send. + * sysdeps/mach/hurd/sendto.c: Likewise. + + * sysdeps/mach/hurd/recv.c: Pass &BUFP, not BUFP. + * sysdeps/mach/hurd/recvfrom.c: Likewise. + + * sysdeps/mach/hurd/connect.c: Include . + + * sysdeps/mips/dec/bytesex.h: New file. + * sysdeps/mips/p40/bytesex.h: New file. + +Fri Jul 15 23:12:06 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/sys/types.h (u_quad, quad): Renamed to &_t. + * posix/gnu/types.h [__GNUC__] (__u_quad_t, __quad_t, __qaddr_t): + New typedefs, using long long int and derivatives. + [! __GNUC__] (__u_quad, __quad): Renamed to &_t. + (__fsid_t): Make this always be __u_quad_t. + + * time/sys/time.h (struct timespec): New type. + (TIMEVAL_TO_TIMEPSEC, TIMESPEC_TO_TIMEVAL): New macros. + +Thu Jul 14 15:43:39 1994 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/sysinfo.S: New file. + * sysdeps/unix/sysv/sysv4/Dist: Add sysinfo.S. + * sysdeps/unix/sysv/sysv4/Makefile: Add sysinfo to sysdep_routines + if we're inside misc. + * sysdeps/unix/sysv/sysv4/sethostnam.c: New file. + * sysdeps/unix/sysv/sysv4/__gethstnm.c: New file. + + * sysdeps/unix/sysv/sysv4/solaris2/fsync.S: New file. + +Tue Jul 12 00:57:08 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mach/Makefile (mach-shortcuts): Only match known Mach + subsystems: vm, task, mach_port, and thread. + +Mon Jul 11 20:18:29 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/intr-rpc.defs, hurd/intr-rpc.awk: New files. + * hurd/Makefile (user-MIGFLAGS): Add -imacros intr-rpc.defs. + (transform-user-stub): New canned sequence. + (transform-user-stub-output): New variable. + Make the .ustamp files depend on intr-rpc.awk. + + * mach/Machrules (%.ir): Cull the RPC names from the preceding + comment rather than the definition, so we don't see any userprefix. + (transform-user-stub-output): New variable. + (%.ustamp: %.defs): Invoke $(transform-user-stub) inside for loop. + Use $(transform-user-stub-output) in place of `tmp' in arg to + move-if-change. + + * mach/Makefile [! mach-shortcuts] (user-interfaces): Also filter + out device/device_request. + +Mon Jul 11 17:50:14 1994 Brendan Kehoe (brendan@mole.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sysv4/Makefile: Put the sys-sig.S stuff in + here, rather than in .../sysv4/solaris2/sparc/Makefile. + * sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile: Removed the + sys-sig.S part. + +Sun Jul 10 19:04:24 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/bind.c: Call __hurd_invoke_translator. + + * hurd/hurd.h (__hurd_invoke_translator, hurd_invoke_translator): + Declare them. + * hurd/Makefile (routines): Add invoke-trans. + * hurd/invoke-trans.c (__hurd_invoke_translator): New file. + * hurd/hurdsyms.c (hurd_invoke_translator): New alias. + + * hurd/hurdpath.c (__hurd_path_lookup_retry): New function. + * hurd/hurdsyms.c (hurd_path_lookup_retry: New alias. + * hurd/hurd.h (__hurd_path_lookup_retry, hurd_path_lookup_retry): + Declare them. + + * hurd/hurd/fd.h (_hurd_fd_error_signal): Return SIGLOST for + MIG_SERVER_DIED. + + * time/strftime.c: Make %j value 1-origin instead of 0-origin. + +Sat Jul 9 02:31:23 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * gnu-stabs.h (__SYMBOL_PREFIX): New macro, based on NO_UNDERSCORES. + Use it in all macros instead of explicit leading underscores. + Removed all [! __STDC__] definitions. + + * sysdeps/mach/hurd/mips/trampoline.c: New file. + * sysdeps/mach/hurd/mips/sigcontext.h: New file. + * sysdeps/mach/hurd/mips/longjmp-ts.c: New file. + * sysdeps/mach/hurd/mips/msging-p.c: New file. + * sysdeps/mach/hurd/mips/longjmp-ctx.c: New file. + * sysdeps/mach/hurd/mips/init-fault.c: New file. + * hurd/mach/hurd/mips/__sigret.c: New file. + * sysdeps/mach/hurd/mips/exc2signal.c: New file. + * sysdeps/mach/mips/thread_state.h: New file. + * sysdeps/mach/mips/machine-sp.h: New file. + * sysdeps/mach/mips/machine-lock.h: New file. + * sysdeps/mach/mips/sysdep.h: New file. + + * mach/Makefile (mach-syscalls.mk): Snarf 3rd arg from kernel_trap. + ($(mach-syscalls:%=__%.S): Emit kernel_trap instead of SYSCALL_TRAP. + * mach/syscalls.awk: Print nargs-$1 = $3 for each line. + * sysdeps/mach/sysdep.h: Include . + * sysdeps/mach/i386/sysdep.h (ENTRY, SYSCALL_TRAP): Macros removed. + + * sysdeps/mach/i386/machine-lock.h: Use __volatile in place of + volatile to work with -traditional. + +Fri Jul 8 21:06:43 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurdsig.c (_hurd_internal_post_signal): For stop signals, + clear pending SIGCONT no matter what action we choose. + Add new value `cont' to ACT enum; use it for default SIGCONT action. + (_hurd_internal_post_signal: sigwakeup): New local inline. + +Fri Jul 8 20:26:49 1994 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile (sysdep-CFLAGS): Set + this to include the -mhard-quad-float option. + + * sysdeps/unix/sysv/sysv4/solaris2/sparc/sys-sig.S: New file. + * sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile: New file. + * sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist: New file. + +Fri Jul 8 13:54:54 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurdpath.c (__hurd_path_lookup): Don't treat leading / + specially for FS_RETRY_NORMAL. Handle FS_RETRY_MAGICAL; leading / + here means use crdir. In that case, deallocate *RESULT if nonnull. + + * sysdeps/unix/sysv/sysv4/i386/sysdep.h: Don't define _ERRNO_H if + already defined. + + * posix/gnu/types.h (__ino_t): Make this unsigned int instead of + unsigned long int (matters for Alpha). + + * Makeconfig (+gccopt): Variable removed. + (+cflags): Don't use it. + (CPPFLAGS): Append $(sysdep-CPPFLAGS). + (CFLAGS): Append $(sysdep-CFLAGS). + + * sysdeps/mach/hurd/__ioctl.c: In MSGID calculation, skip blocks + of 100 for request commands >= 100, to allow for the reply msgids. + +Thu Jul 7 19:07:00 1994 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/bsd/osf1/dirstream.h (DIR): Make __allocation + member be int, not size_t (which is a long). + +Thu Jul 7 15:21:15 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/__fopenport.c (readio, writeio, seekio, closeio): New + functions. + (funcsio): New const variable. + (__fopenport): Make the new stream use that for its io functions, and + the default room functions, and set its seen flag. + +Tue Jul 5 11:32:38 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurd/signal.h (struct hurd_sigstate): Removed `intr_restart'. + (HURD_EINTR_RPC): Uncommented. Declare label + `__do_call' so it has block instead of function scope. Don't use + SS->intr_restart; instead SS->intr_port being reset to + MACH_PORT_NULL tells us to restart the call. + + * sysdeps/mach/hurd/__ioctl.c: Enable use of HURD_EINTR_RPC. + Do ctty magic and check for EBACKGROUND to generate SIGTTOU. + + * mach/devstream.c (dealloc_ref): New function. + (mach_open_devstream): Add a user reference to DEV, and set + STREAM's close fn to dealloc_ref, which will release the reference. + + * hurd/fd-read.c (_hurd_fd_read): Enabled and rewrote SIGTTIN code. + * hurd/fd-write.c (_hurd_fd_write): Enabled and rewrote SIGTTOU code. + + * hurd/hurdsyms.c: Add an alias hurd_sig_post -> _hurd_sig_post. + * hurd/hurdkill.c (_hurd_sig_post): Renamed back from hurd_sig_post. + * hurd/hurd.h: Declare _hurd_sig_post. + + * hurd/hurdsig.c (_S_sig_post): Add SIGTTIN and SIGTTOU cases, + handled like SIGINT et al. + + * mach/devstream.c: Turn back on NL->CRNL translation. + + * stdio/xbug.c (main): Return instead of running off the end. + +Mon Jul 4 16:57:13 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.08.3. + +Sat Jul 2 00:15:37 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__ioctl.c: Account for three type fields in + message buffer size. + + * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): + Catch faults accessing user stack and return NULL. + * hurd/hurdsig.c (_hurd_internal_post_signal): When it does, die + with SIGILL and dump core. + + * hurd/hurdsig.c (_hurd_internal_post_signal): Use + _hurd_msgport_thread instead of __mach_thread_self () to avoid the + system call. (Signals will now lose if _hurd_msgport_thread gets + clobbered.) + (abort_rpcs): Always do thread_abort and thread_get_state. + + * misc/getpass.c: Fix typo resulting in newline not being removed. + + * termios/sys/ttydefaults.h [TTYDEFCHARS] (ttydefchars): Cast + _POSIX_VDISABLE to cc_t to avoid gcc warning. + +Fri Jul 1 14:07:40 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/Makefile (user-interfaces): Add hurd/ifsock. + + * socket/sys/socket.h (AF_LOCAL): New macro. + + * sysdeps/mach/hurd/__kill.c: Fix SIGKILL loop condition. + +Fri Jul 1 13:36:27 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * hurd/hurdkill.c (hurd_sig_post): New var PIDSBUF; initialize + PIDS and NPIDS correctly; only free PIDS if the MiG stub + changed it. + +Thu Jun 30 18:47:48 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * hurd/hurdsock.c (_hurd_socket_server): Zero up to and *including* + new[DOMAIN]. + +Thu Jun 30 08:12:28 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurdsig.c (abort_all_rpcs): Just iterate over _hurd_sigstates. + + * hurd/dtable.c (fork_child_dtable): Skip empty descriptor slots. + + * sysdeps/mach/hurd/__ioctl.c: Fix MSG.data size calculation. + +Wed Jun 29 19:06:54 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/bind.c: For AF_LOCAL, create a new node in the + filesystem, put the ifsock translator on it, and fetch the + address port. + * sysdeps/mach/hurd/connect.c: For AF_LOCAL, look up the socket + file and fetch the address port using the ifsock protocol. + +Tue Jun 28 16:03:15 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/Makefile (routines): Add ports-get, ports-set, and hurdmsg. + (aux): Remove msgstub. + * hurd/hurdports.c (get): Just call _hurd_ports_get. + (set): Just call _hurd_ports_set. + (getcttyid, setcttyid): New functions. + * hurd/ports-get.c (_hurd_ports_get): New file, new function. + * hurd/ports-set.c (_hurd_ports_set): New file, new function. + * hurd/hurd.h: Declare _hurd_ports_get and _hurd_ports_set. + Declare getcttyid and setcttyid. + * hurd/__setauth.c (__setauth): Just call _hurd_setauth. + (_hurd_setauth): New function, code moved from __setauth. + * hurd/hurdinit.c (_hurd_setproc): New function. + * hurd/hurdioctl.c (_hurd_setcttyid): New function. + + * locale/C-ctype_ct.c (__ctype_tolower_C, __ctype_toupper_C): Use + integer constants instead of character constants for octal values + so they will not be sign extended. + + * sysdeps/mach/hurd/__setitmr.c (fork_itimer): New function, on + _hurd_fork_child_hook. + + * sysdeps/stub/sysd-stdio.c (__stdio_reopen): Fix typo in arg type. + * sysdeps/stub/__ioctl.c: Fix type of REQUEST arg. + * sysdeps/stub/syscall.c: Include ansidecl.h. + * sysdeps/stub/_exit.c: Add __NORETURN to defn. + + * sysdeps/unix/sysv/sysv4/sigset.h (_EXTERN_INLINE): Define to + `extern __inline', not empty. + + * sysdeps/mach/hurd/ttyname.c: Don't bother searching /dev. + +Sat Jun 25 15:41:29 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__fork.c: Moved proc_task2pid call to just + before proc_child. It is a waste to do it earlier. + +Sat Jun 25 13:17:39 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__fork.c: Move proc_task2pid call to after + _hurd_ports are unlocked. Call proc_child nearly last thing. + Ignore errors from thread_resume. + +Fri Jun 24 20:21:11 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/getcwd.c: Remove empty `#define'. + +Fri Jun 24 17:57:36 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__fork.c: Call proc_task2pid immediately after + task_create. Add comment explaining why thread_resume must be the + last thing we do to the child. + +Fri Jun 24 01:41:41 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurdinit.c (_hurd_proc_init): Call __proc_set_arg_locations + in place of __proc_setprocargs (it was renamed). + + * hurd/hurd.h: Rename _hurd_sig_post to hurd_sig_post. + * hurd/hurdkill.c: Likewise. + + * hurd/port2fd.c (_hurd_port2fd): Call __term_open_ctty instead of + __term_become_ctty, and don't pass the message port. + * hurd/hurdioctl.c (rectty_dtable): Likewise. + * hurd/dtable.c (fork_child_dtable, ctty_new_pgrp): Likewise. + + * sysdeps/mach/hurd/__fork.c: Use __proc_{get,set}_arg_locations + to propagate argv and envp locations to the child. + + * stdio/freopen.c (freopen): If STREAM->__seen is clear, pass + __stdio_close to __stdio_reopen. + + * misc/Makefile (install-lib): Add libg.a. + ($(objpfx)libg.a): New rule; use make-dummy-lib. + (lib): Depend on $(objpfx)libg.a + +Thu Jun 23 01:14:36 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * termios/termios.h (CCEQ): New macro. + + * sysdeps/unix/sysv/irix4/__getgrps.c: Add missing __ to fn name. + + Don't compile in absolute file names for localtime and posixrules + files if they were specified relative to $(zonedir). + * time/Makefile (installed-localtime-file, + installed-posixrules-file): Set these instead of + {localtime,posixrules}-file to the absolute file names. + ($(localtime-file), $(posixrules-file)): Change targets to + $(installed-localtime-file) and $(installed-posixrules-file). + +Wed Jun 22 15:52:26 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/Makefile (sig): Add hurdkill. + +Sat Jun 18 12:57:54 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdio/_itoa.h (_itoa): Change type of VALUE to unsigned long long. + * stdio/_itoa.c (_itoa): Likewise. + +Thu Jun 16 01:10:41 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/dirstream.h (DIR): Replace `__filepos' member + with `__entry_ptr' and `__entry_data'. Remove `__block_size' member. + Replace `__offset' member with `__ptr', a char *; no need to include + . + * sysdeps/mach/hurd/readdir.c: Use those, new dir_readdir protocol. + * sysdeps/mach/hurd/opendir.c: Initialize new members. + Don't do io_stat to set __blocksize. + * sysdeps/mach/hurd/telldir.c: Rewritten; return DIRP->__entry_ptr. + * sysdeps/mach/hurd/seekdir.c: Rewritten; just set DIRP->__entry_ptr + from arg, and zero DIRP->__size so a new block will be read. + + * sysdeps/mach/hurd/getcwd.c: Use new dir_readdir protocol. + + * hurd/msgstub.c: Add stubs for dir_changed, file_changed. + + * hurd/hurdsock.c (_hurd_socket_server): Removed unused label. + + * sysdeps/mach/hurd/__getdents.c: Use new dir_readdir protocol. + + * sysdeps/mach/hurd/__access.c: Open the file with 0 flags and + then use file_check_access to discover what we are allowed. + +Tue Jun 14 14:10:03 1994 Brendan Kehoe (brendan@zen.org) + + * sysdeps/mips/setjmp.S: Refer to `$fp', not `fp'. + +Tue Jun 14 00:50:54 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__pipe.c: Set FDS[1], not FDS[2]. + +Mon Jun 13 06:48:48 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sparc/sigtramp.c (trampoline): Use a + comment instead of a pointless insn to reference %0 in final asm. + + * hurd/hurdsock.c (_hurd_socket_server): If realloc fails, don't + fail; just don't cache the port. + Look up the server node only if it is not in the cache. + Translate errno only if path_lookup fails. + (init): New function, on _hurd_preinit_hook. + + * sysdeps/mach/hurd/__symlink.c: Complement _hurd_umask before ANDing. + +Sat Jun 11 12:52:28 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__fork.c: Can't insert dead name rights into + child. + +Sat Jun 11 05:19:47 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/i386/longjmp-ts.c: Set TS->uesp instead of + TS->esp. Set TS->eip. + + * gnu-stabs.h (bss_set_element): New macro. + * hurd/dtable.c: Use bss_set_element instead of data_set_element + to put _hurd_dtable_lock in the _hurd_fork_locks set. + +Fri Jun 10 02:04:51 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__fork.c: Don't apply MACH_PORT_TYPE to result + from __mach_port_names. Unlock SS->lock before return. + Check for KERN_NAME_EXISTS from mach_port_allocate_name when + creating a receive right and possibly ignore it. + + * sysdeps/unix/sysv/sco3.2.4/Dist: Add sco_getgrp.S. + + * crypt/speeds.c: Include signal.h and stdio.h first thing. + [! SIGVTALRM]: Define NO_ITIMER. + + * sysdeps/unix/sysv/isc3/direct.h: New file. + + * hurd/hurdinline.c: Include lock-intern.h before #define + _EXTERN_INLINE. + + * sysdeps/mach/hurd/__fork.c (_hurd_fork_locks): Don't be const. + (__fork): Set SS from _hurd_self_sigstate so it is never null. + New local flag PORTS_LOCKED records when we have spin_locked all + the _hurd_ports cells; unlock them if necessary on error. + + * hurd/hurdsig.c (_hurd_siglock): Don't initialize it. + (_hurdsig_init): Initialize _hurd_siglock at runtime. + +Wed Jun 8 12:22:27 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * hurd/hurdid.c (_hurd_check_ids): Zero P->nuids and P->ngids after + deallocating P->uids and P->ngids. + + * hurd/hurdioctl.c (_hurd_ioctl_handler_lists): Make defn initialized. + + * sysdeps/mach/hurd/__ioctl.c: Only try to unpack if IOC_OUT is set. + + * hurd/Makefile (routines): Replace $(inlines) with hurdinline. + (inlines): Variable and rule removed. + (generate-inlines): Variable removed. + * hurd/hurdinline.c: New file. + +Tue Jun 7 01:58:20 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makerules: Add -f to all mv commands missing it. + + * hurd/Makefile (generate-inline): New canned sequence. + (inline-%.c): Use it. + + * time/asia, time/europe, time/northamerica: New versions from ADO. + +Mon Jun 6 21:36:04 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * hurd/hurdid.c (init_id): New function. + + * Makerules (+make-deps): Put first s cmd before $(sed-remove-objpfx). + (sed-remove-objpfx): Replace occurrences at beginning of line too. + +Sun Jun 5 14:34:12 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Version 1.08.1. + + * sysdeps/mach/hurd/ioctls.h (_IOR, _IOW): Swap IOC_IN and IOC_OUT. + + * sysdeps/mach/hurd/__ioctl.c: Only pack input for ioctls that + take input. Compute expected reply size for ioctls that take + output and check it properly. + +Sat Jun 4 00:35:42 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/ioctls.h (union __ioctl): Type removed. + (enum __ioctl_datum): Name this enum. + (_IOC_INOUT, _IOC_GROUP, _IOC_COMMAND, _IOC_TYPE): New macros. + (_IOT_TYPE[012], _IOT_COUNT[012]): New macros. + * sysdeps/mach/hurd/__ioctl.c: Use those macros instead of the union. + + * sysdeps/mach/hurd/__fork.c: Major rewrite. Copy all ports + present in the task, not just library-maintained ones. Handle + sigstate and signal thread setup explicitly here. + * hurd/hurdsig.c (hurdsig_fork, hurdsig_fork_child): Functions + removed. + + * hurd/hurdpid.c (init_pids): Don't put this on _hurd_fork_child_hook. + + * sysdeps/mach/hurd/__isatty.c: New file. + + * hurd/hurdsock.c (_hurd_socket_server): Pass NP to __path_lookup, + not NAME (most of which is uninitialized). + + * hurd/hurdsig.c (_hurdsig_init): Don't check for _hurd_msgport + being non-null; always initialize it. + +Fri Jun 3 21:57:14 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * hurd/hurdrlimit.c (init_rlimit): Restore __mutex_init call. + (_hurd_rlimit_lock): Set initializer to random value; run-time + initialization is always required. + + * inet/rcmd.c (rcmd): Compute max fd + 1 for select instead of + hardcoding 32. + +Wed Jun 1 10:52:41 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * hurd/hurdrlimit.c (_hurd_rlimits, _hurd_rlimit_lock): Provide + initializers so that the file is included in the link properly. + (init_rlimit): Omit call to __mutex_init. + +Tue May 31 18:15:33 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * hurd/hurdmalloc.c (more_memory): Do spin_lock_init on H->lock. + (malloc_init): New function; put it on _hurd_preinit_hook. + + * sysdeps/mach/hurd/defs.c (init_stdio): If stream already + allocated, don't allocate a new one. Don't crash if _hurd_alloc_fd + returns null if __newstream does. + + * sysdeps/mach/hurd/__brk.c (init_brk): If _hurd_brk is nonzero, + leave it as it is. Set PAGEND from _hurd_brk instead of &_end. + +Mon May 30 18:37:47 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurdrlimit.c (init_rlimit): Put this on _hurd_preinit_hook + instead of _hurd_subinit. + + * sysdeps/mach/hurd/mig-reply.c (mig_fork_child): Function removed. + * hurd/dtable.c (fork_parent_dtable): Function removed. + + * sysdeps/generic/resourcebits.h: Rename RLIM_NLIMITS to + RLIMIT_NLIMITS, add alias for old name. + + * sysdeps/mach/hurd/Makefile (hurd-objpfx): New variable. + (before-compile): Use that instead of $(common-objpfx). + + * sysdeps/mach/Makefile [! objpfx] (mach-objpfx): Add trailing slash. + +Fri May 27 01:34:56 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurdsig.c (_hurdsig_init): Always initialize _hurd_sigthread. + + * hurd/dtable.c: Use data_set_element instead of text_set_element + for _hurd_fork_locks. + * hurd/hurdsig.c: Likewise. + + * hurd/hurd.h (_hurd_set_data_limit): Declaration removed. + + * hurd/dtable.c (_hurd_dtable_rlimit): Variable removed. + (init_dtable): Don't set it. + + * hurd/Makefile (headers): Add hurd/resource.h. + (routines): Add hurdrlimit. + * hurd/hurd/resource.h: New file. + * hurd/hurdrlimit.c: New file. + * sysdeps/mach/hurd/getrlimit.c: Rewritten to just fetch + _hurd_rlimits. + * sysdeps/mach/hurd/setrlimit.c: Rewritten to just set _hurd_rlimits. + * sysdeps/mach/hurd/__brk.c (_hurd_data_limit): Variable removed. + (_hurd_set_brk): Use _hurd_rlimits[RLIMIT_DATA]. + (_hurd_set_data_limit): Function removed. + * hurd/alloc-fd.c (_hurd_dtable_rlimit): Variable removed. + (_hurd_alloc_fd): Use _hurd_rlimits[RLIMIT_OFILE] instead. + + * sysdeps/generic/resourcebits.h: Add RLIMIT_NOFILE as an alias + for RLIMIT_OFILE. + + * sysdeps/mach/hurd/mig-reply.c (__mig_init): Argument is stack + on which to set the per-thread reply port variable. + + * sysdeps/mach/hurd/__brk.c (init_brk): Set _hurd_data_end to + DATA_SIZE bytes past the beginning of data space, rather than to + DATA_SIZE absolutely. If vm_map fails, set it to PAGEND. + + * sysdeps/mach/hurd/start.c (_start): Run _hurd_preinit_hook right + after __mach_init. + + * stdio/freopen.c (freopen): Rewritten using __stdio_reopen to + preserve the old cookie value when possible. + * sysdeps/posix/sysd-stdio.c (__stdio_reopen): New function. + * sysdeps/stub/sysd-stdio.c (__stdio_reopen): New function. + * sysdeps/mach/hurd/sysd-stdio.c (__stdio_reopen): New function. + + * stdio/freopen.c (freopen): Close the stream if MODE is invalid. + + * hurd/hurdsig.c (_hurd_core_limit): Define variable. + + * socket/sys/socket.h (PF_LOCAL): Define in preference to PF_FILE. + +Thu May 26 12:09:51 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * hurd/alloc-fd.c (_hurd_alloc_fd): Don't return EINVAL when + FIRST_FD is greater than _hurd_dtablesize and less than + _hurd_dtable_rlimit. If we want to grow _hurd_dtable, but + _hurd_dtablesize is as big as _hurd_dtable_rlimit, then return + EMFILE. When growing _hurd_dtable, actually do something if + _hurd_dtablesize is zero. + + * hurd/hurdmalloc.c (malloc_fork_prepare, malloc_fork_parent, + malloc_fork_child): Declare as static so they don't conflict with + the user's version of this file. + +Wed May 25 20:55:16 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__brk.c: Include instead of + . + + * hurd/hurdmalloc.c, hurd/hurdmalloc.h: New files (temporary hack). + * hurd/Makefile (routines): Append hurdmalloc. + (distribute): Append hurdmalloc.h. + * hurd/alloc-fd.c: Include "hurdmalloc.h" (temporary hack). + * hurd/dtable.c: Likewise. + * hurd/hurdinit.c: Likewise. + * hurd/hurdsig.c: Likewise. + * hurd/hurdsock.c: Likewise. + * hurd/new-fd.c: Likewise. + * sysdeps/mach/hurd/start.c: Likewise. + + * sysdeps/mach/hurd/start.c (start1): Use malloc and a for loop + instead of calloc. + * hurd/hurdsig.c (_hurd_thread_sigstate): Use malloc and memset + instead of calloc. + + * sysdeps/mach/hurd/__brk.c (init_brk): Reference self to avoid + compiler warning. Add init_brk to _hurd_preinit_hook instead of + __libc_subinit. + + * sysdeps/mach/hurd/start.c (_hurd_preinit_hook): New variable. + (start1): Run _hurd_preinit_hook before threadvar setup. + +Tue May 24 17:42:34 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/dtable.c (init_dtable): Initialize _hurd_dtablesize to + _hurd_init_dtablesize. Initialize _hurd_dtable_rlimit as + _hurd_dtablesize used to be set, but don't let it be zero. + (_hurd_dtable_rlimit): New variable. + +Tue May 24 12:57:19 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/sleep.c (sleep): Timeout arg to mach_msg is + in milliseconds, not microseconds; compute it accordingly. + + * sysdeps/mach/hurd/__select.c (__select): Deleted variables + DTABLE and DTABLE_ULINK. Use new vars _hurd_dtablesize and + _hurd_dtable instead of old _hurd_dtable structure. Use new + locking protocol on _hurd_dtable. + +Tue May 24 01:55:24 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__setitmr.c: Don't include mutex.h. + + * sysdeps/mach/hurd/defs.c (init_stdio): Reference self. + + * sysdeps/unix/sysv/sysv4/i386/sysdep.h: Include + sysdeps/unix/sysv/i386/sysdep.h, not sysdeps/unix/i386/sysdep.h + +Mon May 23 19:05:44 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/Makefile (mib_hacks, defines): Variables removed. + + * mach/devstream.c (mach_open_devstream): Set STREAM's seek and + fileno io functions to null. + + * hurd/hurdexec.c (_hurd_exec): Fixed adding of dtable ports to + PLEASE_DEALLOC array. + + * sysdeps/mach/hurd/defs.c (init_stdio): Unlock the descriptors + after fetching them. If a standard descriptor is not allocated, + allocate the structure and store its pointer in the stream anyway. + + * stdio/gets.c: Only return null on P==S if feof (STREAM). + + * stdio/vfprintf.c: Make %Z a type modifier, not a format spec. + + * sysdeps/mach/hurd/fdopen.c: Return NULL rather than -1 for error. + +Mon May 23 14:24:50 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__close.c (__close): Use new _hurd_fd_get + protocol. + * sysdeps/mach/hurd/__dup2.c (__dup2): Likewise. Use + _hurd_dtablesize and _hurd_dtable instead of old _hurd_dtable + structure. + + * sysdeps/mach/hurd/sysd-stdio.c (__stdio_seek): Use + HURD_FD_PORT_USE, not HURD_FD_USE. + * sysdeps/mach/hurd/stdio_init.c (__stdio_init_stream): Variable + is D, not FD. + + * hurd/alloc-fd.c (_hurd_alloc_fd): Arg FIRST_FD is not actually + const. + * hurd/hurdsig.c (_hurd_internal_post_signal [case SIGINFO]): If + we are not the process group leader, ignore the signal. + (_S_sig_post [case SIGURG]): Declaration of D was out of place. + + * sysdeps/mach/hurd/fdopen.c: Include for + io_get_openmodes prototype. + +Sat May 21 16:03:23 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * assert/assert.c (__assert_fail): Put program name first in msg. + + * hurd/Makefile (dtable): Removed setdtsz. + + * hurd/hurdexec.c: Use _hurd_dtable and _hurd_dtablesize instead of + old _hurd_dtable structure. + * hurd/hurdsig.c: Likewise. + * hurd/alloc-fd.c: Likewise. + * hurd/hurdioctl.c (rectty_dtable): Likewise. + + * Version 1.08 released. + + * mach/mach_error_string.c: Renamed to errstring.c. + * mach/Makefile (routines): Renamed mach_error_string to errstring. + * mach/err_mach_ipc.sub: Renamed to err_mach.sub. + * mach/err_bootstrap.sub: Renamed to err_boot.sub. + + * sysdeps/generic/sigset.h (__SIGSETFN): Take new arg CONST; use it + for CONST qualifier on SET arg to generated function. + Changed uses to pass it; sigismember passes __const, others empty. + + * sysdeps/mach/hurd/sysd-stdio.c: Rewritten to use `struct hurd_fd *'s + for cookies. + * sysdeps/mach/hurd/fdopen.c: Rewritten accordinly. + * sysdeps/mach/hurd/defs.c (init_stdio): Rewritten accordingly. + Add it to the _hurd_fd_subinit hook instead of the __libc_subinit + hook. + * sysdeps/mach/hurd/stdio_init.c: New file. + * hurd/dtable.c (_hurd_fd_subinit): New hook variable. + (init_dtable): Run the _hurd_fd_subinit hook. + + * hurd/hurd/fd.h (struct hurd_dtable): Type removed. + (_hurd_dtable_users, _hurd_dtable_rlimit): Variables removed. + (_hurd_dtable): Make this a struct hurd_fd **. + (_hurd_dtablesize): New variable. + (struct hurd_fd_user): Type removed. + (_hurd_dtable_get, _hurd_dtable_free, _hurd_dtable_fd): Functions + removed. + (_hurd_fd_get): Rewritten. Take just one arg, and look it up in + _hurd_dtable; return a struct hurd_fd *. + (HURD_FD_USE): Rewritten to use new _hurd_fd_get interface. + * hurd/dtable.c (_hurd_dtable_users, _hurd_dtable_rlimit): + Variables removed. + (_hurd_dtable): Make this a struct hurd_fd **. + (_hurd_dtablesize): New variable. + (init_dtable, fork_parent_dtable, fork_child_dtable, + ctty_new_pgrp, reauth_dtable): Use new simpler _hurd_dtable format. + * sysdeps/mach/hurd/__getdtsz.c: Use _hurd_dtablesize. + * sysdeps/mach/hurd/__fcntl.c: Use new _hurd_fd_get protocol. + + * hurd/dtable.c (get_dtable_port): Return the ctty port if set. + + * hurd/hurd/fd.h (_hurd_fd_error_signal): New function, broken out + of _hurd_fd_error. + (_hurd_fd_error): Call it. + + * hurd/Makefile (dtable): Add fd-close. + * hurd/fd-close.c: New file. + * hurd/hurd/fd.h: Declare _hurd_fd_close. + + * sysdeps/mach/hurd/__close.c: Call _hurd_fd_close. + + * signal/Makefile (routines): Add sigsetops. + * signal/sigsetops.c: New file. + + * sysdeps/unix/sysv/sysv4/sigset.h (_EXTERN_INLINE): New macro. + Use it for all the inline functions. + + * signal/signal.h: Move #include inside #ifdef _SIGNAL_H. + + * sysdeps/generic/sigset.h: Protect types with #ifndef + _SIGSET_H_types. Protect rest with #if !defined (_SIGSET_H_fns) + && defined (_SIGNAL_H). + (__SIGSETFN): Add extern declaration of NAME inside function. + + * sysdeps/unix/ioctls-tmpl.c: Add missing #endif. + * sysdeps/unix/Makefile (make-ioctls-CFLAGS): Remember -D. + +Fri May 20 20:42:33 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile (sys/termios.h): Variable removed. + (ioctl-includes): New variable. + (make-ioctls-CFLAGS): Compute value generally from $(ioctl-includes). + ($(common-objpfx)ioctls): Depend on $(ioctl-includes), instead of + $(sys/termios.h). + + * sysdeps/unix/sysv/sco3.2.4/sco_getgrp.S: New file. + * sysdeps/unix/sysv/sco3.2.4/Makefile (sysdep_routines): Add + sco_getgrp. + * sysdeps/unix/sysv/sco3.2.4/__getgrps.c: New file. + + * sysdeps/generic/sigset.h (__sigismember, __sigaddset, __sigdelset): + Rewritten as extern inline functions; check for bogus signal number. + + * configure.in (names): Put $implied before $* in new $sysnames + list remaining to be processed; this ensures unix/common precedes + unix/sysv4 for sysv4. + +Thu May 19 18:35:02 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/defs.c (init_stdio): Make stdin and stdout + line buffered and stderr unbuffered. + +Thu May 19 16:14:36 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/getcwd.c: Remember to call io_stat on cwdir. + + * sysdeps/generic/configure.in: Use changequote around if expr + to avoid [] elision. + +Thu May 19 13:53:59 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * hurd/hurdsock.c (_hurd_socket_server): Return EPFNOSUPPORT + rather than EPROTONOSUPPORT because it's the entire protocol + family that isn't present, not just one protocol. + + * sysdeps/mach/hurd/__access.c (__access): Don't deallocate + CRDIR or CWDIR; that's taken care of by the _hurd_port_get + and _hurd_port_free system. + +Thu May 19 04:14:57 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/libc_fatal.c: Include . + + * sysdeps/unix/sysv/sysv4/__sigact.c: Include for NULL. + + * sysdeps/mach/hurd/__access.c: Fix swapped poly and count args in + __auth_makeauth call. + + * sysdeps/mach/hurd/ioctls.h (_IOC, _IOT): Rewritten using bitwise + operations, so the result is always technically a constant (the + old method of using a union constructor expression was not good + enough for initializers). + + * hurd/hurdsock.c (_hurd_socket_server): If path_lookup returns + ENOENT, we return EPROTONOSUPPORT. + + * hurd/Makefile (dtable): Add hurdioctl. + * hurd/dtable.c (rectty_dtable, tiocsctty, tiocnotty): Functions + moved: + * hurd/hurdioctl.c: New file. + (fioctl, fioclex): New functions. + * sysdeps/mach/hurd/__ioctl.c (_hurd_ioctl_handler_lists): Don't + define it, just declare it. + + * sysdeps/mach/hurd/getcwd.c: Use MACH_PORT_RIGHT_SEND, not + MACH_PORT_TYPE_SEND, in mach_port_mod_refs call. + + * sysdeps/mach/hurd/__getpgrp.c: Don't lock _hurd_pid_lock. + + * sysdeps/unix/common/glue-ctype.c: Don't include . + Instead, add explicit extern declaration of TABLE in main. + +Wed May 18 17:54:00 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/m68k/Makefile (asm-CPPFLAGS): Append $(m68k-syntax-flag). + + * Version 1.07.6. + + * sunrpc/Makefile (+gccwarn): Set to -w. + + * sysdeps/unix/Makefile (ifeq testing sys/param.h): Use patsubst + instead of dir to remove directory name from .../sys/param.h but + preserve "sys/". + + * inet/sys/bitypes.h: Replaced with just #include . + + * posix/sys/utsname.h (_UTSNAME_NODENAME_LENGTH): If undefined, + define to _UTSNAME_LENGTH. + (struct utsname): Use _UTSNAME_NODENAME_LENGTH for `nodename' member. + * sysdeps/unix/bsd/sun/sunos4/utsnamelen.h (_UTSNAME_NODENAME_LENGTH): + Define it. + + * resource/sys/resource.h (enum __rlimit_resource): Removed. + Just include instead. + * resource/Makefile (headers): Add resourcebits.h. + * sysdeps/generic/resourcebits.h: New file. + * sysdeps/unix/bsd/sun/sunos4/resourcebits.h: New file. + + * stdio/test-popen.c (main): Use popen to read the file back, too. + + * sysdeps/unix/sysv/sysv4/i386/sysdep.h: New file. + + * sysdeps/unix/sysv/sysv4/i386/sys-sig.S: Fixed typo: movel->movl. + +Tue May 17 12:46:31 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * mach/mach/mach_traps.h (__mach_reply_port, __mach_thread_self, + __mach_task_self, __mach_host_self): New declarations of __ + versions of syscall traps. + (swtch, __swtch, swtch_pri, __swtch_pri, thread_switch, + __thread_switch, evc_wait, __evc_wait): New prototypes. + * mach/Makefile (headers): Added mach/mach_traps.h so that the + GNU version is installed instead of the Mach version. + +Mon May 16 15:34:12 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/sys/param.h: New file. + + * mach/lock-intern.h (__mutex_lock, __mutex_unlock): Real definitions. + (__mutex_lock_solid, __mutex_unlock_solid, __mutex_init): Declare + them. + * mach/mutex-solid.c: New file. + * mach/Makefile (lock): Add mutex-solid. + (lock-headers): Remove mutex.h. + * mach/mutex.h: File removed. + * hurd/hurd/id.h: Include instead of . + * hurd/hurd/signal.h: Likewise. + * hurd/hurdsig.c: Likewise. + * hurd/hurdsock.c: Likewise. + * hurd/dtable.c: Likewise. + * hurd/__setauth.c: Likewise. + * sysdeps/mach/hurd/Makefile (includes): Also append + -I$(hurd-srcdir)/libthreads. + + * sysdeps/posix/system.c [WAITPID_CANNOT_BLOCK_SIGCHLD]: Don't + block SIGCHLD. + * sysdeps/unix/sysv/sco3.2.4/system.c + (WAITPID_CANNOT_BLOCK_SIGCHLD): Define this macro. + + * sysdeps/posix/sigintr.c (siginterrupt) [! SA_RESTART]: Always + fail with ENOSYS. + + * sysdeps/posix/__sigvec.c [! SA_ONSTACK]: Fail with ENOSYS if + SV_ONSTACK is set in VEC->sv_flags. + [SA_RESTART]: Protect SV_INTERRUPT check with this. + + * sysdeps/mach/sysdep.h (FATAL_PREPARE): New macro. + * sysdeps/posix/libc_fatal.c: Include . + [FATAL_PREPARE]: Invoke the macro. + * assert/assert.c: Likewise. + + * sysdeps/generic/memmem.c: Start BEGIN at HAYSTACK, not partway + into it. Loop until BEGIN passes the location in HAYSTACK with + NEEDLE_LEN bytes remaining to the end. + Compare first byte manually before calling memcmp. + + * sysdeps/unix/sysv/sco3.2.4/__sigact.S: Fix typo. + + * posix/sys/types.h [__USE_BSD] (int32_t, int16_t, int8_t, + u_int32_t, u_int16_t, u_int8_t): New typedefs. + + * assert/assert.c (__assert_program_name): New variable. + (__assert_fail): Print that in the msg too. + [HAVE_GNU_LD] (set_progname): New function to set it up at startup. + +Thu May 12 01:10:52 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/__setauth.c: Do critical section locking. + * hurd/hurdexec.c: Likewise. + * hurd/hurdauth.c (_S_del_auth): Likewise. + * hurd/getuids.c: Likewise. + * hurd/dtable.c: Likewise. + * hurd/alloc-fd.c: Likewise. + * hurd/hurd/port.h: Likewise. + * hurd/hurd/fd.h: Likewise. + * hurd/setuids.c: Likewise. + * hurd/intern-fd.c: Likewise. + * hurd/hurdsock.c (_hurd_socket_server): Likewise. + * sysdeps/mach/hurd/setrlimit.c: Likewise. + * sysdeps/mach/hurd/setgroups.c: Likewise. + * sysdeps/mach/hurd/seteuid.c: Likewise. + * sysdeps/mach/hurd/setegid.c: Likewise. + * sysdeps/mach/hurd/getrlimit.c: Likewise. + * sysdeps/mach/hurd/__setuid.c: Likewise. + * sysdeps/mach/hurd/__setreuid.c: Likewise. + * sysdeps/mach/hurd/__setregid.c: Likewise. + * sysdeps/mach/hurd/__setitmr.c: Likewise. + * sysdeps/mach/hurd/__setgid.c: Likewise. + * sysdeps/mach/hurd/__select.c: Likewise. + * sysdeps/mach/hurd/__sbrk.c: Likewise. + * sysdeps/mach/hurd/__getuid.c: Likewise. + * sysdeps/mach/hurd/__getpgrp.c: Likewise. + * sysdeps/mach/hurd/__getitmr.c: Likewise. + * sysdeps/mach/hurd/__getgrps.c: Likewise. + * sysdeps/mach/hurd/__getgid.c: Likewise. + * sysdeps/mach/hurd/__geteuid.c: Likewise. + * sysdeps/mach/hurd/__getegid.c: Likewise. + * sysdeps/mach/hurd/__getdtsz.c: Likewise. + * sysdeps/mach/hurd/__fork.c: Likewise. + * sysdeps/mach/hurd/__fcntl.c: Likewise. + * sysdeps/mach/hurd/__dup2.c: Likewise. + * sysdeps/mach/hurd/__close.c: Likewise. + * sysdeps/mach/hurd/__brk.c: Likewise. + * sysdeps/mach/hurd/__access.c: Likewise. + + * sysdeps/mach/hurd/reboot.c (reboot): Use the host priv port to + prove authority. + + * sysdeps/mach/hurd/__readlink.c: Don't request O_READ access. + + * sysdeps/mach/hurd/__ioctl.c: Don't expect result data unless + return code is zero. Translate MIG_BAD_ID or EOPNOTSUPP to ENOTTY. + + * mach/devstream.c (output): Use device_write instead of + device_write_inband. + +Wed May 11 18:49:31 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/hurdinit.c (_hurd_init): Finsih loop of _hurd_port_init on + _hurd_ports elts before doing _hurd_proc_init or + __task_set_special_port. + + * hurd/hurd/signal.h (struct hurd_sigstate): Add new + `critical_section' member. Remove #if 0'd out vfork crap. + (_hurd_critical_section_lock, _hurd_critical_section_unlock): New + functions. + (HURD_CRITICAL_BEGIN, HURD_CRITICAL_END): New macros. + + * io/Makefile (headers): Add poll.h and sys/poll.h. + (routines): Add poll. + * sysdeps/unix/bsd/sun/sunos4/poll.S: New file. + * sysdeps/unix/sysv/poll.S: New file. + * sysdeps/unix/bsd/poll.c: New file. + * sysdeps/stub/poll.c: New file. + * io/poll.h, io/sys/poll.h: New files. + + * misc/bsd-compat.c (setjmp): New function. + + * sysdeps/unix/Makefile (sysdep_headers): Remove sys/param.h. + * misc/Makefile (headers): Add it here instead. + + * io/test-utime.c (main): New file. + * io/Makefile (tests): New variable. + +Wed May 11 13:44:33 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * hurd/hurd/threadvar.h (__hurd_errno_location): Remove + __volatile keyword. `volatile int errno' is not the same + as `int errno'; user programs often mention the latter. + * errno.h: Remove __volatile keyword; same reason. + +Tue May 10 17:21:41 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/zdump.c: New code from ADO. + + * time/difftime.c (difftime): Use hairy rounding algorithm from + eggert@twinsun.com when sizeof (time_t) >= sizeof (double). + + * Makerules (native-CFLAGS): Remove -I$(sysincludedir). RMS says + people with bogons in /usr/local/include deserve to lose. + + * stdio/printf_fp.c (__printf_fp): If IS_NEG gets set, negate + FPNUM before testing it for %g format choice. + + * sysdeps/unix/sysv/irix4/fcntlbits.h: New file. + * sysdeps/unix/sysv/irix4/Dist: New file. + * sysdeps/unix/sysv/irix4/readv.c: New file. + * sysdeps/unix/sysv/irix4/writev.c: New file. + * sysdeps/unix/sysv/irix4/__dup2.c: New file. + + * sunrpc/xdr_float.c (xdr_float): Change [mc68000 || sparc] to [! + vax]. + + * sysdeps/mips/setjmp.S: Remove spurious $. + + * sysdeps/generic/ftime.c: Include . + + * sysdeps/unix/mips/sysdep.S: Add .set noreorder. + +Tue May 10 16:27:13 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/generic/termbits.h (NCCS): Doc fix. + +Mon May 9 18:07:44 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/uname.c (uname): System uname information + has moved from init to proc. + + * sysdeps/mach/usleep.c (usleep): Return correct value. Destroy + RECV when we're done with it. + +Thu May 5 17:03:56 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__lstat.c: Use O_NOLINK instead of O_NOTRANS. + +Thu May 5 04:20:54 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mach/spin-lock.h (spin_lock_init): Define. + + * sysdeps/mach/hurd/sigsuspend.c: New local variable NEWMASK, set + it to *SET if SET is not null, before taking SS->lock; don't + dereference SET while holding the lock. Restore SS->blocked to + OLDMASK before unlocking and returning. + + * hurd/hurdsig.c (hurdsig_fork_child): Return zero. + + * sysdeps/mach/hurd/__fork.c (_hurd_fork_parent_hook, + _hurd_fork_prepare_hook)): Define variables (symbol sets). + (__fork): Run _hurd_fork_prepare_hook and _hurd_fork_parent_hook. + + * sysdeps/mach/hurd/sigsuspend.c: Don't test SS->pending; instead + wait until SS->suspended is cleared. + * hurd/hurdsig.c (_hurd_internal_post_signal): Clear SS->suspended + before signalling on SS->arrived. + + * mach/Makefile (headers): Added mach/default_pager_helper.defs. + + * sysdeps/sparc/Dist: Added alloca.S. + +Wed May 4 14:02:29 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * hurd/hurdexec.c (_hurd_exec): Unlock _hurd_dtable_lock when + all through. + + * sysdeps/mach/hurd/__setitmr.c: Changed _hurd_itimer_lock + to be a spin_lock; changed mutex_lock and mutex_unlock + accordingly throughout. + * sysdeps/mach/hurd/__getitmr.c: Corresponding changes from + mutex calls to spin lock calls here too. + + * sysdeps/mach/hurd/__setitmr.c (setitimer_locked): Fixed syntax + of declaration of PREEMPT. + (setitimer_locked): Declare variables ERR and ELAPSED. + (setitimer_locked): Fix some references to REMAINING that + were using it as an itimerval instead of a timeval. + (setitimer_locked): Deleted unused label STILLBORN. + +Wed May 4 00:17:32 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/__getitmr.c: Fix arg name __WHICH to WHICH. + + * sysdeps/unix/bsd/alarm.c: Round tv_usec with arithmetic rather + than a test. + + * hurd/Makefile (user-interfaces): Add hurd/msg_request. + + * sysdeps/stub/__setitmr.c: Fix arg name __WHICH to WHICH. + + * Makeconfig (cross-compiling): Define if $(HOST_CC) and $(CC) differ. + * time/Makefile (install-others): Omit defn ifdef cross-compiling. + +Tue May 3 23:12:48 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mach/Makefile (lock-headers): Add spin-lock.h. + + * misc/Makefile (routines): Add madvise. + + * malloc/Makefile (non-lib.a): Define. + * misc/Makefile (non-lib.a): Define. + * Makerules (install-lib.a): Filter out $(non-lib.a). + (install-lib-non.a): Append $(non-lib.a). + + * mach/Makefile (mach-headers): Rename sys/version.h to + mach/version.h. + + * hurd/Makefile (headers): Added hurd/threadvar.h. + + * Version 1.07.5. + + * hurd/port2fd.c (_hurd_port2fd): Use logic copied from + _hurd_port_locked_set to install PORT in D->port, but leave it locked. + + * sunrpc/Makefile (generated): Don't add $(objpfx). + + * sysdeps/stub/machine-lock.h: New file. + * sysdeps/stub/machine-sp.h: New file. + +Tue May 3 22:31:15 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/usleep.c (usleep): Specify MACH_RCV_MSG so that + mach_msg actually waits. + +Tue May 3 19:24:48 1994 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) + + * malloc/malloc.h (enum mcheck_status): Delete trailing + comma in enum list; some compilers don't like it. + +Tue May 3 15:18:15 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__symlink.c (__symlink): Pass port type arg to + __file_set_translator. + +Mon May 2 17:56:47 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * hurd/Makefile (generated): Add $(inlines) .c files. + + * sysdeps/mach/hurd/__mknod.c: Pass port type arg to + __file_set_translator. + +Sun May 1 16:03:13 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mach/mig_syms.c: Add de-__ing aliases for mig_init, + mig_get_reply_port, and mig_dealloc_reply_port. + + * sysdeps/mach/hurd/errnos.awk: Handle copying errors from + mach/mig_errors.h and device/device_types.h. Omit E*_SUCCESS. + Omit MACH_MSG_MASK and other special bit macros. + + * sysdeps/mach/hurd/i386/sigcontext.h (struct sigcontext): Added + sc_reply_port member. + * hurd/hurdsig.c (fetch_reply_port): New function. + (_hurd_internal_post_signal): When setting up to run handler, set + SCP->sc_reply_port to the receiving thread's value for + _HURD_THREADVAR_MIG_REPLY. + * sysdeps/mach/hurd/i386/__sigret.c: Destroy the MiG reply port + used by the signal handler, and restore from SCP->sc_reply_port. + * hurd/hurd/threadvar.h (__hurd_threadvar_location_from_sp): New + function; guts from __hurd_threadvar_location. + (__hurd_threadvar_location): Call that. + + * hurd/hurdsig.c (check_pending): New function, broken out of: + (_hurd_internal_post_signal): Call that for pending signal check. + If SIGNO is zero, call check_pending on each thread's sigstate. + + * sysdeps/mach/hurd/start.c (start1): Use calloc to get + zero-filled space for __hurd_threadvar_stack_offset when + __hurd_threadvar_stack_mask is zero. + +Thu Apr 28 21:29:47 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Merged gmp-1.99.3+ mpn code from tege for printf_fp. + * stdio/printf_fp.c: Include "longlong.h"; gmp-impl.h no longer does. + + * Makerules (+depfiles): Filter $(extra-objs) to get only .o files. + +Wed Apr 27 00:20:41 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (depend-$(subdir)): Put output in tmp file and use mv -f. + Always use $(+depfiles), since sources is no longer exported. + +Tue Apr 26 20:05:55 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/bsd4.4/tcdrain.c: Don't include to + avoid conflicts. + * sysdeps/unix/bsd/bsd4.4/tcsetattr.c: Undefine ECHO, MDMBUF, + TOSTOP, FLUSHO, PENDIN, and NOFLSH after including and + before including . + * sysdeps/unix/bsd/bsd4.4/__tcgetatr.c: Likewise. + +Tue Apr 26 14:42:43 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/sleep.c (sleep): Specify MACH_RCV_MSG or else + mach_msg won't do anything but return immediately. + (sleep): Compute return value correctly. + +Tue Apr 26 04:49:56 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/i386/setjmp.c: Put global register decls first thing. + * sysdeps/i386/__longjmp.c: Likewise. + +Fri Apr 22 18:10:36 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/irix4/__wait3.S: New file. + * sysdeps/unix/sysv/irix4/time.S: New file. + * sysdeps/unix/sysv/irix4/__waitpid.c: New file. + +Thu Apr 21 16:54:11 1994 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * malloc/malloc.c (initialize, morecore): When allocating the + _heapinfo block itself, account for it in the statistics. + +Tue Apr 19 20:17:06 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/pipestream.c: New file. + + * malloc/malloc.c (morecore): Only zero the new part of NEWINFO, + not the part we will copy _heapinfo into. + + * sysdeps/unix/bsd/signum.h (SIGLOST): Define. + (_NSIG): Increase to 33. + +Mon Apr 18 16:56:11 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (config.status): Use $configure_args instead of + $ac_configure_args. + (after AC_PREPARE): Call AC_LANG_C. + + * time/Makefile (routines): Add sys/timeb.h. + (routines): Add ftime. + * time/sys/timeb.h: New file. + * sysdeps/unix/bsd/ftime.c: New file. + * sysdeps/generic/ftime.c: New file. + + * sysdeps/posix/getenv.c (getenv): Return NULL if __environ is null. + + * malloc/malloc.h [_MALLOC_INTERNAL] [HAVE_UNISTD_H]: Include + unistd.h. + + * malloc/Makefile (gmalloc-routines): Put valloc first. + +Wed Apr 13 14:03:02 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__symlink.c (__symlink): Set the target of the + link to FROM, not TO. + + * sysdeps/mach/hurd/__readlink.c (__readlink): Copy just the + target into the user's buffer, not the entire translator spec. + +Tue Apr 12 00:13:19 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * hurd/fd-write.c (_hurd_fd_write): Set noctty for now rather + than depending on what happens to be on the stack. + + * sysdeps/mach/hurd/readdir.c (readdir): Notice when hitting + end-of-file and return NULL. + +Mon Apr 11 17:36:59 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/start.c (start1): Bother to set __environ. + + * sysdeps/mach/hurd/__ioctl.c (__ioctl): Comment out use of + HURD_EINTR_RPC until signals work. + +Mon Apr 11 14:16:40 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/__ioctl.c (__ioctl): Call __mig_get_reply_port + rather than __mig_reply_port (which doesn't exist). + + * sysdeps/mach/hurd/__mknod.c: Added temporary declarations + of major and minor. + + * (This change occurred on April 4, 1994) mach/setup-thread.c + (__mach_setup_thread): The March 31 change had an error; the stack + needs to be allocated with ANYWHERE cleared. + + * (This change occurred on April 8, 1994) hurd/hurdexec.c + (_hurd_exec): The arguments to exec_exec had the length and + type parameters transposed. In addition, fetch the correct + procserver port for the new task. + + * (This change occurred on April 8, 1994) + sysdeps/mach/hurd/__wait.c (__wait4): Deal properly with a null + USAGE argument. + + * (This change occurred on April 8, 1994) + sysdeps/mach/hurd/_exit.c (_exit): Changed commented-out call to + __proc_exit into a correct call to __proc_mark_exit. + +Fri Apr 8 14:58:24 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * string/strsignal.c (strsignal): Store of NUL into unknown_signal + was off by one. + +Tue Apr 5 21:26:25 1994 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/__sigact.c (__sigaction): Declare member + `oact' in lower case, to match its use in the rest of the function. + +Tue Apr 5 03:07:04 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (install-lib.a rule): Run ranlib on the target. + + * Makerules (library member rule): Tighten up pattern rule to + match only libc.a, not other libraries. + +Mon Apr 4 21:49:57 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * set-hooks.h: New file. + * Makefile (distribute): Add it. + * set-init.c: Include it and use its macro DEFINE_HOOK_RUNNER. + + * Makerules (sysd-Makefile): Put `sysd-Makefile-done=t' in output. + (sysd-rules): Don't include it unless sysd-Makefile-done is defined. + +Mon Apr 4 18:33:54 1994 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * mach/setup-thread.c (__mach_setup_thread): Oops; the vm_allocate + call should have ANYWHERE cleared so that the change of the 31st + has any effect at all. + +Thu Mar 31 13:46:13 1994 Michael I Bushnell (mib@churchy.gnu.ai.mit.edu) + + * mach/setup-thread.c (__mach_setup_thread): Create a red zone + beneath the stack; also, work around a bug in cthreads by + forcing the stack into high memory. FIXME--this routine + depends on the direction of stack growth; that should be fixed. + +Mon Mar 28 12:55:51 1994 Roland McGrath (roland@mole.gnu.ai.mit.edu) + + * Rules (make-dummy-lib): Use `$(AR)' instead of literal `ar'. + + * configure.in (arg parsing): Don't take --os-release or --os-version. + (switches): Variable removed; don't write it into config.status. + (config.status): Write release and version values directly. + + * sysdeps/unix/common/configure.in: Use changequote around if expr + to avoid [] elision. + +Sat Mar 26 18:36:27 1994 Roland McGrath (roland@mole.gnu.ai.mit.edu) + + * malloc/mcheck.c [! _MALLOC_INTERNAL]: #include + +Fri Mar 25 02:17:55 1994 Roland McGrath (roland@mole.gnu.ai.mit.edu) + + * malloc/mcheck.c (mprobe): New function. + (abortfunc): Take enum mcheck_status arg. + (checkhdr): Return an enum mcheck_status, and pass it to abortfunc. + (mabort): New function. + (mcheck): Use mabort as default abortfunc. + * malloc/malloc.h (enum mcheck_status): New type. + (mprobe): Declare new function. + (mcheck): ABORTFUNC takes an `enum mcheck_status' arg. + + * posix/unistd.h [__USE_GNU] (TEMP_FAILURE_RETRY): New macro. + + * stdio/stdio.h [__USE_GNU && !_LIBC] (cookie_io_functions_t): + Define instead of __io_functions (and make that a typedef for + this); omit __ from member names. + +Thu Mar 24 14:59:23 1994 Roland McGrath (roland@mole.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/sigaction.h: New file. + + * sysdeps/unix/sysv/sco3.2.4/__sigact.S: Put address of + __sigreturn in %ecx before doing syscall trap. + + * sysdeps/stub/setegid.c: Fix arg type to __gid_t (was int). + +Wed Mar 23 17:33:09 1994 Roland McGrath (roland@mole.gnu.ai.mit.edu) + + * Makefile (headers): Remove $(stdarg.h). + * Makeconfig (stdarg.h): Variable removed. + * configure.in: Remove check for __gnuc_va_list in stdarg.h. + It is not safe to replace the compiler's stdarg.h with our own. + +Tue Mar 22 12:46:08 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Rules (dist): Rule removed. + * Makefile (dist): Likewise. + * Makerules (dist, distinfo): New rules. + (TAGS): Depend on distfile, pass -f distfile to submake. + + * math/Makefile: Remove if-ed out old bsdmath copying rules. + + * Makerules (sources, headers, sysdep_routines): Don't export these. + * Rules (others, tests): Likewise. + + * io/lockf.c: Include fcntl.h and errno.h. + +Mon Mar 21 20:27:32 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sony/newsos4/fchdir.S: New file. + * sysdeps/unix/bsd/sony/newsos4/{__wait4.c,__wait3.c,__wait.c, + sys_wait4.S,Makefile,Dist}: New files. + + * sysdeps/unix/Makefile (syscall.h): De-SYS_ify `kerncall_basenum'. + + * sysdeps/unix/bsd/m68k/sysdep.S [! __motorola__]: Rename label 0 + to `store'; a user reports gas 1.38 bombs on numbered labels. + + * sysdeps/posix/Makefile (mk-stdiolim): Use $(HOST_CC). + + * Rules (distribute, dont_distribute, generated): Don't export them. + (dist): Pass those vars down to sub-make on cmd line. + * Makefile (distribute, generated): Don't export them. + (dist): Pass distribute and generated values to sub-make on cmd line. + + * Makerules (install-lib-nosubdir): Insert $(libprefix) appropriately. + +Fri Mar 18 01:02:52 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h (DO_CALL): Use a6 in + place of fp. A user reports gas 1.38 doesn't grok fp. + +Tue Mar 8 18:35:02 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (common-clean): Prepend $(objpfx) to $(generated). + * Makefile (parent-clean): Prepend $(common-objpfx) to + $(common-generated). + * Makefile (generated): Don't prepend $(objpfx). + * Rules (generated): Likewise. + * sysdeps/unix/common/Makefile (generated): Likewise. + * sysdeps/unix/sysv/Makefile (generated): Likewise. + * sysdeps/unix/Makefile (common-generated): Don't prepend + $(common-objpfx). + * sysdeps/posix/Makefile (common-generated): Likewise. + * sysdeps/generic/Makefile (common-generated): Likewise. + (generated): Don't prepend $(objpfx). + + * sysdeps/generic/Makefile (common-generated): Set this instead of + generated for bytesex.h and det_endian. + + * sysdeps/stub/fexecve.c: New file. + * posix/Makefile (routines): Add fexecve. + * posix/unistd.h [__USE_GNU]: Declare fexecve. + + * sysdeps/unix/common/configure.in: Protect siglist and ctype + checks with if [ ! "$inhibit_glue" ]. + * sysdeps/generic/configure.in: Likewise for psignal check. + * sysdeps/unix/common/Makefile: Protect body with ifndef inhibit-glue. + +Mon Mar 7 17:46:46 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/osf1/alpha/__sigblock.S: New file from brendan. + +Fri Mar 4 01:56:26 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (native-compile, common-objdir-compile): Use + $(HOST_CC) in place of $(CC). + + * malloc/cfree.c: Move #undef cfree inside #ifdef _LIBC. + + * misc/sys/ioctl.h (struct ttysize): If TIOCGSIZE != TIOCGWINSZ, + use two int elts instead of four shorts. + +Thu Mar 3 17:35:54 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/realloc.c (realloc): When shrinking a block by splitting + and then freeing one, bump the _chunks_used counter. + + * sysdeps/unix/sysv/sysv4/i386/__mknod.S: New file. + +Tue Mar 1 11:42:41 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/__waitpid.S: Get first argument from + stack at 8(%esp), not 4(%esp). + + * sysdeps/unix/sysv/isc2.2/rename.S: Get unix/common, not unix/bsd. + +Thu Feb 24 14:40:43 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * io/lockf.c: New file. + * io/Makefile (routines): Add lockf. + * io/fcntl.h [__USE_MISC] (F_ULOCK, F_LOCK, F_TLOCK, F_TEST): New + macros. + [__USE_MISC] (lockf): Declare it. + * posix/unistd.h: Copy those new macros and declaration. + + * time/backward, time/etcetera, time/zic.c: New code and data from ADO. + * Makeconfig (posixrules): Default to America/New_York. + + * sysdeps/unix/mips/sysdep.S: Store -1 in v0 in the delay slot after + the return, rather than before (leaving the delay slot unfilled and + without a nop!). + + * sysdeps/unix/sysv/irix4: New directory; mips-sgi-irix4 port + courtesy Tom Quinn. + + * sysdeps/unix/sysv/sysv4/direct.h: Moved to unix/common; it is right + for irix4 as well as sysv4. + * sysdeps/unix/bsd/ultrix4/__wait.S: Moved to unix/mips. + (noerror): Store register v1 in location pointed to by first arg (if + not NULL). + * sysdeps/unix/bsd/ultrix4/__sigret.S: Moved to unix/mips. + + * sysdeps/unix/bsd/bsd4.4/{mmap,munmap,mprotect,msync,madvise}.S: + Moved to sysdeps/unix/mman (new directory). + * sysdeps/unix/bsd/bsd4.4/Implies: New file; imply unix/mman. + * sysdeps/unix/bsd/sunos4/Implies: Likewise. + * sysdeps/unix/bsd/ultrix4/Implies: Likewise. + * sysdeps/unix/bsd/osf1/Implies: Likewise. + * sysdeps/unix/bsd/sun/sunos4/munmap.S, + sysdeps/unix/bsd/sun/sunos4/mprotect.S, + sysdeps/unix/bsd/sun/sunos4/madvise.S, + sysdeps/unix/bsd/ultrix4/mmap.S, + sysdeps/unix/bsd/ultrix4/munmap.S, + sysdeps/unix/bsd/ultrix4/mprotect.S, + sysdeps/unix/bsd/osf1/mmap.S, + sysdeps/unix/bsd/osf1/munmap.S, + sysdeps/unix/bsd/osf1/mprotect.S: Files removed. + + * sysdeps/unix/sysv/sysv4/fcntlbits.h: Moved to sysdeps/unix/common. + + * stdio/printf_fp.c: Add many assertions to make sure no mpn size + variable is ever zero. + + * Makerules (native-CFLAGS): Add -I$(sysincludedir). + + * Makerules (depend-$(subdir)) [omit-deps]: Use $(+depfiles) value + instead of shell hackery. + +Wed Feb 23 00:09:08 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/sparc/alloca.S [! NO_UNDERSCORES]: Call it ___builtin_alloca. + +Tue Feb 22 18:47:10 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Use __off_t in mmap + prototype. + + * time/setitmr.c: Swap args OLD and NEW. + * time/sys/time.h (setitimer): Likewise. + * sysdeps/stub/__setitmr.c: Likewise. + +Mon Feb 21 20:47:55 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/sparc/Makefile [gnulib] (routines): Add alloca. + * sysdeps/sparc/alloca.S: New file; support for SunOS libc's + `__builtin_alloca' function (never needed with GCC). + + * sysdeps/unix/sysv/sysv4/__sigact.c (trampoline): Cast handler to + three-arg type. + +Sun Feb 20 00:46:15 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sunos4/mmap.c: Add missing semicolon. + + * sysdeps/unix/sparc/start.c [! NO_SHLIB]: Include + before . + + * sysdeps/unix/bsd/ultrix4/mips/{sysdep.h,sysdep.S,__pipe.S, + __fork.S,__brk.S}: Moved to sysdeps/unix/mips (new directory). + + * sysdeps/unix/bsd/ultrix4/mips/__sigret.S: Use SYS_sigreturn + instead of literal 103; #define to 103 if not already defined. + +Sat Feb 19 17:39:13 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sysv4/i386/Dist: New file; list sys-sig.S. + +Fri Feb 18 18:07:34 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/configure.in: New file; check for psignal. + + * sysdeps/unix/common/glue-ctype.c: Check for table named _ctype, + before checking for _ctype_. + * sysdeps/unix/common/configure.in: Check for _ctype. + + * sysdeps/unix/Makefile (syscall.h): Look for sys.s before syscall.h. + * sysdeps/unix/configure (unix_syscall_h): Likewise. + + * configure.in (os = irix4*): Set base_os=unix/sysv. + + * sunrpc/rpc/auth.h (u_int32): Always define, no #ifdefs. + * sunrpc/xdr_float.c: Change [mc68000 || sparc] to [! vax]. + +Thu Feb 17 18:42:29 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.07.4. + + * sysdeps/unix/bsd/sun/sunos4/Dist: Add sys_mmap.S. + + * Makerules (sysdep_dir): Remove defn. + * Makeconfig (sysdep_dir): Define it here instead. + +Wed Feb 16 16:54:00 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sysv4/__sigact.c: New file. + * sysdeps/unix/sysv/sysv4/i386/Makefile: New file. + * sysdeps/unix/sysv/sysv4/i386/sys-sig.S: New file. + + * time/sys/time.h (timerisset, timercmp, timerclear): New macros. + + * misc/Makefile (headers): Add sys/mman.h. + (routines): Add mmap, munmap, mprotect, msync. + * sysdeps/unix/bsd/sun/sunos4/sys_mmap.S: New file. + * sysdeps/unix/bsd/sun/sunos4/mmap.c: New file. + * sysdeps/unix/bsd/sun/sunos4/Makefile [$(subdir) == misc] + (sysdep_routines): Add sys_mmap. + * sysdeps/unix/bsd/bsd4.4/mprotect.S: New file. + * sysdeps/unix/bsd/bsd4.4/munmap.S: New file. + * sysdeps/unix/bsd/bsd4.4/msync.S: New file. + * sysdeps/unix/bsd/bsd4.4/mmap.S: New file. + * sysdeps/unix/bsd/bsd4.4/madvise.S: New file. + * sysdeps/unix/bsd/sun/sunos4/mprotect.S: New file. + * sysdeps/unix/bsd/sun/sunos4/munmap.S: New file. + * sysdeps/unix/bsd/sun/sunos4/msync.S: New file. + * sysdeps/unix/bsd/sun/sunos4/madvise.S: New file. + * sysdeps/unix/bsd/ultrix4/sys/mman.h: New file. + * sysdeps/unix/bsd/ultrix4/mmap.S: New file. + * sysdeps/unix/bsd/ultrix4/munmap.S: New file. + * sysdeps/unix/bsd/ultrix4/mprotect.S: New file. + * sysdeps/stub/mprotect.c: New file. + * sysdeps/stub/munmap.c: New file. + * sysdeps/stub/msync.c: New file. + * sysdeps/stub/mmap.c: New file. + * sysdeps/stub/madvise.c: New file. + * sysdeps/generic/sys/mman.h: New file. + * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: New file. + * sysdeps/unix/bsd/osf1/msync.S: New file. + * sysdeps/unix/bsd/osf1/mmap.S: New file. + * sysdeps/unix/bsd/osf1/munmap.S: New file. + * sysdeps/unix/bsd/osf1/mprotect.S: New file. + * sysdeps/unix/bsd/osf1/sys/mman.h: New file. + +Tue Feb 15 16:47:45 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/unistd.h: Declare truncate, ftruncate. + + * misc/Makefile (headers): Add syslog.h. + * misc/syslog.h: New file; just includes . + + * posix/unistd.h: Change duplicate seteuid decl to setegid. + + * io/Makefile (headers): Add sys/fcntl.h. + * io/sys/fcntl.h: New file; just includes . + +Mon Feb 14 10:36:57 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (library pattern rule): Depend on + $(objpfx)stamp-$(subdir) and have empty commands. + ($(objpfx)stamp-$(subdir)): Move dep on $(objects) and ar cmds here. + (common-mostlyclean): Remove $(objpfx)stamp-$(subdir). + + * Makerules (+depfiles): Filter out deps for modules in $(omit-deps). + + * sunrpc/Makefile (omit-deps): Define new variable. + + * Makerules ($(libc.a)(__.SYMDEF)): Depend on $(+libobjs), not + lib-noranlib. + * Makefile ($(libc.a)(__.SYMDEF)): Depend on subdir_lib. + + * Makerules (+depfiles): Include deps for $(extra-objs). + + * sunrpc/rpcsvc/klm_prot.x: Move program definition to end. + + * sunrpc/Makefile (lib): Depend on $(objpfx)librpcsvc.a. + + * time/zic.c: Set CP to NAME before dereferencing. + + * sunrpc/Makefile ($(objpfx)x%.c): Target fixed from $(objpfx)x%.c. + ($(objpfx)rpcsvc/%.h): Target renamed from $(includedir)rpcsvc/%.h. + Make each x%.o file depend on the corresponding rpcsvc/%.h file. + (headers): Add rpcsvc/%.h. + (install-others): Remove generated rpcsvc headers. + (generated): Define to include generated rpcsvc headers and sources. + + * sysdeps/m68k/fpu/acos.c: Add __CONSTVALUE to defn. + * sysdeps/m68k/fpu/ldexp.c: Likewise. + * sysdeps/m68k/fpu/pow.c: Likewise. + * sysdeps/m68k/fpu/fmod.c: Likewise. + * sysdeps/m68k/fpu/atan2.c: Likewise. + * sysdeps/m68k/fpu/__drem.c: Likewise. + * sysdeps/m68k/fpu/__isinf.c: Likewise. + * sysdeps/generic/hypot.c: Likewise. + * sysdeps/m68k/fpu/__logb.c: Likewise. + + * sysdeps/unix/bsd/m68k/sysdep.S: Swap operands in cmpl. + +Sun Feb 13 19:49:24 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/m68k/Makefile (compile-command.S): Remove definition + that did kludgey # hackery. + * sysdeps/unix/bsd/hp/m68k/sysdep.h (PSEUDO): Add missing close paren. + (POUND): Define (no arg) to just `#' (a single pound sign). + (PSEUDO, DO_CALL): Use `POUND foo' in place of `POUND(foo)'. + * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h: Likewise. + * sysdeps/unix/bsd/sun/m68k/sysdep.h: Likewise. + * sysdeps/unix/bsd/sun/m68k/__brk.S: Use #0, not POUND(0). + * sysdeps/unix/bsd/hp/m68k/__brk.S: Use #__end instead of POUND(__end). + +Fri Feb 11 00:29:45 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (Makefile): Set objdir instead of ARCH in submake cmd. + + * time/mktime.c: Define __P if undefined. + + * assert/assert.h (__ASSERT_FUNCTION): Check __GNUC_MINOR__<6 if + defined(__cplusplus). + +Thu Feb 10 00:52:31 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/__sigact.c: Use __sigismember and + __sigemptyset on sa_mask instead of assuming it's an int. + + * sysdeps/unix/sysv/sysv4/sigset.h (__sigismember): Declare arg + SET to be a pointer to const. + + * sysdeps/posix/__sigpause.c: Convert MASK to a sigset_t with a loop. + + * sysdeps/posix/__sigblock.c: When sigset_t==mask, take address of + SET or OSET, cast to int *, and dereference. + * sysdeps/posix/__sigstmsk.c: Likewise. + * sysdeps/posix/__sigvec.c: Likewise. + + Add the -lrpcsvc library of XDR routines for standard SunRPC protocols. + * sunrpc/Makefile (install-lib): Define to include librpcsvc.a. + (rpcsvc-objs): New variable. + (extra-objs): Add $(rpcsvc-objs). + ($(objpfxlibrpcsvc.a): New target. + ($(objpfx)x%.o): New rule to rpcgen XDR routines. + +Wed Feb 9 11:59:33 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/zic.c (mkdirs): Reapply fix to avoid writing into passed ptr. + + * sunrpc/Makefile (distribute): Add etc.rpc. + ($(includedir)/bootparam_prot.h): Change target to + $(includedir)/rpcsvc/bootparam_prot.h and dep to + $(includedir)/rpcsvc/bootparam.h. + (install-others): Change reference. + + * sunrpc/rpc_util.h: Comment out bogus decl of sprintf. + + * Makerules ($(libc.a)(__.SYMDEF)): Depend on lib-noranlib instead + of $(+libobjs); this way makes the parent do subdir_lib. + + * sysdeps/unix/sysv/sysv4/sigset.h: Protect types with #ifndef + _SIGSET_H_types. Protect rest with #if !defined (_SIGSET_H_fns) + && defined (_SIGNAL_H). + +Tue Feb 8 19:00:42 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.07.3. + + * sysdeps/unix/sysv/sysv4/sigset.h: Fix typos (omitted __s). + +Mon Feb 7 14:31:00 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules ($(libc.a)): Depend on $(libc.a)(__.SYMDEF); no commands. + ($(+libobjs)): Remove static pattern rule. + (ar-it): Target removed. + Replace with pattern rule to catch %(*.o) for all $(objects). + ($(libc.a)(__.SYMDEF)): New target. + (lib-noranlib, $(libdir)/lib$(libprefix)c.a): Don't depend on ar-it. + + * sysdeps/unix/sparc/sysdep.h (PSEUDO): Add nop after jmp; the + next insn is most likely a retl, which causes interesting behavior. + + * stdio/vfprintf.c: Pass WORKEND+1 to _itoa, not WORKEND. + Subtract one from result of _itoa when setting W. + + * time/{africa,asia,australasia,backward,europe,leapseconds, + northamerica,southamerica,zic.c}: New code and data from ADO. + +Sun Feb 6 13:55:27 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sunrpc: New directory; code from Sun's RPCSRC-4.0. + * sysdeps/unix/inet/Subdirs: Add sunrpc. + * inet/netdb.h: #include at end. + + * Make-dist ($(tardir).tar): Use -v when extracting from dist.tar + and pipe output to doschk. + + * Makeconfig (etcdir): New variable. + (localtime-file): Use that in default value. + + * Makerules (depend-$(subdir)): Include dep files for all .o files + listed in $(extra-objs). + + * posix/sys/types.h (NFDBITS): #define to __NFDBITS. + + * inet/netinet/in.h (INADDR_LOOPBACK): Don't define if already + defined; avoids changing source which defines it before including this. + (struct sockaddr_in): Rename `__pad' member to `sin_zero'; some + code wants to bzero the area just for paranoia. + + Make cleaning targets only remove common (not specific to one + subdir) generated files if run from the parent directory. + * Makefile (parent-clean): Remove $(common-generated) also. + * sysdeps/unix/Makefile (local_lim.h, sys/param.h, errnos.h, + ioctls.h, syscall.h): Append to $(common-generated), not $(generated). + * sysdeps/posix/Makefile (stdio_lim.h): Likewise. + + * signal/signal.h: Declare psignal here. + * stdio/stdio.h: Not here. + + * stdio/stdio.h [__OPTIMIZE__] (vprintf, vfscanf, vscanf, + vsscanf): Define as extern inline functions instead of macros. + + * configure.in (names): Check existence of implied dirs and warn + for absentees. + +Sat Feb 5 13:38:26 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.07.2. + + * resource/sys/resource.h (RUSAGE_SELF, RUSAGE_CHILDREN): #define + to self for things that test #ifdef. + + * sysdeps/unix/common/Dist: Remove bsd_getgrp.S. + + * sysdeps/unix/Makefile: Don't include param.h.dep ifdef no_deps. + + * Makerules (vpath %.h): Use $(common-objpfx) in place of $(objpfx). + + * sysdeps/unix/bsd/i386/__vfork.S: Decrement R1 and AND it with R0 + to avoid the test and branch. + + * sysdeps/unix/bsd/getprio.S, sysdeps/unix/bsd/setprio.S, + sysdeps/unix/bsd/__setreuid.S, sysdeps/unix/bsd/__setregid.S: Moved to + sysdeps/unix/common. + + * sysdeps/unix/reboot.S: New file. + + * sysdeps/unix/sysv/sysv4/solaris2/signum.h: New file. + * sysdeps/unix/sysv/sysv4/signum.h: New file. + * sysdeps/unix/sysv/sysv4/sigset.h: New file. + * sysdeps/unix/sysv/sysv4/sigaction.h (struct sigaction): Swap + positions of sa_flags and sa_mask members (sa_flags is first now). + (SA_NOCLDWAIT): Renamed from SA_NOSCLDWAIT. + + * sysdeps/unix/bsd/init-posix.c (_posix_start_time): Initialize it. + + * Makerules (open-check-inhibit-asm): Use : for empty commands in case. + + * time/leapseconds: New version from ADO, adds 1994 leap second. + +Thu Feb 3 02:15:30 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/ulimit.c: Define ulimit instead of __ulimit. + +Wed Feb 2 16:56:29 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/sigsuspend.S: Moved to unix/sysv/sysv4. + Replaced with #include of that file. + + * sysdeps/unix/sysv/sysv4/solaris2/sigaltstack.S: Moved to + sysdeps/unix/sysv/sysv4/sigaltstk.S. + + * sysdeps/unix/sysv/sysv4/i386/__lstat.S: Syscall lxstat, not xlstat. + * sysdeps/unix/sysv/sysv4/i386/__fstat.S: Syscall fxstat, not xfstat. + +Tue Feb 1 18:22:21 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/_itoa.c, stdio/_itoa.h: New files. + * stdio/Makefile (routines): Add _itoa. + (distribute): Add _itoa.h. + * stdio/vfprintf.c: Use _itoa instead of doing it by hand. + + * sysdeps/unix/sparc/vfork.S: Add nop after jmp. Bad delay slot, + no pipeline. + * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise. + +Mon Jan 31 19:33:04 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * assert/assert.c (__assert_fail): Take 4th arg FUNCTION; if it is + not null, print it in the message. Also declare __NORETURN. + * assert/assert.h (__assert_fail): Update decl; also add __NORETURN. + (__ASSERT_FUNCTION): #define to be __PRETTY_FUNCTION__ for GCC>=2.4. + (assert): Pass __ASSERT_FUNCTION to __assert_fail. + + * sysdeps/unix/bsd/sun/sparc/vfork.S: Moved to sysdeps/unix/sparc. + Use C_SYMBOL_NAME on __vfork instead of prepending an underscore. + + * sysdeps/unix/sysv/sysv4/solaris2/{start.c,sysdep.S,sysdep.h}: Moved + to sysdeps/unix/sysv/sysv4/solaris2/sparc. + + * sysdeps/unix/{i386,sysv/sysv4/solaris2,sysv/i386/linux,bsd/m68k, + bsd/ultrix4/mips,bsd/vax}/sysdep.S: Don't do EWOULDBLOCK_sys->EAGAIN + mapping #if EWOULDBLOCK_sys == EAGAIN. + + * sysdeps/unix/sparc/sysdep.h [NO_UNDERSCORES]: #define syscall_error + to C_SYMBOL_NAME(__syscall_error). + (PSEUDO): On error, jump to syscall_error instead of setting errno. + * sysdeps/unix/sparc/sysdep.S: New file. + + * sysdeps/unix/sysv/sysv4/i386/__vfork.S: New file, just #include + unix/bsd/i386 version. + + * sysdeps/unix/bsd/i386/__vfork.S: Use `scratch' in place of %edx. + +Thu Jan 27 16:46:03 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (asm-CPPFLAGS): Add new check to see if assembling + a .S file loses without -P. If so, set asm-CPPFLAGS=-P in config.make. + + * configure.in (stddef.h): Print msg under --verbose. + + * manual/Makefile (subdir): Define outside of `export' directive, + for old make. + + * time/mktime.c (search): Take new arg PRODUCER, fn to call + instead of `localtime'. + (_mktime_internal): New function; all code from old `mktime', but + take 2nd arg PRODUCER and pass along to `search'. + (mktime): Rewrite to call _mktime_internal with localtime. + * time/Makefile (routines): Add dysize, timegm, timelocal. + * time/time.h (_mktime_internal): Declare it. + [__USE_MISC]: Declare timegm, timelocal, dysize. + * time/dysize.c: New file. + * time/timegm.c: New file. + * time/timelocal.c: New file. + +Wed Jan 26 20:06:23 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + Remove the hackery on getgroups for most systems. It is no longer + necessary because gid_t is now the same size as int. + * sysdeps/unix/common/Makefile (sysdep_routines): Don't add bsd_getgrp. + * sysdeps/unix/common/bsd_getgrp.S: File removed. + * sysdeps/unix/common/__getgrps.S: New file. + * sysdeps/unix/bsd/sequent/i386/__getgrps.S: New file. + + Clean up the rules for cleaning up. + * Makerules (common-mostlyclean): New target; remove object files. + (common-clean): New target; depend on common-mostlyclean, and + remove dep files and generated files. + (clean): Depend on common-clean. + (mostlyclean): Depend on common-mostlyclean. + * Rules (mostlyclean): Target removed. + (clean): Target removed. + (distclean): New target; depend on clean. + (realclean): New target; depend on distclean. + (subdir_distclean): New target; depend on distclean. + (subdir_realclean): New target; depend on realclean. + (subdir_mostlyclean): New target; depend on mostlyclean. + * Makefile (+subdir_targets): Add subdir_distclean, + subdir_realclean; change mostlyclean to subdir_mostlyclean. + (parent-mostlyclean): New target; depend on common-mostlyclean and + remove libc.a and $(install-lib). + (parent-clean): New target; depend on parent-mostlyclean and + common-clean, and remove sysdirs sysd-dirs sysd-Makefile. + (clean): Depend on parent-clean and just do submake for subdirs. + (mostlyclean): Depend on parent-clean and just do submake for subdirs. + (distclean, realclean): Depend on parent-clean and do submake + distclean-1 passing it variable assignment distclean-1=$@. + (distclean-1): Depend on subdir_$(distclean-1) and remove + $(config-generated), config.status, config.make, Makefile (if not + in srcdir). + * manual/Makefile (subdir_clean): Target removed. + (subdir_%): New rule to handle all such targets. + (distclean): Depend on clean, not mostlyclean. + (realclean): Depend on distclean, not clean. + + * sysdeps/unix/configure (unix_generated_dirpfx): New variable. + Use it to put created .S files in sysdeps/unix if configured in + srcdir, else in current directory. + (unix_generated): Prepend $unix_generated_dirpfx. + Have generated config.make fragment prepend $(objpfx). + * sysdeps/unix/Makefile (generated): Don't set it. + (config-generated): Set this instead; don't prepend any directory + prefix to $(unix-generated). + + Fixes for SVR4 wait from jmc@ksu.ksu.edu (James Michael Chacon): + * sysdeps/unix/sysv/sysv4/siginfo.h (__siginfo_t): Add `__code' + and `__pid' fields. + (EXITED, KILLED, CORED, TRAPPED, STOPPED, CONTINUED): New macros. + * sysdeps/unix/sysv/sysv4/__waitpid.c: Switch on INFOP.__code and + construct *STAT_LOC from INFOP.__status accordingly. + + * stdlib/testsort.c (main): Use puts to add newlines to printed lines. + +Tue Jan 25 14:32:01 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.07.1. + + * manual/Makefile (%.z): Change target pattern to %.gz. + (dist): Comment out dep. Don't really need the separate doc dist. + + * stdio/stdio.h [__OPTIMIZE__] (getchar, putchar, getdelim, + getline, __getline): Use extern inlines instead of macros. + + * sysdeps/unix/sysv/sco3.2.4/__waitpid.S: Fix typo ($eax for %eax). + + * sysdeps/unix/siglist.c [! HAVE_GNU_LD] (_sys_siglist): #define + to sys_siglist. + * sysdeps/posix/__gettod.c [! HAVE_GNU_LD] (__daylight, + __timezone, __tzname): #define to non-__ names. + + * math/math.h [__USE_BSD] (M_E, M_LOG2E, M_LOG10E, M_LN2, M-LN10, + M_PI, M_PI_2, M_PI_4, M_1_PI, M_2_PI, M_2_SQRTPI, M_SQRT2, + M_SQRT1_2): New macros. + +Tue Jan 25 14:01:28 1994 Michael I. Bushnell (mib at ernst.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/start.c (start1): Decide separately whether to + split argv and whether to split envp. + + * sysdeps/mach/hurd/i386/sysdep.h: File deleted. + sysdeps/mach/i386/sysdep.h: Delete SET_SP macro. + sysdeps/mach/hurd/start.c (_start): Don't call GET_SP; set globals + instead of locals from exec_startup message. + + * misc/progname.c: Don't try to set + program_invocation_name or program_invocation_short_name if argv + or argv[0] is invalid. + +Mon Jan 24 16:51:43 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sysv4/__waitpid.c: Return INFOP.__pid instead of + the PID we were called with. + + * sysdeps/unix/sysv/__mkdir.c (__mkdir): Restore errno before + returning, not after (lot of good that did). + + * sysdeps/unix/bsd/ultrix4/system.c, sysdeps/unix/bsd/bsd4.4/system.c, + sysdeps/unix/bsd/osf1/system.c, sysdeps/unix/sysv/sco3.2.4/system.c, + sysdeps/unix/bsd/sun/sunos4/system.c, sysdeps/unix/sysv/sysv4/system.c: + New files. Avoid sysdeps/unix/system.c, which defines NO_WAITPID. + + * set-init.c (__libc_init): Use `n' count field instead of + checking for null terminator. The latter loses when there are no + set elts at all, and only one word is allocated for __libc_subinit. + + * sysdeps/generic/waitstatus.h (__WCOREFLAG): New macro. + * posix/sys/wait.h [__USE_BSD] (WCOREFLAG): New; define to __WCOREFLAG. + + * stdio/fileno.c (fileno): Call __stdio_check_funcs. + + * stdio/tst-fileno.c: New file. + +Fri Jan 21 16:56:50 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Rules (dep-dummy-lib, make-dummy-lib): New variables. + ($(objpfx)dummy.o): New file rule. + * posix/Makefile ($(objpfx)libposix.a): Depend on + $(dep-dummy-lib), and use $(make-dummy-lib) for commands. + * math/Makefile ($(objpfx)libm.a): Likewise. + + * sysdeps/unix/sysv/sysv4/i386/__stat.S: New file. + * sysdeps/unix/sysv/sysv4/i386/__lstat.S: Likewise. + * sysdeps/unix/sysv/sysv4/i386/__fstat.S: Likewise. + + * sysdeps/sparc/bytesex.h: New file. + +Thu Jan 20 12:45:35 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/syscall.c (syscall): Declare arg type as int. + +Wed Jan 19 18:18:15 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules ($(before-compile) rule): Protect w/`ifdef before-compile'. + + * manual/Makefile: Change all `mv' uses to `mv -f'. + (subdir_install): Depend on stubs. + + * Makerules ($(objpfx)%.dep: %.s): Depend also on $(objpfx)dummy.dep. + +Tue Jan 18 19:12:57 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/testsort.c (main): Swap dimensions of BUFS array. + +Mon Jan 17 17:31:28 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.07 released. + + * Makerules (install-lib rules): Fix typos: missing / after $(libdir). + + * posix/Makefile (lib): Depend on $(objpfx)libposix.a + * malloc/Makefile (lib): Depend on $(objpfx)libmcheck.a. + * math/Makefile (lib): Depend on $(objpfx)libm.a. + * misc/Makefile (lib): Depend on $(objpfx)libbsd-compat.a. + + * sysdeps/unix/sysv/sco3.2.4/__setpgid.c: New file. + + * stdio/internals.c (flushbuf): Don't try aligned-block writing + calculation when FP->__buffer is nil. + +Mon Jan 17 17:27:56 1994 Jim Meyering (meyering@comco.com) + + * sysdeps/generic/memcmp.c [!_LIBC]: Include for + definition of size_t. + +Mon Jan 17 17:13:11 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/syscall.h: Add SYS_[gs]etitimer and + SYS_pgrpsys (from scottb). + + * sysdeps/unix/configure: Check for getitimer and setitimer syscalls. + + * sysdeps/unix/bsd/sequent/i386/syscall.S: New file from jason. + +Sun Jan 16 00:41:03 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * string/strerror.c (strerror): Declare BUF to be array of char. + + * Version 1.06.13. + +Sat Jan 15 17:27:26 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/testsort.c (main): Rewrite not to read any input; instead + generate some random alphabetic strings. + + * stdlib/Makefile (testsort.input): Rules removed. + + * sysdeps/unix/sysv/i386/__sigret.S: New file. + + * stdio/Makefile (distribute): Add mpn-copy.mk. + Remove 68k rules; include mpn-copy.mk for dir names needing + translation, and rewrite no-68k rules to be generic for the rest. + (mpn-copy-sysdep): New variable. + (mpn-stuff): Include $(mpn-copy-sysdep). + (clean-mpn): Use rm -f. + + * configure.in (machine): Match m68... and m88..., not mc[68]8.... + + * stdio/printf_fp.c: For length arg to __mpn_extract_double, pass + actual number of limbs allocated for F, not LDBL_MANT_DIG. + +Fri Jan 14 19:09:29 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/i386/sysdep.S: Fixed typo: `movl', not `move'. + + * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Swap args in cmpl insn. + +Thu Jan 13 17:09:19 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.12. + + * sysdeps/mips/sqrt.c: File removed. Ian says only the r[46]00 + have `sqrt.d' and GCC open codes it anyway. Perhaps someday + Brendan will be able to explain his rationale for writing this. :( + +Tue Jan 11 18:10:17 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/sys/wait.h (__WAIT_STATUS, __WAIT_STATUS_DEFN): Use snazzy + version only for GCC >= 2.6 (was 2.4); 2.5.7 produces bad code on + sparc when the union arg type is used. + + * Makeconfig (libprefix): New variable. + * Makerules ($(libdir)/libc.a, install): Insert $(libprefix) + between `lib' and `c' in the file name. + [install-lib] (install-lib.a, install-lib-non.a): New variables + separate out $(install-lib) elts which do or don't match lib%.a. + ($(libdir)/...): Split into two rules for above two cases. Put + $(libprefix) on installed files; for lib%.a insert it before % + rather than at beginning of file name. + + * Version 1.06.11. + + * Makerules (compilation rules): Move directoryless rules (for + finding sources in .) before include sysd-rules. Omit rules to + compile from sources in $(objpfx) if not using $(objdir). + + * sysdeps/stub/errlist.c [! HAVE_GNU_LD]: #define _sys_errlist to + sys_errlist and _sys_nerr to sys_nerr. + +Mon Jan 10 15:01:32 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/Makefile (z.%): In generated rules, depend on yearistype. + (tzcompile): Pass -y flag with file name of yearistype. + +Sun Jan 9 17:51:43 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * misc/bsd-compat.c (longjmp): Use __NORETURN in type. + + * sysdeps/ieee754/dbl2mpn.c [N == 2]: For denormal, when + RES_PTR[1] is zero, return 1 instead of 2. + +Sun Jan 9 13:10:25 1994 Torbjorn Granlund (tege@adder.cygnus.com) + + * stdio/printf_fp.c: Solve 10+ problems. + * ieee754/dbl2mpn.c: Correctly detect denorms. Get the denom + exponent right. + +Sun Jan 9 00:40:48 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/ieee754/dbl2mpn.c: Test BITS_PER_MP_LIMB and handle + either 32 or 64; #error if not one of those. + + * sysdeps/stub/udiv_qrnnd.c: Renamed from udiv_qrnnd.S. + +Sat Jan 8 00:25:15 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.10. + + * Makerules ($(libdir)/libc.a): Depend on subdir_install. + +Thu Jan 6 02:17:07 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules ($(bindir)/$(install)): Use $(INSTALL_PROGRAM), not + $(INSTALL). + ($(libdir)/libc.a): Don't depend on lib-noranlib; on libobjs and + ar-it instead. Run ranlib on target after installing. + (installdirs): Target removed; deps on it removed. + (install-{bin,lib,data,headers,others,no-libc.a}): Renamed to + `install-*-nosubdir'. + (install-%): New pattern rule. + (install): Depend only on install-no-libc.a-nosubdir. + * Rules (subdir_install): Depend on lib-noranlib and stubs. + * Makefile (headers): Remove stubs.h. + (install-others): Define to include $(includedir)/stubs.h. + ($(includedir)/stubs.h): New target for $(objpfx)stubs.h rule. + Depend only on subdir_install, and install directly. + + * Makerules (sed-remove-objpfx): Require SPC before $(objpfx) to match. + + * time/zic.c (mkdirs): Duplicate passed string in allocated memory + and free it when done. + + * dirent/dirent.h [__USE_BSD || __USE_MISC]: Get size_t from stddef.h. + + * sysdeps/ieee754/dbl2mpn.c: For zero value, return 1 limb not 0. + + * Makerules (make-dummy-dep): Use filter-out to invert sense of + wildcard match, so we produce a command if $@ does *not* exist.c + + * stdio/Makefile (routines): Add dbl2mpn. + +Wed Jan 5 17:52:43 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/i386/sysdep.S (syscall_error): Reverse args in + `cmpl' insn; non-GNU assembler is feeble-minded. + +Mon Jan 3 18:53:45 1994 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (sysnames): Remove / before $mach; it is prepended + already by the loop constructing $mach from $machine. + +Tue Dec 28 07:38:23 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/Makefile [gmp-srcdir] (clean-mpn): New target. + + * configure.in (machine): Turn i[34]86 into i386/&, sparc* into + sparc/&, m68k into m68k/mc68020, mc680?0 into m68k/&, mips or + r2000 into mips/r3000, r[34]000 into mips/&. + (mach): New variable; processed from $machine as $base from $base_os. + Use that in place of $machine in loop finding sysdep directories. + + * stdio/Makefile (aux): Add mp_clz_tab. + (mpn-copy): Add mp_clz_tab.c. + (mpn-routines): Add udiv_qrnnd. + (mpn-sysdep): Look for .s files too. + * sysdeps/stub/udiv_qrnnd.S: New file. + +Sat Dec 25 00:20:07 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.9. + + * Makefile (distribute): Add install.sh. + * install.sh: New file. + + * sysdeps/i386/Makefile: New file. + (asm-CPPFLAGS): Add -DGAS_SYNTAX. + + * stdio/printf_fp.c: Major rewrite of sysdeps/generic/printf_fp.c, + working with the fractional parts as multiprecision integers + instead of doubles, using mpn functions from GNU MP. Done with + much help from tege@cygnus.com. + * sysdeps/generic/printf_fp.c, sysdeps/ieee754/printf_fp.c, + sysdeps/m68k/fpu/printf_fp.c: Files removed. + +Fri Dec 24 23:09:44 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/dbl2mpn.c, sysdeps/iee754/dbl2mpn.c: New files. + * sysdeps/stub/asm.h: New file. + * sysdeps/m68k/add_n.S, sysdeps/m68k/addmul_1.S, + sysdeps/m68k/mul_1.S, sysdeps/m68k/sub_n.S, + sysdeps/m68k/submul_1.S, sysdeps/m68k/asm.h, + sysdeps/generic/add_1.c, sysdeps/generic/add_n.c, + sysdeps/generic/addmul_1.c, sysdeps/generic/cmp.c, + sysdeps/generic/divmod.c, sysdeps/generic/divmod_1.c, + sysdeps/generic/lshift.c, sysdeps/generic/rshift.c, + sysdeps/generic/mod_1.c, sysdeps/generic/mul.c, + sysdeps/generic/mul_1.c, sysdeps/generic/mul_n.c, + sysdeps/generic/sub_n.c, sysdeps/generic/submul_1.c, + sysdeps/generic/get_str.c, sysdeps/i386/addmul_1.S, + sysdeps/i386/mul_1.S, sysdeps/i386/submul_1.S, + sysdeps/alpha/gmp-mparam.h, sysdeps/generic/gmp-mparam.h, + sysdeps/i386/asm.h, stdio/longlong.h, stdio/gmp.h, + stdio/gmp-impl.h: New files, taken from GNU MP. + * stdio/Makefile (mpn-headers, mpn-routines): New variables. + (routines): Include $(mpn-routines). + (distribute): Include $(mpn-headers). + [gmp-srcdir]: Much code to copy mpn source from $(gmp-srcdir). + * configure.in: Check for a --with-gmp argument and set gmp-srcdir + in config.make to its value (error if no arg given). Move + config_vars initialization before this (right after arg parsing). + +Thu Dec 23 01:44:12 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/m68k/Makefile (m68k-syntax-flag): New variable. + (compile-command.S): Include $(m68k-syntax-flag) in cpp flags. + + * manual/Makefile (install-data): New target. + (install-%): New pattern rule. + + * Makerules ($(bindir)/...): Do $(make-target-directory) first. + +Thu Dec 23 01:03:19 1993 Brendan Kehoe (brendan@zen.org) + + Port to the DEC Alpha running OSF/1. (75% done) + * sysdeps/unix/bsd/osf1/alpha/start.S: New file. + * sysdeps/unix/bsd/osf1/alpha/sysdep.h: New file. + * sysdeps/unix/bsd/osf1/alpha/sysdep.S: New file. + * sysdeps/unix/bsd/osf1/alpha/__brk.S: New file (incomplete). + * sysdeps/unix/bsd/osf1/alpha/__fork.S: New file. + * sysdeps/unix/bsd/osf1/alpha/__pipe.S: New file. + * sysdeps/unix/bsd/osf1/alpha/__getdents.S: New file. + * sysdeps/unix/bsd/osf1/alpha/__waitpid.c: New file. + * sysdeps/unix/bsd/osf1/alpha/__wait4.S: New file. + * sysdeps/unix/bsd/osf1/dirstream.h: New file. + * sysdeps/unix/bsd/osf1/alpha/statbuf.h: New file. + * sysdeps/unix/bsd/osf1/direct.h: New file. + * sysdeps/unix/bsd/osf1/dirstream.h: New file. + * sysdeps/unix/bsd/osf1/Makefile: New file, defining LDFLAGS. + + * sysdeps/unix/ioctls-tmpl.c [__osf1__ && __alpha__]: Clean up the + ioctls that we get for an Alpha running OSF/1. + + * sysdeps/unix/common/glue-ctype.c: Add code for HAVE__LOCP. + (main): If new macro TABLE_NAME is defined, use that for the name + of the array we're writing out, rather than what's defined in TABLE. + * sysdeps/unix/common/configure.in (AC_HAVE_FUNCS): Add `_locp'. + + * sysdeps/unix/bsd/osf1/sigaction.h: Add SA_ONSTACK, SA_RESTART, + and SA_DISABLE. + * sysdeps/alpha/setjmp.S: Add .end directive. + + * time/sys/time.h (struct timeval): Make members TV_SEC and + TV_USEC be `int', not `long', since it won't hurt other hosts, but + kills the Alpha. + * resource/sys/resource.h (struct rusage): Make all non-timeval + members be `long', not `int'. + + * sysdeps/alpha/strlen.c (strlen): Go from 0 to 7, not 3, since + there are 8 bytes in a long on the Alpha. Check for '\0' after + checking for C in initial byte-by-byte loop. + * sysdeps/alpha/strchr.c (strchr): Likewise. Shift out to 64 when + setting CHARMASK. + * sysdeps/alpha/memchr.c (memchr): Likewise. Return NULL if we + didn't find it in N characters, or N == 0. Declare CP to be an + unsigned char*. + + * sysdeps/alpha/Makefile: Add divrem stuff. + * sysdeps/alpha/DEFS.h: New file. + * sysdeps/alpha/divrem.m4: New file. + * sysdeps/alpha/macros.m4: New file. + * sysdeps/alpha/Dist: Add .S files, divrem.m4, macros.m4, and DEFS.h. + + * sysdeps/unix/bsd/osf1/alpha/vhangup.S: New file. (Only a + temporary workaround, until we figure out how to deal with the + SYS_ult syscalls better.) + * sysdeps/unix/bsd/osf1/alpha/killpg.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__sigvec.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__sigpause.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/__sigstmsk.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/recv.S: Likewise. + * sysdeps/unix/bsd/osf1/alpha/send.S: Likewise. + + * sysdeps/alpha/__math.h (__copysign): Add __CONSTVALUE. + * sysdeps/alpha/__copysign.c: Define __NO_MATH_INLINES. + * sysdeps/alpha/fabs.c: Likewise. + +Wed Dec 22 17:55:49 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * crypt/*: New version from glad. + + * sysdeps/unix/sysv/sysv4/Dist: Add __getpgid.c and __setpgid.c. + + * dirent/Makefile (headers): Define; include dirent.h & dirstream.h. + +Tue Dec 21 14:24:38 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/i386/statbuf.h (struct stat): Add + missing member ST_FSTYPE. Fixup types on various members to make + this properly reflect what the system has. + + * misc/ioctl.c (ioctl): Declare 2nd arg to be unsigned long int to + match the change in ioctl.h. + +Tue Dec 21 00:01:01 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.8. + + * dirent/dirent.h (struct dirent): Add `d_reclen'; make `d_namlen' + an `unsigned short int' instead of `size_t'. + (DIR): Move typedef to sysdep file dirstream.h. + * sysdeps/unix/dirstream.h: New file, broken out of dirent.h. + * sysdeps/stub/dirstream.h: New file. + * sysdeps/unix/bsd/dirstream.h: New file. + * sysdeps/unix/bsd/readdir.c: New file. + +Mon Dec 20 23:29:07 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/start.c: Include . + * sysdeps/unix/sysv/sysv4/i386/start.c: File removed. + +Sat Dec 18 01:37:25 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/i386/start.c: New file. Same as + sysdeps/unix/i386/start.c, but defines NO_UNDERSCORES. + + * sysdeps/unix/sysv/sysv4/waitflags.h: New file, with non-standard + WEXITED and WTRAPPED macros defined. + * sysdeps/unix/sysv/sysv4/__waitpid.c: New file. + * sysdeps/unix/sysv/sysv4/siginfo.h: New file. + * sysdeps/unix/sysv/sysv4/__waitid.S: New file. + * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Mention __waitid. + * sysdeps/unix/sysv/sysv4/pipestream.c: New file, to avoid having + NO_WAITPID set. + * sysdeps/unix/sysv/sysv4/Dist: Added __waitid.S and siginfo.h. + + * sysdeps/unix/sysv/sysv4/__getpgid.c: New file. + * sysdeps/unix/sysv/sysv4/__setpgid.c: New file. + * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Add them. + + * sysdeps/unix/sysv/sysv4/__getpgrp.c (__getpgrp): It's the 0th + subcall for getpgrp, not 4th. + * sysdeps/unix/sysv/sysv4/__setpgrp.c (__setpgrp): Likewise, it's + the 1st, not the 5th. + +Fri Dec 17 15:05:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * misc/sys/ioctl.h (__ioctl, ioctl): Make second arg `unsigned + long int' instead of `int' (4.4 uses unsigned long). + + * string/string.h (strcat): Parameters names were swapped. + +Fri Dec 17 01:18:27 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * Made the Hurd error system 0x10 again; this undid many + of the changes of Nov 23. Affected all the err_ files in + mach; recreated sysdeps/hurd/err_hurd.sub; changed back + err_kern.sub to have the Unix error codes. + +Thu Dec 16 15:40:25 1993 Brendan Kehoe (brendan@zen.org) + + * stdio/temptest.c (main): Remove the files we created once we're + done. Make return type int, and exit with 0 status. + + * sysdeps/posix/tempname.c (__stdio_gen_tempname): Fix typo of + extra comma in sprintf call. + +Tue Dec 14 13:08:35 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/tempname.c (__stdio_gen_tempname): Rewrote main + logic. Removed INFOS structure array and replaced it with + INDICES, an array of size_t. Removed INFO ptr and replaced it + with IDX, which points to either elt of INDICES. Rewrite main + loop to increment *IDX until it hits 62*62*62. Construct file + name by dividing out two powers of 62 from *IDX and using the + modulus as an index into `letters'. + + * sysdeps/unix/common/Makefile (sysdep_routines): Only add + bsd_getgrp here if the sysdep __getgrps.? chosen is unix/common's. + + * posix/fnmatch.h: #undef FNM_PATHNAME, FNM_NOESCAPE, and + FNM_PERIOD before defining them. + + * time/__tzset.c (compute_change): In M case when tallying time in + months before specified month, count to RULE->m - 1, not ...+1. + + * manual/Makefile (realclean): Remove index, aux, and toc files + created by TeX. + +Mon Dec 13 19:33:33 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/__wait3.c: Use __WAIT_STATUS_DEFN in place of + __WAIT_STATUS in arg type. + +Wed Dec 8 15:59:45 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/memalign.c: Set L->next and _aligned_blocks only when L + is newly allocated, not when we reuse an old one. + +Tue Dec 7 16:04:22 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * io/fcntl.c: Replace function_alias use with: + [HAVE_GNU_LD]: Use symbol_alias. + [! HAVE_GNU_LD]: Define fcntl to use stdarg and call __fcntl. + +Mon Dec 6 17:50:05 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/i386/sysdep.S (syscall_error): Fix labels so + they'll compile. + + Make the Solaris port work dammit. + * sysdeps/unix/sysv/sysv4/solaris2/statbuf.h (struct stat): Make + ST_DEV member be unsigned long, not short. + + * sysdeps/unix/sysv/sysv4/solaris2/direct.h: New file, same as + sysv4/direct.h but uses strlen instead of the offset-based + computation of the name length, since that doesn't reliably work + for Solaris. + + * sysdeps/unix/sysv/sysv4/solaris2/sysdep.h (PSEUDO): Don't move + %g0 into %o0, since that will clobber the real return value. Take + out the retl at the end, why in the world did I put it in there? + +Mon Dec 6 17:27:26 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile ($(objpfx)crt1.o): Add target to $(objpfx)Mcrt1.o + rule; generalize commands. + (install-lib): Add crt1.o. + + * sysdeps/unix/Makefile ($(common-objpfx)ioctls): Use -x flag to + fgrep to match only entire lines. + +Sun Dec 5 01:53:43 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/bsd/ultrix4/mips/start.S: New file. + * sysdeps/unix/bsd/ultrix4/mips/start.c: Deleted. + +Thu Dec 2 18:29:01 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/bsd/ultrix4/mips/sysdep.S: Don't use dollar signs + with the errnos. + + * sysdeps/stub/{__wait, __wait3, __wait4}.c, + sysdeps/unix/bsd/bsd4.4/{__wait, __wait3}.c, + sysdeps/unix/bsd/sun/sunos4/__wait4.c, + sysdeps/posix/{__wait, __wait3}.c, posix/{wait, wait3, wait4}.c: Use + __WAIT_STATUS_DEFN, not __WAIT_STATUS. + + * sysdeps/posix/killpg.c (killpg): Make arg PGRP __pid_t, not pid_t. + * sysdeps/stub/killpg.c (killpg): Likewise. + + * setjmp/longjmp.c (longjmp): Only use __NORETURN if !HAVE_GNU_LD. + * setjmp/_longjmp.c (_longjmp): Likewise. + +Thu Dec 2 17:31:19 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/sys/wait.h (__WAIT_STATUS_DEFN): Define new macro. + + * Makerules (+install): Variable removed. + (install-bin, install-lib, install-data, install-headers, + install-others): New targets. + (install-no-libc.a): Depend on them instead of $(+install). + + * Makefile (+subdir_targets): Add + install-{no-libc.a,bin,lib,data,headers,others}. + (install-no-libc.a): Don't depend on subdir_install. + +Thu Dec 2 17:14:39 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/ieee754/__isnan.c (__isnan): Return __CONSTVALUE, to + match declaration in math/math.h. + +Thu Dec 2 15:48:19 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/africa, time/antarctica, time/asia, time/australasia, + time/emkdir.c, time/europe, time/ialloc.c, time/northamerica, + time/pacificnew, time/private.h, time/solar87, time/solar88, + time/southamerica time/systemv, time/tzfile.h, time/zdump.c, + time/zic.c: New data and code from ADO. + * time/Makefile (tzfiles): Added backward. + * time/backward: New file from ADO. + + * locale/C-ctype_ct.c: Remove _ISspace bit from BS (8). + +Wed Dec 1 00:01:30 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * mach/err_kern.sub: Frob around lack of GNU ld. + + * mach/errsystems.awk: The declaration of __mach_error_systems + should not be static, but it should be const. + + * sysdeps/mach/hurd/errlist.awk (BEGIN): Deal with the case + where you don't have GNU ld. + + * sysdeps/mach/hurd/Makefile: Define mib_hacks to make. + +Tue Nov 30 23:24:07 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * Makefile: install-no-libc.a needs to depend on subdir_install. + +Mon Nov 29 16:21:38 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * sysdeps/mach/_strerror.c: Include . + + * hurd/setuids.c: Put entire file inside #ifndef MIB_HACKS; + it uses the old auth_makeauth call. + + * hurd/__setauth.c: Put entire file inside #ifndef MIB_HACKS; + it depends on cthreads to compile, which is not yet integrated. + + * hurd/hurdpath.c (__hurd_path_lookup): cast to avoid GCC warning. + +Wed Nov 24 00:59:15 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * hurd/Makefile: Commented out hurdauth; recent changes to + auth.defs prevent it from working now. + + * mach/mach_error_string.c (do_compat): Change name to + __mach_error_map_compat; make it no longer static. + (mach_error_type, mach_error_string_int): Use + __mach_error_map_compat instead of do_compat. + * sysdeps/mach/_strerror.c: Use __mach_error_map_compat. + + * mach/devstream (output/write_some): Cast fourth argument to + device_write_inband to char * to avoid warning. + (output): Call to write_some mentioned variable `start' from + a previous version of the function; changed this to f->__buffer. + +Tue Nov 23 23:16:13 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + [ The net effect of the following change is to eliminate error + systems which are specific to single-server Mach systems, and + to put the Hurd errors where the Unix errors were. ] + * mach/{err_bootstrap.sub,err_ipc.sub,err_server.sub,err_us.sub}: + None of these are used for the Hurd; we shouldn't pretend that + they are meaningful in our environment. The files have been + renamed to equivalent names with an equal sign prepended; this + will inhibit distribution and prevent the Makefile from looking at + them. + * mach/err_kern.sub: Deleted the definitios of err_codes_unix; + get the strings from _sys_errlist. Rename `unix' to `hurd'. + Rename err_os_sub to be err_kern_sub to match what errsystems.awk + expects. + * sysdeps/mach/hurd/err_hurd.sub: Deleted this file. + * sysdeps/mach/hurd/errnos.awk: Changed definition of _HURD_ERRNO + to be correct. + + * sysdeps/mach/hurd/Makefile: use gawk, not awk. + + * mach/errsystems.awk: Generally rewrote the printf. It's now + closer to Roland's original, but without the $i mistake at all, + in any form. + +Tue Nov 23 20:21:06 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/{i386,sysv/sysv4/solaris2,sysv/i386/linux,bsd/m68k, + bsd/ultrix4/mips,bsd/vax}/sysdep.S: Define _ERRNO_H before + including ; otherwise does not define most + macros (importantly, EAGAIN!). + +Tue Nov 23 12:43:38 1993 Michael I. Bushnell (mib at ernst.gnu.ai.mit.edu) + + * mach/errsystems.awk: $i is not an index; make i a variable and + increment it properly. Don't call `err_get_system'; use the + system number as the index in the array directly. + + * mach/errorlib.h: Added `const' in all the right places. + * sysdeps/mach/hurd/err_hurd.sub: Cast _sys_errlist to + the right type. Better to declare it right in stdio/stdio.h, but + I don't dare change that file lest Roland call me a twit. + * mach/err_us.sub: Add more brackets to initializer to shut GCC up. + + * sysdeps/mach/hurd/err_hurd.sub: Delete keyword `const'; this + is taken care of by the `#define static static const' found in + errsystems.c as created by mach/errsystems.awk. + * mach/errsystems.awk: Ditto for declaration of __mach_error_systems. + + * sysdeps/mach/hurd/err_hurd.sub: Change to ; + errnos.h doesn't define most stuff unless it is included from errno.h. + + * mach/mach_error_string.c (mach_error_string_int): Delete unused + variable `err_str'. + + * mach/mach_error_string.c (do_compat): Declare to be void. + (mach_error_string,mach_error_type, mach_error_string_int): + Declare return type as const char *. + * mach/mach_error.h: Change declarations to match. + + * mach/errsystems.awk: The array that split creates is origin 1, + not origin 0; fixed loop to match. + + * sysdeps/mach/hurd/errnos.awk: Ernst's awk doesn't grok + backslash-newline inside strings. + +Sat Nov 20 19:02:25 1993 Brendan Kehoe (brendan@zen.org) + + * math/__finite.c (__finite): Return __CONSTVALUE, to match math.h. + * math/__scalb.c (__scalb): Likewise. + * math/copysign.c (copysign): Likewise. + * math/drem.c (drem): Likewise. + * math/expm1.c (expm1): Likewise. + * math/finite.c (finite): Likewise. + * math/infnan.c (infnan): Likewise. + * math/isinf.c (isinf): Likewise. + * math/isnan.c (isnan): Likewise. + * math/logb.c (logb): Likewise. + * math/rint.c (rint): Likewise. + * math/scalb.c (scalb): Likewise. + * sysdeps/generic/atan.c (atan): Likewise. + * sysdeps/ieee754/__copysign.c (__copysign): Likewise. + * sysdeps/ieee754/__drem.c (__drem): Likewise. + * sysdeps/ieee754/__isinf.c (__isinf): Likewise. + * sysdeps/ieee754/__logb.c (__logb): Likewise. + * sysdeps/ieee754/ldexp.c (ldexp): Likewise. + * sysdeps/ieee754/log10.c (log10): Likewise. + + * setjmp/_longjmp (_longjmp): Add __NORETURN. + * setjmp/longjmp (longjmp): Likewise. + +Thu Nov 18 04:16:34 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * string/strerror.c (strerror): Call _strerror_internal to do the + work, passing it a scratch buffer. + * stdio/perror.c: Likewise. + * string/Makefile (routines): Add _strerror. + * sysdeps/generic/_strerror.c (_strerror_internal): New file. + + * configure.in (config.status): Make it pass its args to configure. + +Thu Nov 18 03:52:32 1993 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) + + * stdio/__vfscanf.c (__vfscanf): Put the floating point cases + (e,E,f,g,G) inside #ifndef MIB_HACKS; roland thikgs strtod crashes + the compiler. Wheee. + +Thu Nov 18 03:21:51 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * errno.h [__USE_GNU__]: Declare program_invocation_name and + program_invocation_short_name. + +Thu Nov 18 00:07:37 1993 Michael I. Bushnell (mib at ernst.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/start.c (start1): Don't add one to + the return value of split_args; it counts them just fine by + itself. Do add one when sizing the arrays. + +Mon Nov 15 00:19:48 1993 Noel Cragg (noel@geech.gnu.ai.mit.edu) + + * time/mktime.c: add TIMES_THROUGH_SEARCH variable to make sure + that we don't get caught in an infinite loop (would be bad, + indeed, for a library routine). + +Sun Nov 14 18:48:28 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * misc/sys/cdefs.h (__NORETURN, __CONSTVALUE): Use + `__attribute__', not `__attributes__'. + Test __GNUC_MINOR__ < 6, not < 5. + +Wed Nov 10 05:39:15 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/morecore.c: Only declare sbrk #ifdef __GNU_LIBRARY__. + Cast its return value. + + * sysdeps/unix/bsd/m68k/syscall.S: Use movel in place of moveal. + + * configure.in (signed size_t check): Don't use AC_DEFINE; do it + by hand and insert -U__SIZE_TYPE__ before -D. + + * posix/unistd.h: Declare syscall. + + * sysdeps/m68k/fpu/__math.h (__isnan, __isinf): Use __CONSTVALUE + in prototypes. + + * configure.in (Makefile): Write ARCH=`pwd`, rather than + substituting in the directory name at configure time. + + * sysdeps/mach/i386/syscall.S: New file. + +Tue Nov 9 06:29:15 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (os = netbsd* | 386bsd*): base_os=unix/bsd/bsd4.4. + Set --with-gnu-{ld,as} implicitly when base_os is bsd4.4. + + * Version 1.06.7. + + * misc/Makefile (routines): Add syscall. + * sysdeps/unix/syscall.S, sysdeps/stub/syscall.c, + sysdeps/unix/bsd/sun/m68k/syscall.S, sysdeps/unix/bsd/m68k/syscall.S, + sysdeps/unix/i386/syscall.S: New files. + * sysdeps/unix/bsd/hp/m68k/sysdep.h (DO_CALL): First arg + is syscall number, not name. + (PSEUDO): Pass POUND (SYS_ify (syscall_name)) to DO_CALL. + * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h (DO_CALL, PSEUDO): + Likewise. Also, do movel into d0 before linkw, so the argument + could conceivably pop the stack. + * sysdeps/unix/bsd/hp/m68k/__brk.S: Pass complete number to DO_CALL. + + * sysdeps/unix/sysv/Dist: sys_getdents.S was renamed s_getdents.S. + +Thu Nov 4 01:23:59 1993 Michael I. Bushnell (mib at ernst.gnu.ai.mit.edu) + + * string/stpncpy: Fix typo; according to gnu-stabs.h the name + inside the DEFUN should be the *non* __ version. + * sysdeps/generic/__stpncpy.c: Missing declaration of s. + +Wed Nov 3 09:35:30 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile ($(objpfx)errlist.c): Conditionalize these + rules to be used only when errlist.c is otherwise a stub. + +Fri Oct 29 17:29:20 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * string/stpncpy.c: New file. + * sysdeps/generic/__stpncpy.c: New file. + * string/Makefile (routines): Add stpncpy and __stpncpy. + * string/string.h [__USE_GNU__]: Declare them. + +Thu Oct 28 17:13:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/errnos-tmpl.c (DO): If NAME is "EWOULDBLOCK", + write "#define EWOULDBLOCK EAGAIN" and change NAME to + "EWOULDBLOCK_sys". + * sysdeps/unix/{i386,sysv/sysv4/solaris2,sysv/i386/linux,bsd/m68k, + bsd/ultrix4/mips,bsd/vax}/sysdep.S [EWOULDBLOCK_sys]: Translate + EWOULDBLOCK_sys into EAGAIN. + * Makefile (distribute): Add move-if-change. + * move-if-change: New file. + +Tue Oct 26 18:19:34 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * misc/sys/cdefs.h: Define __NORETURN and __CONSTVALUE. + For GCC 2.5 and later, use __attributes__ (({volatile,const})). + * stdlib/stdlib.h: Don't define either here. + * math/math.h: Likewise. + * posix/unistd.h: Likewise. + * time/time.h: Likewise. + * stdio/stdio.h: Likewise. + * setjmp/setjmp.h: Likewise. + + * posix/sys/wait.h (__WAIT_STATUS): Use union hack defn for GCC + 2.4 and up (testing __GNUC__ and __GNUC_MINOR__). + + * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Don't include . + + * Makerules [inhibit-sysdep-asm] + (open-check-inhibit-asm, close-check-inhibit-asm): New variables. + ($(+sysdir_pfx)sysd-rules): Use them around .s and .S rules. + Depend on existing sysdep makefiles. + +Mon Oct 25 15:56:41 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/mach/hurd/killpg.c: Include for pid_t. + + * sysdeps/posix/tempname.c (__stdio_gen_tempname): Take new arg + STREAMPTR. When non-nil, use __open with O_EXCL to test for + existence, and set *STREAMPTR to new stream on returned fd. + * stdio/stdio.h: Update prototype. + * sysdeps/stub/tempname.c: Here too. + * stdio/tmpfile.c: Pass &F to __stdio_gen_tempname instead of + using fopen. + * stdio/tmpnam.c: Pass extra NULL arg. + * stdio/tempnam.c: Likewise. + + * configure.in (switches): Only put --os-{release,version} here. + (config.status): Write $configure_args in place of $config $switches. + + * signal/Makefile (routines): Renamed sigaltstack to sigaltstk. + * sysdeps/stub/sigaltstack.c: Renamed to sigaltstk.c. + * sysdeps/unix/bsd/bsd4.4/sigaltstack.S: Renamed to sigaltstk.S. + * sysdeps/unix/sysv/sys_getdents.S: Renamed to s_getdents.S. + * sysdeps/unix/sysv/Makefile (sysdep_routines): Changed reference. + +Fri Oct 22 03:47:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/realloc.c [MEMMOVE_MISSING]: Test this to use safe_bcopy. + [emacs]: Don't define safe_bcopy. + + * time/zdump.c, time/europe: New versions from ADO. + + * Rules (dont_distribute): Export this variable. + (subdir_echo-distinfo): Echo its value for +nodist+. + +Thu Oct 21 15:58:08 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/__dup2.c: Include . + [OPEN_MAX]: Fail with EBADF if FD2>=OPEN_MAX. + + * sysdeps/unix/Makefile (sys/param.h): Conditionalize all this + code to happen only when there is no sysdep sys/param.h. + +Wed Oct 20 03:35:41 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (make-dummy-dep): Change to `ln $(objpfx)dummy.dep $@'. + ($(objpfx)dummy.dep): Create new file containing comment. + ($(objpfx)%.dep: $(objpfx)%.s): Depend on $(objpfx)dummy.dep. + ($(+sysdir_pfx)sysd-rules): Likewise in generated rule. + +Mon Oct 18 04:22:42 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * signal/signal.h (killpg): Make PGRP arg pid_t. + * sysdeps/posix/killpg.c (killpg): Likewise. + * sysdeps/stub/killpg.c (killpg): Here too. + + * posix/glob/configure.in: Use AC_HAVE_HEADERS instead of + AC_MEMORY_H and AC_UNISTD_H; omit AC_USG (not needed). + + * Rules (generated): New target. + + * Makefile (subdirs): Use filters to put mach and hurd first in + the list if they are in it at all. + * Makerules (before-compile): Reorder similarly, matching any + generated mach or hurd files. + +Fri Oct 15 17:57:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/mk-stdiolim.c [! OPEN_MAX]: Use _POSIX_OPEN_MAX + for FOPEN_MAX value. + [! PATH_MAX]: Use 1024 (twice _POSIX_PATH_MAX) for FILENAME_MAX value. + + * Makerules (in-Makerules): Define this variable before including + sysd-Makefile. + +Sun Oct 10 14:31:35 1993 Jim Meyering (meyering@comco.com) + + * posix/fnmatch.c [CONFIG_BROKETS]: Include only under + this condition, else "config.h". + +Tue Oct 05 16:08:39 1993 Jim Meyering (meyering@comco.com) + + * time/mktime.c [CONFIG_BROKETS]: Include only under + this condition, else "config.h". + +Thu Sep 23 15:14:08 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/__dup2.c: New file. + +Wed Sep 22 16:58:29 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/solaris2/statbuf.h: New file. + * sysdeps/unix/sysv/sysv4/i386: New directory. + * sysdeps/unix/sysv/sysv4/i386/statbuf.h: New file. + +Fri Sep 17 04:03:26 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (+make-deps): Put output in temp file and use atomic mv. + + * Makerules ($(+sysdir_pfx)sysd-rules): New target, the rule part + of what was in sysd-Makefile. Include it. + ($(+sysdir_pfx)sysd-Makefile): Do just includes here. Move the + generated implicit rules to sysd-rules. Put the output into a + temp file and use atomic mv to final target. + (before-compile): Filter out existing files from value, after + sysd-Makefile but before sysd-rules. + +Thu Sep 9 22:28:13 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile (%/configure): Copy rule from Make-dist. + +Mon Sep 6 19:57:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (sources, objects): Move override definitions to + before +depfiles calculation. + + * time/{asia,australasia,europe,zdump.c}: New versions from ADO (93e). + +Mon Aug 30 13:40:34 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * string/string.h (memmem): Reverse argument order, to be like strstr. + * sysdeps/generic/memmem.c: Here too. + + * dirent/scandir.c: For error return, save errno around closedir. + Call closedir (DP) before returning successfully. + +Thu Aug 26 19:26:06 1993 Brendan Kehoe (brendan@zen.org) + + * sysdeps/unix/sysv/sysv4/solaris2/sysdep.h: Rewritten to not use + the generic sparc sysdep.h. + (PSEUDO): Use trap 8, not 0. Also just put %g0 in %o0, without + subtracting 1. + (ENTRY): Align on 4, and add a `.type' directive. + * sysdeps/unix/sysv/sysv4/solaris2/sysdep.S: New file. + +Fri Aug 20 19:37:55 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/abort.c: Remove unused variable ABORTING. + +Thu Aug 19 17:45:34 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makeconfig [!objdir] [!..] (common-objdir): Set to `.'. + +Wed Aug 18 15:10:13 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/__vfscanf.c (__vfscanf: number): Reverse sense of + NUMBER_SIGNED conditional in assignment code. + +Mon Aug 16 15:49:13 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile (syscall.h): Add sed + s/SYS_syscall_basenum/syscall_basenum/g. SYSCALL_BASENUM is a + macro both defined and used in ; we must undo our + prependation of `SYS_'. + + * Version 1.06.6. + +Fri Aug 13 16:53:02 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/__vfscanf.c: New local variable NUMBER_SIGNED. + (%x, %X, %o, %u): Set it to zero. + (%d, %i): Set it to one. + (number): If NUMBER_SIGNED is set, use strtol and store in ...int*. + If clear, use strtoul an store value in unsigned ...int*. + + * malloc/malloc.h: Undo last change (_AIX32). + (memory_warnings): Use const instead of __const in prototype. + +Fri Aug 13 00:22:01 1993 John Grabowski (johng@whiskey.media.mit.edu) + + * configure.in (os = osf1*): base_os=unix/bsd. + +Thu Aug 12 16:37:13 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/valloc.c [__GNU_LIBRARY__ || _LIBC]: Include + before trying to use size_t to declare __getpagesize. + Include before trying to use __P. + + * posix/{fnmatch,glob}.c, malloc/malloc.h [HAVE_CONFIG_H]: Include + instead of "config.h". This is so that a compilation + using -I. -I$srcdir will use ./config.h rather than + $srcdir/config.h (which it would do when glob.c was found in $srcdir). + + * malloc/malloc.h [_AIX32]: Use !__STDC__ defns of __P, const, __ptr_t. + +Mon Aug 9 16:56:31 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (-e check): Don't rely on $(findstring e,$(MAKEFLAGS)) + since that also trips for --no-print-directory. + Instead actually see if -e's functionality is taking place. + + * malloc/realloc.c: Call _free_internal instead of free in most places. + + * configure.in (arg parsing): No spaces around = in eval. + + * sysdeps/i386/abort.c: New file. + * stdlib/abort.c: Moved to sysdeps/generic/abort.c. + (abort): Don't try to do stdio cleanup, since we can't guarantee + it anyway. + +Fri Aug 6 17:59:56 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules ($(+install)): Don't depend on installdirs. + (make-target-directory): New define. + (do-install): Do $(make-target-directory) beforehand. + +Tue Aug 3 02:22:41 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/sys/reboot.h: New file. + * sysdeps/unix/bsd/sys/reboot.h: New file, snarfed from 4.4. + * misc/Makefile (headers): Add sys/reboot.h. + + * stdio/stdio.h (__io_{read,write,seek,close,fileno}): Renamed to + __io_*_fn, so as not to conflict with the Hurd mig stubs. + * internals.c: Changed uses. + + * sysdeps/unix/bsd/signum.h (SIGINFO): Define as 29. + + * Makerules (+includes): Don't set this here. + * Makeconfig (+includes): Put $(+sysdep-includes) in the value here. + + * posix/unistd.h [__USE_MISC]: Declare mktemp and mkstemp. + +Mon Aug 2 16:59:12 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/valloc.c: Move getpagesize goop to before malloc.h. + [_LIBC]: Test this as well as __GNU_LIBRARY__ (either one) to use + __getpagesize instead of "getpagesize.h". + +Sun Aug 1 16:55:18 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (arg parsing): For `--with-foo=bar', do + "with_foo='bar'". For `--with-fnord', do "with_fnord=yes". + * sysdeps/mach/configure: New file, groks `--with-mach=DIR'. + +Fri Jul 30 00:01:00 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (os = gnu*): Set $base_os, not $os, to mach/hurd. + +Thu Jul 29 17:46:02 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * ctype/ctype.h (__isctype): Don't test !=0, to avoid possible + extra test insn. + +Sun Jul 25 22:19:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * setjmp/setjmp.h [! __FAVOR_BSD] (_longjmp): Define as longjmp. + +Thu Jul 22 14:57:15 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/osf1/sigaction.h: New file. + + * sysdeps/stub/signum.h: Deansideclized. + * sysdeps/stub/pipestream.c (pclose): Test STREAM->__ispipe + instead of __ispipe (STREAM). + * sysdeps/stub/__wait3.c: Fix arg types. + * sysdeps/stub/__ioctl.c: Add missing close paren. + * sysdeps/stub/__getpgsz.c: Include for size_t. + * sysdeps/stub/__get[gu]id.c: Include ; fix return type. + * sysdeps/stub/__set[gu]id.c: Include ; fix arg type. + * sysdeps/stub/__mknod.c: Include ; fix arg types. + + * sysdeps/generic/termbits.h (INLCR, ISTRIP): Fixed typo'd values. + + * stdio/stdio.h (vprintf): Fix last arg type to __gnuc_va_list. + * stdio/vprintf.c (vprintf): Here too. + + * malloc/malloc.c (malloc) [SUNOS_LOCALTIME_BUG]: Put this crap + after hook and initialization. + + * stdio/stdio.h (__validfp): Use a little anonymous struct to find + the real stream ptr from in glue stream. It used to rely on using + `((int *) STREAM)[1]'; but that assumes no struct padding, and + there will be some when int is 32 bits and pointers are 64. + + * malloc/mtrace.c: Use %lx instead of %x for `size_t' formats. + +Wed Jul 21 18:20:41 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * malloc/malloc.c (malloc): Handle SUNOS_LOCALTIME_BUG. + +Wed Jul 21 16:42:14 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/Makefile (extra-objs): Remove gratuitous - in `z.%'. + + * Makefile [+gnu-stabs] (generated): Add $(objpfx)munch-init.c. + (distclean): Also remove sysd-Makefile and sysd-dirs in $(objpfx). + (distclean) [objdir]: Also remove $(objpfx)Makefile. + + * sysdeps/posix/Makefile (generated): Add $(common-objpfx)mk-stdiolim. + (generated, before-compile): Take defns out of ifeq ($(subdir),posix). + + * sysdeps/unix/common/Makefile (generated): Include ctype-glue.c, + not glue-ctype.c. + + * sysdeps/unix/configure (unix_generated): New variable; collect + names of created files in it. + (config_vars): Write an assignment for `unix-generated' to that list. + * sysdeps/unix/Makefile (generated): Append $(unix-generated) + (with either $(objpfx) or $(sysdep_dir)/unix/ prepended to each file). + + * Makefile (clean): Pass no_deps=t to subdir_clean make. + +Sun Jul 18 21:42:05 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/malloc.c (malloc): After getting more core, recompute + BLOCK before adding to _heapinfo[BLOCK].free.size. + +Fri Jul 16 16:32:40 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/Makefile (generated): Prepend $(objpfx). + * sysdeps/unix/sysv/Makefile (generated): Likewise. + + * sysdeps/posix/mktemp.c: Return when stat fails with ENOENT, not + when it succeeds. + +Wed Jul 14 14:51:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * locale/localeconv.c: Fix copying notice to LGPL. + +Mon Jul 12 21:58:27 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/mcheck.c (reallochook): Set HDR->magic to MAGICWORD. + +Mon Jul 5 15:55:08 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * malloc/realloc.c (memmove): Swap the args when calling safe_bcopy. + +Thu Jul 1 16:26:56 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/malloc.c [_LIBC] (_malloc, _free, _realloc): Define these + functions to just call malloc, free, and realloc, respectively. + +Wed Jun 30 16:42:10 1993 Torbjorn Granlund (tege@gnu.ai.mit.edu) + + * sysdeps/generic/memcmp.c (memcmp_bytes): New function for + little endian machines. + (memcmp_common_alignment, memcmp_not_common_alignment): Rework + code computing return values. + +Wed Jun 30 14:42:00 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile (local_lim.h): Only generate local_lim.h + if the sysdep version would be stub. + + * sysdeps/unix/mk-local_lim.c: #include before all else. + + * configure.in (config_{machine,vendor,os}): Store config.sub's + output in these new variables. + (machine, vendor, os): Set these from those. + (config-name.h, config.make): Write $config_* (the original values + from config.sub). + + * sysdeps/unix/sysv/sysv4/pgrpsys.S: Add arg count (3). + +Tue Jun 29 02:47:46 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.4. + +Mon Jun 28 00:37:12 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/internals.c (__stdio_check_funcs): New function, broken out + of init_stream. + (init_stream): Call it. + * sysdeps/posix/pipestream.c (popen): Call __stdio_check_funcs + before frobnicating STREAM's functions. + + * sysdeps/posix/pipestream.c (pclose): Free C, our data structure, + not STREAM->__cookie after it's been restored. + + * sysdeps/generic/strchr.c: Check for '\0' as well as C, in initial + byte-by-byte loop. + + * conf/portability.h: #undef BSD. + +Sun Jun 27 23:46:05 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/m68k/__wait.S [__motorola__]: Use Motorola syntax. + * sysdeps/unix/bsd/m68k/sysdep.S: Likewise. + * sysdeps/unix/bsd/m68k/__pipe.S: Likewise. + * sysdeps/m68k/__longjmp.c (__longjmp) [__motorola__]: Use + Motorola syntax in jmp insn. + +Fri Jun 25 16:17:07 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/{stub,posix,unix/sysv/sysv4}/__sysconf.c (__sysconf): + For _SC_TZNAME_MAX, just return __tzname_max (). + * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Define __sysconf, not + sysconf. For _SC_TZNAME_MAX, just jump to __tzname_max. + + Undo June 21 change that made __tzname_max a variable + and expected TZNAME_MAX to sometimes be defined. + POSIX.1 does not require that it be defined; sysconf is enough. + * time/time.h (__tzname_max): Declare as a function. + * posix/posix1_lim.h: Don't include . + * sysdeps/stub/tzname_max.h: File removed. + * time/Makefile (headers): Remove tzname_max.h. + (distribute): Remove make-tzlim.c. + (extra-objs): Remove make-tzlim.o and make-tzlim. + ($(common-objpfx)tzname_max.h): Target removed. + * time/make-tzlim.c: File removed. + * time/__tzset.c (__tzname_cur_max): Define this variable instead + of __tzname_max. + (__tz_compute): Set __tzname_cur_max, not __tzname_max. + (__tzname_max): New function. + * time/tzfile.c (compute_tzname_max): Set __tzname_cur_max, not + __tzname_max. + + * malloc/malloc.h [_MALLOC_INTERNAL] [! (_LIBC || STDC_HEADERS || USG)] + (memmove): Don't define. + * malloc/realloc.c [!_LIBC && !STDC_HEADERS && !USG] (safe_bcopy): + New static function. + (memmove): Define to safe_bcopy. + +Wed Jun 23 15:10:51 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/pgrpsys.S: New file, #include sysv4 file. + * sysdeps/unix/sysv/sco3.2.4/Dist: New file, list pgrpsys.S. + +Tue Jun 22 02:44:16 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/Makefile (sysdep_routines): Use + pgrpsys instead of sco_pgrp. + * sysdeps/unix/sysv/sco3.2.4/{Dist,sco_pgrp.S}: Files removed. + * sysdeps/unix/sysv/sco3.2.4/__{getpgrp,setpgrp,setsid}.c: Just + include the respective unix/sysv/sysv4 files. + + * sysdeps/unix/sysv/sysv4/pgrpsys.S: New file. + * sysdeps/unix/sysv/sysv4/__getpgrp.c: New file. + * sysdeps/unix/sysv/sysv4/__setpgrp.c: New file. + * sysdeps/unix/sysv/sysv4/__setsid.c: New file. + * sysdeps/unix/sysv/sysv4/Dist: Add pgrpsys.S. + * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Add pgrpsys. + + * sysdeps/unix/bsd/bsd4.4/__setsid.S: Moved from unix/sysv/sysv4. + * sysdeps/unix/{bsd/sun/sunos4,bsd/ultrix4,sysv/linux}/__setsid.S: + Include bsd4.4 instead of sysv4 file. + +Mon Jun 21 19:08:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/posix1_lim.h: #include . + * sysdeps/stub/tzname_max.h: New file (no-op). + * time/make-tzlim.c: New file. + * time/Makefile (headers): Add tzname_max.h. + (distribute): Add make-tzlim.c. + (extra-objs): Add make-tzlim.o and make-tzlim. + ($(common-objpfx)tzname_max.h): New target. + + * sysdeps/unix/sysv/sco3.2.4/confname.h (_SC_TZNAME_MAX): Define. + * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Detect arg being + _SC_TZNAME_MAX, and return max of TZNAME_MAX and __tzname_max. + + * sysdeps/stub/__sysconf.c: Include and . + Handle _SC_TZNAME_MAX and return max of TZNAME_MAX and __tzname_max. + * sysdeps/posix/__sysconf.c: Change _SC_TZNAME_MAX code to that. + * sysdeps/unix/sysv/sysv4/__sysconf.c: Likewise. + + * time/time.h (__tzname_max): Declare as variable, not function. + * time/__tzset.c (__tzname_max): Function removed. + (__tz_compute): Set the __tzname_max variable. + * time/tzfile.c (compute_tzname_max): New function. + (__tzfile_{read,default}): Call it. + +Sun Jun 20 18:32:49 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/zic.c, time/asia: New versions from ADO. + +Wed Jun 16 17:24:28 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.3. + +Fri Jun 11 15:44:53 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/m68k/__pipe.S: Use `movel' instead of `moveal', + which sun3 as does not appear to grok. + * sysdeps/unix/bsd/sun/m68k/__vfork.S: Likewise. + +Thu Jun 10 20:23:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/m68k/Makefile (as-pipe-ok): Define if -pipe is used in + compiler invocations, or if using GNU as. + (compile-command.S): Define using a pipe if `as-pipe-ok' is defined, + otherwise with a temporary file. + + * Makeconfig (gnu-as): Define if -DHAVE_GNU_AS appears in $(CPPFLAGS). + +Wed Jun 9 15:14:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (os frobnication): Turn underscores as well as + lowercase Vs into dots in os name. + + * sysdeps/unix/start.c [__GNUC__] (_start): Use asm name "start" + only if [! NO_UNDERSCORES]. + +Tue Jun 8 14:51:00 1993 Brendan Kehoe (brendan@lisa.cygnus.com) + + * sysdeps/unix/bsd/ultrix4/mips/__handler.S: Don't save the stack + pointer. + +Mon Jun 7 21:01:24 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/Makefile (tzcompile): Remove -d switch, since zic-cmd has one. + + * time/{private.h,zic.c}: New versions from ADO. + + * sysdeps/unix/bsd/hp/m68k/__brk.S (error): Renamed label from `1', + (__brk): Use DO_CALL instead of movel and trap. + + * sysdeps/unix/bsd/sony/newsos4: Renamed sysdeps/unix/bsd/sony/newsos. + * sysdeps/unix/bsd/sony/m68k/{Implies,sysdep.h}: Moved there. + + * sysdeps/unix/bsd/hp/m68k/sysdep.h (DO_CALL): New macro, broken + out of PSEUDO. + (PSEUDO): Use it. + * sysdeps/unix/bsd/sony/newsos4/m68k/sysdep.h + (DO_CALL, PSEUDO): Likewise. + + * configure.in: Set --with-gnu-{ld,as} for os=bsd4.4. + +Fri Jun 4 14:11:00 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/i386/{strlen,memchr}.c: Use `repnz' instead of `repne'. + + * time/Makefile (zonenames): Rename zones-* to z.* so they all fit + in 14 chars. + (extra-objs): Here too. + + * sysdeps/unix/sysv/direct.h (D_RECLEN): New macro. + * sysdeps/unix/readdir.c (D_RECLEN): If not defined, define to use + `d_reclen' member. + (readdir): Use D_RECLEN (DP) in place of DP->d_reclen. + +Thu Jun 3 16:54:29 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/m68k/bytesex.h: New file. + + * sysdeps/unix/ioctls-tmpl.c [sony_news]: Define KANJI before + including . + +Wed Jun 2 17:45:38 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/Makefile (%.gz): Renamed target from %.z; use -v flag. + (malloc/ChangeLog): Use mv -f. + +Mon May 31 21:49:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.2 released. + + * manual/Makefile: Remove all uses of $(objpfx). Since the + generated files are distributed, they reside in the source + directory. + + * malloc/mtrace.c: #include ; malloc.h no longer does. + + * sysdeps/posix/sleep.c: Restore signal mask to OSET before + returning. Save errno on entry and restore it before returning. + + * Makeconfig (zonedir): New variable. + * time/Makefile (localtime-file, posixrules-file, install-others, + $(localtime-file), $(posixrules-file), tz-cc): Use $(zonedir) in + place of $(datadir)/zoneinfo. + (tzcompile): Omit -d switch. + (zic-cmd): Add `-d $(zonedir)'. + +Sun May 30 20:04:50 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/stdio_init.c: (int)cookie is FD, not *(int*)cookie. + + * time/Makefile ($({localtime,posixrules}-file)): Don't pass -d + switch (no need, since directory is compiled into zic). Don't use + $(. + [_MALLOC_INTERNAL]: Move config.h, limits.h, and mem* to front of file. + (NULL): Move after stddef.h. + + * malloc/valloc.c: Don't include config.h; malloc.h already did. + + * malloc/malloc.c: Undo rms's change. + + * malloc/mcheck.c, malloc/malloc.h: Undo rms's change. + +Sat May 29 13:04:38 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * malloc/malloc.c (malloc) [emacs]: If size is 0, make it 1. + + * malloc/malloc.h (CONST): Define this always, + rather than `const' sometimes. + (memory_warnings): Use CONST, not __const, in decl. + * malloc/mcheck.c (checkhdr): Use CONST, not const. + +Fri May 28 18:29:26 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile (ioctls): Use fgrep instead of egrep to + omit unwanted symbols. Filter the list of them through sort|uniq + to remove duplicates first. + + * sysdeps/unix/Makefile (errlist.c): Use dir and notdir + functions to guarantee qualified path name for make_errlist. + +Thu May 27 17:05:04 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Version 1.06.1. + + * sysdeps/sparc/Dist: Include sdiv.S, not div.S. + + * sysdeps/unix/common/Dist: Remove make_siglist.c. + + * stdio/internals.c: Declare __stdio_fileno before reference. + + * sysdeps/generic/{memchr,strchr,strlen}.c: Abort if words are + bigger than 64 bits. + +Wed May 26 14:44:19 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules [objects] (install-others): Don't add libc.a to this. + (install): Depend on $(libdir)/libc.a. + (intall-no-libc.a): New target, depends on $(+install). + (install): Don't depend on $(+install), just on install-no-libc.a. + * Rules (subdir_install): Depend on install-no-libc.a, not install. + + * Makefile ($(libc.a)): Don't depend on subdir_lib. + (lib-noranlib): Depend on subdir_lib. + + Make `fileno' a per-FILE io operation. + * stdio/stdio.h (__io_fileno): New typedef. + (__io_functions): Add `__fileno' member. + (struct __stdio_file): Remove `__fileno' member. + [__USE_POSIX] [__OPTIMIZE__]: Remove fileno macro defn. + [__USE_POSIX] (fileno): Remove `const' from arg in prototype. + * stdio/fileno.c (fileno): Rewritten to call STREAM's __fileno fn. + * sysdeps/stub/sysd-stdio.c (__stdio_fileno): New function. + (__stdio_open): Return an int (zero for win, nonzero for lose), + and make third arg PTR * (filled in with cookie). + * stdio/stdio.h (__stdio_open): Changed prototype. + * sysdeps/posix/sysd-stdio.c (__stdio_open): Likewise. + (__stdio_{read,write,seek,close}): Use (int) COOKIE as the fd, rather + than *(int *) COOKIE. + (__stdio_fileno): New function; just returns (int) COOKIE. + * sysdeps/posix/fdopen.c: Set cookie to (PTR) FD; don't set fileno. + * stdio/vdprintf.c: Likewise. + * stdio/fmemopen.c: Set STREAM->__io_funcs.__fileno to NULL. + Set STREAM->__cookie to NULL and don't use STREAM->__fileno. + * stdio/internals.c (__default_io_functions): Add __stdio_fileno. + * sysdeps/posix/defs.c (stdstream): Initialize __cookie to (PTR) FD + Remove __fileno initializer. + Add NULL initializer for __io_funcs.__fileno. + * sysdeps/posix/pipestream.c (struct child): Remove `fd' member. + Add `cookie' and `funcs' members. + (FUNC): Macro to define child io_funcs. + (child_funcs): New variable, __io_functions struct of them. + (popen): Store STREAM's original cookie and io_funcs in CHILD, and + then set STREAM->__cookie to CHILD and stream->__io_funcs to + child_funcs. + (pclose): Restore STREAM's original cookie and io_funcs before + calling fclose. + + * configure.in (autoconf checks): Add new check for a + libc-friendly stddef.h. + + * sysdeps/unix/configure: Remove __getpgrp from list of syscalls. + + * sysdeps/generic/memchr.c: Handle 64-bit longwords. + * sysdeps/generic/strlen.c: Likewise. + * sysdeps/generic/strchr.c: Likewise. + + * sysdeps/unix/sysv/sco3.2.4/Makefile: Remove gratuitous `.c'. + + * Makerules [objects] (install-others): Add $(libdir)/libc.a to + this, instead of adding $(libc.a) to install-lib. + ($(libdir)/libc.a): New target to install from $(libc.a). + + * sysdeps/unix/sysv/sco3.2.4/__setsid.S: New file. + * sysdeps/unix/bsd/bsd4.4/__setsid.S: New file. + +Mon May 24 16:49:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/linux/__setsid.S: Moved to unix/sysv/sysv4, + and replaced with #include of that. + * sysdeps/unix/bsd/sun/sunos4/__setsid.S: New file. + * sysdeps/unix/bsd/ultrix4/__setsid.S: New file. + + * posix/Makefile (install): Define to getconf. + + * crypt: New version from glad. + + * sysdeps/unix/sysv/sysv4/__sysconfig.S: Renamed to sysconfig.S. + * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Change reference. + * sysdeps/unix/sysv/sysv4/Dist: Add sysconfig.S. + + * sysdeps/generic/Makefile (siglist.c): Use dir and notdir + functions to guarantee qualified path name for make_siglist. + + * time/Makefile (tzcompile): Use $(@D) for target directory, not + reference to nonexistent 4th dep. + (localtime-file, posixrules-file): Turn these into absolute names. + (install-others): Simply refer to them. + ($(datadir)/zoneinfo/{localtime,posixrules}): Change targets of + these rules to $(localtime-file) and $(posixrules-file), respectively. + Use $( for BUFSIZ. + + * sysdeps/unix/i386/sysdep.h (PSEUDO): Put ; after DO_CALL use. + + * sysdeps/i386/ffs.c: Use `nonzero' for asm label, instead of `1f'. + +Sun May 16 17:59:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sequent/i386/__sigvec.S: Don't get fancy with + xchg; just push $trampoline and then push our args again, pop them + after the system call. + + * time/tzfile.c (__tzfile_default): Don't assume TYPES[0] is + standard and TYPES[1] is DST. Instead, loop through all types: + if a type's isdst flag is set, set its idx to STDLEN and its + offset to DSTOFF; if isdst is clear, set its idx to 0 and its + offset to STDOFF. + + * time/__tzset.c: When __tzfile_default returns having set + __use_tzfile, set __tzset_run before returning. + + * sysdeps/posix/sleep.c: Block SIGALRM with sigprocmask before + changing its handler. Use sigaction instead of signal to set the + handler. Use sigsuspend to restore the blocked signals and pause + atomically, instead of using pause. Be sure to disable the alarm + when a signal other than SIGALRM wakes sigsuspend. + + * time/Makefile (zic-cmd): Put the directory before the nondirectory. + + * Makerules (stubs): Remove surrounding `ifdef +depfiles'...`endif'. + + * time/Makefile: Include ../Makeconfig before trying to use $(objpfx). + + * time/tzfile.c (__tzfile_compute): When there are transitions and + TIMER is not before the first one, find the first transition after + TIMER, and then set I to the type of the transition before it. + Set INFO from types[I], not types[type_idxs[I]]. + + * posix/Makefile (glob/configure): cd to glob before running autoconf. + + * time/__tzset.c (compute_change): Don't add 1900 to YEAR. + (__tz_compute): Add 1900 to the year we pass to compute_change. + + * time/gmtime.c: After calling __offtime, zero tm_gmtoff and set + tm_zone to "GMT". + + * time/time.h [__OPTIMIZE__]: Remove gmtime macro version. + + * time/tzfile.c (__tzfile_default): Fail if NUM_TYPES < 2, not if + NUM_TYPES != 2. + + * time/tzfile.c (__tzfile_compute): Don't take arg TM. + Instead take new args long int *LEAP_CORRECT and int *LEAP_HIT. + Don't apply leap second correction to __timezone; instead set + *LEAP_CORRECT and *LEAP_HIT. + * time/__tzset.c (tzset_run): Renamed to __tzset_run, made global. + (__tzset): Change uses. + (__tz_compute): Change use here as well. + Make second arg be a `const struct tm *'. Don't call __tzfile_compute. + * time/localtime.c: Call __tzset if __tzset_run is clear. + New local vars LEAP_CORRECTION and LEAP_EXTRA_SECS. + If __use_tzfile is set, call __tzfile_compute and pass it their + addresses. Only need to call gmtime if __use_tzfile is clear. If + it is clear, pass result of gmtime to __tz_compute, instead of + dereferencing it first; and zero LEAP_CORRECTION and LEAP_EXTRA_SECS. + Subtract LEAP_CORRECTION from __timezone in __offtime call. + After __offtime, add LEAP_EXTRA_SECS to TP->tm_sec. + + * sysdeps/generic/strsep.c: Increment END when writing a null to + it, and set *STRINGP to END rather than END+1, so *STRINGP never + points past the null. + +Sat May 15 17:10:02 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * time/strftime.c: Alphabetize switch cases. + Add GNU extensions %h, %C, %k, %l. + + * time/asctime.c: Make RESULT big enough for each %d to be 2^64. + Protect against tm_wday and tm_mon being out of bounds; use "???" + if they are. + + * time/{emkdir,ialloc,scheck,zic,zdump}.c: New versions from ADO. + + * time/africa, time/antarctica, time/asia, time/australasia, + time/europe, time/northamerica, time/southamerica, + time/pacificnew, time/etcetera, time/factory, time/systemv, + time/solar87, time/solar88, time/solar89, time/leapseconds: + Updated from Arthur David Olsen's latest. + + * sysdeps/generic/__expm1.c, sysdeps/generic/asinh.c, + sysdeps/generic/exp__E.c, sysdeps/generic/log.c, + sysdeps/generic/log1p.c, sysdeps/generic/mathimpl.h, + sysdeps/generic/pow.c, sysdeps/mach/hurd/__ioctl.c, + sysdeps/mach/hurd/stdio_init.c, sysdeps/unix/bsd/clock.c: Put + `const' qualifier always after storage classes. + + * sysdeps/unix/bsd/sequent/i386/__sigvec.S (trampoline): Use + `call', not `jsr'. + (__sigvec): Exchange the scratch reg with 16(%esp) (fourth arg + slot), not 0(%esp) (return PC slot). Use ARGS_4 to point the + syscall at the args. + + * sysdeps/unix/common/__getgrps.c: When gid_t==int, and SIZE!=0, + return N from __bsd_getgroups. + + * posix/unistd.h (__need_NULL): Define before including . + 1003.1-1990 2.7.1 says it should be here. + +Sat May 15 14:54:25 1993 Noah Friedman (friedman@nutrimat.gnu.ai.mit.edu) + + * time/__tzset.c (compute_change): Add 1900 to YEAR, not 1970. + +Fri May 14 21:24:19 1993 Brendan Kehoe (brendan@lisa.cygnus.com) + + * sysdeps/unix/sysv/sysv4/solaris2/start.c: Define NO_EXPLICIT_START. + * sysdeps/unix/sparc/start.c [NO_EXPLICIT_START]: Don't asm + `_start' into `start' (e.g., for Solaris). + + * sysdeps/unix/sysv/sysv4/solaris2/sysdep.h: New file. + +Fri May 14 19:34:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/Makefile: Remove depend-malloc dependency on malloc/gmalloc.c. + + * posix/Makefile (headers): Add sys/unistd.h. + * posix/sys/unistd.h: New file, just includes . + + * sysdeps/unix/common/glue-ctype.c (main): Define generated array + as `unsigned char' rather than `char'. + + * sysdeps/unix/start.c [__GNUC__]: Use asm frob to make `start' + asm name of _start. + + * sysdeps/unix/opendir.c [! _STATBUF_ST_BLKSIZE]: Don't fstat and + use st_blksize; try BUFSIZ instead. + + * sysdeps/unix/Makefile (ioctls): Don't use sed to remove final | + from snarf-ioctls output; just append a dummy alternative instead. + + * sysdeps/posix/__wait3.c: Fix arg types. + + * Makerules ($(common-objpfx)stub-$(subdir)): Use @ for sed + separator char. Pass extra file /dev/null in case `...` gets empty. + + * sysdeps/unix/sysdep.h (C_LABEL): Define new macro. + * sysdeps/unix/i386/sysdep.h (ENTRY): Use it. + * sysdeps/unix/sparc/sysdep.h (ENTRY): Likewise. + * sysdeps/unix/sparc/__brk.S: Use C_LABEL and ENTRY instead of + C_SYMBOL_NAME. + * sysdeps/unix/i386/__brk.S: Use C_LABEL instead of C_SYMBOL_NAME. + +Fri May 14 17:41:42 1993 Brendan Kehoe (brendan@lisa.cygnus.com) + + * sysdeps/mips/sqrt.c [HAVE_GNU_AS]: Use the IEEE 754 version of + sqrt since gas can't handle the `sqrt.d' synthetic instruction. + +Fri May 14 16:33:47 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/Makefile (routines): Add tempname. + + * sysdeps/unix/common/make_siglist.c: #define const to empty + around #include of . + + * sysdeps/unix/errnos.awk: Surround generated `DO' macro calls + with #ifdef on the E* symbol. + + * sysdeps/unix/common/make_siglist.c [! HAVE_SYS_SIGLIST && + HAVE__SYS_SIGLIST]: Define sys_siglist to _sys_siglist. + + * termios/Makefile (headers): Add termbits.h. + + * posix/Makefile (headers): Add waitflags.h and waitstatus.h. + + * math/math.h (struct __complex): Rename to struct __cabs_complex. + __complex is now a reserved word in GCC. + * sysdeps/generic/cabs.c (cabs): Likewise. + * sysdeps/ieee754/cabs.c (cabs, z_abs): Likewise. + + * sysdeps/unix/common/glue-ctype.c: Test for _ctype__ before _ctype_. + + * posix/Makefile (headers): Add confname.h. + +Thu May 13 00:25:53 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * ctype/Makefile (tags_sources): Don't define. + * MakeTAGS [subdir==ctype] (tags_sources): Put headers before sources. + + * time/__tzset.c (compute_change): Add 1970 to YEAR before using it. + + * sysdeps/unix/readdir.c: Pass a BASEP arg to __getdirentries. + +Wed May 12 20:36:51 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makefile (distribute): Add aclocal.m4. + + * dirent/list.c (test): Clear errno before readdir loop. Complain + if errno is set thereafter. + + * sysdeps/unix/sysv/sysv4/solaris2/utsnamelen.h: New file. + * sysdeps/unix/sysv/sysv4/solaris2/__utimes.S: New file. + * sysdeps/unix/sysv/sysv4/solaris2/sigaltstack.S: New file. + * sysdeps/unix/sysv/sysv4/solaris2/Makefile: New file. + + * sysdeps/unix/bsd/sun/sparc/start.c: Moved to sysdeps/unix/sparc. + * sysdeps/unix/sparc/start.c: Moved from sysdeps/unix/bsd/sun/sparc. + Surround all shared library frobnication code with #ifndef NO_SHLIB. + * sysdeps/unix/sysv/sysv4/solaris2/start.c: New file. + + * configure.in (os = solaris[2-9]*): base_os=unix/sysv/sysv4. + + * sysdeps/sparc/setjmp.S: Include , not "DEFS.h". + Use ENTRY(__setjmp) instead of FUNC(___setjmp). + + * sysdeps/sparc/divrem.m4: [__svr4__]: Include + instead of . + + * sysdeps/sparc/__longjmp.S: Include , not "DEFS.h". + Use ENTRY(__longjmp) instead of FUNC(___longjmp). + [__svr4__]: Use instead of . + + * sysdeps/unix/i386/sysdep.h (C_SYMBOL_NAME, SYS_ify): Moved to + sysdeps/unix/sysdep.h. + * sysdeps/unix/sparc/sysdep.h: New file. + * sysdeps/unix/bsd/sun/sparc/sysdep.h: File removed. + + * sysdeps/unix/sparc/__brk.S: New file. + * sysdeps/unix/sparc/__brk.c: File removed. + +Wed May 12 19:43:37 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * malloc/cfree.c: Put malloc.h include in _MALLOC_INTERNAL conditional. + +Wed May 12 16:24:23 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makeconfig (+link): Put $(LDFLAGS) in the value. + * sysdeps/unix/bsd/sun/sparc/Makefile (LDFLAGS): Set it. + + * posix/glob.c: Move include before dir includes. + [HAVE_UNISTD_H] [! POSIX] [_POSIX_SOURCE]: Define POSIX. + + * grp/initgroups.c [! NGROUPS_MAX || NGROUPS_MAX == 0]: Just + return 0 and do nothing. + + * sysdeps/unix/sysv/sco3.2.4/__{sys,path}conf.S: New files. + * posix/unistd.h: Include ; remove _{SC,CS,PC}_* defns. + * sysdeps/generic/confname.h: New file. + * sysdeps/unix/sysv/sco3.2.4/confname.h: New file. + + * malloc/cfree.c: Include instead of . + [_LIBC]: Use function_alias only under this conditional. + [! _LIBC] (cfree): Define a function that just calls free. + + * posix/Makefile (glob.tar): Depend on glob/ChangeLog. + (glob/configure): Just run autoconf, don't do a sub-make. + (glob/ChangeLog): New target. + (%.Z, %.z): New rules. + +Mon May 10 16:56:09 1993 Jim Blandy (jimb@geech.gnu.ai.mit.edu) + + * malloc/cfree.c: Put the meat of the file inside a "#if + defined(__GNU_LIBRARY__)" clause, so that gmalloc.c, which + incorporates this file, can be used outside of the C library. + +Sun May 9 16:57:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/fseek.c: Don't call __flshfp unless STREAM is writable. + + * string/tester.c (main): Remove unused variable. + + * sysdeps/unix/bsd/set[er][gu]id.c: New files. + + * sysdeps/unix/mk-local_lim.c (NAME_MAX): Define to 255 if undefined. + + * malloc/Makefile (malloc-dist): Add ChangeLog and mem-limits.h. + (malloc/ChangeLog): New rule using Noah's changelog-extract. + (malloc.tar): Use o flag to tar to make compatible archives. + (gmalloc-routines): Add calloc, valloc, and cfree. + (dist-routines): Remove [cv]alloc from here. + (routines): Remove cfree from here. + +Fri May 7 16:45:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/ttyname.c: Replace fixed-sized NAME array with + static char *NAME and static size_t NAMELEN. + Don't check S_ISCHR. + Don't hack NAME before the loop. + If need more than NAMELEN chars to hold the name, increase NAMELEN + to more than big enough and malloc NAME. + Save errno in local var SAVE before doing anything; restore it + when returning non-error. + + * Makefile (generated): Add $(objpfx)stubs.h. + (README): New rule to call Make-dist to do the work. + + * mach/Makefile: Don't include mach-syscalls.mk if no_deps=t. + + * crypt/GNUmakefile (%.z): New rule for gzipping. + (crypt.tar): Use o flag to tar to make compatible archives. + + * Makeconfig: Find config.make in $(common-objpfx), not $(objpfx). + + * io/Makefile (headers): Remove filebits.h. + + * sysdeps/unix/sysv/sysv4/Dist: File removed. + + * Makefile (README): Move from here. + * Make-dist (README): To here. + + * sysdeps/unix/Makefile (sys/param.h): Don't depend on sys/. It + was causing sys/param.h to be remade all the time. + + * aclocal.m4 (GLIBC_PROVIDES): Add shell comment about configure + being generated and not to be editted. + + * sysdeps/unix/swapon.S: Moved to sysdeps/unix/common. + * sysdeps/unix/configure: Add swapon to list of syscalls to check for. + + * sysdeps/unix/mk-local_lim.c: New file, modified from + sysdeps/unix/common/mk-local_lim.c. + * sysdeps/unix/common/Makefile: Move local_lim.h rules from here. + * sysdeps/unix/Makefile: Put them there. + (local_lim-CFLAGS): Define new variable. + (mk-local_lim): Replace $(native-compile) with its value plus + $(local_lim-CFLAGS). + * sysdeps/unix/common/Dist: Remove mk-local_lim.c. + * sysdeps/unix/Dist: Add it here. + + * Makerules (make-dummy-dep): New variable; canned command. + ($(objpfx)%.dep: {$(objpfx),}%.s): New rules using $(make-dummy-dep). + (sysd-Makefile): Write a $(objpfx)%.dep: $dir/%.s rule using it. + + * misc/ioctl.c: Replace function_alias with: + [HAVE_GNU_LD]: Use symbol_alias. + [! HAVE_GNU_LD]: Write out the function; it must fetch its third arg + with va_arg and then call __ioctl. + +Thu May 6 14:56:16 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * misc/sys/ioctl.h (__ioctl, ioctl): Changed prototype to take 2 + args and ... rather than a 3rd __ptr_t arg. + * sysdeps/stub/__ioctl.c: Changed defn. + + * sysdeps/unix/bsd/sun/sunos4/tcflow.c: Include . + + * sysdeps/unix/Makefile (make-ioctls-CFLAGS): Define as + -DHAVE_SYS_TERMIOS_H if $(sysincludedir)/sys/termios.h exists. + (make-ioctls): Replace command `$(common-objdir-compile)' with + that var's contents from Makerules, plus $(make-ioctls-CFLAGS). + * sysdeps/unix/ioctls-tmpl.c [HAVE_SYS_TERMIOS_H]: Get . + + * misc/sys/ioctl.h: Include after . + + * sysdeps/unix/bsd/sun/sunos4/speed.c (cfget[io]speed): Return the + raw speed, rather than using it as an index into `speeds'. + (cfset[io]speed): Treat SPEED being an index into `speeds' just as + if it were the value of that element. + + * termios/termios.h: Remove definitions of B[0-9]+ and EXT[AB]. + * sysdeps/generic/termbits.h: Put them here instead. + * sysdeps/unix/bsd/sun/sunos4/termbits.h: Add new defns for those. + + * sysdeps/unix/Makefile (termbits-edit): If termbits.h is not the + generic version, set this to an | egrep command which filters out + symbols appearing in termbits.h. + (ioctls): Depend on $(sysincludedir)sys/termios.h if it exists. + Pass all deps after first to snarf-ioctls. + Put $(termbits-edit) in cmd line; it may be empty or a pipe. + Pipe through sort|uniq before tr (just to cut down on duplicates). + + * sysdeps/generic/Makefile, sysdeps/unix/Makefile: When deciding + whether to generate files whose stub versions are chosen, also + include the generation rules when the chosen directory is + $(common-objpfx), so they continue to be defined after running once. + + * sysdeps/posix/Makefile: Use patsubst instead of substition + references when the substitution or replacement contains a $. + Make has a bug (which I just fixed) with such substitution references. + + * posix/wait3.c: Fixed arg types in fn alias. + * posix/wait4.c: Likewise. + + * sysdeps/posix/Makefile: Remove vpath %.h line. + * Makerules: Add vpath %.h directive. + + * sysdeps/posix/Makefile (generated, before-compile): Add + $(common-objpfx)stdio_lim.h, not just plain stdio_lim.h. + + * Makerules (depend-$(subdir)): Put $(objpfx) in the output, not + its expansion. + (+make-deps): Add sed clause to translate the expansion of + $(objpfx) back into the variable reference. + +Wed May 5 15:59:40 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2/local_lim.h: New file. + + * sysdeps/unix/sysv/sco3.2/Makefile: New file + * sysdeps/unix/sysv/sco3.2/Dist: New file. + * sysdeps/unix/sysv/sco3.2/__fltused.c: New file. + + * sysdeps/unix/configure: New file. + * sysdeps/unix/inet/__select.S: Moved to sysdeps/unix/common. + This is because select is a call sysdeps/unix/configure wants to + check for, and it simplifies life for all those to be in unix/common. + + * sysdeps/tahoe/Implies: Remove $(bsdmath)tahoe line. + + * sysdeps/unix/sysv/sco3.2.4/{__sigact,__sigproc, + sigpending,sigsuspend}.S: New files. + + * Makefile (INSTALL): Depend on manual/maint.texi, not + manual/maint.texinfo. Use -- instead of + for long options. + + * configure.in: After setting $sysnames initially and adding the + FPU directory, expand and uniquize the list with code that used to + be in find-sysdirs. Make $sysnames blank-separated rather than + newline-separated. Generalize loop iterating over $sysnames, so + it sets $uname and sources sysdep configure scripts. Move + sys_siglist and ctype checks to sysdeps/unix/common/configure.in. + Set Make variable `config-sysdirs' to $sysnames in config.make, + and don't frob Sysnames or sysdirs files at all. + * find-sysdirs: File removed. + * Makefile (distribute): Remove find-sysdirs. + (sysd-dirs): Depend on config.make instead of config.make. + Use $(sysdirs) in place of `cat $<`. + * aclocal.m4: New file. + * sysdeps/unix/common/configure.in: New file, contains checks for + sys_siglist and ctype glue moved from top-level configure.in. + * Makerules (sysdirs, Sysnames): Rules removed. + Don't include sysdirs. + (sysdirs): Define variable from $(config-sysdirs). + (sysd-Makefile): Depend on config.make instead of sysdirs. + Use $(sysdirs) instead of filtering the sysdirs file. + * Make-dist (+sysdep-tsrcs): Include configure and configure.in + from sysdep dirs. + (dist.tar): Use o flag to tar for compatible archives. + (dist): Depend on foo.z instead of foo.Z. + ($(tardir){-crypt,}.tar.z): Renamed from .Z. + (%.z: %): New rule. + (%/configure: %/configure.in): New rule. + +Mon May 3 17:45:06 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/sco3.2.4/__waitpid.S: New file. + + * sysdeps/unix/sysv/sco3.2.4/direct.h: New file. + + * sysdeps/unix/readdir.c: Moved from unix/bsd, rewritten to always + use __getdirentries and D_NAMLEN macro, no #ifdefs. + * sysdeps/unix/sysv/readdir.c, sysdeps/unix/bsd/bsd4.4/readdir.c, + sysdeps/unix/bsd/ultrix4/readdir.c, + sysdeps/unix/bsd/hp/m68k/readdir.c, + sysdeps/unix/bsd/sun/readdir.c: Files removed. + * sysdeps/unix/common/{close,open,rewind,seek,tell}dir.c: Moved to + sysdeps/unix. + * sysdeps/unix/sysv/direct.h: New file. + * sysdeps/unix/bsd/direct.h (D_NAMLEN): Define to use d_namlen. + * sysdeps/unix/sysv/sysv4/direct.h (D_NAMLEN): Define to calculate + from d_reclen. + * sysdeps/unix/__getdents.c: New file. + * sysdeps/stub/direct.h: New file. + * sysdeps/unix/bsd/Dist: Remove bsddir.h. + * sysdeps/unix/sysv/sysv4/readdir.c: Moved to unix/sysv. + * sysdeps/unix/sysv/sysv4/bsddir.h: Renamed to direct.h. + * sysdeps/unix/bsd/bsddir.h: Likewise. + * sysdeps/unix/common/opendir.c: Include "direct.h", not "bsddir.h". + * sysdeps/unix/sysv/sysv4/readdir.c: Likewise. + * dirent/Makefile (distribute): Define to include direct.h. + + * sysdeps/unix/common/opendir.c: Be sure to close FD if fcntl fails. + + * sysdeps/generic/memcopy.h: #include and use __P + prototypes instead of EXFUN. + + * sysdeps/generic/memcmp.c (__ptr_t, const): Define as appropriate + conditional on [__cplusplus || __STDC__]. + +Thu Apr 29 21:48:37 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile ($(libc.a)): Make this, not lib, depend on subdir_lib. + + * Makerules ($(objpfx)%.{o,dep} rules): Remove spurious / after + $(objpfx) in dependency patterns. + + * sysdeps/unix/bsd/sun/sparc/start.c (_start): Define with + `asm ("start")', so its asm name is `start' rather than `__start'. + Remove asm that did a `.set' pseudo-op, which Sun as seems not to grok. + +Wed Apr 28 12:59:46 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/system.c: Return 0 if LINE is nil. + + * sysdeps/unix/__execve.S [!SYS_execve && SYS_exec]: Define + SYS_execve to be SYS_exec. + + * time/mktime.c: Include . + +Mon Apr 26 17:10:21 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/generic/memcmp.c: Deansideclized. + [HAVE_CONFIG_H]: Include "config.h". + [HAVE_STRING_H || _LIBC]: Put #include under this. + [_LIBC]: Put #include under this conditional. + [! _LIBC]: Define op_t, OPSIZ, byte, and MERGE. + + * time/mktime.c: Define __isleap if not defined. + +Fri Apr 23 18:08:33 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/__getdents.c: New file. + * sysdeps/unix/sysv/sysv4/sys_getdents.S: Moved to unix/sysv. + * sysdeps/unix/sysv/Makefile [subdir==dirent]: Add sys_getdents to + sysdep_routines. + * sysdeps/unix/sysv/Dist: Add sys_getdents.S. + * sysdeps/unix/sysv/sysv4/Dist: Remove it from here. + * sysdeps/unix/sysv/sysv4/Makefile: File removed. + +Thu Apr 22 17:40:28 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sony/newsos4/m68k/sysdep.h: New file. + + * sysdeps/generic/strsep.c: Set *STRINGP to END+1, not END. + + * configure.in (arg parsing): Grok --verbose and set verbose=yes. + + * sysdeps/sparc/{umul,mul}.S: Remove ' from ! comment. + + * sysdeps/sparc/Makefile (*.S): Find divrem.m4 in this sysdeps dir. + + * sysdeps/unix/bsd/sun/sunos4/speed.c (cfset[io]speed): Typo fix. + + * sysdeps/unix/bsd/sun/sparc/vfork.S: Use a sethi insn and %g1 as + a temporary, rather than expecting the address to fit into a short + jump. + + * sysdeps/unix/bsd/__fork.S: Moved to sysdeps/unix/__fork.S; we + want unix/MACHINE/__fork.S to come first. + + * sysdeps/unix/bsd/bsd4.4/__wait3.c: Make STAT_LOC type + `__WAIT_STATUS' (defined in ). + * sysdeps/unix/bsd/sun/sunos4/__wait4.c: Likewise. + + * signal/sigvec.c: Change args from `struct __sigvec *' to + `struct sigvec *' in function alias. + + * signal/sigproc.c: Make arg SET `const sigset_t *' in fn alias. + + * signal/sigaction.c: Change args from `struct __sigaction *' to + `struct sigaction *' in function alias. + + * sysdeps/unix/common/glue-ctype.c (main) [! TABLE]: Write just a + comment saying we don't know the table name, rather than barfing + with `TABLE' an undefined variable. + + * sysdeps/generic/printf_fp.c: Fixed test to chose %e format. + Make loop condition --J > 0; break out of loop when FPNUM < F. + After loop, use %e format iff J <= 0. + + * posix/glob/Makefile.in (.c.o): Put $(CFLAGS) last. + (glob.o): Depend on glob.c. + (fnmatch.o): Depend on fnmatch.c. + +Wed Apr 21 12:40:03 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/Makefile (before-compile): Add stdio_lim.h. + + * configure.in (signed size_t test): Remove 's from rhs of AC_DEFINE. + + * stdio/internals.c (seek_to_target): If __stdio_check_offset + fails with ESPIPE, do nothing. + + * sysdeps/generic/printf_fp.c: For %e type, add K-1 to CUTOFF, + rather than K. + When there are no post-decimal digits, never write a decimal point + for a %g spec unless it had a # modifier. + Move K==-1 test to write decimal point before K==CUTOFF test to + round and write last digit. + Merge code for first post-decimal digit with code for remaining digits. + Move code to write leading fractional zeros inside K<0 test which + determines if any will be needed. + In decimal fraction notation code, use R10 temporary instead of + repeating (R * 10) twice. + + * stdio/fwrite.c: Only fail when __stdio_check_offset fails if it + failed with ESPIPE. If offset==-1, don't change it or target. + + * sysdeps/posix/defs.c (stdstream): Rearrange initializers, as + FILE has been rearranged. Set offset and target to -1, not 0. + + * sysdeps/posix/stdio_init.c: If STREAM isatty, set its seek + function to NULL. Unix bites. + + * stdio/ungetc.c: Call __flshfp if linebuf_active or put_limit>buffer. + + * sysdeps/unix/bsd/sun/sparc/start.c [__GNUC__ < 2]: #error. + + * time/mktime.c: Deansideclized. + Don't include or ; we don't need them. + [DEBUG] (printtm): Made static. + [HAVE_CONFIG_H]: Include "config.h". + [__GNU_LIBRARY__ || HAVE_LIMITS_H]: Surround #include + with these conditionals. + + * time/offtime.c (__mon_lengths): Move defn to mktime.c; replace + with extern decl. + * time/mktime.c (__mon_lengths): Define here; remove extern decl. + +Mon Apr 19 18:42:59 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/tempname.c: New file. + * sysdeps/stub/sysd-stdio.c (__stdio_gen_tempname): Moved there. + * sysdeps/posix/tempname.c: New file. + * sysdeps/posix/sysd-stdio.c (__stdio_gen_tempname): Moved there. + + * stdio/fopen.c: Don't set the offset to zero. That can falsely + give the impression that an unseekable object is seekable. + + * stdio/internals.c (__flshfp): Discard any pushed back character + first thing after sanity checks. + (__flshfp): Deconditionalize code to call the output-room + function; we always want to give it a chance to prime the stream. + Remove code that reset bufp if put_limit==buffer. We want to let + the output-room function do that--that is priming the stream. + +Fri Apr 16 12:24:21 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules ($(libc.a)): Depend on lib-noranlib and have ranlib + command line. + (lib): Just depend on $(libc.a). + + * sysdeps/unix/bsd/sun/sparc/start.c (init_shlib): Use __environ, + not environ. + + * stdio/internals.c (__flshfp): Don't check that the buffer + actually contains anything when setting the put_limit to the end of + the buffer if linebuf_active. + (__flshfp): To write C into the buffer !FLUSH_ONLY, don't check + that bufp > buffer and get_limit == buffer. Check against + put_limit unless linebuf_active (in which case check against the + real put_limit, fp->__buffer + fp->__bufsize). + (__flshfp): Bother to call the output-room function if !FLUSH_ONLY + or bufp > buffer and get_limit <= linebuf-corrected put_limit. + (__flshfp): Check for a NULL output-room function before checking + if C will fit in the buffer. + (flushbuf): After putting C into the buffer, + set BUFFER_WRITTEN to zero and goto end instead of returning. + + * stdio/ungetc.c: Test STREAM->__pushed_back before flushing the + STREAM if it's writable. + + * posix/glob.c, posix/fnmatch.c: Surround code with + #if defined (_LIBC) || !defined (__GNU_LIBRARY__) + +Thu Apr 15 19:35:59 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * string/tester.c (main): Added tests for strsep. + + * sysdeps/ieee754/frexp.c: New file. + +Wed Apr 14 12:49:10 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (ar-it): Add c flag to ar commands. + + * posix/glob.c [USG, NeXT]: Don't test these. + [HAVE_STRING_H]: Test this to include string.h and define ANSI_STRING. + [HAVE_MEMORY_H]: Test this instead of NEED_MEMORY_H. + [! ANSI_STRING]: Put decls of bcopy and #define of memcpy et al here. + + * posix/fnmatch.c [HAVE_CONFIG_H]: #include "config.h". + +Mon Apr 12 16:34:53 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/glob.c: Rationalize directory header conditionals. + +Sun Apr 11 18:53:50 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/internals.c: Remove __libc_fatal. + * sysdeps/stub/sysd-stdio.c: Remove __stdio_errmsg. + * sysdeps/posix/sysd-stdio.c: Likewise. + * sysdeps/stub/libc_fatal.c, sysdeps/posix/libc_fatal.c: New files. + * stdio/Makefile (routines): Add libc_fatal. + + * stdio/stdio.h (FILE): Add new member `__linebuf_active' (flag). + Rearranged order of members slightly. + * stdio/setvbuf.c: Clear the linebuf_active flag. + * stdio/fseek.c: Likewise. + * stdio/internals.c (__flshfp): Test linebuf_active, not linebuf, + to decide to reset put_limit before calling the output-room function. + After calling it, if line-buffered, set put_limit to the + beginning of the buffer and set the linebuf_active flag. + (__fillbf): If linebuf_active is set, reset put_limit to the end + of the buffer, and clear the flag. + + * stdio/ungetc.c: If STREAM is writable and has something in its + buffer, flush it. + + * stdio/internals.c (__fillbf): When flushing all line-buffered + streams, don't test for their put_limits being > than their + buffers. We should let __flshfp figure it out. + + * stdio/setvbuf.c: Always set the put_limit to the beginning of + the buffer. + + * stdio/stdio.h (__putc): Rewritten to remove all knowledge of + magic for line-buffered streams. It now always calls __flshfp when + the bufp hits the put_limit. + + * stdio/fwrite.c: When recalculating BUFFER_SPACE after calling + __flshfp, ignore the put_limit for the sake of line-buffered streams. + + * stdio/fseek.c (fseek): Call __flshfp on STREAM unconditionally. + We don't want to try to put the conditions for when it is + necessary here as well. + + * sysdeps/generic/printf_fp.c: When deciding whether to use %e + format for %g, break out of the loop on J as soon as F reaches + FPNUM; after the loop, set TYPE to 'e' if J<0, meaning we went all + the way through. + + * misc/getpass.c (TCSASOFT): Define to 0 if undefined. + (getpass): Use a variable OUT to store the stream where output goes. + Use a variable NREAD to notice how much was read; if the last char + in the buffer is a newline, clobber it to a null terminator. + + * posix/fnmatch.h [__cplusplus || __STDC__]: Don't #define const. + +Thu Apr 8 19:29:37 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/tst-printf.c (main): Added some floating-point tests. + + * sysdeps/unix/bsd/sequent/i386/__sigvec.S: New file. + + * sysdeps/unix/sysv/i386/__sigret.S: Moved to sysdeps/unix/i386. + Use DO_CALL instead of magic. + + * sysdeps/unix/bsd/i386/__wait3.S: Use DO_CALL instead of magic. + Use scratch instead of %ecx and r1 instead of %edx. + + * sysdeps/unix/bsd/i386/__vfork.S: Rewritten to not use SYSCALL__. + Use DO_CALL instead, and save the return PC in a register around + the trap. + + * sysdeps/unix/i386/sysdep.h (DO_CALL): New macro to do syscall trap. + (PSEUDO): Use it instead of putting the code here. + + * stdio/vfprintf.c (number): Write "0x" before padding, not after. + + * sysdeps/unix/bsd/sequent/i386/sysdep.h: New file. + + * sysdeps/unix/bsd/__setuid.c: #include . + Change argument type to uid_t. + * sysdeps/unix/bsd/__setgid.c: #include . + Change argument type to gid_t. + + * sysdeps/unix/common/__getgrps.c: Restore errno after erroneous + syscall failure. + + * stdio/tst-printf.c (fp_test): New function, batch of tests from + a bug report. + (main): Call it. + +Wed Apr 7 17:17:17 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/pow.c (pow_p): Don't initialize K; was a dead store. + +Mon Apr 5 21:17:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/common/__getgrps.c: If __bsd_getgroups returns an + error and SIZE==0, alloc temp space for NGROUPS_MAX elts and call + it again on that, so we can find the number of groups. + + * stdio/__vfscanf.c (input_error): If DONE is nonzero, return it; + else return EOF. + (%c): Don't check for C==EOF at the end; let the following spec get it. + (%[eEfgG]): EOF after sign is conv_error, not input error. + + * sysdeps/unix/common/__getgrps.c: If gid_t==int, pass LIST to + __bsd_getgroups, not NULL. + No error for SIZE > NGROUPS_MAX. + +Sun Apr 4 18:52:34 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/{bsd,sysv}/i386/Implies: Files removed. + They should no longer be necessary, since configure now tries more + sysdeps directory permutations. + + * sysdeps/unix/bsd/{i386,sun/sparc,hp/m68k,ultrix4/mips}/__set[ug]id.S: + Files removed. They should no longer be necessary, since the new + sysdeps scheme should find unix/bsd/__set[gu]id.c before + unix/__set[gu]id.S. + + * sysdeps/unix/i386/__pipe.S: Use r1 in place of %edx and scratch + in place of %ecx. + * sysdeps/unix/i386/__wait.S: Likewise. + * sysdeps/unix/i386/__fork.S: Use r1 in place of %edx and r0 in + place of %eax. + * sysdeps/unix/i386/__vfork.S: Likewise. + * sysdeps/unix/i386/sysdep.h (scratch): #define as %ecx. + * sysdeps/unix/sysv/i386/linux/sysdep.h: Likewise. + + * configure.in ($uname = generic): Set kernel_{version,release} to + empty before all else. + If /vmunix doesn't exist, try grovelling over /dynix instead. + + * sysdeps/unix/Makefile (syscall.h): Double $ in sed cmd. + +Fri Apr 2 15:15:44 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (config_vars): New variable; text to go in config.make. + Use AC_HEADER_EGREP to grovel stdarg.h for __gnuc_va_list and set + stdarg.h in config_vars if we find it. + + * sysdeps/unix/bsd/sun/sunos4/tcsendbrk.c, + sysdeps/unix/bsd/sun/sunos4/tcflow.c, + sysdeps/unix/bsd/sun/sunos4/tcflush.c, + sysdeps/unix/bsd/sun/sunos4/tcsetattr.c, + sysdeps/unix/bsd/sun/sunos4/__tcgetatr.c: New files. + + * sysdeps/unix/Makefile (syscall.h): Add sed cmd to terminate + unterminated comments at the ends of lines. + + * sysdeps/posix/getcwd.c: Deansideclized and added four tons of + portability goop. + +Mon Mar 29 13:18:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sunos4/speed.c: New file. + + * sysdeps/generic/termbits.h: New file, contents taken from termios.h. + * termios/termios.h: Remove type & macro defns; #include . + [__OPTIMIZE__] (cf[gs]et[io]speed): Remove macro versions. They + just cause trouble because they want to be in termbits.h (since + they are sysdep) and also to come after the prototypes (which must + come after termbits.h to get speed_t and struct termios defined). + The optimization was insignificant anyway. + * termios/speed.c: Moved to sysdeps/generic. + + * termios/cfsetspeed.c: Call cfset[io]speed, rather than doing it + ourselves. + + * time/__tzset.c (tz_rule): Make member `secs' not a bitfield. + (compute_change): Complete rewrite; code basically stolen from + localtime3/localtime.c:transtime. + #include "tzfile.h" for SECSPERDAY; #define NOID first. + + * sysdeps/unix/bsd/i386/__vfork.S: Don't try to #include __fork.S. + Instead, copy that code here and change `fork' to `vfork'. + + * Makeconfig (+default_cflags): Rename to default_cflags. + (+cflags): Use that name. + + * Makefile (configure): New rule. + +Sun Mar 28 16:12:33 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/fnmatch.c (case '*'): Before final loop, fold C1, rather + than foling *P before it goes into C1. C might need folding instead. + + * posix/Makefile (tests): Add testfnm. + * posix/testfnm.{c,args}: New files. + +Fri Mar 26 15:04:27 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/mktime.c: Wholly new implementation from Noel Cragg. + + * sysdeps/unix/bsd/sun/__sigret.S: New file. + * sysdeps/unix/bsd/sun/m68k/{Makefile,Dist}: New files. + * sysdeps/unix/bsd/sun/m68k/{sigcontext.h,sigtramp.c}: New files. + * sysdeps/unix/bsd/sun/sparc/__sigvec.S: Moved to sysdeps/unix/bsd/sun. + + * Makefile (clean): Remove sysd-Makefile, sysd-dirs, sysdirs + (distclean): New target. + * sysdeps/unix/common/Makefile (generated): Add local_lim.h, + mk-local_lim, glue-ctype, glue-ctype.c, siglist.c, make_siglist. + * sysdeps/generic/Makefile (generated): Add bytesex.h, + det_endian, siglist.c, make_siglist. + * sysdeps/unix/Makefile (generated): Add errnos.h, errnos, + make-errnos, make-errnos.c, ioctls.h, ioctls, make-ioctls, + make-ioctls.c, errlist.c, make_errlist, syscall.h, sys/param.h, + param.h.c, param.h.dep, $(sys/param.h-includes). + + * misc/Makefile (extra-objs): Define new var to include bsd-compat.o. + +Fri Mar 26 14:53:30 1993 Michael John Haertel (mike@skinner.cs.uoregon.edu) + + * malloc/malloc.c (malloc): Start searching at _heapindex, not + MALLOC_SEARCH_START. + * malloc/malloc.h (MALLOC_SEARCH_START): Macro removed. + * malloc/realloc.c (realloc): When malloc returns NULL, handle the + case of the block we need to unfree (which was just freed) having + been coalesced with its neighbors. + +Thu Mar 25 13:40:17 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Rules (all): Depend on others. + + * time/Makefile (zonenames): Change target to $(objpfx)zonenames. + Make the generated file prepend $(objpfx) to + Include that instead of zonenames. + (zones-%): Change target to $(objpfx)zones-%. + + * Makefile ($(objpfx)Mcrt1.o): Put temporary Mcrt1.c file in + $(objdir), rather than the current directory. + + * configure.in (arg parsing): Recognize `--exec-prefix' rather + than `--exec_prefix'. + + * Rules (mostlyclean): Remove the .o files for $(tests) and $(others). + Remove $(objpfx)depend-$(subdir). + (clean): Remove $(extra-objs). + * Makefile (clean): Remove $(install-lib) from $(objdir). + Don't try to remove ansi/ and trad/ or dist.tar or lint.out. + Remove $(objpfx)depend-. + * time/Makefile (extra-objs): Define new var. + * malloc/Makefile (extra-objs): Likewise. + + * Rules (+objs): Variable removed. + (clean): Use $(objects) in place of $(+objs). + + * sysdeps/unix/Makefile (sys/param.h-includes): Move all this + outside of ifeq ($(subdir),misc). + Fixed sed command to filter out [hn]to[nh][sl]. + (sys/param.h-includes): New target; dep on $(sys/param.h-includes). + + * posix/fnmatch.h [!_POSIX_C_SOURCE || ...]: Make this test + _GNU_SOURCE, not _BSD_SOURCE; these are our extensions, not theirs. + (FNM_CASEFOLD): New bit. + (__FNM_FLAGS): Removed macro. + * posix/fnmatch.c (fnmatch): Don't test for bogus flag bits; who cares? + (FOLD): New macro to casefold a char if FNM_CASEFOLD. + Use it to fold all chars before comparison. + +Wed Mar 24 16:09:26 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/Makefile (malloc/%.c, malloc/%.h): Rules removed. + + * stdio/stdio.h (fopencookie): Rename parameter IO_FUNCTIONS to + IO_FUNCS. The former conflicted with a typedef name, which ist + verboten. + + * time/sys/time.h (enum __itimer_which): Remove trailing comma. + +Mon Mar 22 15:35:54 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/malloc.h [_MALLOC_INTERNAL] + [__GNU_LIBRARY__ || STDC_HEADERS || USG] (memmove): Define in + terms of bcopy. + * malloc/malloc/gmalloc-head.c: Redo previously undone change. + +Thu Mar 18 04:59:21 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * malloc/malloc/gmalloc-head.c: Undo previous change. + +Wed Mar 17 12:22:21 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * mach/mach.h: New file. + + * Rules (clean): Remove $(generated), not $(clean-extras). + (subdir_echo-distinfo): Use $(generated) instead of $(dont_distribute). + (generated): Export this instead of dont_distribute. + * stdlib/Makefile (generated): Set this, not dont_distribute. + * sysdeps/posix/Makefile: Likewise. + * sysdeps/unix/sysv/Makefile: Likewise. + * sysdeps/unix/Makefile: Likewise. + * Makefile (generated): Export this instead of dont_distribute. + (parent_echo-distinfo): Use $(generated) instead of $(dont_distribute). + * Make-dist (+tsrcs): Filter out $(generated), not $(dont_distribute). + + * mach/mach_init.h (__mach_task_self): Define so as not an lvalue. + (mach_task_self): Surround defn with parens. + + * sysdeps/unix/Makefile (sys/param.h): Put "#include " in. + ($(sys/param.h-includes)): Edit out #define's of *_ENDIAN and + BYTE_ORDER. + + * stdlib/tst-strtol.c (tests): Fully bracket initializers. + + * stdio/bug4.c: Change #ifdef LIBC to #ifdef _LIBC. + + * misc/progname.c (set_progname): Make a useless reference to + set_progname to avoid a `defined but not used' warning. + + * sysdeps/mach/i386/start.c (_cthread_{init,exit}_routine): Remove + `extern'; these want to be uninitialized common defns. + +Mon Mar 15 18:41:05 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/__times.c (timeval_to_clock_t): Put __inline + before storage class in defn. + + * sysdeps/unix/sysv/signum.h (SIG_ERR, SIG_DFL, SIG_IGN): Cast + values to __sighandler_t, rather than obsolete ansidecl magic. + + * sysdeps/unix/__execve.S [!SYS_execve && SYS_exece]: Define + SYS_execve to be SYS_exece. + + * sysvipc: New directory. + * sysvipc/Makefile: New file. + * sysvipc/sys/ipc.h: New file. + +Fri Mar 12 15:31:44 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/execlp.c (execlp): Remove spurious second declared parameter. + Don't fill ARGV[0] specially; just let the loop do it. + * posix/unistd.h (execlp): Remove spurious second declared parameter. + +Thu Mar 11 13:58:47 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makerules (sysd-Makefile): Write %.dep: %.S and %.dep: %.c rules. + Depend on Makerules. + ($(objpfx)%.{o,dep}: $(objpfx)/%.{S,c,s}): New rules to find + sources in $(objpfx) before sysdep directories. + + * configure.in (signed size_t check): Use eval on $CPP, since it + contains unexpanded variable refs. + Send grep output to /dev/null. + Put quotes around 'unsigned long int'. + +Wed Mar 10 18:32:11 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * features.h [! _LIBC]: #include . + * Makerules (stubs): New phony target. + ($(common-objpfx)stub-$(subdir)): New target. + * Makefile (headers): Add stubs.h. + ($(objpfx)stubs.h): New target. + + * Makeconfig (CPPFLAGS): Define _LIBC, not LIBC. + + * Makerules (.SUFFIXES): Remove .m4; we no longer have any such files. + + * inet/netinet/in.h: Don't #include . + (ntohl, ntohs, htonl, htons): Declare. + #include . + [__BYTE_ORDER == __BIG_ENDIAN] (ntohl, ntohs, htonl, htons): + Define no-op macros. + * inet/Makefile (headers): Remove inet-cvt.h. + * sysdeps/vax/inet-cvt.h, sysdeps/generic/inet-cvt.h: Files removed. + * sysdeps/generic/{ntohl,ntohs,htonl,htons}.c + [BYTE_ORDER == LITTLE_ENDIAN]: Byte-swap X before returning it. + +Tue Mar 9 11:32:35 1993 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) + + * malloc/malloc/gmalloc-head.c: Remove #definitions of memset, + memcpy, and memmove; this is taken care of by malloc.h anyway. + +Mon Mar 8 15:12:32 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/mips/jmp_buf.h (JB_PC): Protect with #ifdef __USE_MISC. + + * sysdeps/unix/sysv/sysv4/sigaction.h: Put SA_* except for + SA_NOCLDSTOP inside #ifdef __USE_MISC. + +Mon Mar 8 15:05:13 1993 Brendan Kehoe (brendan@lisa.cygnus.com) + + * sysdeps/mips/jmp_buf.h (jmp_buf): Use `__ptr_t', not `PTR', for + member types. + (JB_PC): New define, for backwards compatability with Ultrix. + + * sysdeps/unix/sysv/sysv4/sigaction.h: New file. + +Mon Mar 8 13:20:02 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/glob/Makefile.in (VPATH): Set this to @srcdir@. + (srcdir): Set this to $(VPATH). + + * posix/glob.c (glob): In no matches with GLOB_NOCHECK set case, + add NULL terminator to PGLOB->gl_pathv. + (prefix_array): Renamed arg PREFIX to DIRNAME, local var PRELEN to + DIRLEN. If DIRNAME is just "/", don't prepend it, so we get + "/foo" instead of "//foo". + (glob): Move qsort call outside of the else clause of the + glob_pattern_p test; it should always be done. + +Thu Feb 25 14:49:52 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * malloc/malloc.h [_MALLOC_INTERNAL]: Move #include to + front of file; it needs to come before size_t/ptrdiff_t frobnication. + +Wed Feb 24 16:34:58 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (compile-command.[Ssc]): New variables; define them if + they are not already defined. + (sysd-Makefile): For each directory, write three rules: + %.o: $dir/%.[Ssc]; $(compile-command.[Ssc]). + (sysdep_path): Remove definition and vpath directives. + * sysdeps/m68k/Makefile (compile-command.S): Define our own version. + ($(objpfx)%.o: %.S): Rule removed. + + * sysdeps/unix/sysv/linux/{__dup2,__mkdir,__rmdir,__setpgrp}.S: + Removed. + * sysdeps/unix/sysv/linux/Implies: Created; implies unix/common. + + * sysdeps/unix/sysv/sysv4/{sete[gu]id.S,fchdir.S,signum.h,__sigproc.S}: + New files. + + * sysdeps/unix/sysv/sysv4/time.S: New file. + + * sysdeps/unix/common/Dist: New file; everything from + sysdeps/unix/bsd/Dist except for bsdtty.h and bsddir.h. + * sysdeps/unix/bsd/Dist: Remove things now in sysdeps/unix/common/Dist. + + * sysdeps/unix/bsd/sun/sparc/{__brk.c,__fork.S,__pipe.S,__vfork.S}: + Moved to new directory sysdeps/unix/sparc. + + * sysdeps/unix/common/Implies: New file, in new directory; implies + unix/inet only. + * sysdeps/unix/bsd/Implies, sysdeps/unix/sysv/sysv4/Implies: New + files; both imply unix/common. + * sysdeps/unix/common/Makefile: Moved from sysdeps/unix/bsd. + Changed references to unix/bsd to unix/common. + * unix/bsd/{__access.S,__adjtime.S,__fchmod.S,__fchown.S,__getgrps.c, + __getitmr.S,__getpgrp.S,__getrusag.S,__gettod.S,__lstat.S,__mkdir.S, + __readlink.S,__rmdir.S,__setitmr.S,__setpgrp.S,__symlink.S, + bsd_getgrp.S,closedir.c,ftruncate.S,getrlimit.S,glue-ctype.c, + make_siglist.c,mk-local_lim.c,opendir.c,readv.S,rename.S,rewinddir.c, + seekdir.c,setgroups.S,setrlimit.S,telldir.c,truncate.S,vhangup.S, + writev.S,__dup2.S}: Moved to sysdeps/unix/common. + * sysdeps/unix/sysv/sysv4/{__access.S,closedir.c,opendir.c, + rewinddir.c,seekdir.c,telldir.c}: Removed. + +Mon Feb 22 12:19:19 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/pow.c (pow): Use __isnan to test for NaN rather + than expecting "x!=x" to work. + (pow_p): When testing if Y is an integer, use long int rather than + int; they are different on some systems. Compare against + LONG_MIN+1, not LONG_MIN; (long int) (double) LONG_MIN might overflow. + + * malloc/dist-Makefile (gmalloc.c): Depend on Makefile. + + * malloc/Makefile (gmalloc-routines): New variable. + (dist-routines): Use it. + (malloc/Makefile): Also replace with + $(gmalloc-routines). + (malloc/Makefile): Make it unwritable to avoid accidental lossage. + Depend on Makefile. + + * malloc/dist-Makefile (gmalloc): New variable: . + (gmalloc.c): Use $(gmalloc), not $(sources). + Make the file unwritable to avoid accidental lossage. + + * malloc/mtrace.c: Don't #include because did + it for us. + + * malloc/valloc.c [! __GNU_LIBRARY__]: Replace hairy conditionals + with #include "getpagesize.h". + * malloc/Makefile (distribute, malloc-dist): Add getpagesize.h. + +Sun Feb 21 18:29:30 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/sparc/Makefile (nodist-routines): Don't define. + We want to distribute the generated divrem files; otherwise anyone + building the library must have an m4 that works. + ($(divrem).S): Put these in sysdeps/sparc, not in $(objdir). + (routines): Only put this inside ifeq ($(subdir),gnulib). + + * sysdeps/unix/bsd/sun/m68k/Makefile: File removed. + +Sat Feb 20 16:43:55 1993 Torbjorn Granlund (tege@sics.se) + + * sysdeps/i386/memset.c: Move adjustment of LEN before first stosb. + * sysdeps/i386/bzero.c: Likewise. + +Thu Feb 18 14:34:00 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * malloc/mcheck.c (checkhdr): Use `const', not `__const'. + +Mon Feb 1 19:19:13 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/m68k/fpu/__logb.c: Use two-operand forms of 68881 insns + rather than the one-operand source==dest form. Sun's sun3 + assembler apparently doesn't grok the one-operand form. + + * sysdeps/posix/getcwd.c: Call __lstat instead of stat. + We should not lose on nonexistent symlink targets. + +Thu Jan 21 20:12:25 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/glob.c: Put #includes of and after + all system includes, in case one of them has conflicting defns of + FNM_* or GLOB_*, so we will redefine. #undef FNM_* and GLOB_* + before including our headers. + +Tue Jan 19 16:16:05 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * mach/Makefile (routines): Removed __bcopy. + * mach/__bcopy.c: File removed. + + * posix/glob.c (my_realloc): Cast result of malloc/realloc to (char *). + +Sat Jan 16 14:19:07 1993 Richard Stallman (rms@mole.gnu.ai.mit.edu) + + * manual/summary.awk: Handle single word in braces. + +Thu Jan 14 13:52:43 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/glob/Makefile.in (realclean): Remove Makefile. + +Mon Jan 11 18:32:56 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sony/m68k/Implies: Imply unix/bsd/hp/m68k, not + unix/hp/m68k. + + * sysdeps/unix/bsd/tcsetattr.c: Use cbreak mode if ISIG is set, + not if OPOST is set. + Fixed typo in TOSTOP frobbing. + +Tue Jan 5 15:11:31 1993 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/Makefile (glob.tar): Include glob/configure.in. + +Mon Jan 4 17:05:44 1993 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/glob/Makefile.in (RANLIB): Define to @RANLIB@. + (RANLIB_TEST): Removed. + (libglob.a): Don't use it. + +Thu Dec 31 13:08:20 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/bsd4.4/{chflags,fchflags,setlogin}.S: Fix arg count. + + * sysdeps/posix/Makefile (mk-stdiolim): Use $(cded-objdir-CPPFLAGS). + (cded-objdir-CPPFLAGS): Define new var. + + * sysdeps/unix/Makefile ($(sys/param.h-includes)): Strip trailing + slash from directory name for mkdir. + +Tue Dec 29 18:18:58 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/posix/sysd-stdio.c (exists): Return true if stat fails + with other than ENOENT. + + * sysdeps/posix/__flock.c: New file. + + * malloc/Makefile (dist-headers): Define to malloc.h. + (headers): Replace malloc.h with $(dist-headers). + (malloc/Makefile): Use $(dist-headers) in place of $(headers). + (malloc-dist, distribute): Replace ChangeLog with OChangeLog. + + * malloc/dist-Makefile (malloc.tar{,.Z}): Depend on FORCE. + (FORCE): Define empty target. + +Tue Dec 29 16:45:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/sparc/{umul,mul}.S: Use tege's shift+mask hack to avoid + a test and branch for sign fixup. + + * limits.h [__GNUC__ >= 2]: #ifndef _GCC_LIMITS_H_, not _LIMITS_H_, + to #include_next . + + * sysdeps/posix/getcwd.c: Call closedir after copying from the + `struct dirent' buffer, not before. That buffer is freed by closedir. + + * posix/gnu/types.h (__fd_set): Renamed member to `fds_bits' for + compatibility with braindead extant code. + + * sysdeps/posix/sysd-stdio.c (__stdio_gen_tempname): Check for BUF + being too small before doing sprintf. + + * malloc/malloc.h [_MALLOC_INTERNAL], malloc/valloc.c + [HAVE_CONFIG_H]: #include "config.h". + + * Makefile (doc): Removed rule. + (dvi, info): New rule. + +Mon Dec 28 15:50:31 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/glob.c [HAVE_CONFIG_H]: Test this, not SHELL, to decide + whether or not we want to #include "config.h". + +Wed Dec 16 12:01:09 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * inet/Makefile (routines): Removed ruserpass. Why did it get + included in the first place? That version does not match the one + in the NET2 ftp source; whence came it? + +Sat Dec 12 16:41:03 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sparc/start.c: Use .set, not GNU ld magic, + to alias asm symbol `start' to `__start'. + +Fri Nov 20 18:20:50 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdio/vfprintf.c (%p): Tests of LEFT for "(nil)" were inverted. + + * stdio/tst-printf.c (main): Add `printf ("%#03x\n", 1);'. + Add a width to %p test. + + * stdio/vfprintf.c (unsigned_integer): Clear SHOWSIGN and SPACE + flags before falling into `number:'. The `+' and ` ' flags are + only meaningful for signed numbers. + + * string/tester.c (main): For strstr #11, correct return is first + arg, not end of first arg. + + * stdlib/mbtowc.c: If S is "", return 0. How was I convinced + before that this is not what ANSI says? + + * stdio/__vfscanf.c: Initialize MALLOC_STRING to zero on each + iteration (when we zero is_short et al). + + * sysdeps/posix/mkstemp.c (mkstemp): New file. + * sysdeps/stub/mkstemp.c (mkstemp): New file. + * misc/Makefile (routines): Add mkstemp. + + * sysdeps/posix/mktemp.c: Use `getpid ()' in place of undefined + variable PID. + #include . + + * dirent/scandir.c: If SELECT is nil, don't try to call it. + If CMP is nil, don't sort. + +Wed Nov 18 13:42:09 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/__wait4.c: Changed type of 2nd arg to __WAIT_STATUS. + + * posix/sys/wait.h (__WAIT_STATUS): #if 0 out gcc2 magic defn. + GCC is broken as of 2.3.1. + + * signal/signal.h (__sigaction, sigaction): Fixed type in + prototype from `struct __sigaction' to `struct sigaction'. + + * sysdeps/m68k/fpu/atan2.c (PI, PIo4, PIo2): Removed static vars. + (atan2): Declare PIo4 and PIo2 locally, and compute them from pi. + + * Makerules (native-CFLAGS): Define as $(config-defines). + + * sysdeps/unix/bsd/glue-ctype.c: Upcased all HAVE_* names in #ifdef's. + + * posix/fnmatch.h (FNM_LEADING_DIR): New flag. + * posix/fnmatch.c (fnmatch): Support it. + + * sysdeps/i386/bytesex.h: New file. + * sysdeps/i386/endian.h: Removed. + * sysdeps/stub/bytesex.h: New file. + * sysdeps/stub/endian.h: Removed. + * sysdeps/generic/Makefile (bytesex.h): Create with det_endian. + (endian.h): Removed old rule. + (before-compile): Replace endian.h with bytesex.h. + * string/Makefile (headers): Add bytesex.h. + * string/endian.h: New file. + * sysdeps/generic/det_endian.c: Rewritten to output just one line, + a #define of __BYTE_ORDER to 1234, or 4321, etc. + * inet/arpa/nameser.h: #include , rather than #ifdef'ing + on misc. things to #define BYTE_ORDER. + * sysdeps/generic/waitstatus.h: Test value of __BYTE_ORDER, not + whether __LITTLE_ENDIAN is #define'd. + * sysdeps/generic/mathimpl.h: Likewise. + * sysdeps/generic/memcopy.h: Likewise. + * sysdeps/ieee754/huge_val.h: Likewise. + * sysdeps/ieee754/nan.h: Likewise. + * sysdeps/ieee754/ieee754.h: Likewise. + +Mon Nov 16 12:19:10 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makeconfig (ARCH): Define to empty if $(..)config.make exists. + + * misc/getusersh.c (initshells): malloc (STATB.st_size + 1), to + contain the terminating NUL. Pass fgets the real amount of space + left in the buffer, instead of the random number (MAXPATHLEN + 1). + + * configure.in (minix*): base_os=unix/sysv. + * sysdeps/unix/sysv/minix/sigaction.h: New file. + + * sysdeps/generic/sigaction.h (__SA_*): Renamed to SA_*. + [__USE_BSD]: Put all but SA_NOCLDSTOP under this #ifdef. + * signal/signal.h (SA_*): Remove #define's. + (SIG_*): Moved #define's to sigaction.h. + + * sysdeps/generic/sigset.h (__sigmask): Shift ((sigset_t) 1), not + just 1. + + * signal/signal.h (kill): Fix type of first arg to __pid_t, not int. + + * sysdeps/unix/Makefile (errnos): Changed regexp to disallow + E[^A-Z0-9], and not to require that the defn be numeric only. + + * stdlib/stdlib.h: Don't #include ; ANSI doesn't say + defines HUGE_VAL. + + * stdlib/stdlib.h (__compar_fn_t): Use __P around prototype. + + * posix/Makefile (headers): Add utsnamelen.h, so it gets installed. + (distribute): Remove it from here. + + * setjmp/setjmp.h (sigjmp_buf): Rename `__savemask' to + `__mask_was_saved' and `__sigmask' to `__saved_mask'. + * setjmp/sigjmp_save.c (__sigjmp_save): Change use. + * setjmp/siglongjmp.c (siglongjmp): Likewise. + +Fri Nov 13 17:34:00 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure.in (config.make): Write assignments for INSTALL, + INSTALL_PROGRAM, INSTALL_DATA, and RANLIB. + +Thu Nov 12 17:11:18 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/stime.c: #include for NULL. + + * sysdeps/stub/morecore.c: Fixed arg type to ptrdiff_t. + + * sysdeps/stub/ptrace.c: Fixed `va_start' uses to pass 2nd arg. + + * sysdeps/unix/sysv/sysv4/fcntlbits.h: New file, modified from + unix/bsd/sun/sunos4 version. + + * sysdeps/unix/bsd/bsd4.4/fcntlbits.h: New file, modified from + unix/bsd version. + + * sysdeps/unix/bsd/ultrix4/fcntlbits.h: New file, modified from + unix/bsd version. + + * sysdeps/unix/bsd/sun/sunos4/fcntlbits.h: New file, modified from + unix/bsd version. + + * sysdeps/unix/sysv/fcntlbits.h: Rewritten from stub version. + * sysdeps/unix/sysv/filebits.h: File removed. + + * sysdeps/unix/bsd/fcntlbits.h: Rewritten from stub version. + * sysdeps/unix/bsd/filebits.h: File removed. + + * io/fcntl.h: Don't #include . + Removed all #define's of foo to __foo; now defines + the unmarked cases. + + * sysdeps/stub/fcntlbits.h: Remove leading __ from all symbols. + + * misc/sys/file.h (L_SET, L_INCR, L_XTND): Define to literal + values, not to __ versions. These are not system-dependent. + (LOCK_SH, LOCK_EX, LOCK_UN, LOCK_NB): Define to literal values, + not to __ versions. These are not actually system-dependent, + because no system has `flock' except for BSD compatibility, and + then they use the same numbers. + * sysdeps/stub/fcntlbits.h (__L_SET, __L_INCR, __L_XTND): Removed. + (__LOCK_SH, __LOCK_EX, __LOCK_UN, __LOCK_NB): Removed. + +Tue Nov 10 17:01:11 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/stub/fcntlbits.h: Merged in contents of filebits.h. + (struct __flock): Renamed to `struct flock'. + * sysdeps/stub/filebits.h: File removed. + + * posix/unistd.h (access, lseek, close, read, write, pipe, chown, + fchown, chdir, dup, dup2, execve, pathconf, fpathconf, sysconf, + getpid, getppid, setpgrp, setpgid, setsid, getuid, getgid, + geteuid, getegid, setuid, setreuid, setgid, setregid, fork, vfork, + isatty, link, symlink, readlink, unlink, rmdir, gethostname, + getpagesize, getdtablesize): Remove #define's to __ versions. + + * posix/sys/types.h: Don't #include . + Instead, use forward decl `struct timeval;'. + (__select): Use `struct timeval', not `struct __timeval', in prototype. + Move into #ifdef __USE_BSD. + (select): Removed #define to __select; added real prototype. + + * sysdeps/generic/waitstatus.h: New file. + * sysdeps/stub/waitflags.h: New file. + * sysdeps/unix/bsd/waitflags.h: New file. + * posix/sys/wait.h: Don't #include . + Do #include and . + (WHOHANG, WUNTRACED): Don't #define to __ versions; + will define the unmarked cases. + (union __wait): Remove type decl and associated #define's for w_*; + `union wait' (no __) is now defined in . + [__USE_BSD && __GNUC__ >= 2] (__WAIT_STATUS): Define as funky union. + (waitpid, wait3, wait4, wait): Removed #define's to __ versions; + added real prototypes. + * posix/gnu/wait.h: File removed. + * posix/Makefile (headers): Remove gnu/wait.h. + + * posix/sys/times.h [__OPTIMIZE__] (times): Removed #define to __times. + + * posix/sys/utsname.h: Removed decl of __uname_getnode. + + * time/sys/time.h: Don't #include . + Don't support __need_timeval. + (struct timeval, struct timezone, struct itimerval, + enum __itimer_which): Declare these types here. + (gettimeofday, settimeofday, adjtime, getitimer, setitimer, + utimes): Removed #define's to __ versions. Added real prototypes. + Use `struct timeval' instead of `struct __timeval', etc. + * time/gnu/time.h: File removed. + * time/Makefile (headers): Removed gnu/time.h. + + * resource/sys/resource.h: Don't #include . + +Mon Nov 9 18:41:03 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * socket/sys/socket.h (SO_STYLE): Define instead of SO_TYPE. + (SO_TYPE): Define as SO_STYLE. + + * inet/netinet/in.h (struct ip_opts): New type. + (IP_*): New constants snarfed from 4.4's in.h. + +Fri Nov 6 15:34:41 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * resource/sys/resource.h (struct rusage): #include + before struct defn. Use `struct timeval', not `struct __timeval' + for `ru_utime' and `ru_stime' members. + + * resource/sys/resource.h [__OPTIMIZE__] (getrusage, ulimit), + misc/sys/ioctl.h [__OPTIMIZE__] (ioctl): Remove #define's to __ + versions. + + * string/strings.h: Protect against multiple inclusion. + * termios/sys/termios.h: Ditto. + + * string/string.h [__GNUC__ && __OPTIMIZE__] (ffs): Remove #define + to __builtin_ffs. + + * stdlib/stdlib.h (comparison_fn_t): Use a typedef, not a #define. + Define this #ifdef __USE_GNU, not #ifdef __GNUC__. + [__GNUC__ && __OPTIMIZE__] (abs, labs): Remove #define's to __builtin_. + +Thu Nov 5 20:01:25 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * signal/Makefile (headers): Remove gnu/signal.h; + add sigaction.h, sigset.h. + * sysdeps/generic/sigaction.h: New file. + * sysdeps/generic/sigset.h: New file. + * signal/gnu/signal.h: Removed. + * signal/signal.h: Move __{BEGIN,END}_DECLS outside all the #if's + (except the outermost one that protects against multiple inclusion). + Don't #include . Instead #include + outside of #if's, and #include inside #ifdef __USE_POSIX. + (__sighandler_t): Define here; it is not system-specific. + (kill, ssignal, gsignal, sigblock, sigsetmask, sigpause, sigvec, + sigreturn): Remove #define's to __ versions. + (sighandler_t, sigset_t): Use a typedef, not a #define. + [__OPTIMIZE__] (sig{empty,fill,add,del}set, sigismember): Make + these macros take args. + (sigaction): Remove #define. + (struct __sigvec): Renamed `struct sigvec'. + (__sigvec): Use `struct sigvec', not `struct __sigvec', in prototype. + +Fri Oct 30 19:45:26 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * configure.in (sco*): base_os=unix/sysv. + +Thu Oct 29 16:29:26 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * configure.in: New file; mostly contents of old file `configure'. + (srcdir guessing): Removed this code. + Instead, call AC_PREPARE. + Call AC_PROG_INSTALL and AC_PROG_RANLIB to find those programs. + Use AC_HAVE_FUNCS to find what sys_siglist and _ctype_ are called. + (config.make): Write new var `config-defines' with what autoconf + put in $DEFS. + Append -DHAVE_GNU_LD and -DHAVE_GNU_AS to DEFS if appropriate; + don't write gnu_ld and gnu_as variables. + * configure: Removed. + * Makefile (distribute): Add configure.in. + * Makeconfig (+defines): Include $(config-defines) before $(defines); + don't include $(gnu_as) and $(gnu_ld). + + * sysdeps/unix/bsd/glue-ctype.c (TABLE): Test HAVE_* for several + different names and #define this. + (STRINGIFY): Define macro. + (main): Use TABLE instead of hardcoded name. + + * configure (sysnames): Try successively less specific base os's. + + * Makerules (ar-it): Define commands only ifdef objects. + + * sysdeps/mips/setjmp.S: Jump to __setjmp_aux, not ___setjmp_aux. + We are NO_UNDERSCORES. + +Tue Oct 27 18:11:19 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/posix/pipestream.c, sysdeps/posix/system.c: Always use + __vfork instead of expecting FORK to be defined. + * sysdeps/unix/bsd/system.c, sysdeps/unix/bsd/pipestream.c: + Removed. sysdeps/unix versions are now what we want. + + * sysdeps/unix/bsd/sun/sunos3/m68k/__wait.S: Removed. + * sysdeps/unix/bsd/hp/m68k/__wait.S: Moved to unix/bsd/m68k. + + * sysdeps/unix/bsd/hp/m68k/{__pipe,sysdep}.S: Moved to unix/bsd/m68k. + * sysdeps/unix/bsd/sun/m68k/{__pipe,sysdep}.S: Removed. + + * sysdeps/unix/bsd/sun/m68k/start.c: Moved to unix/bsd/m68k. + * sysdeps/unix/bsd/sony/m68k/start.c: Removed. + + * sysdeps/unix/bsd/bsd4.4/__sigstmsk.c: Correct file name in #include. + + * sysdeps/unix/bsd/sun/m68k/__fork.S: Removed. + * sysdeps/unix/bsd/hp/m68k/__fork.S: Removed. + * sysdeps/unix/bsd/vax/__fork.S: Moved to unix/bsd. + + * sysdeps/generic/__vfork.c: New file; fn alias to __fork. + * sysdeps/stub/__vfork.c: Removed. + + * limits.h: Only do #include_next #ifndef _LIMITS_H_. + + * malloc/mcheck.c (mcheck): Set abortfunc to either FUNC or abort; + never leave it unchanged. + Return 0 if mcheck_used; -1 if not. + * malloc/malloc.h (mcheck): Change return type in decl. + + * Makerules (+depfiles): Don't include them if there are none. + +Mon Oct 26 16:30:52 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/fdopen.c: Use fcntl to check that FD is valid and + allows the access MODE specifies. + + * sysdeps/stub/getcwd.c: #include . + + * sysdeps/stub/sleep.c: #include . + +Sun Oct 25 02:24:47 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (+includes): Add $(+sysdep-includes) to this, leaving + CPPFLAGS alone. + + * sysdeps/stub/stime.c: #include . + +Thu Oct 22 13:36:48 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Rules (clean): Also remove $(clean-extras). + +Tue Oct 20 18:36:40 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * configure: Write error message and lose for option with missing arg. + + * stdio/__vfscanf.c: Add `a' modifier, which makes %s and %[ fill + in a char ** with a malloc'd string. + (STRING_ADD_CHAR, STRING_ARG): New macros to deal with this hair. + (%s, %[): Use them. + + * posix/gnu/types.h [__GNUC__] (__fsid_t): Define as long long. + + * stdio/vfprintf.c: Add %m, which is %s of strerror (errno). + +Mon Oct 19 14:19:36 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * socket/sys/socket.h (PF_FILE, AF_FILE): Define new macros. + (PF_UNIX, AF_UNIX): Make aliases for [PA]F_FILE. + + * sysdeps/ieee754/huge_val.h: #include . + [!__GNUC__]: Use __const, not CONST. + + * posix/wordexp.h: Fix indentation and syntax errors. + + * stdio/vasprintf.c (vasprintf): Set seen bit. + +Fri Oct 16 17:18:34 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makefile (Mcrt1.o): Create an empty .c file and compile it, + rather than creating an empty .o file. + + * sysdeps/unix/Makefile (sys/param.h): Strip / from name for mkdir. + + * sysdeps/m68k/fpu/atan2.c [! __GNUC__]: Include generic, not iee754. + + * sysdeps/sparc/Makefile ({divrem}.S): Use $(M4) for m4 in cmds. + * Makeconfig (M4): Define it. + + * stdio/newstream.c (__newstream): Link STREAM onto __stdio_head + after malloc'ing it. + + * time/emkdir.c: #define unix if not already defined. + +Thu Oct 15 19:55:45 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdlib/wctomb.c: When passed 0, store a '\0' and return 1. + * stdlib/mbtowc.c: When passed "", store a 0 and return 1. + + * sysdeps/generic/strstr.c: When NEEDLE is "", return HAYSTACK. + +Thu Oct 15 19:25:46 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * malloc/malloc.h (__after_morecore_hook): Declare new var. + * malloc/malloc.c (__after_morecore_hook): Define it. + (align): Call it. + +Mon Oct 12 15:56:07 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * malloc/malloc.h (r_alloc, r_alloc_free, r_re_alloc): Declare. + + * Makerules (native-compile, common-objdir-compile): Pass + $(native-CFLAGS) to the compiler. + + * Makeconfig (+gccwarn): Removed -Wstrict-prototypes and + -Wpointer-arith. They were not really helping, and caused extra + warnings for harmless code. + + * malloc/Makefile (dist-routines): Add ralloc. + (gpl2lgpl): Add ralloc.c. + + * time/zic.c: #define unix if not already defined. + + * Makerules ($(gpl2lgpl)): Make output unwritable; use mv -f. + +Mon Oct 12 15:27:40 1992 Brendan Kehoe (brendan@mole.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/ultrix4/mips/__set[gu]id.S: Handle returning to + the proper caller ourselves, since setre[gu]id won't be doing it. + +Mon Oct 12 13:37:16 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * malloc/malloc.h: Declare memory_warnings. + * malloc/Makefile (dist-routines): Add vm-limit. + (distribute): Add mem-limits.h. + (gpl2lgpl): Add vm-limit.c, mem-limits.h. + + * gpl2lgpl.sed: Remove "This file is part of ..." lines. + Changed regexp to match "foo is free software", not just "This + program ...". + + * Makerules (+make-deps): Put file name before options on command line. + + * Makefile (install-lib): Remove libc.a from here. + * Makerules [objects] (install-lib): Append it here instead. + + * io/sys/stat.h (S_IRWXO): Fixed typo. + +Sun Oct 11 16:58:36 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/glob.c (__glob_{open,read,close}dir_hook): New vars. + (glob_in_dir): Use them. + * posix/glob.h: Declare them. + +Thu Oct 8 20:03:30 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * configure (config.make): Write comment to edit configparms instead. + +Wed Oct 7 17:15:05 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/stub/__chown.c: Fixed arg types (int -> [ug]id_t). + + * sysdeps/stub/__geteuid.c: Fixed return type (int -> __uid_t). + + * sysdeps/stub/__getegid.c: Fixed return type (int -> __gid_t). + + * configure: Write defns in config.make for vars config-machine, + config-vendor, and config-os. + + * ctype/ctype.h (__isctype, __tolower, __toupper): Cast argument + and return value to `int'. + + * ctype/ctype.h (__ctype_tolower, __ctype_toupper): Changed type + to `short int *'. + (toupper, tolower): Removed inline functions; restored macros. + * ctype/ctype.c (tolower, toupper): Just call the __ macros. + * ctype/ctype-info.c: Change types here too. + * locale/localeinfo.h: And here. + * locale/C-ctype_ct.c: Ditto. + + * crypt: New code from Michael Glad. + + * Makefile (munch-init.c), sysdeps/unix/Makefile + ($(sys/param.h-includes), make-errnos.c, make-ioctls.c), + sysdeps/unix/bsd/Makefile (local_lim.h, ctype-glue.c), + sysdeps/posix/Makefile (stdio_lim.h): Changed rules to use a + shorter suffix than `-tmp', to avoid exceeding 14 char limit. + +Tue Oct 6 15:13:57 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile (README, INSTALL): Moved rules here. + * Make-dist: From here. + + * sysdeps/unix/bsd/sun/m68k/{__pipe,__fork,sysdep}.S: Change uses + of sysdeps/unix/bsd/hp9k3bsd to sysdeps/unix/bsd/hp/m68k. + + * sysdeps/m68k/Makefile: Put .S rule here. + * sysdeps/unix/bsd/hp/m68k/Makefile: Removed file. + +Mon Oct 5 19:40:22 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/pow.c (pow_p): Changed code to KY jelly. + + * sysdeps/unix/bsd/ultrix4/utsnamelen.h: New file. + * sysdeps/unix/bsd/ultrix4/uname.S: New file. + +Fri Oct 2 17:43:32 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/posix/mktemp.c: Don't use a static index and increment + it on each call. Instead, always start at the beginning and + iterate until we find a file that does not exist. + + * sysdeps/unix/sysv/i386/signal.S: Use C_SYMBOL_NAME for __sigreturn. + Added comment about gas bug with `lcall' insn. + + * sysdeps/unix/i386/__brk.S: Use C_SYMBOL_NAME for __curbrk and _end. + + * sysdeps/unix/i386/sysdep.S: #include . + Use C_SYMBOL_NAME(errno) in place of _errno. + + * sysdeps/unix/sysdep.h (___errno): Removed #define to _errno. + `errno' is an ANSI name; it doesn't need to be aliased. + * sysdeps/unix/bsd/sun/m68k/sethostid.S, + sysdeps/unix/bsd/sun/m68k/__vfork.S, + sysdeps/unix/bsd/sun/sparc/sysdep.h, + sysdeps/unix/bsd/sun/sparc/sethostid.S, + sysdeps/unix/bsd/vax/sysdep.S, + sysdeps/unix/bsd/vax/__vfork.S: Use _errno, not ___errno. + + * sysdeps/unix/sysv/sysdep.h: File removed. + * sysdeps/unix/sysv/i386/sysdep.h: Don't #include it. + #define NO_UNDERSCORES before #include . + + * sysdeps/unix/i386/sysdep.h (C_SYMBOL_NAME): Define new macro. + [NO_UNDERSCORES]: #define syscall_error to __syscall_error, so we + stay name space tidy. + + * sysdeps/unix/sysv/sysv4/sys_getdents.S: Added missing arg count (3). + + * sysdeps/unix/sysv/i386/time.S: Fixed to not use bogus addressing + mode `4(%esp,1)'; use `4(%esp)' instead. Added comments. + + * sysdeps/stub/__fchmod.c (__fchmod): Fixed arg type to mode_t. + + * sysdeps/posix/__wait3.c: #include for NULL. + + * sysdeps/unix/i386/__wait.S: Use asm label `null' instead of + `1f', and actually define the label! Added comments. + + * sysdeps/i386/memchr.c: Renamed asm label to `done'; not all + assemblers support numbered labels like `1f' or `1b'. + + * stdio/fseek.c (fseek): Discard char pushed back by ungetc. + * stdio/ftell.c (ftell): If we have a pushed-back char, decrement + the file position we return. + + * sysdeps/unix/bsd/sun/sparc/vfork.S: New file. + +Wed Sep 30 18:48:38 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * limits.h (_LIBC_LIMITS_H_): Define today's name for this. + RMS said it was to be `_LIBC_LIMITS_H', but that is not what + gcc actually uses. + +Tue Sep 29 18:17:12 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * time/Makefile (zic-cmd): Define variable. + (tzcompile, zoneinfo/localtime, zoneinfo/posixrules): Use it for + name of `zic' command. + + * sysdeps/unix/bsd/Makefile (ctype-glue.c): Make sure the command + is not an unqualified name. + + * sysdeps/stub/statbuf.h (struct stat): Contain only POSIX.1 + members, with the POSIX.1 types. + (_STATBUF_ST_BLKSIZE): #undef and comment. + * sysdeps/unix/bsd/statbuf.h (_STATBUF_ST_BLKSIZE): Define it. + * sysdeps/posix/stdio_init.c (__stdio_init_stream): Only try to + use st_blksize #ifdef _STATBUF_ST_BLKSIZE. + + * sysdeps/unix/__getpgsz.c: #include for size_t. + + * sysdeps/stub/__fchown.c: Fixed arg types ([ug]id_t, not int). + + * io/sys/stat.h: #include for __mode_t et al. + + * sysdeps/unix/__gete[ug]id.S [SYS_gete[ug]id]: Add arg count of 0. + [! SYS_gete[ug]id]: Fixed arg count to be 0. + + * sysdeps/unix/__get[ug]id.S: Fixed arg count to be 0. + + * sysdeps/unix/sysv/linux/syscall.h: #if 0'd out 2nd defn of SYS_brk. + +Sun Sep 27 21:56:56 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile (sys/param.h): Depend on $(common-objpfx)sys/. + +Fri Sep 25 12:47:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makeconfig (INSTALL_DATA): Pass -m 644. + +Thu Sep 24 16:13:47 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/linux/getpeername.S: Renamed to getpeernam.S. + * sysdeps/unix/sysv/linux/getsockname.S: Renamed to getsocknam.S. + * sysdeps/unix/sysv/linux/setsid.S: Renamed to __setsid.S; + function renamed to __setsid. + + * Version 1.05. + + * Makefile (dist): Depend on $(distribute). + + * stdio/__vfscanf.c (%c): Fixed DO_ASSIGN case loop condition to + not write one char too many. + +Wed Sep 23 16:32:18 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/qsort.c (_quicksort): Return immediately if TOTAL_ELEMS==0. + +Tue Sep 22 19:10:59 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makerules [! OUTPUT_OPTION && objpfx]: Define OUTPUT_OPTION. + +Mon Sep 21 22:40:55 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/mk-local_lim.c: Use MAXNAMLEN for NAME_MAX, + rather than hard-wiring 255. + [! MAXNAMLEN]: Define it to 255. + [LINK_MAX && ! MAXLINK]: #define MAXLINK LINK_MAX. + + * sysdeps/unix/bsd/glue-ctype.c [ultrix]: #define _ctype_ _ctype__. + + * configure: Rename var `gas' to `gnu_as' and use consistently. + +Fri Sep 18 16:32:16 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sys/errno.h: New file. + * Makefile (headers): Add it. + + * Makeconfig (+make-deps): Use = not define. + + * time/Makefile (zones-%): Don't clobber zonenames; append to it. + Depend on Makefile so we rebuild when the rule changes. + Changed implicit rule from zoneinfo/%/... to zone%/... so it will + actually match. + + * sysdeps/unix/Makefile (syscall.h): Filter out "#ident" lines. + + * Makeconfig (+link): Use $(gnulib) instead of -lgcc. + (gnulib): Define to -lgcc. + + * posix/glob/Makefile.in (AR, ARFLAGS): Define. + (libglob.a): Use those vars instead of hardcoding. + + * Makeconfig (ARCH) [machine]: Don't define if $(..)config.make exists. + + * Makerules (compile.S): Include $(asm-CPPFLAGS). + (S-CPPFLAGS): Define = $(asm-CPPFLAGS). + (+make-deps): Include $(sfx-CPPFLAGS), where `sfx' is S or c. + * Makeconfig (asm-CPPFLAGS): Define (empty) and comment. + + * sysdeps/unix/Makefile ($(sys/param.h-includes)): Filter out + decls or macros for host<->net conversion (htonl et al). + +Thu Sep 17 17:33:51 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/statbuf.h: Define __S_*. + + * misc/Makefile (headers): syslog.h -> sys/syslog.h. + * misc/syslog.h: Moved to misc/sys/syslog.h. + + * limits.h [__GNUC__ >= 2]: #define _LIBC_LIMITS_H before + #include_next . + Define _LIMITS_H unconditionally. + +Wed Sep 16 17:43:59 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile (syscall.h): Don't use \< in sed commands. + Some seds don't seem to grok it. + + * Makerules (+install-dirs): Sort them. + + * Makeconfig (stdarg.h): Use $(wildcard va-*.h) instead of va-*.h, + and := instead of =. + + * Makeconfig (prefix): Default to $(exec_prefix), not /usr/local. + + * Makeconfig (+link): Use $(common-objpfx) rather than $(objpfx) + to find start.o; use $(libc.a) instead of $(objpfx)libc.a. + + * sysdeps/sparc/Makefile: crypt subdir is not called uf-crypt. + + * sysdeps/unix/Makefile (sys/param.h-includes): Fixed filtering + out of existent glibc headers to remove $(..) pfx after wildcard. + + * misc/paths.h: New file, snarfed from 4.4 BSD. + * misc/Makefile (headers): Add paths.h. + +Tue Sep 15 14:55:11 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (+sysdir_pfx): Define as $(common-objpfx). + + * MakeTAGS (TAGS) [subdir && ! tags_sources]: Create an empty + file, rather than no commands at all. + + * string/string.h [__GNUC__ && __OPTIMIZE__] (ffs): Take arg. + + * sysdeps/unix/sysv/linux/__wait4.S: New file. + + * sysdeps/unix/sysv/linux/syscall.h: New version from hlu. + + * sysdeps/unix/Makefile (syscall.h): Upcase `sys_' in input. + + * sysdeps/unix/bsd/ultrix4/mips/sysdep.h (MOVE): Insn is `move', + not `movl'. + + * sysdeps/unix/bsd/ultrix4/mips/sigcontext.h: Deansideclized. + + * sysdeps/unix/ioctls-tmpl.c [DIOCGETPT, DEVGETGEOM]: Include + headers for these. + [ultrix]: Mondo cruft. + +Sat Sep 12 12:08:29 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * misc/Makefile (routines): Add ttyslot, syslog. + * misc/ttyslot.c, misc/syslog.[ch]: New, snarfed from 4.4 BSD. + (headers): Add syslog.h + + * misc/getttyent.c (getttyent): Parse _TTYS_TRUSTED keyword and + set TTY_TRUSTED bit. + * misc/ttyent.h (TTY_TRUSTED): New bit in ty_status. + (_TTYS_TRUSTED): New keyword. + (_TTYS_CONSOLE): New keyword. + (TTY_CONSOLE): New bit in ty_status. + + * dirent/scandir.c (scandir): Don't keep using V after realloc'ing + it. Use the returned new ptr instead. + +Thu Sep 10 18:59:23 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/div.c, stdlib/ldiv.c: Rewritten from Berkeley code that works. + + * Makeconfig (stdarg.h): Add va-*.h. + + * stdlib/Makefile (dont_distribute): Define: testsort.input. + + * sysdeps/mach/hurd/i386/_hurd_start_sigthread.c, + sysdeps/stub/_hurd_start_sigthread.c: Renamed to .../startsig.c. + * sysdeps/mach/hurd/sys_errlist.awk: Renamed to .../errlist.awk. + * sysdeps/mach/hurd/Makefile (sys_errlist.c): Change dep. + * sysdeps/unix/bsd/make-local_lim.c: Renamed to .../mk-local_lim.c. + * sysdeps/unix/bsd/Makefile (local_lim.h): Change dep. + (make-local_lim): Change target and dep. + * hurd/_hurd_dead_recv.c: Renamed to hurd/dead_recv.c. + * hurd/setdtablesize.c: Renamed to hurd/setdtsz.c. + * hurd/Makefile (routines): Change references. + * stdio/tstgetline.c: Renamed to stdio/tstgetln.c. + * stdio/tstgetline.input: Renamed to stdio/tstgetln.input. + * stdio/Makefile (tests): Change ref. + * README.template: Remove note about long file names. + + * sysdeps/unix/bsd/sun/sunos4/utsnamelen.h (_UTSNAME_LENGTH): + Define here, rather than #include'ing sysv/utsnamelen.h. + This file gets installed. + +Wed Sep 9 17:06:14 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makeconfig (localtime-file): Put in $(prefix)/etc, not /etc. + + * setjmp/Makefile (routines): Remove sigsetjmp. + + * sysdeps/posix/Makefile (objdir-CPPFLAGS) [! subdir]: Rewrote + totally broken defn. + + * sysdeps/unix/Makefile (syscall.h): Keep lines starting + with #, not only those starting with #define. + We want to preserve any #ifdef in the original. + + * Makerules (install): Dep $(+install-dirs), not $(dir $(+install)). + (+install-dirs): Define to get two levels of dirs. + + * time/Makefile (tz-cc): Use = instead of define directive. + + * sysdeps/unix/bsd/sun/sparc/start.c (_start): Give ARGC, ARGV, + and ENVP `register' storage class; can then clear the FP early. + +Sat Sep 5 13:14:09 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * Makerules (sysdirs): Pass sysdep_dir in child's environment. + +Fri Sep 4 15:37:23 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * Makeconfig (common-objpfx): Add trailing slash. + Move comment to prev line to avoid extra whitespace. + +Thu Sep 3 17:31:13 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/setgroups.S: New file. How did this manage not + to exist already?? + + * Version 1.04. + + * sysdeps/generic/memmem.c (memmem): Fixed loop condition not to + use nonexistent variable. + + * string/string.h (memmem): Put const qualifier on args. + + * sysdeps/stub/sigaltstack.c (sigaltstack): Fix arg type. + + * setjmp/sigsetjmp.c: #undef sigsetjmp before defining the function. + +Wed Sep 2 16:43:58 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * misc/Makefile (headers): Add syscall.h. + * sysdeps/unix/Makefile: Only generate syscall.h if it would + otherwise come from stub. + * sysdeps/stub/syscall.h: New file. + + * time/Makefile (routines): Add stime. + + * io/Makefile (routines): Add fchdir. + + * signal/Makefile (routines): Add sigaltstack. + + * string/Makefile (routines): Add memmem. + + * setjmp/Makefile (routines): Add sigsetjmp, _setjmp. + + * misc/Makefile (routines): Add getpass. + + * Makefile (distribute): Add NEWS. + + * Makerules (ar-it) [! objdir]: Pass `ru' instead of `u' to ar. + Use $(..)libc.a instead of $(libc.a). + + * sysdeps/unix/sysv/i386/linux/sysdep.h (PSEUDO): Call numbers are + SYS_*, not __NR_*. + + * sysdeps/unix/sysv/i386/linux/__wait.S: Prepend extra _ to + `__waitpid' for jmp. + + * Makerules (check): New rule; alias for `tests'. + + * sysdeps/stub/__setregid.c: Args are gid_t, not int. + + * sysdeps/posix/readv.c: #include . + + * sysdeps/generic/printf_fp.c: If LDBL_DIG or LDBL_MAX_10_EXP is + defined by float.h, #define each to DBL_*. + +Tue Sep 1 16:29:07 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/Makefile (syscall.h): Add missing backslashes. + + * Makeconfig [!objdir && !..] (common-objpfx): Define as + `sysdeps/..'; The Almighty KludgeMeister 2000 wins again. + + * Makerules (sysdep-Makefile): Rename to sysd-Makefile. + + * Makeconfig (CC): Don't use -pipe by default. + + * configure (switches): Put quotes around os-release and + os-version values. + +Mon Aug 31 19:33:15 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/stub/cbrt.c: New file. + + * sysdeps/generic/cabs.c: New file. + + * sysdeps/generic/ceil.c: New file, split from floor.c. + * sysdeps/generic/__rint.c: Replaced with code split from floor.c. + * sysdeps/generic/Makefile (routines): Don't remove ceil, __rint. + +Thu Aug 27 15:58:13 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * malloc/malloc.h [! __STDC__] (ptrdiff_t): #define. + +Wed Aug 26 18:15:47 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * malloc/free.c (__free): Rename to _free_internal. + (free), malloc/malloc.c (morecore): Change callers. + * malloc/malloc.h: Change decl. + +Tue Aug 18 17:38:13 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/generic/__copysign.c: New file. + + * sysdeps/unix/sysv/sysdep.h: #include , not + . Don't #define _SYS_SYS_S; should no longer be + necessary. + + * sysdeps/unix/Makefile (syscall.h): Replaced simple code to just + find the file in any of several places, with hairier code to find + it and massage it. + + * malloc/Makefile (obstack.%): Remove rule. + (gpl2lgpl): Define this instead. + * posix/Makefile (gpl2lgpl): Define to include getopt source files. + * Makerules ($(gpl2lgpl)): New rule to snarf code and frob its + copying notices. + +Fri Aug 14 13:28:39 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makeconfig (common-objdir, common-objpfx): Define new vars. + (libc.a): Define in terms of $(common-objpfx). + Find config.make with $(common-objpfx), not $(objpfx). + * Makerules (common-objdir-compile): Define canned sequence. + (native-compile): Use $(@D)/$(@F) instead of stripping off $(objpfx). + * sysdeps/unix/Makefile, sysdeps/unix/bsd/Makefile, + sysdeps/generic/Makefile: Use it. + Use $(common-objpfx) for generated things not specific to one subdir. + + * sysdeps/unix/Makefile (sysdep_headers): Add + $(sys/param.h-includes) to this instead of to headers. + +Thu Aug 13 18:30:58 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/glob.c: Always #include . + [! USG]: Don't do it here. + [STDC_HEADERS]: Test this instead of __STDC__ for size_t. + [HAVE_STRCOLL]: Test this instead of ANSI_STRING for strcoll. + + * posix/glob/Makefile.in (Makefile): Remove rule. + +Wed Aug 12 16:12:52 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/sparc/jmp_buf.h: Deansideclized. + + * sysdeps/generic/make_siglist.c: #undef HAVE_SYS_SIGLIST, not + SYS_SIGLIST_MISSING. + * sysdeps/generic/signame.[ch]: Re-symlinked from /gd/gnu/lib. + Who's been removing random things from my source tree?? + +Tue Aug 11 15:01:50 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/getconf.c (main): Cast printf field with arg to int. + + * Makefile (distribute): Remove ansidecl, ansidecl.m4. + + * posix/glob.c [_AIX]: Don't declare alloca. + +Mon Aug 10 17:09:40 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/m68k/fpu/__math.h (__expm1): Define just like expm1. + + * sysdeps/unix/ioctls-tmpl.c [SMIOSTATS, SMIOGETREBOOT0, + ZIOCBCMD]: Include headers for these. + +Fri Aug 7 16:01:43 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * string/tester.c (main): Use sys_nerr and sys_errlist, not _sys_*. + + * stdio/stdio.h [__USE_GNU] (_sys_nerr, _sys_errlist): Declare. + + * string/strerror.c, stdio/perror.c + [HAVE_GNU_LD] (_sys_errlist, _sys_nerr): Remove decls. + + * stdio/memstream.c (enlarge_buffer): Notice when target is -1 and + don't treat it as a huge value. + + * stdio/tst-printf.c: #if 0 code that tickles printf_fp bugs. + + * grp/testgrp.c: Don't bomb if uid not in passwd file. + + * stdlib/tst-strtol.c (tests): C-t on LONG_MIN and LONG_MIN-1 elts. + + * stdlib/strtol.c: Use int flag NEGATIVE instead of char 1/-1 SIGN. + Fixed checking for overflow of long int that fits in unsigned long + int--must cast LONG_MIN before negating! + +Thu Aug 6 18:46:24 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdio/bug3.c (main): Define ansideclifily. + + * sysdeps/unix/bsd/sun/sparc/__pipe.S: Define __pipe, not ___pipe. + + * math/test-math.c (main): Remove unused vars. + + * io/flock.c: #include , and not fcntl.h or sys/types.h. + + * sysdeps/m68k/fpu/__math.h (__rint): Define just like rint. + + * math/math.h (__rint): Declare. + + * configure (esix*): base_os=unix/sysv. + + * dirent/getdents.c: #include . + + * Rules (subdir): Avoid TAB before # at end of defn. + + * sysdeps/unix/bsd/bsd4.4/__wait3.c: Last arg type is struct rusage *. + +Tue Aug 4 18:19:43 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/ieee754/Makefile: Removed. + + * math/math.h: Declare __expm1. + +Mon Aug 3 13:02:05 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/ieee754/cabs.c (cabs, z_abs): Members of structure have __. + + * sysdeps/unix/bsd/seq386: Remove directory. + +Thu Jul 30 15:42:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sparc/sigcontext.h: Deansideclized. + + * sysdeps/unix/bsd/sun/sunos4/__wait4.c: Make last arg struct rusage + instead of PTR. + + * sysdeps/unix/morecore.c (__default_morecore): Make arg ptrdiff_t. + + * sysdeps/ieee754/cabs.c (cabs, z_abs): Use `struct __complex' for arg. + + * sysdeps/generic/pow.c: #include . + + * sysdeps/generic/mathimpl.c: #include before frobnication. + + * misc/getusersh.c (okshells): Make const. + (initshells): Properly declare static. + + * sysdeps/unix/bsd/__tcgetatr.c: Cast sg_[io]speed to (unsigned char) + to avoid gcc warnings. + + * math/bsd/common/atan2.c, math/bsd/common/tan.c, + math/bsd/common/sincos.c, math/bsd/common/trig.h, + math/bsd/common_source/__expm1.c, math/bsd/common_source/fmod.c, + math/bsd/common_source/acosh.c, math/bsd/common_source/log.c, + math/bsd/common_source/asincos.c, math/bsd/common_source/asinh.c, + math/bsd/common_source/log1p.c, math/bsd/common_source/atan.c, + math/bsd/common_source/log__L.c, math/bsd/common_source/atanh.c, + math/bsd/common_source/mathimpl.h, math/bsd/common_source/cosh.c, + math/bsd/common_source/exp.c, math/bsd/common_source/sinh.c, + math/bsd/common_source/exp__E.c, math/bsd/common_source/tanh.c, + math/bsd/common_source/floor.c: Moved to sysdeps/generic. + * math/bsd/ieee/{cabs,cbrt,support}.c: Moved to sysdeps/ieee754. + * All above + sysdeps/generic/mathimpl.h, sysdeps/generic/pow.c: New + code from 4.4/net2. + + * sysdeps/generic/ffs.c: #include , not . + + * posix/glob/Makefile.in (Makefile): Depend on config.status; invoke + it directly instead of using $(SHELL). + + * posix/glob.c [! USG]: #include before . + +Tue Jul 28 17:54:23 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/ultrix42: Renamed to ultrix4. + + * sysdeps/unix/sysv/isc2.2/__rename.S: New. + * configure (isc*): base_os=unix/sysv. + + * Makefile, Makerules, Rules, math/Makefile, ctype/Makefile: Use + "export foo := $(foo)" instead of ifdef have_export_directive. + * Makeconfig (have_export_directive): Remove; move .NOEXPORT down. + +Mon Jul 27 18:01:30 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure: Remove redundant test to set os_used. + +Sun Jul 26 17:03:31 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * README.template: Don't mention Q+A. + * Makefile (distribute): Remove Q+A. + + * Makefile, Makerules, Rules, math/Makefile, ctype/Makefile: Put + "ifdef have_export_directive" around uses of `export' directive. + They are only needed for dist and tags anyway. + * Makeconfig (have_export_directive): Add commented-out defn, and + comment to explain. + (.NOEXPORT): Add special target for old versions of GNU make. + + * posix/glob.c [_AIX]: #pragma alloca first thing. + [ANSI_STRING]: Remove #define's for index et al. + +Thu Jul 23 21:49:53 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * misc/getpass.c: New. + * posix/unistd.h (getpass): Declare. + + * posix/unistd.h (getusershell, setusershell, endusershell): Declare. + * misc/Makefile (routines): Add getusersh. + * misc/getusersh.c: New. + +Tue Jul 14 20:03:57 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/Makefile (tests): Add testdiv. + * stdlib/testdiv.c: New. + + * sysdeps/unix/sysv/i386/linux/{rename,__mkdir,__rmdir,__dup2, + getpgrp,__setpgrp,setsid}.S: New files. + + * sysdeps/unix/__getppid.S: If SYS_getppid is defined, use it rather + than alternate value of getpid. + * __gete[ug]id.S: Similar. + + * sysdeps/unix/sysv/i386/linux/__waitpid.S: New file. + * sysdeps/unix/sysv/i386/linux/__wait.S: New file. + * sysdeps/posix/__wait3.c: New file. + + * sysdeps/unix/sysv/i386/linux/socket.S: New file. + * bind.S, connect.S, listen.S, accept.S, getsockname.S, + getpeername.S, socketpair.S: Also new (and trivial). + +Mon Jul 13 17:41:46 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/i386/linux/sysdep.[hS]: New files. + + * configure (linux*): base_os=unix/sysv + (gnu*, linux*): Always set --with-gnu-ld and --with-gnu-as. + + * stdio/obstream.c: #include + (obstack_vprintf): Use bzero rather than memset. + + * stdio/glue.c (unix_FILE.glue): Add two members, which will overlap + get_limit and put_limit in GNU stdio. + (_iob): Initialize them to same as `streamp'. + +Thu Jul 9 21:27:39 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/stdio.h (open_obstack_stream, obstack_printf, + obstack_vprintf): Declare. + + * posix/glob.c [STDC_STRINGS]: Don't test this. + [! ANSI_STRING]: Put memcpy, strrchr, memset defns here instead. + + * posix/glob/Makefile.in (glob.o, fnmatch.o): / after $(srcdir). + +Tue Jul 7 03:11:23 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/Makefile (routines): Add obstream. + + * Makerules (%.o: %.S, %.o: %.c): If using gcc, put the file name + before the options on the command line. + + * malloc/Makefile (dist-routines): Define with routines for malloc.tar. + (routines): Define with that plus the rest. + (nodist): Remove. + (routines): Add obstack. + (headers): Add obstack.h. + (obstack.%): New rule. + + * stdio/glue.c: Add comments. + + * stdio/printf.h (struct printf_info.spec): Make unsigned char. + + * stdio/stdio.h (__validfp): Fixed glued-stream snarfing. + +Mon Jul 6 20:00:47 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/i386/jmp_buf.h: Deansideclized. + + * sysdeps/posix/Makefile (objdir-CPPFLAGS): Define; if in parent + dir, add ..s to -Is. + (mk-stdiolim): Use it in place of $(CPPFLAGS). + +Sat Jul 4 20:44:42 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/glob/Makefile.in (glob.o, fnmatch.o): Put $(srcdir) on deps. + +Wed Jul 1 00:13:40 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/strstr.c: If NEEDLE is "", return end of HAYSTACK. + + * string/tester.c (main): Remove decls of sys_nerr and sys_errlist. + + * configure: Accept --prefix=*, --exec_prefix=* options. + Set values in config.make and config.status. + + * io/umask.c: Fixed return type in fn alias. + + * posix/glob.c [! ANSI_STRING]: #define strcoll to strcmp. + Remove extra decls of free, qsort, malloc, and realloc. + + * dirent/alphasort.c: #include , and not . + + * sysdeps/unix/bsd/i386/__wait3.S: Load SYS_wait into %eax before + trapping. Use literal .byte instead of lcall to avoid gas bug. + Use 0(REG), not (REG), for register-indirect addressing. + + * configure: Make config.status executable. + +Tue Jun 30 21:14:53 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * configure: Add --os-release=* and --os-version=* options. Record + settings (which might be automagically guessed) in config.status. + + * misc/mknod.c: Use __mode_t for arg in fn alias. + + * posix/unistd.h (setregid): Declare to take __gid_t args. + + * sysdeps/unix/bsd/i386/__wait3.S: Don't use lcall insn gas barfs on. + + * posix/vfork.c: Move to sysdeps/generic/. + + * Rules (others, tests): Export them. + + * io/umask.c, io/mkdir.c, io/chmod.c: Use mode_t not int in arg decls. + + * sysdeps/i386/ffs.c: #include , not . + + * stdio/vfscanf.c: Use function_alias. + + * stdio/vsscanf.c: Use va_list, not PTR, in arg decl in fn alias. + + * sysdeps/unix/i386/sysdep.h (PSEUDO): Enough backslashes and + semicolons. + + * stdio/stdio.h: For __gnuc_va_list, #test __GNUC_VA_LIST, not + __va_list_defined. + + * stdio/fmemopen.c: Use memchr to find NUL for append mode. + + * stdio/memstream.c (enlarge_buffer): Double the buffer size, rather + than adding 100. Don't clobber *INFO->bufsize when called with the + put limit reset. If the target has been set, extend and zero-fill + the buffer. + (seek): New function. + (open_memstream): Use it for seek io fn. Call fmemopen with "w+" mode. + +Sun Jun 28 19:01:01 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdio/fseek.c: Fail with EINVAL for a negative file pos. + +Fri Jun 26 00:07:53 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makeconfig (stdarg.h): New variable. + * Makefile (headers): Add $(stdarg.h). + + * stdio/stdio.h: Change __va_list to __gnuc_va_list in decls. + + * sysdeps/unix/morecore.c: Include malloc.h #ifndef _MALLOC_INTERNAL. + Don't include . + (NULL): Define to 0 if not defined. + + * sysdeps/i386/bzero.c: Include string.h, not bstring.h. + +Thu Jun 25 21:01:40 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdio/perror.c, string/strerror.c (_sys_errlist, _sys_nerr): Don't + declare #ifndef HAVE_GNU_LD. + + * stdio/fwrite.c: Cast arg to write io func to const char * (from uns). + + * sysdeps/unix/Makefile: If syscall.h doesn't exist in + $(sysincludedir), look for sys/syscall.h and create $(objpfx)syscall.h + to #include it. + + * sysdeps/unix/morecore.c (__default_morecore): Deansideclized. + * malloc/*.c: Only #include #ifndef _MALLOC_INTERNAL. + +Wed Jun 24 19:09:04 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/snarf-ioctls: Avoid looking at a few particular + headers which tend to mislead us. + + * Makefile (distribute): Add COPYING. + + * configure (Makefile): When invoking make in srcdir, set ARCH + rather than objdir on the cmd line. + + * posix/glob.c [DIRENT] (direct): Don't define to dirent. + [! DIRENT] (direct): Define to dirent. + + * Make-dist [!subdir] (+tsrcs): Don't include $(distribute). It was + already included above. + +Mon Jun 22 16:58:34 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makerules (sysdep_routines): Export it. + +Wed Jun 17 17:58:05 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/glob.c (my_realloc): Test only __GNU_LIBRARY__. Can't trust + STDC_HEADERS. + +Tue Jun 16 20:20:01 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * resource/sys/resource.h (enum __rlimit_resource): Added MEMLOCK, + NPROC, OFILE. + + * posix/Makefile (glob.tar): Include Makefile.in & configure, and not + Makefile. + (glob/configure): New rule. + + * posix/glob/Makefile: Moved to posix/glob/Makefile.in. + (VPATH, srcdir, CPPFLAGS): Define to be replaced by autoconf. + + * posix/glob.c: Rearranged conditionals for use with autoconf. + +Thu Jun 11 15:47:43 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sparc/start.c: Added alias for start -> __start. + +Tue Jun 9 20:15:12 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/posix/rename.c: Return failure and don't remove the old + link if the link failed with other than EEXIST. + + * posix/glob/Makefile: Fixed copyright notice. + (realclean): Don't remove ~ backup files. + +Thu Jun 4 16:41:56 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * time/Makefile (install-data): Don't include zoneinfo/. + Makerules already makes sure the necessary directories exist. + + * setjmp/setjmp.h (sigsetjmp) [__GNUC__]: Use typeof hackery to + construct the type of the temporary var for the arg. + (_setjmp) [__FAVOR_BSD]: Make same as setjmp. + + * malloc/malloc.h (mtrace): Declare. + + * malloc/malloc.h, malloc/calloc.c, malloc/free.c, malloc/malloc.c, + malloc/mcheck.c, malloc/memalign.c, malloc/mstats.c, + malloc/mtrace.c, malloc/realloc.c, malloc/valloc.c: Deansideclized; + changed copyright notices to be independent of libc. + * malloc/Makefile (glob/%.c, glob/%.h): Don't need to ansideclificate. + + * io/ftw.h, io/ftw.c: New. + * io/Makefile (headers): Added ftw.h. + (routines): Added ftw. + +Tue Jun 2 21:49:22 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/signum.h (SIG_ERR, SIG_DFL, SIG_IGN): Use + __sighandler_t. + + * posix/glob.c (__ptr_t): Define. + +Thu May 28 06:57:14 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/m68k/jmp_buf.h: Don't use PTR. + +Wed May 27 18:09:40 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/{glob,fnmatch}.[ch]: Deansideclized; changed copyright + notice to be independent of libc. + * posix/Makefile (glob/%.c, glob/%.h): Don't need to ansideclificate. + + * posix/unistd.h (_SC_2_FORT_RUN, _SC_2_LOCALDEF): Define. + + * posix/unistd.h: Define _POSIX2_* without #ifdef __USE_POSIX2. + + * posix/unistd.h (_POSIX2_FORT_DEV): Removed. + + * posix/fnmatch.h (FNM_FILE_NAME): Alias for FNM_PATHNAME. + +Tue May 26 00:39:39 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * time/Makefile (install-data): Include zoneinfo/, so the directory + gets made. + + * Makeconfig (+gcc-nowarn): Define to -w if using gcc. + * time/Makefile (tz-cc): Use it to suppress warnings for grody code. + + * posix/Makefile (libposix.a), math/Makefile (libm.a): Make archive + containing /dev/null instead of nothing; ar won't create an empty + archive. + + * Makerules (%/): Added generic mkdir rule. + + * posix/Makefile (install-lib): Define to libposix.a. + (libposix.a): Create empty archive. + + * posix/Makefile (distribute): Added utsnamelen.h. + + * ctype/ctype.c (tolower, toupper): If the arg doesn't fit in a + char, return it unchanged. + * ctype/ctype.h (tolower, toupper): Don't define as macros. + [__GNUC__]: Define as extern inline functions. + + * sysdeps/unix/bsd/sun/sunos4/utsnamelen.h, + sysdeps/unix/bsd/sun/sunos4/uname.S: New. + + * configure: Only do hacking to snarf uname info if the config uses + the generic uname implementation. + + * Makeconfig (+defines): Define to include $(gnu_ld), rather than + -DHAVE_GNU_LD. + * configure: Write config.make with gnu_ld/gnu_as defns. + + * sysdeps/unix/bsd/sun/sunos411: Renamed back to .../sunos4. + * sysdeps/unix/bsd/bsd44: Renamed to .../bsd4.4. + + * Makeconfig: include $(objpfx)configparms instead of + $(objdir)/Makeconfig. + Define objpfx as soon as objdir is defined, so we can use it. + + * sysdeps/generic/uname.c: Use UNAME_* from config-name.h. + +Mon May 25 19:33:07 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * configure: Accept all standard GNU configure options. + Expect to be run in object directory, and find source directory + elsewhere. + Write config.status as a shell script that can be run to recreate + the configuration. + Grok os names containing dots by trying each successively + less-precise substring. + Write Sysnames and config-name.h in current directory. + Write #define's for uname sysname, release, version, and machine + elts in config-name.h. Hackery to intuit release and version info. + + * stdio/vsnprintf.c, stdio/vsprintf.c, stdio/vasprintf.c, + stdio/vdprintf.c, stdio/vfscanf.c, stdio/vscanf.c, + stdio/__vsscanf.c: Take arg list as va_list, not PTR. + + * stdio/stdio.h: Replaced #include with magic. + Properly use __va_list in prototypes. + + * Makeconfig (exec_prefix): Define. + (libdir, includedir, bindir): Use it. + + * sysdeps/unix/sysv/Makefile [subdir==io] (sysdep-routines): Removed + __utssys. + * sysdeps/unix/sysv/Dist: Removed __utssys.S. + * sysdeps/unix/sysv/__utssys.S, sysdeps/unix/sysv/uname.c: Removed. + * sysdeps/unix/sysv/uname.S, sysdeps/unix/sysv/utsnamelen.h: New. + + * posix/sys/utsname.h (_UTSNAME_LENGTH): Don't define; instead, + #include to define it. + * sysdeps/generic/utsnamelen.h: New. + +Sun May 24 00:07:45 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/generic/inet-cvt.h: Deansideclized. + + * string/string.h (memfrob): First arg is __ptr_t, not char *. + + * misc/sys/cdefs.h (__ptr_t): Made #define rather than a typedef. + +Fri May 22 01:52:04 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makefile, Rules, Makerules: Remove all rules for ansideclificating + headers. + + * posix/glob.h, posix/fnmatch.h: Use explicit cruft for C++. + Define __P and const for C++/ANSI vs old C ourselves, to avoid + dependence on . + + * inet/Makefile: Remove cruft to snarf things from bsd/. + * inet/bsd/*.c: Moved to inet/. + + * Makerules: Install headers from source directories into + $(includedir), rather than ansidecl madness. + * Makeconfig (ansi-incldir, trad-incldir): Removed. + (includedir): Define instead. + + * assert/assert.h, ctype/ctype.h, dirent/dirent.h, grp/grp.h, + locale/locale.h, locale/localeinfo.h, math/math.h, + misc/sys/file.h, misc/sys/ioctl.h, misc/sys/ptrace.h, + misc/sys/uio.h, misc/sgtty.h, misc/nlist.h, posix/gnu/types.h, + posix/sys/wait.h, posix/sys/types.h, posix/sys/times.h, + posix/sys/utsname.h, posix/unistd.h, posix/tar.h, posix/utime.h, + posix/wordexp.h, posix/glob.h, posix/fnmatch.h, pwd/pwd.h, + resource/sys/resource.h, resource/sys/vlimit.h, + resource/sys/vtimes.h, setjmp/setjmp.h, signal/signal.h, + signal/gnu/signal.h, socket/sys/socket.h, stdio/stdio.h, + stdio/printf.h, stdlib/alloca.h, stdlib/stdlib.h, string/string.h, + termios/termios.h, time/sys/time.h, time/time.h, io/sys/stat.h, + io/fcntl.h, errno.h, stddef.h, malloc/malloc.h: + Deansideclized. Use macros instead of ansidecl and + C++ cruft. + * features.h: #include . + + * string/string.h (strfry, memfrob): Declare. + * string/Makefile (routines): Added strfry and memfrob. + * string/strfry.c, string/memfrob.c: New. + + * locale/C-ctype_ct.c: Made BS be isspace. + + * sysdeps/generic/strstr.c: Return HAYSTACK, not its end, if NEEDLE + is the empty string. + + * sysdeps/generic/strncase.c: Fixed for case of empty string. + +Wed May 20 02:36:09 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * io/sys/stat.h (fchmod): Declare, rather than two __fchmod decls. + + * configure (sysv, bsd): Don't make base_os=unix; unix/{sysv,bsd} + instead. + Set os_used if base_os is used. + +Tue May 19 21:00:11 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * crypt/*: New files from glad. + + * stdio/stdio.h (sys_nerr, sys_errlist): Don't declare const. + +Sun May 17 15:50:00 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * io/Makefile (headers): Remove gnu/stat.h; add sys/stat.h. + + * posix/glob.c (glob): Don't let us fall off the end without returning. + + * sysdeps/stub/setenv.c, sysdeps/posix/setenv.c: New. + * stdlib/stdlib.h [__USE_BSD] (setenv): Declare. + * stdlib/Makefile (routines): Add setenv. + + * malloc/mtrace.c (old_{free,malloc,realloc}_hook): Renamed to tr_& + to not conflict with mcheck.c when combined into gmalloc.c. + +Fri May 15 19:07:54 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * socket/sys/socket.h (PF_NBS, AF_NBS): Removed. + (PF_ISO, PF_OSI, PF_APPLETALK, PF_ROUTE, PF_LINK): Define. + (PF_MAX): Increase accordingly. + + * inet/bsd/*.c: Snarfed latest code from 4.4. + + * misc/sys/cdefs.h (__BEGIN_DECLS, __END_DECLS): Define cruft for C++. + +Thu May 14 01:45:12 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/glob.h (GLOB_MAGCHAR): Check user feature-test macros, + rather than __USE_BSD, so we don't depend on features.h. + + * sysdeps/stub/__wait4.c: Last arg is struct rusage *, not PTR. + + * math/bsd/common_source/mathimpl.h: Don't #define const. + #include instead. + + * Makefile (+other_dirs): Add crypt, but only if it exists at run time. + * crypt/GNUmakefile: New file. + * sysdeps/sparc/Makefile, sysdeps/m68k/Makefile (crypt): + Define to use machine-dependent assembly code in crypt/crypt.*.S. + * crypt: New directory. + + * find-sysdirs: Don't lose if there are no sysnames. + + * termios/Makefile (headers): Added sys/termios.h. + * termios/sys/termios.h: New file; just #include . + + * stdlib/qsort.c: Define _quicksort rather than qsort. + * stdlib/msort.c: New file; defines qsort function that does merge + sort. Falls back to _quicksort if it fails to allocate a temp array. + * stdlib/Makefile (routines): Added msort. + + * string/string.h (memccpy, strdup): Also declare #ifdef __USE_BSD. + [__USE_BSD] (index, rindex, bcmp, bzero, ffs): Declare. + * string/strings.h: Just #include . + * string/Makefile (headers): Removed bstring.h. + + * misc/Makefile (routines): Removed swab. + * string/Makefile (routines): Put it here instead. + * misc/swab.c: Moved to string/swab.c. + + * stdio/stdio.h [__USE_BSD] (sys_nerr, sys_errlist): Declare. + + * grp/grp.h (setgrent, endgrent, getgrent): Also do #ifdef __USE_BSD. + + * posix/glob.h [__USE_BSD] (GLOB_MAGCHAR): Declare. + (glob_t): Added member `gl_flags'. + * posix/glob.c (glob, glob_in_dir): Set gl_flags member to FLAGS; + or in GLOB_MAGCHAR if any metachars are seen. + + * sysdeps/unix/bsd/bsd44/readdir.c: New. + + * sysdeps/unix/bsd/sun/readdir.c: Don't need to declare + __getdirentries here. Use off_t and ssize_t. + + * misc/Makefile (routines): Removed getdents and __getdents. + * dirent/Makefile (routines): Put them here instead. + * misc/getdents.c: Moved to dirent/getdents.c. + * dirent/dirent.h [__USE_BSD] (__getdirentries, getdirentries): + Declare. + + * dirent/Makefile (routines): Added scandir and alphasort. + * dirent/scandir.c, dirent/alphasort.c: New. + * dirent/dirent.h [__USE_BSD] (scandir, alphasort): Declare. + + * sysdeps/unix/bsd/nice.c, sysdeps/unix/sysv/nice.S, + sysdeps/stub/nice.c: New. + * resource/Makefile (routines): Added nice. + + * misc/sys/cdefs.h [__USE_BSD] (const, signed, volatile): #define to + __ versions, for the sake of 4.4 header files. + +Wed May 13 00:35:12 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * stdlib/tst-strtol.c: Fixed typo in test table. + + * stdlib/strtol.c: Fixed checking for overflow of long int that fits + in unsigned long int. + + * misc/Makefile (headers): Added ttyent.h. + (routines): Added getttyent. + * misc/ttyent.h, misc/getttyent.h: New; snarfed from 4.4. + + * posix/sys/wait.h [__USE_BSD]: Added forward decl for struct rusage. + (__wait4, __wait3): Declare arg as struct rusage, not PTR. + + * inet/arpa/*.h, inet/protocols/*.h, inet/netdb.h, inet/resolv.h: + New files from 4.4. + * inet/Makefile (headers): Snarf *.h from arpa/ and protocols/. + + * sysdeps/m68k/fpu/__math.h, assert/assert.h: #include + and use its macros rather than rolling our own. + + * misc/sys/cdefs.h: New file. + * misc/Makefile (headers): Add it. + + * Makerules: Moved check for headers coming from env to Rules. + +Tue May 12 01:04:10 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * sysdeps/generic/strsep.c: New. + * string/string.h [__USE_BSD] (strsep): Declare. + * string/Makefile (routines): Added strsep. + + * sysdeps/unix/sysv/__settod.c, sysdeps/unix/sysv/stime.S, + sysdeps/unix/bsd/stime.c, sysdeps/stub/stime.c: New. + * time/time.h [__USE_SVID] (stime): Declare it. + + * sysdeps/unix/bsd/bsd44/__getdents.S: New. + + * posix/wordexp.h, posix/utime.h, posix/unistd.h, time/time.h, + termios/termios.h, posix/tar.h, string/strings.h, string/string.h, + stdlib/stdlib.h, signal/signal.h, stdio/stdio.h, misc/sgtty.h, + setjmp/setjmp.h, inet/resolv.h, pwd/pwd.h, stdio/printf.h, + misc/nlist.h, inet/netdb.h, math/math.h, malloc/malloc.h, + locale/locale.h, grp/grp.h, posix/glob.h, posix/getopt.h, + posix/fnmatch.h, io/fcntl.h, errno.h, dirent/dirent.h, + ctype/ctype.h, string/bstring.h, assert/assert.h, stdlib/alloca.h, + misc/a.out.h [__cplusplus]: Added stupid cruft for losing C++. + +Mon May 11 01:40:49 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * math/Makefile (headers): Added huge_val.h and nan.h. + + * io/Makefile (headers): Changed gnu/stat.h to statbuf.h. + + * time/Makefile (install-data): Include $(localtime-file) and + $(posixrules-file) if they are relative. + (install-others): Include them if absolute. + ($(posixrules-file), $(localtime-file)): Define rules to install if + absolute file names. + * Makerules (+install): Include $(install-others) verbatim. + * Makeconfig (localtime-file): Made default /etc/localtime. + + * sysdeps/generic/Makefile (endian.h): Only generate if would + otherwise use stub version. + * sysdeps/stub/endian.h, sysdeps/i386/endian.h: New. + + * Rules, Makefile: Export distribute and dont_distribute. + * Make-dist: Export sysdep_dirs. Unexport things rather than + clobbering their values. + + * misc/sys/ptrace.h: Fixed typo. + + * stdio/stdio.h (__io_read, __io_write, __io_seek, __io_close): + Added comments. + + * stdio/internals.c (flushbuf): If in append mode, don't do aligned + writing, seek to the target, or update the offset. + + * posix/unistd.h (lseek): Doc fix. + + * misc/swab.c: New. + * misc/Makefile (routines): Added swab. + +Wed May 6 12:32:18 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * math/Makefile, inet/Makefile (source_dirs): Export it. + * MakeTAGS (all-dirs): Include $(source_dirs). + + * Makefile (TAGS): Removed dep on subdir_TAGS. + (+subdir_targets): Removed subdir_TAGS. + * MakeTAGS [! subdir] (TAGS): Depend on subdir_TAGS. + [! subdir] (subdir_TAGS): Recurse on subdirectories. + + * Makerules (headers): Don't take value from the environment. + + * Makerules (sysdirs, sysdep_dir): Export them. + + * MakeTAGS: New makefile. + * Makefile (distribute): Include it. + * Makefile (TAGS), Rules (TAGS): Removed rules. + * Makerules (TAGS): New rule that uses MakeTAGS. + * Makefile (TAGS): Depend on subdir_TAGS. + + * Makerules (install, install-lib, install-data, routines, aux): + Don't bother removing these if they come from the environment, since + they won't with make >= 3.62.8. + * Rules (distribute, headers): Ditto. + (subdir): Export it. + * Makerules (sources, headers): Export these. + * Makefile (subdirs): Export it. + + * Rules (+tags_sources): Removed. + * Makerules (tags-sources): Define here. + * ctype/Makefile (tags-sources): Redefine to give headers precedence + over sources. + * Rules (TAGS), Makefile (TAGS): Rewrote rules. + * Makeconfig (+ctags): Removed. + (ETAGS): Define. + + * sysdeps/posix/getcwd.c: Don't closedir twice. + + * sysdeps/unix/bsd/hp/m68k/__wait3.S: Define __wait3, not ___wait3. + + * posix/sys/types.h [__USE_BSD] (fsid_t): Define. + * posix/gnu/types.h (__fsid_t): Define. + + * io/fcntl.h (F_GETLK): Define. + +Tue May 5 18:36:46 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * misc/Makefile (routines): Added seteuid and setegid. + * sysdeps/stub/sete[ug]id.c, sysdeps/unix/bsd/bsd44/sete[ug]id.S: New. + * posix/unistd.h [__USE_BSD] (seteuid, setegid): Declare. + + * sysdeps/unix/bsd/tcsendbrk.c: #include + + * Makerules: Strip whitespace from $(headers) so ifdef wins. + + * sysdeps/unix/bsd/bsdtty.h: #undef a bunch more things. + + * sysdeps/unix/bsd/bsd44/errnos.h: New, hacked from 4.4 . + + * sysdeps/unix/Makefile (ioctls.h, errnos.h): Only generate if + the files that would be used otherwise are the stub versions. + + * sysdeps/unix/bsd/tcflow.c: Don't write VSTOP or VSTART if it is + _POSIX_VDISABLE. + + * sysdeps/unix/bsd/tcflush.c: Use FREAD|FWRITE for TCIOFLUSH. + + * sysdeps/unix/bsd/usleep.c: Use select rather than itimers to wait. + + * sysdeps/unix/bsd/tcsendbrk.c: Use select rather than itimers to wait. + + * termios/cfmakeraw.c: New. + * termios/Makefile (routines): Added cfmakeraw. + + * sysdeps/unix/bsd/bsd44/ioctls.h: New file, hacked from 4.4 + . + * sysdeps/unix/bsd/bsd44/__tcgetatr.c: New. + * sysdeps/unix/bsd/bsd44/tcsetattr.c: New. + * sysdeps/unix/bsd/bsd44/tcdrain.c: New. + + * termios/sys/ttydefaults.h: New, snarfed from 4.4. + * termios/Makefile (headers): Define. + * termios/termios.h [__USE_BSD]: #include + + * sysdeps/posix/getcwd.c: Removed unused variable. + + * time/__tzset.c: Cast string literal to (char *). + + * setjmp/sigjmp_save.c: Declare properly to return void. + + * sysdeps/ieee754/nan.h: Created; somehow it disappeared. + +Mon May 4 18:30:52 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/bsd44/__wait4.S: New. + + * sysdeps/unix/bsd/4.4: Renamed to sysdeps/unix/bsd/bsd44. + + * signal/gnu/signal.h (__SA_DISABLE, __SA_NOCLDSTOP): Use same bits + 4.4 uses. + +Sun May 3 13:57:25 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdio/fwrite.c: Use unsigned char to avoid sign extension. + + * stdlib/__random.c (randtbl): Replaced default constants so they + match the state produced by "srandom (1)". + + * stdlib/mbtowc.c: Test for S == "" before testing for no mbchars. + + * stdlib/Makefile (tests): Added testrand. + * stdlib/testrand.c: New test for rand. + + * stdlib/testmb.c: Added 2 mblen tests. + + * stdlib/wcstombs.c: Don't do anything strange for EOF. + Copy non-MB characters as they are. + Properly increment S after writing. + + * stdlib/testmb.c: Added test case for wcstombs. + + * signal/signal.h (SA_DISABLE): Define. + * signal/gnu/signal.h (__SA_DISABLE): Define. + + * signal/signal.h (struct sigaltstack): Define new type. + (sigaltstack): Declare new fn. + * sysdeps/stub/sigaltstack.c: New. + * sysdeps/unix/bsd/4.4/sigaltstack.S: New. + + * misc/Makefile (routines): Added reboot. + * posix/unistd.h (reboot): Declare. + * sysdeps/stub/reboot.c: New. + + * sysdeps/unix/bsd/ulimit.c [! HAVE_GNU_LD]: #define _etext -> etext. + + * sysdeps/unix/bsd/sun/sparc/sethostid.S: #define _ERRNO_H before + #include . + + * configure (newos*): base_os=unix/bsd. + +Fri May 1 12:21:47 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * io/gnu/stat.h: Moved to sysdeps/unix/bsd/statbuf.h. + * sysdeps/unix/bsd/statbuf.h: Define struct stat, not struct __stat. + * io/stat.c: Use struct stat, not struct __stat. + * sysdeps/stub/statbuf.h: New. + * io/sys/stat.h: #include instead of gnu/stat.h. + (stat, fstat, lstat, chmod, fchmod, umask, mkdir, mknod): Don't + #define; declare as fns instead. + * sysdeps/unix/sysv/stat.h: New. + * sysdeps/unix/sysv/sysv_stat.h, sysdeps/unix/sysv/sys_stat.S, + sysdeps/unix/sysv/sys_fstat.S: Removed. + * sysdeps/unix/sysv/Makefile (sysdep_routines): Removed sys_stat, + sys_fstat. + * sysdeps/unix/sysv/Dist: Removed sys_stat.S, sys_fstat.S. + * sysdeps/unix/bsd/__stat.S, sysdeps/unix/bsd/__fstat.S: Moved to + sysdeps/unix. + + * sysdeps/m68k/fpu/switch/Makefile: Refer to dirs fpu and + fpu/switch, not 68881 and 68881-switch. + + * sysdeps/m68k/fpu/switch/switch.c: #include <68881-sw.h>, not + 68881-switch.h. + + * sysdeps/m68k/fpu/__expm1.c, sysdeps/m68k/fpu/__rint.c, + sysdeps/m68k/fpu/asin.c, sysdeps/m68k/fpu/atan.c, + sysdeps/m68k/fpu/atanh.c, sysdeps/m68k/fpu/ceil.c, + sysdeps/m68k/fpu/cos.c, sysdeps/m68k/fpu/cosh.c, + sysdeps/m68k/fpu/exp.c, sysdeps/m68k/fpu/fabs.c, + sysdeps/m68k/fpu/floor.c, sysdeps/m68k/fpu/log.c, + sysdeps/m68k/fpu/log10.c, sysdeps/m68k/fpu/log1p.c, + sysdeps/m68k/fpu/sin.c, sysdeps/m68k/fpu/sinh.c, + sysdeps/m68k/fpu/sqrt.c, sysdeps/m68k/fpu/tan.c, + sysdeps/m68k/fpu/tanh.c: #include without explicit path + (which has changed). + + * sysdeps/unix/bsd/sun/sparc/start.c: #include . + (syscall): Removed C function; define all inside asm instead. + (init_shlib): Cast return value of syscall to right types. + +Thu Apr 30 01:15:33 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sparc/start.c: Added code to use dynamic + linker from trq@dionysos.thphys.ox.ac.uk. + + * sysdeps/unix/bsd/sun/sunos4: Renamed to sunos411. + + * setjmp/setjmp.h (sigsetjmp): Don't declare as a function. + Define as a macro instead. + (__sigjmp_save): Declare; internal fn used by sigsetjmp macro. + (_setjmp), [__FAVOR_BSD] (setjmp): Always define as a macro. + * setjmp/sigjmp_save.c: New file. + * setjmp/_setjmp.c, setjmp/sigsetjmp.c: Removed. + * Makefile (routines): Removed _setjmp, sigsetjmp; added sigjmp_save. + * misc/bsd-compat.c (setjmp): Don't define. + + * configure (sysv, bsd): base_os=unix + + * configure: Fatal error if the machine or os did not generate any + sysdep dirs. + + * configure: No error message after config.sub fails. + + * sysdeps/mips, sysdeps/unix/bsd/ultrix42: New port from + brendan@cs.widener.edu. + + * Reorganized sysdeps: + unix/bsd/ + hp9k3bsd -> hp/m68k + news -> sony/m68k + sun/ + sun3/os3 -> sunos3/m68k + sun3 -> m68k + sun4 -> sparc + unix/sysv/ + r4 -> sysv4 + m68k/ + 68881 -> fpu + 68881/68881-switch -> fpu/switch + * sysdeps/unix/bsd/sony/m68k/start.c: Changed #include. + * configure: Use config.sub to canonicalize name. + Then use combinations of machine, vendor, and os (with special + hacks for os flavors) for sysdep dirs to try. + * Makefile (distribute): Added config.sub. + +Wed Apr 29 23:06:06 1992 Brendan Kehoe (brendan@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/hp9k3bsd/sysdep.h, + sysdeps/unix/bsd/sun/sun3/sysdep.h, sysdeps/unix/bsd/sun/sun4/sysdep.h, + sysdeps/unix/bsd/vax/sysdep.h,sysdeps/unix/i386/sysdep.h, + sysdeps/mach/i386/sysdep.h: Change all definitions of movl/mov to + MOVE(s, d), for insn sets with d,s instead of s,d move insns. + * sysdeps/unix/__getegid.S, sysdeps/unix/__geteuid.S, + sysdeps/unix/__getppid.S: Use that in each of these. + +Wed Apr 29 17:58:21 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * io/getwd.c: Default PATH_MAX if not defined. + + * sysdeps/unix/getlogin.c, sysdeps/posix/ttyname.c: Make buffers + only as big as needed, avoiding PATH_MAX. + + * sysdeps/posix/getcwd.c: Dynamically extend the buffer as we go, + not afterwards; default PATH_MAX if not defined. + + * posix/execvp.c: Dynamically allocate an array on the stack for the + path name, rather than using a fixed-size array. + + * pwd/putpwent.c: Print pw_dir field. + + * sysdeps/posix/mktemp.c: If the pid has changed, update OLDPID. + +Tue Apr 28 19:25:21 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * malloc/valloc.c [emacs]: #include "config.h" + +Thu Apr 23 13:55:34 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * sysdeps/m68k/68881/__drem.c: Define __drem, not drem. + Call ____drem, not __drem. + + * malloc/realloc.c, malloc/malloc.c: Don't #define memcpy or memset + if already #define'd. + +Tue Apr 21 04:16:56 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * malloc/Makefile: Moved include ../Rules after malloc.tar rules. + They need $(routines), which Rules clears. + + * malloc/realloc.c (MIN): Renamed to min. Conflicted with HPUX + system header files. + + * Makefile (sysdep-subdirs): Is not called +sysdep-subdirs. + + * configure: Don't try to create config.status if . is not writable. + + * sysdeps/generic/printf_fp.c: Fixed padding loop condition for zero + case. + + * math/math.h: Don't #include for HUGE_VAL. + Instead, #include . + * stdlib/stdlib.h: Ditto. + * math/math.h [__USE_GNU]: #include to get NAN value. + * float.h: Removed. + * Makefile (headers): Removed float.h and fl.h. + * sysdeps/ieee754/huge_val.h, sysdeps/ieee754/nan.h, + sysdeps/stub/huge_val.h, sysdeps/stub/nan.h, sysdeps/vax/huge_val.h: + Created (from old fl.h files). + + * math/bsd/common_source/pow.c (pow_p): When checking if Y is an + integer, don't let it overflow a `long int'. + (pow): Check for NaN with __isnan, not (X != X). + +Tue Apr 21 02:26:19 1992 Brendan Kehoe (brendan@cs.widener.edu) + + * sysdeps/unix/bsd/sun/sun4/__pipe.S, + sysdeps/unix/bsd/vax/__wait3.S, sysdeps/unix/bsd/hp9k3bsd/__wait3.S: + Use the ENTRY macro for each beginning + + * sysdeps/unix/sysdep.h, sysdeps/unix/bsd/hp9k3bsd/sysdep.h, + sysdeps/unix/bsd/sun/sun3/sysdep.h, + sysdeps/unix/bsd/sun/sun4/sysdep.h, sysdeps/unix/bsd/vax/sysdep.h, + sysdeps/unix/i386/sysdep.h, sysdeps/unix/sysdep.h, + sysdeps/unix/sysv/sysdep.h [SYSCALL, SYSCALL__, PSEUDO]: Modify to + also receive the number of args the syscall takes; added for future + ports that will require this information. + + * sysdeps/unix/i386/__pipe.S, sysdeps/unix/bsd/vax/__pipe.S, + sysdeps/unix/bsd/sun/sun4/__pipe.S, + sysdeps/unix/bsd/hp9k3bsd/__pipe.S, sysdeps/unix/i386/__brk.S, + sysdeps/unix/bsd/sun/__getdents.S, sysdeps/unix/i386/__fork.S, + sysdeps/unix/bsd/vax/__fork.S, sysdeps/unix/bsd/sun/sun4/__fork.S, + sysdeps/unix/__setgid.S, sysdeps/unix/__setuid.S, + sysdeps/unix/bsd/sun/sun3/__vfork.S, + sysdeps/unix/bsd/sun/sun4/__vfork.S, + sysdeps/unix/bsd/vax/__wait.S, sysdeps/unix/bsd/hp9k3bsd/__wait.S, + sysdeps/unix/i386/__wait.S, + sysdeps/unix/bsd/sun/sunos4/sys_wait4.S, + sysdeps/unix/bsd/sun/sun3/sethostid.S, + sysdeps/unix/bsd/sun/sun4/sethostid.S, + sysdeps/unix/bsd/__sigvec.S, sysdeps/unix/bsd/sun/sun4/__sigvec.S, + sysdeps/unix/sysv/i386/__sigret.S, sysdeps/unix/__getppid.S, + sysdeps/unix/bsd/__access.S, sysdeps/unix/sysv/signal.S, + sysdeps/unix/__getegid.S, sysdeps/unix/__geteuid.S, + sysdeps/unix/bsd/bsd_getgrp.S, sysdeps/unix/bsd/__dup2.S, + sysdeps/unix/bsd/__fchmod.S, sysdeps/unix/bsd/__fchown.S, + sysdeps/unix/bsd/__flock.S, sysdeps/unix/bsd/__fstat.S, + sysdeps/unix/bsd/__lstat.S, sysdeps/unix/bsd/__mkdir.S, + sysdeps/unix/bsd/__readlink.S, sysdeps/unix/bsd/__rmdir.S, + sysdeps/unix/bsd/__stat.S, sysdeps/unix/bsd/__symlink.S, + sysdeps/unix/bsd/4.4/chflags.S, sysdeps/unix/bsd/4.4/fchflags.S, + sysdeps/unix/bsd/4.4/sstk.S, sysdeps/unix/bsd/4.4/setlogin.S, + sysdeps/unix/bsd/__getdtsz.S, sysdeps/unix/bsd/__getpgsz.S, + sysdeps/unix/bsd/__setregid.S, sysdeps/unix/bsd/__setreuid.S, + sysdeps/unix/bsd/__utimes.S, sysdeps/unix/bsd/ftruncate.S, + sysdeps/unix/bsd/readv.S, sysdeps/unix/bsd/truncate.S, + sysdeps/unix/bsd/vhangup.S, sysdeps/unix/bsd/writev.S, + sysdeps/unix/bsd/__getpgrp.S, sysdeps/unix/bsd/__setpgrp.S, + sysdeps/unix/bsd/__getrusag.S, sysdeps/unix/bsd/getprio.S, + sysdeps/unix/bsd/getrlimit.S, sysdeps/unix/bsd/setprio.S, + sysdeps/unix/bsd/__sigblock.S, + sysdeps/unix/bsd/__sigpause.S, sysdeps/unix/bsd/__sigstmsk.S, + sysdeps/unix/bsd/killpg.S, sysdeps/unix/bsd/sigstack.S, + sysdeps/unix/bsd/rename.S, sysdeps/unix/bsd/__adjtime.S, + sysdeps/unix/bsd/__setitmr.S, sysdeps/unix/bsd/__settod.S, + sysdeps/unix/sysv/sys_stat.S, sysdeps/unix/sysv/sys_fstat.S, + sysdeps/unix/sysv/__utssys.S, sysdeps/unix/sysv/utime.S, + sysdeps/unix/sysv/__times.S, sysdeps/unix/sysv/i386/time.S, + sysdeps/unix/sysv/alarm.S, sysdeps/unix/sysv/pause.S, + sysdeps/unix/sysv/ulimit.S, sysdeps/unix/__chdir.S, + sysdeps/unix/__chmod.S, sysdeps/unix/__chown.S, + sysdeps/unix/__close.S, sysdeps/unix/__dup.S, + sysdeps/unix/__fcntl.S, sysdeps/unix/__link.S, + sysdeps/unix/__lseek.S, sysdeps/unix/__open.S, + sysdeps/unix/__read.S, sysdeps/unix/__umask.S, + sysdeps/unix/__unlink.S, sysdeps/unix/__write.S, + sysdeps/unix/__ioctl.S, sysdeps/unix/__mknod.S, + sysdeps/unix/acct.S, sysdeps/unix/chroot.S, sysdeps/unix/fsync.S, + sysdeps/unix/ptrace.S, sysdeps/unix/swapon.S, sysdeps/unix/sync.S, + sysdeps/unix/__execve.S, sysdeps/unix/__getgid.S, + sysdeps/unix/__getpid.S, sysdeps/unix/__getuid.S, + sysdeps/unix/_exit.S, sysdeps/unix/__kill.S, + sysdeps/unix/inet/__gethstnm.S, sysdeps/unix/inet/__select.S, + sysdeps/unix/inet/gethostid.S, sysdeps/unix/inet/sethostid.S, + sysdeps/unix/inet/sethostnam.S, sysdeps/unix/inet/accept.S, + sysdeps/unix/inet/bind.S, sysdeps/unix/inet/connect.S, + sysdeps/unix/inet/getpeernam.S, sysdeps/unix/inet/getsocknam.S, + sysdeps/unix/inet/getsockopt.S, sysdeps/unix/inet/listen.S, + sysdeps/unix/inet/recv.S, sysdeps/unix/inet/recvfrom.S, + sysdeps/unix/inet/recvmsg.S, sysdeps/unix/inet/send.S, + sysdeps/unix/inet/sendmsg.S, sysdeps/unix/inet/sendto.S, + sysdeps/unix/bsd/vax/__wait3.S, sysdeps/unix/bsd/hp9k3bsd/__wait3.S, + sysdeps/unix/inet/setsockopt.S, sysdeps/unix/inet/shutdown.S, + sysdeps/unix/inet/socket.S, sysdeps/unix/inet/socketpair.S: Added the + argument count to every use of SYSCALL, SYSCALL__ or PSEUDO. + +Tue Apr 21 00:06:52 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * limits.h [__GNUC__ >= 2]: Use #include_next to get GCC's . + + * sysdeps/posix/sysd-stdio.c (__stdio_read, __stdio_write, + __stdio_errmsg) [EINTR && EINTR_REPEAT]: Do EINTR looping. + * sysdeps/unix/sysv/sysd-stdio.c: New. + #define EINTR_REPEAT and #include posix/sysd-stdio.c. + + * stdlib/mbstowcs.c: Copy non-MB chars verbatim, instead of error. + + * sysdeps/generic/printf_fp.c: Note sign of exponent and take its + absolute value for arithmetic. + + * stdlib/testmb.c: New. + * stdlib/Makefile (tests): Added testmb. + + * sysdeps/generic/frexp.c [NAN]: If VALUE is infinite, return NAN. + If VALUE is NAN, set errno to EDOM and return VALUE. + If VALUE is zero, return it. In all special cases, clear *EXP. + + * stdio/test-fseek.c: New. + * stdio/Makefile (tests): Added test-fseek. + + * stdio/fseek.c: Position returned from io_funcs.seek is absolute, + not EOF-relative when using SEEK_END. + + * sysdeps/posix/sysd-stdio.c (__stdio_gen_tempname): Set errno to + EEXIST when we run out. + + * sysdeps/posix/sysd-stdio.c (exists): Use stat rather than open, so + we don't need read access. + + * sysdeps/posix/mk-stdiolim.c (TMP_NAM): is 62 ** 3. + +Mon Apr 20 23:08:02 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/posix/sysd-stdio.c (__stdio_gen_tempname): Don't return + the same name twice when the file doesn't exist. + + * stdio/vfprintf.c (%c format): Tests of LEFT for padding were + reversed. + + * sysdeps/generic/printf_fp.c: If we have written some fractional + digits, write zeros up to the precision. + + * sysdeps/unix/bsd/sun/sun4/start.c: Don't clear the FP until just + before calling main. + +Wed Apr 15 01:43:38 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makerules (libc.a): Don't depend on libc.a(...); only on lib. + (lib-noranlib): Depend on libobjs. + (+libobjs): New var. + (libobjs): Depend on $(+libobjs). + * Rules (others, tests): Don't depend on lib; on libc.a instead. + + * locale/C-numeric.c: grouping is "". + + * locale/localeconv.c: Set int_frac_digits. + + * locale/setlocale.c: Accept "" to mean "C". + + * sysdeps/unix/sysv/r4/bsddir.h: Protect against multiple inclusion. + + * sysdeps/unix/sysv/r4/Dist: Created; includes bsddir.h and + sys_getdents.S. + + * sysdeps/unix/i386/sysdep.h [! HAVE_SYSCALLS]: Don't #inlcude + unix/sysdep.h. + * sysdeps/unix/sysv/sysdep.h, sysdeps/unix/sysdep.h + (HAVE_SYSCALLS): #define. + * sysdeps/unix/sysv/i386/sysdep.h: #include unix/sysv/sysdep.h, then + unix/i386/sysdep.h. + + * sysdeps/unix/sysv/Makefile: Fixed typos. + + * sysdeps/unix/sysv/Dist: Add utmp.h. + + * sysdeps/posix/Makefile (mk-stdiolim): Explicit commands, to + compile it without normal gcc flags. + + * configure (i386-sysv): unix/i386/sysv -> unix/sysv/i386. + (i386-sysvr4): New configuration. + +Tue Apr 14 16:47:47 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * setjmp/setjmp.h: Put sigjmp_buf before typedef for jmp_buf, which + needs sigjmp_buf #ifdef __FAVOR_BSD. + + * posix/unistd.h (getgroups): Don't #define. + + * sysdeps/stub/ptrace.c: #include ; declare AP in fn. + Avoid "PTR a, b". + + * sysdeps/posix/sigintr.c: New; sets global sigset_t `_sigintr'. + * sysdeps/posix/signal.c: Use SA_RESTART unless SIG is in _sigintr. + * signal/sigintr.c: Removed. + * sysdeps/stub/sigintr.c: New. + + * sysdeps/posix/sysd-stdio.c (__stdio_read, __stdio_write, + __stdio_errmsg): Don't treat EINTR specially. + + * sysdeps/unix/Makefile (sys/param.h): Touch the target after mv'ing + from the tmp file, so the file is newer than the directory. + + * sysdeps/generic/strcasecmp.c: Simplified loop; fixed returning + wrong value on equal comparison. + + * stdlib/bsearch.c: Don't lose if NMEMB is zero. + + * sysdeps/unix/bsd/__times.c (timeval_to_clock_t): Microseconds are + not milliseconds. + +Mon Apr 13 18:25:17 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/strncase.c: New. + * string/Makefile (routines): Add strncase. + * string/string.h [__USE_GNU]: Declare strncasecmp. + + * time/__tzset.c: Correctly default DST offset to one hour later + than standard offset. + + * time/__tzset.c (tz_rule): Made `name' not be const. + + * string/tester.c [! HAVE_GNU_LD]: #define _sys_nerr and + _sys_errlist to sys_nerr and sys_errlist. + + * stdio/test_rdwr.c: Fixed printf call missing arg. + + * posix/getgrps.c: #undef getgroups first. + + * misc/brk.c: Declare __brk. + * misc/sbrk.c: Declare __sbrk. + * misc/setreuid.c, misc/setregid.c: #include . + Fixed types in DEFUN in fn alias. + * misc/getpgsz.c, misc/getdtsz.c, misc/gethstnm.c: #include . + * misc/getdents.c: Declare __getdirentries. + * misc/mknod.c: #include . + * posix/unistd.h: Declare many __ versions of things. + [__OPTIMIZE__]: Many #define foo(...) -> __foo(...). + + * io/fcntl.c: #include . + + * sysdeps/unix/Makefile: New hair to install other headers the + system sys/param.h #includes. + + * time/__tzset.c (__tzfile_default): Declare. + + * time/sys/time.h (timezone): #define to __timezone. + + * sysdeps/ieee754/printf_fp.c: #undef outchar before #including + generic/printf_fp.c. + + * stdio/__vfscanf.c: For %c, don't lose the first char. + For %s, properly consume the last char when we hit max width. + + * posix/gnu/types.h (__dev_t, __mode_t): Made int rather than short. + * io/gnu/stat.h (struct stat): Made st_dev, st_rdev, and st_mode use + {,unsigned} short int instead of __dev_t/__mode_t. + +Fri Apr 10 13:55:07 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * setjmp/setjmp.h: Rearranged so that jmp_buf is defined before any + prototypes are used. + (longjmp): Declare with jmp_buf, not __jmp_buf, to win in BSD mode. + (_longjmp): #define as __longjmp, not longjmp. + (_longjmp, _setjmp): Take jmp_buf args, not __jmp_buf. + Call sig{set,long}jmp with SAVEMASK==0, rather than __{set,long}jmp. + * _longjmp.c, _setjmp.c: #define _BSD_SOURCE before all else. + (_setjmp): Call sigsetjmp, not __setjmp. + + * io/sys/stat.h (__fchmod, __mknod): Fixed arg types. + + * io/fchmod.c: Fixed typo. + + * time/Makefile (\n): Renamed to nl. + + * Makerules (native-compile): New variable. + * sysdeps/generic/Makefile, sysdeps/unix/Makefile, + sysdeps/unix/bsd/Makefile: Use it in cmds for generator progs. + + * sysdeps/unix/sysv/sysv_termio.h (_SYSV_TAB3): New; same as XTABS. + + * sysdeps/unix/sysv/setrlimit.c: Removed extern decl of etext (unused). + + * sysdeps/unix/sysv/__tcgetatr.c, sysdeps/unix/sysv/tcdrain.c, + sysdeps/unix/sysv/tcflow.c, sysdeps/unix/sysv/tcflush.c, + sysdeps/unix/sysv/tcgetpgrp.c, sysdeps/unix/sysv/tcsendbrk.c, + sysdeps/unix/sysv/tcsetattr.c, sysdeps/unix/sysv/tcsetpgrp.c: + #include + + * sysdeps/unix/sysv/__rmdir.c, sysdeps/unix/sysv/__mkdir.c, + sysdeps/posix/writev.c: #include . + + * sysdeps/posix/clock.c: Removed unused variable. + +Thu Apr 9 01:49:39 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Version 1.03. + + * grp/testgrp.c: Print members correctly. + + * stdio/test-popen.c: Pipe to cat rather than more, and then check + output file. Better error checking. + + * setjmp/tst-setjmp.c: Notice if we didn't jump the right number of + times. + + * signal/tst-signal.c, string/testcopy.c, stdio/bug[12345].c: Print + msgs that more clearly say whether we won or lost. Better error + checking. + + * sysdeps/generic/printf_fp.c: Completely rewritten from scratch. + Now uses Steele & White's "Dragon4" algorithm to do things right. + +Wed Apr 8 01:08:41 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/i386/__longjmp.c: Test for VAL==0 before clobbering regs. + Wire V to AX, rather than DX. Use "a" constraint on unused operand + in jmp asm, rather than global reg var, to force value into AX. + +Tue Apr 7 17:51:25 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/Makefile (headers): Added tar.h. + * posix/tar.h: New file, from djm. + +Mon Apr 6 01:39:07 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * time/tzfile.c (struct ttinfo): Made `isstd' member be unsigned + char instead of 1-bit bitfield. + + * time/tzfile.c (__tzfile_default): New function. + * time/__tzset.c: Call it when no rule is given. + * time/Makefile: Install posixrules just like localtime. + * time/Makeconfig (posixrules, posixrules-file): New config vars. + + * time/time.h (struct tm): Add `tz_gmtoff', `tz_zone'. + * time/localtime.c: Set those members. + + * sysdeps/ieee754/__drem.c: XOR the signs of X and the result, + rather than setting the sign of the result to that of X. + + * sysdeps/unix/bsd/make-local_lim.c: Don't do MAXUPRC or MAXLINK if + didn't define them. + + * sysdeps/posix/__sigvec.c: Fixed braino: SA_ONSTACK should be + SA_RESTART. + + * pwd/getpw.c, pwd/putpwent.c: Use %u fmt for uid and gid (which are + unsigned). + + * time/time.h (tzname, daylight, timezone): Don't #define to __. + * time/tzfile.c, time/__tzset.c, time/localtime.c, time/strftime.c + [! HAVE_GNU_LD]: #define __ to plain for above three vars. + +Thu Apr 2 03:39:04 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * locale/Makefile (routines): Add localeconv. + + * sysdeps/i386/jmp_buf.h: Removed `__dx' elt; replaced with `__pc'. + __bp and __sp are PTRs. + * sysdeps/i386/setjmp.c: Rewritten. Use global reg vars to save regs. + Use arithmetic on address of arg to get caller's PC, BP, and SP. + * sysdeps/i386/__longjmp.c: Rewritten. Use global reg vars to + restore regs. + +Wed Apr 1 23:13:57 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Moved sysdeps/unix/i386/{bsd,sysv} to + sysdeps/unix/{bsd,sysv}/i386, and updated Implies files. + Implied dirs come before parents, and we want unix/i386 before + unix/{sysv,bsd}. + + * io/chown.c: Fixed types in fn alias. + +Wed Apr 1 14:18:58 1992 Torbjorn Granlund (tege@mole.gnu.ai.mit.edu) + + * sysdeps/generic/memcmp.c + (memcmp_common_alignment, memcmp_not_common_alignment): + Move back do0 label to its original position, after the loop. + Add comment before do0 labels. + * sysdeps/generic/wordcopy.c (_wordcopy_fwd_aligned): Indentation. + Add comment before do0 labels. + +Wed Apr 1 02:16:19 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/Makefile [subdir==misc]: Generate sysdep header + termio.h from sysv_termio.h. + + * sysdeps/generic/make_siglist.c: New file. + * sysdeps/generic/signame.[ch]: Symlink'd from /gd/gnu/lib. + * sysdeps/generic/Makefile: Generate siglist.c with above. + * sysdeps/generic/Dist: Add make_siglist.c, signame.[ch]. + + * sysdeps/unix/bsd/Makefile (before-compile): Define properly as a + variable. + + * sysdeps/unix/bsd/make_siglist.c: Generate #define _sys_siglist + sys_siglist #ifndef HAVE_GNU_LD. + * stdio/psignal.h, string/strsignal.h [! HAVE_GNU_LD]: + #define _sys_siglist sys_siglist. + + * sysdeps/unix/sysv/signum.h (SIGCHLD): Changed #. + (SIGUSR1, SIGUSR2, SIGPWR): Added. + (_NSIG): Updated. + + * sysdeps/unix/sysv/utmp.h: New. + + * sysdeps/unix/bsd/getlogin.c: Moved to sysdeps/unix/getlogin.c. + + * sysdeps/unix/sysv/r4/bsddir.h, sysdeps/unix/sysv/r4/readdir.c, + sysdeps/unix/sysv/r4/closedir.c, sysdeps/unix/sysv/r4/rewinddir.c, + sysdeps/unix/sysv/r4/opendir.c, sysdeps/unix/sysv/r4/sys_getdents.S, + sysdeps/unix/sysv/r4/Makefile: New. + + * sysdeps/unix/sysv/tcflow.c: New. + + * sysdeps/unix/sysv/sysv_termio.h: Add lots of bits; VMIN and VTIME + elts of c_cc. + * sysdeps/unix/sysv/__tcgetatr.c, sysdeps/unix/sysv/tcsetattr.c: Use + VMIN and VTIME elts from sysv termio struct. + + * sysdeps/unix/sysv/__gethstnm.c: New. + + * sysdeps/unix/sysv/local_lim.h (NGROUPS_MAX): Define as 0. + + * sysdeps/unix/sysv/fcntlbits.h (struct __flock): Changed l_pid to + short; added l_sysid. + + * sysdeps/unix/sysv/__sigact.c: New. + + * sysdeps/unix/sysv/r4/__access.S: New; just #include bsd/__access.S. + + * sysdeps/unix/sysv/Makefile: Fixed typo: sysdep-routines => + sysdep_routines. + + * sysdeps/unix/i386/sysv/__sigret.S, + sysdeps/unix/i386/sysv/signal.S: New. + + * signal/Makefile (routines): Added sigret, __sigret. + * signal/sigret.c: New; fn alias to __sigreturn. + * sysdeps/stub/__sigret.c: New. + + * sysdeps/unix/i386/sysdep.h (PSEUDO): Use hard-coded numbers for + lcalls insn--GAS bug. + + * sysdeps/unix/bsd/readdir.c (D_NAMLEN): New macro; define if not + already defined, to return length of a direct elt. + + * sysdeps/stub/__getgrps.c: #include ; if NGROUPS_MAX is + defined as 0, always return 0, and no stub warning. + + * sysdeps/posix/system.c: Don't fail if sigprocmask fails with ENOSYS. + + * sysdeps/posix/sysd-stdio.c, sysdeps/stub/sysd-stdio.c: Doc fix. + + * sysdeps/posix/__gettod.c: Use CONST where appropriate and not + where not. + + * sysdeps/i386/memchr.c, sysdeps/i386/strlen.c: Changed `repnz' to + `repne'. + + * stdio/fgets.c: Notice returned char from __fillbf in length calc. + + * misc/sys/ioctl.h: Always define `struct sgttyb'. + + * stdlib/alloca.h: #undef __alloca, too. + Always #define alloca == __alloca. + + * signal/signal.h (__kill): Fixed type in decl. + * posix/unistd.h (setgid): Fixed type in decl. + * posix/setpgid.c, posix/setgid.c, signal/kill.c, posix/fork.c, + posix/vfork.c, posix/getpid.c, posix/getppid.c, posix/setsid.c: + Fixed DEFUNs in fn aliases. + * pwd/getpw.c: Fixed type in defn. + +Mon Mar 30 17:06:54 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/generic/printf_fp.c: In %f, decrement PREC for each + leading zero in the fractional part. + + * sysdeps/ieee754/ieee754.h: Made all elts unsigned. + * sysdeps/ieee754/__drem.c: Return NAN if Y is zero. + * sysdeps/ieee754/ldexp.c: Rewritten. + * sysdeps/ieee754/__logb.c: Handle denormalized numbers. + + * posix/sys/wait.h: #include + + * sysdeps/ieee754/fl.h: Fixed NAN and HUGE_VAL bit patterns; added + code for little endian. + + * sysdeps/generic/frexp.c: Add one to exponent to give the result a + digit before the point. Use negative exponent rather than division. + + * math/__finite.c: Return zero for NaN. + * math/math.h: Doc fix for same. + + * stdio/__getdelim.c: Correctly notice when the buffer is full. + + * sysdeps/unix/bsd/opendir.c: Pass arg to fcntl F_SETFD by value, + not by reference. + + * time/__tzset.c: Correct default rule: M4.1.0,M10.5.0. + + * time/__tzset.c: Move ptr past Mfoobar syntax after parsing it. + + * time/__tzset.c: Properly parse the DST offset (or its absence). + + * sysdeps/unix/make_errlist.c: Write an #ifdef HAVE_GNU_LD, rather + than testing it when compiling make_errlist. + + * time/tzfile.c (__tzfile_read): Convert transitions to host byte + order. + + * Makeconfig (localtime-file): New config var. + * time/Makefile (tzfile.o, zic.o): Use it for TZDEFAULT. + + * stdio/Makefile (tests): Added tstgetline. + * stdio/tstgetline.c: New; test for getline. + + * Makeconfig (sysincludedir): Define and document. + * sysdeps/unix/snarf-ioctls, sysdeps/unix/Makefile: Use + ${sysincludedirs} in place of hard-coded /usr/include. + +Fri Mar 27 13:33:37 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * string/Makefile (headers): Added endian.h. + + * sysdeps/ieee754/__drem.c: Fixed typo which made X and Y be the + same location. + + * sysdeps/generic/__lstat.c: #include + + * stdio/internals.c (flushbuf): Increment target as well as offset + when we write out the single char. + + * grp/Makefile (tests): Add testgrp (formerly bug1). + +Thu Mar 26 14:59:45 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * stdio/fread.c: Don't read directly when we need to seek first. + +Wed Mar 25 02:34:49 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/alarm.c: There are 1000000 usecs in a sec. + + * sysdeps/unix/bsd/sun/ptrace.c: Removed. + + * stdio/fgets.c: For unbuffered stream, don't return EOF after + reading some data. + Added missing parens. + +Tue Mar 24 18:31:07 1992 Torbjorn Granlund (tege@hal) + + * sysdeps/i386/memset.c: Move code that puts C in all four nibbles of + X inside `if' statement. Include sysdeps/i386/memset.c (not bzero). + * sysdeps/i386/memchr.c: Rewrite to be faster. Include + sysdeps/generic/memchr.c (not bzero). + +Tue Mar 24 01:21:32 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * io/Makefile (routines): Add getdirname. + * posix/unistd.h [__USE_GNU]: Declare getdirname. + * io/getdirname.c: New. + + * Makeconfig (stddef.h): Define and document. + * Makefile (headers): Use $(stddef.h) for stddef.h. + +Mon Mar 23 18:04:56 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * sysdeps/posix/mktemp.c: Do PID % 100000 for 5 digits. + + * time/Makefile (tzfiles): Remove pacificnew; it won't compile. + (distribute): Put it here instead. + + * stdio/printf-prs.c [HAVE_LONGLONG]: Fixed missed var name change + from code snarf. + + * stdio/fgets.c: Return NULL when we get EOF. + + * posix/execvp.c, sysdeps/posix/putenv.c [! HAVE_GNU_LD]: Define + __environ as environ. + + * sysdeps/unix/bsd/Makefile, sysdeps/unix/Makefile: In rules to + compile generator programs, cd into $(objdir) first to avoid + braindead cc clobbering foo.o in cwdir. + + * sysdeps/m68k/setjmp.c: Deref fpregs array in asm. + + * time/Makefile (zones-%): Fixed generated rules. + + * math/Makefile (libm.a): Use r cmd to ar. + + * time/Makefile (zones-%): In echo commands, put \\\\n outside of + quotes instead of \\n inside single quotes. SysV echo is braindead. + + * io/fchown.c, io/fchmod.c, misc/bsd-compat.c: Fixed DEFUNs in fn + aliases. + + * time/Makefile (echo-zonenames): New target; tell user what all + timezones defined in all zone files are. + * Makeconfig (localtime): Comment about using above. + +Sun Mar 22 18:34:02 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * time/australasia (NZ): Updated rules. + +Sat Mar 21 01:00:49 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * stdio/printf-prs.c [__GNUC__]: Define HAVE_LONGLONG. + +Fri Mar 20 00:35:36 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Version 1.02. + + * stdio/Makefile (routines): Add __getdelim, __getline. + + * sysdeps/unix/i386/start.c: No ../ in #include file name. + + * sysdeps/posix/sysd-stdio.c, sysdeps/stub/sysd-stdio.c + (__stdio_seek): Doc fix. + + * sysdeps/posix/mk-stdiolim.c: Add one to L_tmpnam, for the null + terminator. + + * sysdeps/posix/__dup2.c: Use an extra fcntl call to check that the + first fd is valid. Close the second fd before doing the dup. + + * pwd/pwdread.c, grp/grpread.c: Use __getline. Ignore lines + beginning with #. + + * Makeconfig (objdir): If $(ARCH) starts with a slash, don't prepend + $(..). + +Thu Mar 19 21:36:57 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makefile (install-lib): Add Mcrt1.o. + (Mcrt1.o): Create empty file. + +Wed Mar 18 16:00:18 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Makeconfig (+link): Use $(libdir) for gnulib. + +Tue Mar 17 20:12:35 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * math/bsd/common_source/mathimpl.h: Include . + [__LITTLE_ENDIAN]: #define national. + + * stdio/__vfscanf.c: EOF at end of string is not + an error. + + * stdio/tstscanf.c: Added new sscanf test. + + * stdio/vfprintf.c: For %#x, print 0x after padding 0s, not before. + + * stdio/fputs.c: Reverse size args to fwrite and test for returning + LEN, rather than 1, so 0-length wins. + + * io/gnu/fcntl.h: Moved to sysdeps/unix/bsd/fcntlbits.h. + * io/Makefile (headers), io/fcntl.h: gnu/fcntl.h -> fcntlbits.h. + * sysdeps/stub/fcntlbits.h, sysdeps/unix/sysv/fcntlbits.h: New. + + * stdio/fopen.c (__getmode): Don't fall through in switch after 'a' + case. + + * locale/C-ctype_ct.c (__ctype_b_C): Use symbolic constants. + 9..12 are not _NOgraph. + +Tue Mar 17 19:04:01 1992 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu) + + * string/testcopy.c: Fix typo in comment. + +Tue Mar 17 19:57:49 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/generic/strstr.c, string/string.h, string/tester.c + (strstr): Arguments were reversed. + +Tue Mar 17 18:52:39 1992 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu) + + * sysdeps/i386/memcopy.h (WORD_COPY_BWD): Divide nbytes by 4. + * sysdeps/i386/memchr.c: Rewrite. Handle zero length correctly. + Don't ask gcc to allocate eax to two regs. + +Tue Mar 17 17:31:06 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/unistd.h (getpagesize): Declare as size_t. + + * Makeconfig (CC): Define unless origin is default. + + * stdio/__getdelim.c: Be sure to leave room for the terminating null. + + * string/testcopy.c: New version from tege. + + * malloc/dist-README: Changed mailing list addr to bug-glibc. + + * sysdeps/unix/bsd/__sigproc.c: Use right mask for SIG_UNBLOCK. + + * Makefile, Rules (clean, mostlyclean): Put - before rm commands. + +Tue Mar 17 11:14:40 1992 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu) + + * sysdeps/rs6000/memcopy.h (BYTE_COPY_BWD): Assign __nbytes. + * sysdeps/m68k/memcopy.h (WORD_COPY_BWD): Copy memory, not just + pointers. Clean up switch expression. + +Mon Mar 16 05:09:23 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * posix/wordexp.c: New. + + * time/tzfile.c (__tzfile_read): Don't die if some of the sections + of the datafile are empty. + + * stdio/getline.c, stdio/getdelim.c: Moved to + __getline.c/__getdelim.c. + New files with fn aliases. + * stdio/stdio.h (__getline, __getdelim): Declare. + + * time/Makefile (zonenames): Hair to find the names of zones + described by $(tzfiles). + (install-data): Install zoneinfo/$(zonenames). + Rules to make zones from tzfiles. + [localtime] (zoneinfo/localtime): Make from zoneinfo/$(localtime). + * Makeconfig (localtime): New user-frobbable variable. + +Sun Mar 15 00:01:05 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * Makerules (sysdep-Makefile): Do if ... else true to avoid bogus + nonzero status. + + * Makefile: Denewlinify +sysdep-subdirs after including sysd-dirs. + + * sysdeps/vax/__infnan.c [!__GNUC__]: Error. + + * zic.c, scheck.c, emkdir.c, ialloc.c, private.h, tzfile.h: Snarfed + from localtime3 dist. + * time/Makefile (others): Added zic. + (distribute): Added private.h, emkdir.c, ialloc.c, scheck.c. + (install): Defined: zic, zdump. + + * Makeconfig (bindir): Define. + * Makerules: Add rule to install $(install) in $(bindir). + (+install): Include $(install) in $(bindir). + + * sysdeps/unix/Makefile: Moved siglist.c rules to unix/bsd/Makefile. + * sysdeps/unix/make_siglist.c: Moved to bsd/. + * sysdeps/unix/Dist: Remove it. + * sysdeps/unix/bsd/Dist: Add it. + + * malloc/Makefile (malloc/gmalloc.c): Depend on headers and sources. + + * sysdeps/unix/bsd/sun/sun4/__sigvec.S: Doc fix. + + * sysdeps/stub/stty.c, sysdeps/stub/gtty.c: Include . + + * sysdeps/unix/sysv/__fstat.c: Include sysv_stat.h. + + * misc/bsd-compat.c: Define _BSD_SOURCE rather than __FAVOR_BSD. + (longjmp): Use function_alias_void. + + * time/Makefile (tzfile.o): Compile with + -DTZDIR='"$(datadir)/zoneinfo"'.d + +Sat Mar 14 23:26:46 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * Makeconfig (INSTALL_DATA, INSTALL_PROGRAM, INSTALL): Don't define + if already defined. + + * setjmp/longjmp.c: Use function_alias_void. + + * gnu-stabs.h (function_alias_void): New macro. + + * gnu-stabs.h [!HAVE_GNU_LD] (function_alias): Fixed not to loop. + +Fri Mar 13 17:20:19 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * sysdeps/posix/sysd-stdio.c (__stdio_gen_tempname): Include null + terminator in length calculation. + + * stdio/fgets.c: Be sure to return NULL on error/eof for unbuffered + stream. If N==1, don't write the first char if !seen. + When the buffer is empty, notice the effect of __fillbf after + calling it, avoiding a (costly) no-op iteration. + Don't return NULL for reading no chars; only for EOF or error. + Don't write terminator at beginning of S if eof on first char. + + * malloc/Makefile (libmcheck.a), Makefile (crt0.o): Remove target + first; don't use -f to ln. + + * posix/execl.c, posix/execv.c, sysdeps/posix/getenv.c, + sysdeps/posix/system.c [HAVE_GNU_LD]: #define __environ environ + + * posix/unistd.h [__OPTIMIZE__] (execv): Removed defn. Can't know + whether to use __environ or environ. + + * io/fchown.c, io/chown.c, io/open.c, misc/select.c, + signal/sigvec.c, time/adjtime.c: Fixed DEFUNs in fn aliases. + + * time/__tzset.c: Don't dereference NULL if getenv returns it. + +Thu Mar 12 16:01:33 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/ieee754/sqrt.c: Replaced undefined var ref `k' with constant. + + * sysdeps/i386/__longjmp.c: #include . + + * time/tzfile.c (__tzfile_compute): Use types[0] if TIMER falls + between transitions[0] and transitions[1]. + Always set __tzname[INFO->isdst] to the name for INFO. + + * sysdeps/i386/__longjmp.c: Changed register names for gcc; eax/%eax + -> ax. + + * sysdeps/unix/snarf-ioctls: Avoid infinite recursion. + +Wed Mar 11 00:16:18 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * Version 1.01. + + * Makefile (munch-init.c): Made $(objpfx)munch-init.c. + + * signal/sigvec.c, signal/sigaction.c, stdio/vsscanf.c: Fixed DEFUNs + in fn aliases. + + * sysdeps/m68k/68881/68881-switch/switch.c: Merged vars have_fpu and + test_fpu into one. + + * sysdeps/mach/i386/start.c, sysdeps/vax/setjmp.c, + sysdeps/vax/__longjmp.c, sysdeps/vax/__infnan.c, + sysdeps/unix/start.c, sysdeps/unix/bsd/sun/sun4/sigtramp.c, + sysdeps/unix/bsd/sun/sun4/start.c, + sysdeps/unix/bsd/hp9k3bsd/start.c, sysdeps/sparc/sqrt.c, + sysdeps/rs6000/ffs.c, sysdeps/m88k/ffs.c, sysdeps/m68k/setjmp.c, + sysdeps/m68k/__longjmp.c, sysdeps/m68k/68881/printf_fp.c, + sysdeps/m68k/68881/atan2.c, sysdeps/m68k/68881/__logb.c, + sysdeps/m68k/68881/68881-switch/switch.c, sysdeps/m68k/ffs.c, + sysdeps/i386/memset.c, sysdeps/i386/memchr.c, sysdeps/i386/ffs.c, + sysdeps/i386/bzero.c, sysdeps/i386/__longjmp.c, sysdeps/am29k/ffs.c + [! __GNUC__]: Either include the generic (or in some cases, ieee754) + version, or do a #error. + + * Rules: Null out `objects' at end to shrink environment some. + (+objs): Define with := from $(objects). + (clean): Use that instead of $(objects). + + * sysdeps/i386/setjmp.c: Doubled % where it wanted to be literal. + + * posix/getgrps.c, io/flock.c, io/mkdir.c, io/read.c, io/write.c, + io/stat.c, misc/getdents.c, misc/mknod.c, misc/utimes.c: Fixed + DEFUNs in fn aliases. + + * sysdeps/unix/bsd/hp9k3bsd/sysdep.S: Use # instead of kludge cookie. + + * posix/getegid.c: Fixed type in DEFUN. + + * time/tzfile.c (__tzfile_compute): If TIMER is before any + transition in the file, use the first non-DST type, rather than the + type of the first transition in the file. + +Tue Mar 10 20:01:55 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * configure: Take optional -nfp arg. + (news, sun3, hp300): Prepend m68k/68881 unless -nfp is given. + * sysdeps/unix/bsd/hp9k3bsd/Implies: Don't specify 68881. + + * stdio/getdelim.c: When the buffer is empty, notice the effect of + __fillbf after calling it, avoiding a (costly) no-op iteration. + + * sysdeps/vax/__memccpy.c: Fixed comments. + + * stdio/fmemopen.c: Set all fns and seen bit before we might call + something that would care (fclose). + + * configure (sun3, sun-3): Mean sun3os4, not sun3os3. + (sun3os3): Use just unix/bsd/sun/sun3/os3. + * sysdeps/unix/bsd/sun/sun3/os3: New directory. + (sysdeps/unix/bsd/sun/sunos3/__wait.S): Moved to there. + * sysdeps/unix/bsd/sun/sun3/sysdep.h: Fixed; took hp9k3bsd/sysdep.h + and changed movel foo, d0 to pea foo for syscall no. + * sysdeps/unix/bsd/sun/sun3/__brk.S: Fixed pea addr mode. + * sysdeps/unix/bsd/sun/sun3/sethostid.S: errnos.h, not gnu/errno.h. + Use .stabs directly, not gnu-stabs.h (which uses `asm'). + * sysdeps/m68k/setjmp.c: Changed asm for first moveml, so it works + on sun3. + * sysdeps/unix/bsd/sun/sun3/start.c: Removed ../ from #include path. + +Sun Mar 8 16:33:33 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * misc/makefile (headers): Added stab.h, stab.def. + * Many files: Changed __GNU_STAB__ to HAVE_GNU_LD. + +Sat Mar 7 21:21:10 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * time/mktime.c: Normalize the struct values before checking for out + of range values. + +Fri Mar 6 11:43:35 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/ieee754/ldexp.c: New. + + * stdio/internals.c (flushbuf): When priming the stream for writing, + advance the target pos to account for chars gotten from the buffer. + + * sysdeps/generic/Makefile: For math routines, don't filter out + __finite. + + * sysdeps/posix/sysd-stdio.c (__stdio_gen_tempname): Fixed bugs. + + * misc/Makefile (routines): Remove flock. + + * stdlib/strtod.c: Fixed typo in checking for exponent overflow. + Do set *ENDPTR on overflow or underflow. + + * sysdeps/sparc/fl.h: Removed. Should use ieee754 version. + + * sysdeps/generic/Makefile: For math routines, don't filter out + __copysign, __scalb, __drem and __logb; and don't add support. + + * sysdeps/ieee754/__drem.c: New. + * sysdeps/ieee754/sqrt.c: New. + * sysdeps/stub/__drem.c: New. + * sysdeps/stub/sqrt.c: New. + * sysdeps/stub/__logb.c: New. + * sysdeps/ieee754/__logb.c: New. + + * sysdeps/ieee754/__infnan.c: Include and use NAN macro + rather than cooking one up by hand. + + * sysdeps/unix/bsd/getlogin.c: Open /dev/tty, rather than using stdin. + Make sure the name is always null-terminated. + +Thu Mar 5 17:11:46 1992 Roland McGrath (roland@geech.gnu.ai.mit.edu) + + * sysdeps/m68k/68881/__scalb.c: Removed. + * sysdeps/m68k/68881/__math.h: Removed defn of __scalb. + * math/math.h [__OPTIMIZE__]: Define __scalb to be ldexp. + * math/__scalb.c: New; fn alias for ldexp. + + * stdio/Makefile (tests): Added bug4 and bug5. + * stdio/bug4.c, stdio/bug5.c: Test cases from reported bugs just fixed. + + * stdio/internals.c (flushbuf): If nothing was written by the user, + but there is previously gotten data, don't write anything out. + + * stdio/internals.c (seek_to_target): Call __stdio_check_offset first. + + * sysdeps/unix/sysv/sysv_termio.h: New file. + * sysdeps/unix/sysv/Dist: Include it. + * sysdeps/unix/sysv/tcsetattr.c, sysdeps/unix/sysv/tcsetpgrp.c, + sysdeps/unix/sysv/tcsendbrk.c, sysdeps/unix/sysv/tcgetpgrp.c, + sysdeps/unix/sysv/tcflush.c, sysdeps/unix/sysv/tcdrain.c, + sysdeps/unix/sysv/__tcgetatr.c: New files. + + * stdio/internals.c (fillbuf): Don't set the put_limit on writable + streams. Wait for first write attempt to prime them, so we don't + flush the unchanged data unnecessarily. + + * stdlib/exit.c: Look for NULL terminator on ld set, rather than + using length word. + + * Makefile (headers): Remove stdarg.h and varargs.h. + Users will get them from GCC. + * stdio/printf.h: Include to use va_list. + * stdio/stdio.h: Don't include with magic. + Use PTR in place of __va_list in prototypes. + * stdio/__vsscanf.c, stdio/vscanf.c, stdio/vfscanf.c, + stdio/__vfscanf.c, stdio/vdprintf.c, stdio/vasprintf.c, + stdio/vsprintf.c, stdio/vsnprintf.c, stdio/vprintf.c, + stdio/vfprintf.c: Fixed DEFUNs. + + * sysdeps/ieee754/ieee754.h: New file; declares union ieee754_double. + * sysdeps/ieee754/Dist: Add it. + * sysdeps/ieee754/__copysign.c, sysdeps/ieee754/__infnan.c, + sysdeps/ieee754/__isinf.c, sysdeps/ieee754/__isnan.c, + sysdeps/ieee754/__printf_fp.c: Use it. + + * sysdeps/unix/sysv/uname.c: New. + * sysdeps/unix/sysv/__utssys.S: New. + * sysdeps/unix/sysv/Makefile (routines): Add __utssys. + * sysdeps/unix/sysv/Dist: Add __utssys.S. + + * sysdeps/unix/sysv/__rmdir.c: New; runs `rmdir' shell command. + + * sysdeps/unix/sysv/__mkdir.c: New; runs `mkdir' shell command. + + * sysdeps/generic/__lstat.c: New; fn alias for __stat. + + * sysdeps/unix/sysv/__gethostname.c: New; uses uname. + + * sysdeps/unix/Makefile (sys/params.h): Protect with + _GNU_SYS_PARAM_H, in case the system's file uses _SYS_PARAM_H itself. + + * stdio/internals.c (__stdio_check_offset): Call init_stream to make + sure we have fns. + + * stdio/fread.c: Don't call __fillbf if the put_limit is past the + beginning of the buffer; only if !seen, no buffer, or pushed back. + + * stdio/fopen.c (__getmode): Set create bit for "a" mode. + + * io/mkdir.c: #undef mkdir before fn alias. + + * time/tzfile.c (__tzfile_compute): Don't decrement I if it's zero. + + * Makefile (crt0.o): Use ln -f. + + * math/Makefile (install): Install libm.a. + (libm.a): Make an empty archive. + +Wed Mar 4 19:54:50 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * README.template: Added note about long filenames in dist. + + * io/Makefile (routines): flock -> __flock + * flock.c: New file, fn alias. + * sysdeps/unix/bsd/flock.S: Renamed to sysdeps/unix/bsd/__flock.S; + made __flock. + * sysdeps/mach/hurd/flock.c: Renamed to sysdeps/mach/hurd/__flock.c; + made __flock. + * sysdeps/stub/flock.c: Renamed to sysdeps/stub/__flock.c; made + __flock. + + * time/time.h (__isleap): Fixed; every 400th year is not a leap + year, not every 1000th. + + * stdio/internals.c (flushbuf): Increment the target position the + amount the user wrote into the buffer, not the amount we wrote out + to the file (which is greater if we read a block and modified it + in the middle). + + * stdio/internals.c (flushbuf): Set get_limit to the beginning of + the buffer for all streams, except when we have just read in a block. + +Sat Feb 29 15:56:22 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * posix/Makefile (others): Removed logname, id. + * time/Makefile (others): Removed date. + + * sysdeps/unix/bsd/sun/sun4/start.c: Make an alias called `start' + (no leading underscore, so it can't conflict with C symbols) for + `_start'. + +Thu Feb 27 14:32:20 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * set-init.c: Look for NULL terminator on set. ld is broken and + doesn't set the length word correctly. + + * setjmp/_longjmp.c, signal/sigaction.c, signal/sigvec.c, + signal/ssignal.c, string/bcmp.c, time/setitmr.c, posix/execve.c, + posix/getegid.c, posix/geteuid.c, posix/getgid.c, posix/getuid.c, + posix/getgrps.c, posix/setuid.c, posix/wait3.c, posix/wait4.c, + posix/waitpid.c, io/lseek.c, io/open.c, io/read.c, io/write.c, + resource/getrusage.c, misc/getpgsz.c, misc/gethstnm.c, + misc/select.c: Fixed DEFUNs in fn aliases. + +Wed Feb 26 00:20:25 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * sysdeps/generic/Makefile (routines): Add asincos. + + * time/tzfile.c (__tzfile_compute): Set __tzname properly, so isdst + is the right index into it. + +Tue Feb 25 01:42:16 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * sysdeps/unix/bsd/sun/sun4/sysdep.h (ENTRY): .align 2, not .align 4. + This one is powers of two. + + * time/__tzset.c: If TZ is :FILE, try FILE and if __tzfile_read + fails, then use defaults. + + * sysdeps/generic/Makefile (routines): Add sincos. + + * sysdeps/posix/cuserid.c: Set the result to the empty string on + failure. + + * string/string.h, string/strings.h, sysdeps/i386/memchr.c: Fixed + spelling in comment. + + * string/makefile (tests): Include (uncomment) testcopy. We do have + papers for it from tege. + + * malloc/dist-README: Fixed mailing list addr. + + * resource/sys/vtimes.h (struct vtimes): Renamed vm_outblk to + vm_oublk; fixed comment. + * sysdeps/generic/vtimes.c: Renamed here too. + + * Make-dist (README): Depend on version.c. + +Tue Feb 18 18:14:50 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * Version 1.00. + + * time/tzfile.c (__tzfile_compute): Fixed transition comparison. + + * sysdeps/unix/bsd/sun/sun3/Makefile: Fixed typo. + +Mon Feb 17 05:04:00 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * Version 0.6. + + * Makefile (distribute): Add Q+A. + * Q+A: New doc file from rich@cygnus.com. + + * malloc/Makefile (distribute): Add mcheck-init.c. + +Mon Feb 17 00:39:38 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * sysdeps/unix/sysv/utime.c: Removed. + * sysdeps/unix/sysv/utime.S: New file. + + * sysdeps/unix/sysv/signum.h: New file. + + * sysdeps/unix/sysv/local_lim.h: New file. + + * sysdeps/unix/sysv/sysv_stat.h: New file. + * sysdeps/unix/sysv/__stat.c, sysdeps/unix/sysv/__fstat.c: New files. + * sysdeps/unix/sysv/Makefile: New file. + (+sysdep-routines): Define to sys_stat and sys_fstat. + * sysdeps/unix/sysv/sys_stat.S, sysdeps/unix/sysv/sys_fstat.S: New + files. + * sysdeps/unix/sysv/Dist: Created to include sysv_stat.h, + sys_stat.S, and sys_fstat.S. + + * sysdeps/stub/__setreuid.c: Include . + + * sysdeps/posix/__sigblock.c: Fixed typo. + + * stdio/internals.c (__flshfp): Don't return EOF if at EOF; only + for errors. + + * signal/gnu/signal.h: Move #include outside repeat #ifdef. + + * sysdeps/unix/sysv/filebits.h: Created. + + * misc/Makefile (distribute): Define to bsd-compat.c. + + * misc/Makefile (headers): Remove filebits.h. + * io/Makefile (headers): Put it here. + + * Makefile (+posix_dirs): Add io. + * io/Makefile: New file for new subdir. + Contains many headers and routines moved from posix. + * posix/Makefile: Remove many headers and routines now in io. + * Moved many files from posix to io. + + * stdlib/alloca.h: Get size_t from stddef.h. + + * misc/bsd-compat.c (getgroups): Removed. Not needed, because gid_t + is now the same size as int. + + * Makefile (distribute): Include NOTES. + * NOTES: New file, infoized node from intro.texinfo about the + feature-test macros. + * README.template: Mention NOTES. + + * sysdeps/unix/bsd/sun/sun3/Makefile: include hp9k3bsd version. + + * Makeconfig: Use $(..) for config.status. + + * configure (i386-sysv): unix/i386/sysv, not unix/sysv/i386. + * unix/i386/sysv/Implies: unix/sysv, not unix/i386. + +Sun Feb 16 00:42:53 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * Version 0.5. + + * posix/Makefile (headers): Remove confstr.h. + (distribute): Define this instead to contain it. + + * ansidecl: Added copyright notice. + + * stdio/getdelim.c: New file. + * stdio/getline.c (getsome): Renamed to getdelim and moved there. + * stdio/Makefile (routines): Add getdelim. + * stdio/stdio.h: Declare getdelim. + + * misc/gnu/file.h: Moved to sysdeps/unix/bsd/filebits.h. + * sysdeps/stub/filebits.h: New file. + * misc/Makefile: gnu/file.h is now filebits.h. + * posix/fcntl.h: Changed #include. + + * stdio/getline.c (getsome): If MAX_CANON isn't defined, use a default. + Don't leak old *LINEPTR storage if *N < 2. + Don't bang *LINEPTR to NULL if realloc fails. + + * Makerules: Don't use override when nulling out sources, routines, + and aux if they came from the environment. Better not make with -e. + + * Makefile (sysdirs, Sysnames): Put outside of ifndef sysdirs. + + * string/Makefile (tests): No testcopy, pending papers. + + * Makefile (headers): No sysdep.h. + (distribute): Here instead. + (no-install): No longer needed. + +Sat Feb 15 17:10:38 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * Makefile (distribute): Add INSTALL. + * Make-dist (INSTALL): Make from manual/maint.texinfo. + (README): Make from README.template. + + * Makefile (+other-dirs): Removed inet. + * sysdeps/unix/inet/Subdirs: Created, adding inet. + + * sysdeps/unix/sysv/setrlimit.c: Include stddef and errno.h. + + * math/drem.c, setjmp/longjmp.c, malloc/cfree.c, string/bcmp.c, + time/getitmr.c, misc/ioctl.c: Fixed defuns in function_alias. + + * Makefile (headers): Put sysdep.h back. + (no-install): And define this to it. + * Makerules (+install): Filter out $(no-install) from the list. + + * string/testcopy.c: New test program for bcopy from tege. + * string/Makefile (tests): Add it. + + * Makefile (sysdep-subdirs): Renamed to sysd-dirs. + + * Make-dist (tardir): Omit the release name; it made names too long. + +Sat Feb 15 12:53:02 1992 Torbjorn Granlund (tege at mole.gnu.ai.mit.edu) + + * sysdeps/rs6000/memcopy.h (WORD_COPY_FWD, WORD_COPY_BWD): + Use CTR register for looping (speed enhancement). Don't emit + labels, jump relative from `$' instead (makes multiple expansions + possible). Clean up indentation of asm code (were different in each + macro). + * sysdeps/rs6000/memcopy.h (WORD_COPY_BWD): + Add asm output specs (were missing completely). + + * sysdeps/generic/{memcpy.c,memmove.c}: Make DSTP and SRCP unsigned + (safer with non-ANSI compilers). + +Fri Feb 14 01:52:12 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * Version 0.4.1. + + * Makefile, Rules: Changed clean and clobber targets into + mostlyclean, clean, and realclean. + + * Makeconfig: Added comments describing objdir/Makeconfig and + editting Makeconfig. + (prefix, libdir, INSTALL, INSTALL_DATA): New variables for installing. + * Makerules (install): New target. + * Makefile (+subdir_targets): Add subdir_install. + (install): Depend on subdir_install. + (install-lib): Define variable to install libc.a and crt0.o. + * misc/Makefile (install-lib): Install bsd-compat. + * malloc/Makefile (install-lib): Install mcheck-init. + + * Version 0.4. + +Thu Feb 13 21:39:31 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * sysdeps/unix/glue-ctype.c: Moved to unix/bsd. + * sysdeps/unix/Makefile: Moved glue-ctype stuff to unix/bsd/Makefile. + * sysdeps/unix/Dist: No glue-ctype. + * sysdeps/unix/bsd/Dist: Here instead. + + * sysdeps/sparc/divrem.m4: Don't use insn aliases Sun as doesn't grok. + +Wed Feb 12 12:12:12 1992 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * sysdeps/m68k/setjmp.c: Use m, rather than g, constraint when + saving fp regs. + + * Renamed oodles of files, changed all the relevant Makefiles (I + think). File names now fit in 14 chars for losing System V. Gag me + with a death star. + See =longnames for translations, and =shorten.el for method. + + * grp/initgroups.c: Removed redundant test. + + * malloc/mtrace.c: Use %p fmt for pointers. + +Tue Feb 11 02:04:39 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/alloca.h: New file. + * stdlib/stdlib.h: Moved alloca decls there; #include + instead. + * stdlib/Makefile (headers): Added alloca.h. + + * stdio/getline.c (getsome): Fixed bugs. + + * math/bsd/common_source/mathimpl.h: #define expm1 __expm1. + * math/bsd/common_source/expm1.c: Renamed to __expm1.c + * math/bsd/mc68881/expm1.s: Renamed to __expm1.s; renamed fn too. + * math/expm1.c: New file, fn alias expm1 -> __expm1. + + * math/Makefile (routines): Add __rint. + * math/rint.c: New file, fn alias rint -> __rint. + * math/bsd/common_source/floor.c (rint): Renamed to __rint. + * sysdeps/generic/Makefile: Remove __rint, not rint. + + * math/Makefile (BSDmath-files): Always include it, and don't depend + on undependable things. + + * Makerules (sysdep-Makefile): Always include it, and make it + without depending on make vars that might not be right yet. + +Mon Feb 10 00:55:58 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdlib/stdlib.h: #undef alloca before declaring it. + + * sysdeps/sparc/__longjmp.S: Use be instead of bz. + + * sysdeps/unix/bsd/Dist: Add bsdtty.h. + + * tzfile.c (__tzfile_read): Don't allocate space for 0 leaps. + Don't loop infinitely. + + * sysdeps/unix/Makefile (make-errnos.c): Use tr to eat newlines in + errnos file. + + * sysdeps/unix/bsd/sun/sun4/__brk.S: Fix andn arg order. + + * posix/Makefile: Don't get getopt by vpath. Turns out to be too + much hassle for dist. Just made symlinks in posix/ instead. + + * manual/Makefile: Renamed summary.out to summary.texinfo. + + * manual/summary.awk: New file, to make summary.out. + Replaces `process-definitions.el'. + * manual/Makefile (summary.out): Create using summary.awk. + + * manual/Makefile: Created. + * Makefile, Make-dist: Use it to format and distribute the manual. + +Mon Feb 10 00:32:17 1992 Jim Meyering (meyering@churchy.gnu.ai.mit.edu) + + * All Makefiles: + Whenever using shell redirection to create a target, + do not create the target directly like this + + foo: bar + process $< > $@ + + That loses when `process' fails (interrupt, disk full, ...) + and bar exists and looks up-to-date, but isn't. + This sort of failure is particularly insidious when + the initial error message is obscured by lots of subsequent + output (echoed commands etc). + + Instead use rules like this + + foo: bar + process $< > $@-tmp + mv $@-tmp $@ + + Using this paradigm, as long as process returns non-zero + whenever it fails, the target won't be touched. + +Sun Feb 9 22:58:51 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/unistd.h (getopt): Fixed prototype. + * sysdeps/generic/memset.c, stdio/vdprintf.c: Fixed DEFUNs. + + * Makerules (lib): Use $(RANLIB) for ranlib. + * Makeconfig: Define it. + + * configure: Create config.status to set ARCH, if successful. + * Makeconfig: include config.status ifndef ARCH. + +Thu Feb 6 20:57:10 1992 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * ansidecl.h (INCLUDE, STARTCOMMENT, ENDCOMMENT): New magic words. + * sysdeps/m68k/68881/fl.h: Use new magic to snarf ieee754/fl.h during + ansideclification. + + * sysdeps/ieee754/fl.h: New file, taken mostly from the old + 68881 file. HUGE_VAL redone to be machine independent. + (NAN): New macro for an IEEE NaN, done like HUGE_VAL. + * sysdeps/m68k/68881/fl.h: Now #includes ieee754/fl.h, and overrides + FLT_ROUNDS for 68881 magic. NB: the #include is a prob. for install. + +Wed Jan 29 17:11:25 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * sysdeps/posix/getcwd.c: Don't use chdir; use a long ../../../... + path name instead. + +Fri Jan 17 02:51:10 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * posix/Makefile (headers): Added getopt.h. + (routines): Added getopt1. + Get getopt* from /home/gd/gnu/lib by vpath. + + * Makerules (+ansideclificate): Don't assume . is in PATH. + +Thu Jan 16 18:43:05 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * posix/glob.c [sgi]: No alloca.h, after all. + +Wed Jan 15 14:17:37 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * termios/termios.h: Reworked to be compatible with 4.4BSD. + * termios/speed.c, sysdeps/unix/bsd/{__tcgetattr,tcsetattr}.c: Store + speeds as their own values (B9600==9600, etc.) and translate to BSD + values only for ioctl. + * termios/cfsetpseed.c: New fn to set both speeds at once (from 4.4). + +Tue Jan 14 21:18:10 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * sysdeps/unix/i386/__brk.S: __end, not ___end. + Get the arg off the stack correctly. + + * sysdeps/unix/Makefile: Allow errnos like EL3HLT. + + * sysdeps/posix/{readv,writev}.c: Typos. + + * sysdeps/posix/__sigpause.c: Rewritten to know that sigset_t is a + mask, and to pass a (sigset_t *) instead of sigset_t to sigsuspend. + + * sysdeps/i386/memset.c: Include . + + * sysdeps/generic/uname.c (uname): Save and restore errno if + gethostname gets ENOSYS. + + * stdio/perror.c (perror): Check correctly for S == "". + Check correctly for ERRNUM being in range. + + * find-sysdirs: Don't use fgrep -s, since USG apparently doesn't + have that flag. Just >/dev/null instead. + +Mon Jan 13 17:00:15 1992 Torbjorn Granlund (tege at mole.gnu.ai.mit.edu) + + * sysdeps/generic/wordcopy.c (all four functions): Move do0 label to + the ultimate store statement at the end of each function. (Used to + be in the loop.) + +Tue Jan 7 18:40:18 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * resource/sys/resource.h (struct rusage): Change `ru_outblock' to + `ru_oublock'. + + * sysdeps/generic/stpcpy.c: Fixed off-by-one bug. + +Thu Jan 2 15:19:01 1992 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * sysdeps/sparc/Dist: Add umul.S and mul.S. + +Tue Dec 31 15:33:39 1991 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * signal/signal.h [__USE_GNU]: Add user-visible `sighandler_t' == + __sighandler_t. + + * termios/speed.c (speedtab): Made const. + + * posix/Makefile (routines): Add flock. + +Tue Dec 31 03:38:30 1991 Richard Stallman (rms at mole.gnu.ai.mit.edu) + + * termios/speed.c: Accept and return speeds as actual baud rates. + * termios/termios.h (B110, etc.): Define B110 as 110, etc. + Likewise for _B110, etc. + +Thu Oct 24 16:19:49 1991 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) + + * ansidecl: Put `M4OPTS=+quiet' in the environment make GNU m4 quiet. + +Sun Oct 20 19:31:28 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Make-dist (tardir): Define as `libc-RELEASE-VERSION', strings + snarfed from version.c. + ($(..)$(tardir)): Add rule to make as symlink to . (parent dir). + [subdir] (dist), [parent] (dist.tar): Depend on that. + [subdir] (tarsources), [parent] (+tsrcs): Add $(tardir)/ to files. + + * sysdeps/sparc/Makefile (distribute): Move data into Dist file. + +Fri Oct 18 15:27:58 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * Makefile (subdirs): Add $(sysdep-subdirs), so sysdep makefiles can + add subdirs. + + * posix/glob.c [sgi]: Use . + + * stdio/fopen.c: If not appending, initialize the offset to 0. + + * sysdeps/generic/strcasecmp.c: Fixed losing braindead code. + +Tue Oct 8 15:27:54 1991 Roland McGrath (roland@albert.gnu.ai.mit.edu) + + * Version 0.1. + * This ChangeLog is lacking much information. + * After this release, I hope to maintain the log well. + +Fri Jul 26 18:02:57 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/Makefile (routines): Remove _cleanup. + +Thu Jul 25 23:12:45 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * stdio/memstream.c (close_memstream): Removed. + (trim_buffer): New fn to be io_funcs->__close for memstreams. + (open_memstream): Take arg char **BUFLOC. Stuff it in + stream->__fd, and store the location of the initial buffer in + *BUFLOC. + (enlarge_buffer): Keep *(char **) stream->__fd updated to be the + location of the buffer. + +Tue Jul 23 14:11:29 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * posix/glob.c: Don't #include #ifdef sun. + Is there anyone on the face of the planet other than me capable of + implementing the ANSI C standard to spec???? + + * posix/glob.c [DIRENT]: #include before + #ifdef USG. + +Mon Jul 22 17:06:24 1991 Roland McGrath (roland@churchy.gnu.ai.mit.edu) + + * sysdeps/posix/make-stdio_limits.c: #include , + not . + + * README: Refer to COPYING.LIB, not COPYING. + + * config.libc: Renamed to `configure'. + +Local Variables: +mode: change-log +End: diff --git a/INSTALL b/INSTALL new file mode 100644 index 00000000000..1476bd82468 --- /dev/null +++ b/INSTALL @@ -0,0 +1,832 @@ +Library Maintenance +******************* + +How to Install the GNU C Library +================================ + + Installation of the GNU C library is relatively simple. + + You need the latest version of GNU `make'. Modifying the GNU C +Library to work with other `make' programs would be so hard that we +recommend you port GNU `make' instead. *Really.* + + To configure the GNU C library for your system, run the shell script +`configure' with `sh'. Use an argument which is the conventional GNU +name for your system configuration--for example, `sparc-sun-sunos4.1', +for a Sun 4 running Sunos 4.1. *Note Installation: +(gcc.info)Installation, for a full description of standard GNU +configuration names. If you omit the configuration name, `configure' +will try to guess one for you by inspecting the system it is running +on. It may or may not be able to come up with a guess, and the its +guess might be wrong. `configure' will tell you the canonical name of +the chosen configuration before proceeding. + + The GNU C Library currently supports configurations that match the +following patterns: + + alpha-dec-osf1 + i386-ANYTHING-bsd4.3 + i386-ANYTHING-gnu + i386-ANYTHING-isc2.2 + i386-ANYTHING-isc3.N + i386-ANYTHING-sco3.2 + i386-ANYTHING-sco3.2v4 + i386-ANYTHING-sysv + i386-ANYTHING-sysv4 + i386-force_cpu386-none + i386-sequent-bsd + i960-nindy960-none + m68k-hp-bsd4.3 + m68k-mvme135-none + m68k-mvme136-none + m68k-sony-newsos3 + m68k-sony-newsos4 + m68k-sun-sunos4.N + mips-dec-ultrix4.N + mips-sgi-irix4.N + sparc-sun-solaris2.N + sparc-sun-sunos4.N + + While no other configurations are supported, there are handy aliases +for these few. (These aliases work in other GNU software as well.) + + decstation + hp320-bsd4.3 hp300bsd + i386-sco + i386-sco3.2v4 + i386-sequent-dynix + i386-svr4 + news + sun3-sunos4.N sun3 + sun4-solaris2.N sun4-sunos5.N + sun4-sunos4.N sun4 + + Here are some options that you should specify (if appropriate) when +you run `configure': + +`--with-gnu-ld' + Use this option if you plan to use GNU `ld' to link programs with + the GNU C Library. (We strongly recommend that you do.) This + option enables use of features that exist only in GNU `ld'; so if + you configure for GNU `ld' you must use GNU `ld' *every time* you + link with the GNU C Library, and when building it. + +`--with-gnu-as' + Use this option if you plan to use the GNU assembler, `gas', when + building the GNU C Library. On some systems, the library may not + build properly if you do *not* use `gas'. + +`--nfp' + Use this option if your computer lacks hardware floating point + support. + +`--prefix=DIRECTORY' + Install machine-independent data files in subdirectories of + `DIRECTORY'. (You can also set this in `configparms'; see below.) + +`--exec-prefix=DIRECTORY' + Install the library and other machine-dependent files in + subdirectories of `DIRECTORY'. (You can also set this in + `configparms'; see below.) + + The simplest way to run `configure' is to do it in the directory +that contains the library sources. This prepares to build the library +in that very directory. + + You can prepare to build the library in some other directory by going +to that other directory to run `configure'. In order to run configure, +you will have to specify a directory for it, like this: + + mkdir sun4 + cd sun4 + ../configure sparc-sun-sunos4.1 + +`configure' looks for the sources in whatever directory you specified +for finding `configure' itself. It does not matter where in the file +system the source and build directories are--as long as you specify the +source directory when you run `configure', you will get the proper +results. + + This feature lets you keep sources and binaries in different +directories, and that makes it easy to build the library for several +different machines from the same set of sources. Simply create a build +directory for each target machine, and run `configure' in that +directory specifying the target machine's configuration name. + + The library has a number of special-purpose configuration parameters. +These are defined in the file `Makeconfig'; see the comments in that +file for the details. + + But don't edit the file `Makeconfig' yourself--instead, create a +file `configparms' in the directory where you are building the library, +and define in that file the parameters you want to specify. +`configparms' should *not* be an edited copy of `Makeconfig'; specify +only the parameters that you want to override. To see how to set these +parameters, find the section of `Makeconfig' that says "These are the +configuration variables." Then for each parameter that you want to +change, copy the definition from `Makeconfig' to your new `configparms' +file, and change the value as appropriate for your system. + + It is easy to configure the GNU C library for cross-compilation by +setting a few variables in `configparms'. Set `CC' to the +cross-compiler for the target you configured the library for; it is +important to use this same `CC' value when running `configure', like +this: `CC=TARGET-gcc configure TARGET'. Set `BUILD_CC' to the compiler +to use for for programs run on the build system as part of compiling +the library. You may need to set `AR' and `RANLIB' to cross-compiling +versions of `ar' and `ranlib' if the native tools are not configured to +work with object files for the target you configured for. + + Some of the machine-dependent code for some machines uses extensions +in the GNU C compiler, so you may need to compile the library with GCC. +(In fact, all of the existing complete ports require GCC.) + + The current release of the C library contains some header files that +the compiler normally provides: `stddef.h', `stdarg.h', and several +files with names of the form `va-MACHINE.h'. The versions of these +files that came with older releases of GCC do not work properly with +the GNU C library. The `stddef.h' file in release 2.2 and later of GCC +is correct. If you have release 2.2 or later of GCC, use its version +of `stddef.h' instead of the C library's. To do this, put the line +`override stddef.h =' in `configparms'. The other files are corrected +in release 2.3 and later of GCC. `configure' will automatically detect +whether the installed `stdarg.h' and `va-MACHINE.h' files are +compatible with the C library, and use its own if not. + + There is a potential problem with the `size_t' type and versions of +GCC prior to release 2.4. ANSI C requires that `size_t' always be an +unsigned type. For compatibility with existing systems' header files, +GCC defines `size_t' in `stddef.h' to be whatever type the system's +`sys/types.h' defines it to be. Most Unix systems that define `size_t' +in `sys/types.h', define it to be a signed type. Some code in the +library depends on `size_t' being an unsigned type, and will not work +correctly if it is signed. + + The GNU C library code which expects `size_t' to be unsigned is +correct. The definition of `size_t' as a signed type is incorrect. +Versions 2.4 and later of GCC always define `size_t' as an unsigned +type, and GCC's `fixincludes' script massages the system's +`sys/types.h' so as not to conflict with this. + + In the meantime, we work around this problem by telling GCC +explicitly to use an unsigned type for `size_t' when compiling the GNU C +library. `configure' will automatically detect what type GCC uses for +`size_t' arrange to override it if necessary. + + To build the library, type `make lib'. This will produce a lot of +output, some of which looks like errors from `make' (but isn't). Look +for error messages from `make' containing `***'. Those indicate that +something is really wrong. + + To build and run some test programs which exercise some of the +library facilities, type `make tests'. This will produce several files +with names like `PROGRAM.out'. + + To format the `GNU C Library Reference Manual' for printing, type +`make dvi'. To format the Info version of the manual for on line +reading with `C-h i' in Emacs or with the `info' program, type +`make info'. + + To install the library and its header files, and the Info files of +the manual, type `make install', after setting the installation +directories in `configparms'. This will build things if necessary, +before installing them. + +Reporting Bugs +============== + + There are probably bugs in the GNU C library. There are certainly +errors and omissions in this manual. If you report them, they will get +fixed. If you don't, no one will ever know about them and they will +remain unfixed for all eternity, if not longer. + + To report a bug, first you must find it. Hopefully, this will be the +hard part. Once you've found a bug, make sure it's really a bug. A +good way to do this is to see if the GNU C library behaves the same way +some other C library does. If so, probably you are wrong and the +libraries are right (but not necessarily). If not, one of the libraries +is probably wrong. + + Once you're sure you've found a bug, try to narrow it down to the +smallest test case that reproduces the problem. In the case of a C +library, you really only need to narrow it down to one library function +call, if possible. This should not be too difficult. + + The final step when you have a simple test case is to report the bug. +When reporting a bug, send your test case, the results you got, the +results you expected, what you think the problem might be (if you've +thought of anything), your system type, and the version of the GNU C +library which you are using. Also include the files `config.status' +and `config.make' which are created by running `configure'; they will +be in whatever directory was current when you ran `configure'. + + If you think you have found some way in which the GNU C library does +not conform to the ANSI and POSIX standards (*note Standards and +Portability::.), that is definitely a bug. Report it! + + Send bug reports to the Internet address `bug-glibc@prep.ai.mit.edu' +or the UUCP path `mit-eddie!prep.ai.mit.edu!bug-glibc'. If you have +other problems with installation or use, please report those as well. + + If you are not sure how a function should behave, and this manual +doesn't tell you, that's a bug in the manual. Report that too! If the +function's behavior disagrees with the manual, then either the library +or the manual has a bug, so report the disagreement. If you find any +errors or omissions in this manual, please report them to the Internet +address `bug-glibc-manual@prep.ai.mit.edu' or the UUCP path +`mit-eddie!prep.ai.mit.edu!bug-glibc-manual'. + +Adding New Functions +==================== + + The process of building the library is driven by the makefiles, which +make heavy use of special features of GNU `make'. The makefiles are +very complex, and you probably don't want to try to understand them. +But what they do is fairly straightforward, and only requires that you +define a few variables in the right places. + + The library sources are divided into subdirectories, grouped by +topic. The `string' subdirectory has all the string-manipulation +functions, `stdio' has all the standard I/O functions, etc. + + Each subdirectory contains a simple makefile, called `Makefile', +which defines a few `make' variables and then includes the global +makefile `Rules' with a line like: + + include ../Rules + +The basic variables that a subdirectory makefile defines are: + +`subdir' + The name of the subdirectory, for example `stdio'. This variable + *must* be defined. + +`headers' + The names of the header files in this section of the library, such + as `stdio.h'. + +`routines' +`aux' + The names of the modules (source files) in this section of the + library. These should be simple names, such as `strlen' (rather + than complete file names, such as `strlen.c'). Use `routines' for + modules that define functions in the library, and `aux' for + auxiliary modules containing things like data definitions. But the + values of `routines' and `aux' are just concatenated, so there + really is no practical difference. + +`tests' + The names of test programs for this section of the library. These + should be simple names, such as `tester' (rather than complete file + names, such as `tester.c'). `make tests' will build and run all + the test programs. If a test program needs input, put the test + data in a file called `TEST-PROGRAM.input'; it will be given to + the test program on its standard input. If a test program wants + to be run with arguments, put the arguments (all on a single line) + in a file called `TEST-PROGRAM.args'. + +`others' + The names of "other" programs associated with this section of the + library. These are programs which are not tests per se, but are + other small programs included with the library. They are built by + `make others'. + +`install-lib' +`install-data' +`install' + Files to be installed by `make install'. Files listed in + `install-lib' are installed in the directory specified by `libdir' + in `configparms' or `Makeconfig' (*note Installation::.). Files + listed in `install-data' are installed in the directory specified + by `datadir' in `configparms' or `Makeconfig'. Files listed in + `install' are installed in the directory specified by `bindir' in + `configparms' or `Makeconfig'. + +`distribute' + Other files from this subdirectory which should be put into a + distribution tar file. You need not list here the makefile itself + or the source and header files listed in the other standard + variables. Only define `distribute' if there are files used in an + unusual way that should go into the distribution. + +`generated' + Files which are generated by `Makefile' in this subdirectory. + These files will be removed by `make clean', and they will never + go into a distribution. + +`extra-objs' + Extra object files which are built by `Makefile' in this + subdirectory. This should be a list of file names like `foo.o'; + the files will actually be found in whatever directory object + files are being built in. These files will be removed by + `make clean'. This variable is used for secondary object files + needed to build `others' or `tests'. + +Porting the GNU C Library +========================= + + The GNU C library is written to be easily portable to a variety of +machines and operating systems. Machine- and operating system-dependent +functions are well separated to make it easy to add implementations for +new machines or operating systems. This section describes the layout of +the library source tree and explains the mechanisms used to select +machine-dependent code to use. + + All the machine-dependent and operating system-dependent files in the +library are in the subdirectory `sysdeps' under the top-level library +source directory. This directory contains a hierarchy of +subdirectories (*note Hierarchy Conventions::.). + + Each subdirectory of `sysdeps' contains source files for a +particular machine or operating system, or for a class of machine or +operating system (for example, systems by a particular vendor, or all +machines that use IEEE 754 floating-point format). A configuration +specifies an ordered list of these subdirectories. Each subdirectory +implicitly appends its parent directory to the list. For example, +specifying the list `unix/bsd/vax' is equivalent to specifying the list +`unix/bsd/vax unix/bsd unix'. A subdirectory can also specify that it +implies other subdirectories which are not directly above it in the +directory hierarchy. If the file `Implies' exists in a subdirectory, +it lists other subdirectories of `sysdeps' which are appended to the +list, appearing after the subdirectory containing the `Implies' file. +Lines in an `Implies' file that begin with a `#' character are ignored +as comments. For example, `unix/bsd/Implies' contains: + # BSD has Internet-related things. + unix/inet + +and `unix/Implies' contains: + posix + +So the final list is `unix/bsd/vax unix/bsd unix/inet unix posix'. + + `sysdeps' has two "special" subdirectories, called `generic' and +`stub'. These two are always implicitly appended to the list of +subdirectories (in that order), so you needn't put them in an `Implies' +file, and you should not create any subdirectories under them. +`generic' is for things that can be implemented in machine-independent +C, using only other machine-independent functions in the C library. +`stub' is for "stub" versions of functions which cannot be implemented +on a particular machine or operating system. The stub functions always +return an error, and set `errno' to `ENOSYS' (Function not +implemented). *Note Error Reporting::. + + A source file is known to be system-dependent by its having a +version in `generic' or `stub'; every system-dependent function should +have either a generic or stub implementation (there is no point in +having both). + + If you come across a file that is in one of the main source +directories (`string', `stdio', etc.), and you want to write a machine- +or operating system-dependent version of it, move the file into +`sysdeps/generic' and write your new implementation in the appropriate +system-specific subdirectory. Note that if a file is to be +system-dependent, it *must not* appear in one of the main source +directories. + + There are a few special files that may exist in each subdirectory of +`sysdeps': + +`Makefile' + A makefile for this machine or operating system, or class of + machine or operating system. This file is included by the library + makefile `Makerules', which is used by the top-level makefile and + the subdirectory makefiles. It can change the variables set in the + including makefile or add new rules. It can use GNU `make' + conditional directives based on the variable `subdir' (see above) + to select different sets of variables and rules for different + sections of the library. It can also set the `make' variable + `sysdep-routines', to specify extra modules to be included in the + library. You should use `sysdep-routines' rather than adding + modules to `routines' because the latter is used in determining + what to distribute for each subdirectory of the main source tree. + + Each makefile in a subdirectory in the ordered list of + subdirectories to be searched is included in order. Since several + system-dependent makefiles may be included, each should append to + `sysdep-routines' rather than simply setting it: + + sysdep-routines := $(sysdep-routines) foo bar + +`Subdirs' + This file contains the names of new whole subdirectories under the + top-level library source tree that should be included for this + system. These subdirectories are treated just like the + system-independent subdirectories in the library source tree, such + as `stdio' and `math'. + + Use this when there are completely new sets of functions and header + files that should go into the library for the system this + subdirectory of `sysdeps' implements. For example, + `sysdeps/unix/inet/Subdirs' contains `inet'; the `inet' directory + contains various network-oriented operations which only make sense + to put in the library on systems that support the Internet. + +`Dist' + This file contains the names of files (relative to the + subdirectory of `sysdeps' in which it appears) which should be + included in the distribution. List any new files used by rules in + the `Makefile' in the same directory, or header files used by the + source files in that directory. You don't need to list files that + are implementations (either C or assembly source) of routines + whose names are given in the machine-independent makefiles in the + main source tree. + +`configure' + This file is a shell script fragment to be run at configuration + time. The top-level `configure' script uses the shell `.' command + to read the `configure' file in each system-dependent directory + chosen, in order. The `configure' files are often generated from + `configure.in' files using Autoconf. + + A system-dependent `configure' script will usually add things to + the shell variables `DEFS' and `config_vars'; see the top-level + `configure' script for details. The script can check for + `--with-PACKAGE' options that were passed to the top-level + `configure'. For an option `--with-PACKAGE=VALUE' `configure' + sets the shell variable `with_PACKAGE' (with any dashes in PACKAGE + converted to underscores) to VALUE; if the option is just + `--with-PACKAGE' (no argument), then it sets `with_PACKAGE' to + `yes'. + +`configure.in' + This file is an Autoconf input fragment to be processed into the + file `configure' in this subdirectory. *Note Introduction: + (autoconf.info)Introduction, for a description of Autoconf. You + should write either `configure' or `configure.in', but not both. + The first line of `configure.in' should invoke the `m4' macro + `GLIBC_PROVIDES'. This macro does several `AC_PROVIDE' calls for + Autoconf macros which are used by the top-level `configure' + script; without this, those macros might be invoked again + unnecessarily by Autoconf. + + That is the general system for how system-dependencies are isolated. + +Layout of the `sysdeps' Directory Hierarchy +------------------------------------------- + + A GNU configuration name has three parts: the CPU type, the +manufacturer's name, and the operating system. `configure' uses these +to pick the list of system-dependent directories to look for. If the +`--nfp' option is *not* passed to `configure', the directory +`MACHINE/fpu' is also used. The operating system often has a "base +operating system"; for example, if the operating system is `sunos4.1', +the base operating system is `unix/bsd'. The algorithm used to pick +the list of directories is simple: `configure' makes a list of the base +operating system, manufacturer, CPU type, and operating system, in that +order. It then concatenates all these together with slashes in +between, to produce a directory name; for example, the configuration +`sparc-sun-sunos4.1' results in `unix/bsd/sun/sparc/sunos4.1'. +`configure' then tries removing each element of the list in turn, so +`unix/bsd/sparc' and `sun/sparc' are also tried, among others. Since +the precise version number of the operating system is often not +important, and it would be very inconvenient, for example, to have +identical `sunos4.1.1' and `sunos4.1.2' directories, `configure' tries +successively less specific operating system names by removing trailing +suffixes starting with a period. + + As an example, here is the complete list of directories that would be +tried for the configuration `sparc-sun-sunos4.1' (without the `--nfp' +option): + + sparc/fpu + unix/bsd/sun/sunos4.1/sparc + unix/bsd/sun/sunos4.1 + unix/bsd/sun/sunos4/sparc + unix/bsd/sun/sunos4 + unix/bsd/sun/sunos/sparc + unix/bsd/sun/sunos + unix/bsd/sun/sparc + unix/bsd/sun + unix/bsd/sunos4.1/sparc + unix/bsd/sunos4.1 + unix/bsd/sunos4/sparc + unix/bsd/sunos4 + unix/bsd/sunos/sparc + unix/bsd/sunos + unix/bsd/sparc + unix/bsd + unix/sun/sunos4.1/sparc + unix/sun/sunos4.1 + unix/sun/sunos4/sparc + unix/sun/sunos4 + unix/sun/sunos/sparc + unix/sun/sunos + unix/sun/sparc + unix/sun + unix/sunos4.1/sparc + unix/sunos4.1 + unix/sunos4/sparc + unix/sunos4 + unix/sunos/sparc + unix/sunos + unix/sparc + unix + sun/sunos4.1/sparc + sun/sunos4.1 + sun/sunos4/sparc + sun/sunos4 + sun/sunos/sparc + sun/sunos + sun/sparc + sun + sunos4.1/sparc + sunos4.1 + sunos4/sparc + sunos4 + sunos/sparc + sunos + sparc + + Different machine architectures are conventionally subdirectories at +the top level of the `sysdeps' directory tree. For example, +`sysdeps/sparc' and `sysdeps/m68k'. These contain files specific to +those machine architectures, but not specific to any particular +operating system. There might be subdirectories for specializations of +those architectures, such as `sysdeps/m68k/68020'. Code which is +specific to the floating-point coprocessor used with a particular +machine should go in `sysdeps/MACHINE/fpu'. + + There are a few directories at the top level of the `sysdeps' +hierarchy that are not for particular machine architectures. + +`generic' +`stub' + As described above (*note Porting::.), these are the two + subdirectories that every configuration implicitly uses after all + others. + +`ieee754' + This directory is for code using the IEEE 754 floating-point + format, where the C type `float' is IEEE 754 single-precision + format, and `double' is IEEE 754 double-precision format. Usually + this directory is referred to in the `Implies' file in a machine + architecture-specific directory, such as `m68k/Implies'. + +`posix' + This directory contains implementations of things in the library in + terms of POSIX.1 functions. This includes some of the POSIX.1 + functions themselves. Of course, POSIX.1 cannot be completely + implemented in terms of itself, so a configuration using just + `posix' cannot be complete. + +`unix' + This is the directory for Unix-like things. *Note Porting to + Unix::. `unix' implies `posix'. There are some special-purpose + subdirectories of `unix': + + `unix/common' + This directory is for things common to both BSD and System V + release 4. Both `unix/bsd' and `unix/sysv/sysv4' imply + `unix/common'. + + `unix/inet' + This directory is for `socket' and related functions on Unix + systems. The `inet' top-level subdirectory is enabled by + `unix/inet/Subdirs'. `unix/common' implies `unix/inet'. + +`mach' + This is the directory for things based on the Mach microkernel + from CMU (including the GNU operating system). Other basic + operating systems (VMS, for example) would have their own + directories at the top level of the `sysdeps' hierarchy, parallel + to `unix' and `mach'. + +Porting the GNU C Library to Unix Systems +----------------------------------------- + + Most Unix systems are fundamentally very similar. There are +variations between different machines, and variations in what +facilities are provided by the kernel. But the interface to the +operating system facilities is, for the most part, pretty uniform and +simple. + + The code for Unix systems is in the directory `unix', at the top +level of the `sysdeps' hierarchy. This directory contains +subdirectories (and subdirectory trees) for various Unix variants. + + The functions which are system calls in most Unix systems are +implemented in assembly code in files in `sysdeps/unix'. These files +are named with a suffix of `.S'; for example, `__open.S'. Files ending +in `.S' are run through the C preprocessor before being fed to the +assembler. + + These files all use a set of macros that should be defined in +`sysdep.h'. The `sysdep.h' file in `sysdeps/unix' partially defines +them; a `sysdep.h' file in another directory must finish defining them +for the particular machine and operating system variant. See +`sysdeps/unix/sysdep.h' and the machine-specific `sysdep.h' +implementations to see what these macros are and what they should do. + + The system-specific makefile for the `unix' directory (that is, the +file `sysdeps/unix/Makefile') gives rules to generate several files +from the Unix system you are building the library on (which is assumed +to be the target system you are building the library *for*). All the +generated files are put in the directory where the object files are +kept; they should not affect the source tree itself. The files +generated are `ioctls.h', `errnos.h', `sys/param.h', and `errlist.c' +(for the `stdio' section of the library). + +Contributors to the GNU C Library +================================= + + The GNU C library was written almost entirely by Roland McGrath, who +now maintains it. Some parts of the library were contributed or worked +on by other people. + + * The `getopt' function and related code were written by Richard + Stallman, David J. MacKenzie, and Roland McGrath. + + * Most of the math functions are taken from 4.4 BSD; they have been + modified only slightly to work with the GNU C library. The + Internet-related code (most of the `inet' subdirectory) and several + other miscellaneous functions and header files have been included + with little or no modification. + + All code incorporated from 4.4 BSD is under the following + copyright: + + Copyright (C) 1991 Regents of the University of California. + All rights reserved. + + Redistribution and use in source and binary forms, with or + without modification, are permitted provided that the + following conditions are met: + + 1. Redistributions of source code must retain the above + copyright notice, this list of conditions and the + following disclaimer. + + 2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the + following disclaimer in the documentation and/or other + materials provided with the distribution. + + 3. All advertising materials mentioning features or use of + this software must display the following acknowledgement: + This product includes software developed by the + University of California, Berkeley and its + contributors. + + 4. Neither the name of the University nor the names of its + contributors may be used to endorse or promote products + derived from this software without specific prior + written permission. + + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT + SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF + THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY + OF SUCH DAMAGE. + + * The random number generation functions `random', `srandom', + `setstate' and `initstate', which are also the basis for the + `rand' and `srand' functions, were written by Earl T. Cohen for + the University of California at Berkeley and are copyrighted by the + Regents of the University of California. They have undergone minor + changes to fit into the GNU C library and to fit the ANSI C + standard, but the functional code is Berkeley's. + + * The merge sort function `qsort' was written by Michael J. Haertel. + + * The quick sort function used as a fallback by `qsort' was written + by Douglas C. Schmidt. + + * The memory allocation functions `malloc', `realloc' and `free' and + related code were written by Michael J. Haertel. + + * Fast implementations of many of the string functions (`memcpy', + `strlen', etc.) were written by Torbjorn Granlund. + + * Some of the support code for Mach is taken from Mach 3.0 by CMU, + and is under the following copyright terms: + + Mach Operating System + Copyright (C) 1991,1990,1989 Carnegie Mellon University + All Rights Reserved. + + Permission to use, copy, modify and distribute this software + and its documentation is hereby granted, provided that both + the copyright notice and this permission notice appear in all + copies of the software, derivative works or modified + versions, and any portions thereof, and that both notices + appear in supporting documentation. + + CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS + IS" CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF + ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF + THIS SOFTWARE. + + Carnegie Mellon requests users of this software to return to + + Software Distribution Coordinator + School of Computer Science + Carnegie Mellon University + Pittsburgh PA 15213-3890 + + or `Software.Distribution@CS.CMU.EDU' any improvements or + extensions that they make and grant Carnegie Mellon the + rights to redistribute these changes. + + * The `tar.h' header file was written by David J. MacKenzie. + + * The port to the MIPS DECStation running Ultrix 4 + (`mips-dec-ultrix4') was contributed by Brendan Kehoe and Ian + Lance Taylor. + + * The DES encryption function `crypt' and related functions were + contributed by Michael Glad. + + * The `ftw' function was contributed by Ian Lance Taylor. + + * The code to support SunOS shared libraries was contributed by Tom + Quinn. + + * The `mktime' function was contributed by Noel Cragg. + + * The port to the Sequent Symmetry running Dynix version 3 + (`i386-sequent-bsd') was contributed by Jason Merrill. + + * The timezone support code is derived from the public-domain + timezone package by Arthur David Olson. + + * The Internet resolver code is taken directly from BIND 4.9.1, + which is under both the Berkeley copyright above and also: + + Portions Copyright (C) 1993 by Digital Equipment Corporation. + + Permission to use, copy, modify, and distribute this software + for any purpose with or without fee is hereby granted, + provided that the above copyright notice and this permission + notice appear in all copies, and that the name of Digital + Equipment Corporation not be used in advertising or publicity + pertaining to distribution of the document or software + without specific, written prior permission. + + THE SOFTWARE IS PROVIDED "AS IS" AND DIGITAL EQUIPMENT CORP. + DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + FITNESS. IN NO EVENT SHALL DIGITAL EQUIPMENT CORPORATION BE + LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION + WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + * The port to the DEC Alpha running OSF/1 (`alpha-dec-osf1') was + contributed by Brendan Kehoe, using some code written by Roland + McGrath. + + * The floating-point printing function used by `printf' and friends + was written by Roland McGrath and Torbjorn Granlund. The + multi-precision integer functions used in that function are taken + from GNU MP, which was contributed by Torbjorn Granlund. + + * The code to support Sun RPC is taken verbatim from Sun's + RPCSRC-4.0 distribution, and is covered by this copyright: + + Copyright (C) 1984, Sun Microsystems, Inc. + + Sun RPC is a product of Sun Microsystems, Inc. and is + provided for unrestricted use provided that this legend is + included on all tape media and as a part of the software + program in whole or part. Users may copy or modify Sun RPC + without charge, but are not authorized to license or + distribute it to anyone else except as part of a product or + program developed by the user. + + SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND + INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND + FITNESS FOR A PARTICULAR PURPOSE, OR ARISING FROM A COURSE OF + DEALING, USAGE OR TRADE PRACTICE. + + Sun RPC is provided with no support and without any + obligation on the part of Sun Microsystems, Inc. to assist in + its use, correction, modification or enhancement. + + SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT + TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY + PATENTS BY SUN RPC OR ANY PART THEREOF. + + In no event will Sun Microsystems, Inc. be liable for any + lost revenue or profits or other special, indirect and + consequential damages, even if Sun has been advised of the + possibility of such damages. + + Sun Microsystems, Inc. + 2550 Garcia Avenue + Mountain View, California 94043 + + * The port to SGI machines running Irix 4 (`mips-sgi-irix4') was + contributed by Tom Quinn. + + * The port of the Mach and Hurd code to the MIPS architecture + (`mips-ANYTHING-gnu') was contribued by Kazumoto Kojima. + diff --git a/Make-dist b/Make-dist new file mode 100644 index 00000000000..33e257b67c0 --- /dev/null +++ b/Make-dist @@ -0,0 +1,223 @@ +# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +dist: + +ifdef subdir +.. := ../ +else +.. := +endif + +include $(..)Makeconfig + +foo:=$(shell echo 'distribute=$(distribute)'>&2) +foo:=$(shell echo 'foobar=$(filter %.c %.S %.s %.h,$(distribute))'>&2) + +ifndef sysdep_dirs +# Find all sysdep directories. +export sysdep_dirs := $(shell find $(..)sysdeps -type d ! -name RCS -print) +else +# Defined by the parent. +sysdep_dirs := $(addprefix $(..),$(sysdep_dirs)) +endif + +sysdep-Subdir-files := $(wildcard $(addsuffix /Subdirs,$(sysdep_dirs))) +ifdef sysdep-Subdir-files +subdirs := $(sort $(subdirs) \ + $(shell sed -e 's/\#.*$$//' $(sysdep-Subdir-files))) +endif + + +# Makefiles can define `source_dirs' to list nonstandard directories +# where source files might be found. + +ifdef subdir +all-headers = $(headers) +else ++distinfo := $(shell MAKEFLAGS= MFLAGS= $(MAKE) -s no_deps=t \ + inhibit_interface_rules=t inhibit_mach_syscalls=t \ + subdirs='$(subdirs)' echo-distinfo | grep -v '^make') +foo:=$(shell echo>&2 '+distinfo=$(+distinfo)') +all-headers := $(patsubst +header+%,%,$(filter +header+%,$(+distinfo))) +# Ignore subdir headers without top-level indirections. +all-headers := $(sort $(headers) $(wildcard $(all-headers))) ++subdir-nodist := $(patsubst +nodist+%,%,$(filter +nodist+%,$(+distinfo))) ++subdir-headers := $(filter-out $(headers),$(all-headers)) +endif +foo:=$(shell echo 'IS THIS WORKING??? all-headers=$(all-headers)' >&2) + +# Find all sysdep sources and headers. ++maybe-sysdeps := $(sources) $(sources:.c=.s) $(sources:.c=.S) $(all-headers) \ + $(filter %.c %.S %.s %.h %.sub,$(distribute)) +foo:=$(shell echo '+maybe-sysdeps=$(+maybe-sysdeps)'>&2) +# Find all the files that have a stub or generic version. +try-sysdeps := $(foreach dir,$(..)sysdeps/stub $(..)sysdeps/generic,\ + $(addprefix $(dir)/,$(+maybe-sysdeps))) +foo:=$(shell echo 'try-sysdeps=$(try-sysdeps)'>&2) ++sysdeps := $(wildcard $(try-sysdeps)) +foo:=$(shell echo 'stub/generic +sysdeps=$(+sysdeps)'>&2) ++sysdep-names := $(sort $(notdir $(+sysdeps))) +foo:=$(shell echo '+sysdep-names=$(+sysdep-names)' >&2) + +# Now find all the sysdep versions of those files. ++sysdeps := $(wildcard $(foreach dir,$(sysdep_dirs) $(source_dirs),\ + $(addprefix $(dir)/, \ + $(+sysdep-names) \ + $(+sysdep-names:.c=.s) \ + $(+sysdep-names:.c=.S) \ + ))) + + +# Source and header files to go in the distribution tar file. + +.S.s := $(wildcard $(sources:.c=.S) $(sources:.c=.s)) +sources := $(filter-out $(addsuffix .c,$(basename $(.S.s))),$(sources)) $(.S.s) + ++out := $(patsubst %.S,%.c,$(+sysdep-names:.s=.c)) \ + $(addsuffix .c,$(sysdep_routines)) \ + $(+subdir-nodist) +#foo:=$(shell echo '+out=$(+out)' >&2; echo foofoo >&2) ++tsrcs := $(filter-out $(+out) $(addprefix %/,$(+out)), \ + $(sources) $(all-headers) $(distribute)) \ + $(+sysdeps) +foo:=$(shell echo made +tsrcs >&2) +foo:=$(shell echo generated='$(generated)' >&2) +generated := $(sort $(generated) $(generated:.S=.c) $(generated:.s=.c)) +foo:=$(shell echo now generated='$(generated)' >&2) ++tsrcs := $(sort $(filter-out $(generated),$(+tsrcs))) +foo:=$(shell echo '+tsrcs=$(+tsrcs)'>&2) +foo:=$(shell echo foobie, dammit! >&2) + +ifndef tardir +rel+vers := $(shell sed -n -e 's/^.*libc_release.*\"\([^"]*\)";$$/\1/p' \ + -e 's/^.*libc_version.*\"\([^"]*\)";$$/\1/p' \ + < $(..)version.c) +release := $(word 1,$(rel+vers)) +version := $(word 2,$(rel+vers)) +export tardir := glibc-$(version) +endif + +$(..)glibc-$(version): + ln -s . $@ + ++tsrcs := $(+tsrcs) \ + TAGS +.PHONY: TAGS +TAGS: $(..)MakeTAGS + $(MAKE) -f $< $@ -o subdir_TAGS + +ifdef subdir + +foo:=$(shell echo subdir foo >&2) + ++tsrcs := Makefile $(+tsrcs) \ + $(addsuffix .c,$(others) $(tests)) \ + $(wildcard $(addsuffix .input,$(tests)) \ + $(addsuffix .args,$(tests))) ++tardeps := $(strip $(+tsrcs)) ++tsrcs := $(addprefix $(tardir)/$(subdir)/,$(+tardeps)) + +verbose = v + +.PHONY: dist +dist: $(..)$(tardir) $(+tardeps) + @cd ..; if test -f dist.tar; then c=u; else c=c; fi; \ + $(+cmdecho) "cd ..; tar $${c}h$(verbose)f dist.tar ..."; \ + tar $${c}h$(verbose)f dist.tar $(+tsrcs) + +else # Parent makefile. + +# Find what other things sysdep directories want to distribute. + +foo:=$(shell echo parent foobie>&2) ++sysdep-distfiles := $(wildcard $(addsuffix /Dist,$(sysdep_dirs))) +foo:=$(shell echo +sysdep-distfiles='$(+sysdep-distfiles)'>&2) ++sysdep-dist := $(foreach file,$(+sysdep-distfiles),\ + $(addprefix $(dir $(file)), \ + $(shell sed -e 's/\#.*$$//' $(file)))) \ + $(+sysdep-distfiles) \ + $(sysdep-Subdir-files) +foo:=$(shell echo '+sysdep-dist=$(+sysdep-dist)' >&2) + +subdirs := $(filter-out crypt,$(subdirs)) + ++sysdep-tsrcs := $(wildcard $(foreach file,Makefile Implies \ + configure configure.in,\ + $(addsuffix /$(file),$(sysdep_dirs)))) \ + $(+sysdep-dist) + ++tsrcs := $(+tsrcs) $(+sysdep-tsrcs) + +define autoconf-it +autoconf $(ACFLAGS) $< > $@.new +mv -f $@.new $@ +test -d CVS && cvs commit -m'Regenerated: autoconf $(ACFLAGS) $<' $@ +endef + +configure: configure.in; $(autoconf-it) +%/configure: %/configure.in; $(autoconf-it) + +.PHONY: dist +dist: $(tardir).tar.gz $(tardir)-crypt.tar.gz + +$(tardir)-crypt.tar.gz: crypt/crypt.tar.gz + ln $< $@ +crypt/%: FORCE + $(MAKE) -C $(@D) $(@F) +FORCE: + +subdir_dist: dist.tar +dist.tar: $(tardir) $(+tsrcs) + tar chvf $@ $(addprefix $(tardir)/,$(filter-out $(tardir),$^)) + +$(tardir).tar: dist.tar subdir_dist + tar xfv $< -C /tmp | doschk + tar covf $@ -C /tmp $(tardir) + -rm -fr /tmp/$(tardir) & + +%.Z: % + compress -c $< > $@ + +%.gz: % + gzip -9 -v -c $< > $@ + +foo:=$(shell echo subdirs=$(subdirs) >&2) +dist-subdirs := $(addprefix dist-,$(subdirs)) # dist-manual +.PHONY: subdir_dist $(dist-subdirs) +subdir_dist: $(dist-subdirs) +$(dist-subdirs): + $(MAKE) -C $(patsubst dist-%,%,$@) dist + +# This is here instead of in Makefile so it can use $(release) and $(version). +README: README.template version.c + -rm -f $@ + sed -e 's/RELEASE/$(release)/' -e 's/VERSION/$(version)/' < $< > $@ +# Make it unwritable so I won't change it by mistake. + chmod 444 $@ + + +endif # Subdirectory vs. parent makefile + +# Get these things out of the environment because they take up lots of space. +unexport distribute generated + +# Fnord. +export inhibit_mach_syscalls=t +export no_deps=t +export inhibit_interface_rules=t diff --git a/MakeTAGS b/MakeTAGS new file mode 100644 index 00000000000..acea142bf6c --- /dev/null +++ b/MakeTAGS @@ -0,0 +1,107 @@ +# Make the TAGS files. + +# Copyright (C) 1992, 1994 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License +# as published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# Make this the default goal. +TAGS: + +ifdef subdir +.. := ../ +endif + +include $(..)Makeconfig + +ifndef tags_sources +ifeq ($(subdir),ctype) +# In most cases, we want the C source files to come before +# the header files so tags for optimizing #define's in the +# headers won't be put in the tags files, but for ctype, +# the functions are just backup for the #define's in the header. +tags_sources = $(all-headers) $(all-sources) +else # Not ctype. +tags_sources = $(all-sources) $(all-headers) +endif # ctype +endif # No tags_sources + +sysdep-dirs := $(addprefix $(sysdep_dir)/,$(sysdirs)) + +ifndef sysdep_dirs +# Find all sysdep directories. +sysdep_dirs := $(shell find $(..)sysdeps -type d ! -name RCS -print) +endif + +# Find all sysdep dirs there are, but putting the ones +# we are configured to use first and preserving their order. +all-dirs := $(objdir) \ + $(sysdep-dirs) \ + $(source_dirs) \ + $(filter-out $(sysdep-dirs),$(sysdep_dirs)) + +# Find all the subdirs there are, but putting the ones +# we are configured to use first and preserving their order. +ifndef subdir +subdirs := $(subdirs) \ + $(filter-out $(subdirs),\ + $(shell sed -e 's/\#.*$$//' \ + $(wildcard $(addsuffix /Subdirs,\ + $(all-dirs)))\ + /dev/null)) +all-dist = $(foreach Dist,$(wildcard $(all-dirs:%=%/Dist)),\ + $(addprefix $(Dist:%/Dist=%)/,\ + $(filter %.c %.h %.S %.s,\ + $(shell cat $(Dist))))) +tags_sources = $(all-sources) $(all-headers) $(all-dist) +endif + +# All different versions of $(sources), preserving the configured sysdep +# directory order. +all-sources = $(wildcard $(foreach file,$(sources),\ + $(file) \ + $(foreach dir,$(all-dirs),\ + $(dir)/$(file) \ + $(dir)/$(file:.c=.S) \ + $(dir)/$(file:.c=.s)))) + +all-headers = $(wildcard $(foreach file,$(headers),\ + $(file) \ + $(foreach dir,$(all-dirs),$(dir)/$(file)))) + +tags_sources := $(strip $(tags_sources)) + +TAGS: $(tags_sources) +ifdef subdir +ifdef tags_sources + $(ETAGS) -o $@ $^ +else +# No sources. Create a dummy file. + touch $@ +endif # tags_sources +else # parent +TAGS: subdir_TAGS +# Note that this uses the -i switch, and thus requires v19 etags. + $(ETAGS) -o $@ \ + $(subdirs:%=-i %/TAGS) \ + $(filter-out subdir_TAGS,$^) + +.PHONY: subdir_TAGS $(subdirs:%=%/TAGS) +subdir_TAGS: $(subdirs:%=%/TAGS) +$(subdirs:%=%/TAGS): + $(MAKE) -C $(@D) no_deps=t $(@F) + +endif # subdir diff --git a/Makeconfig b/Makeconfig new file mode 100644 index 00000000000..434f8b2d192 --- /dev/null +++ b/Makeconfig @@ -0,0 +1,358 @@ +# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# +# Makefile configuration options for the GNU C library. +# +ifneq (,) +This makefile requires GNU Make. +endif + +ifneq "$(origin +included-Makeconfig)" "file" + ++included-Makeconfig := yes + +ifdef subdir +.. := ../ +endif + +# If config.make exists, the source directory was configured, +# so don't try to be clever and find another directory to build in. +ifneq (,$(wildcard $(..)config.make)) +ARCH = +machine = +else # Not configured. +ifndef ARCH +ifdef machine +ARCH = $(machine) +endif # machine +endif # ARCH +endif # config.make + +# Directory for object files and libc.a. If this is not defined, the +# object files live in the subdirectories where their sources live, and +# libc.a lives in the parent directory (this probably doesn't work any +# more). +ifdef ARCH +ifeq ($(filter /%,$(ARCH)),) +objdir := $(..)$(ARCH) +else +objdir = $(ARCH) +endif +endif + +# $(common-objdir) is the place to put objects and +# such that are not specific to a single subdir. +ifdef objdir +objpfx = $(objdir)/ +common-objpfx = $(objpfx) +common-objdir = $(objdir) +else +objpfx := +ifdef .. +common-objpfx = $(..) +common-objdir = .. +else +# This is a kludge. make wizards might grok. +common-objpfx = sysdeps/../ +common-objdir = . +endif +endif + +libc.a = $(common-objpfx)libc.a + + +# Get the values defined by options to `configure'. +include $(common-objpfx)config.make + +# Force the user to configure before making. +$(common-objpfx)config.make: + @echo The GNU C library has not been configured. >&2 + @echo Run \`configure\' to configure it before building. >&2 + @exit 1 + +# Get the user's configuration parameters. +ifneq ($(wildcard $(..)configparms),) +include $(..)configparms +endif +ifneq ($(objpfx),) +ifneq ($(wildcard $(objpfx)configparms),) +include $(objpfx)configparms +endif +endif + +sysdep_dir := $(..)sysdeps +export sysdep_dir := $(sysdep_dir) + +#### +#### These are the configuration variables. You can define values for +#### the variables below in the file `configparms'. +#### Do NOT edit this file. +#### + + +# Common prefix for machine-independent installation directories. +ifndef prefix +prefix = /usr/local +endif + +# Common prefix for machine-dependent installation directories. +ifndef exec_prefix +exec_prefix = $(prefix) +endif + +# Where to install the library and object files. +ifndef libdir +libdir = $(exec_prefix)/lib +endif + +# Prefix to put on files installed in $(libdir). For libraries `libNAME.a', +# the prefix is spliced between `lib' and the name, so the linker switch +# `-l$(libprefix)NAME' finds the library; for other files the prefix is +# just prepended to the whole file name. +ifndef libprefix +libprefix = +endif + +# Where to install the header files. +ifndef includedir +includedir = $(exec_prefix)/include +endif + +# Define if the library should install its own . +# Do this unless you are using version 2.2 or later of GCC. +ifndef stddef.h +stddef.h = stddef.h +endif + +# Where to install machine-independent data files. +# These are the timezone database, and eventually the locale database. +ifndef datadir +datadir = $(prefix)/share +endif + +# Where to install the timezone data files (which are machine-independent). +ifndef zonedir +zonedir = $(datadir)/zoneinfo +endif + +# Where to install programs. +ifndef bindir +bindir = $(exec_prefix)/bin +endif + +# Where to install administrative programs. +ifndef sbindir +sbindir = $(exec_prefix)/sbin +endif + +# Where to install the Info files. +ifndef infodir +infodir = $(prefix)/info +endif + +# Where to install default configuration files. These include the local +# timezone specification and network data base files. +ifndef sysconfdir +sysconfdir = $(prefix)/etc +endif + +# What timezone should be the installed default (e.g., US/Eastern). +# Run `make -C time echo-zonenames' to see a list of available zone names. +# The local timezone can be changed with `zic -l TIMEZONE' at any time. +ifndef localtime +localtime = Factory +endif + +# Where to install the "localtime" timezone file; this is the file whose +# contents $(localtime) specifies. If this is a relative pathname, it is +# relative to $(zonedir). It is a good idea to put this somewhere +# other than there, so the zoneinfo directory contains only universal data, +# localizing the configuration data elsewhere. +ifndef localtime-file +localtime-file = $(sysconfdir)/localtime +endif + +# What timezone's DST rules should be used when a POSIX-style TZ +# environment variable doesn't specify any rules. For 1003.1 compliance +# this timezone must use rules that are as U.S. federal law defines DST. +# Run `make -C time echo-zonenames' to see a list of available zone names. +# This setting can be changed with `zic -p TIMEZONE' at any time. +# If you want POSIX.1 compatibility, use `America/New_York'. +ifndef posixrules +posixrules = America/New_York +endif + +# Where to install the "posixrules" timezone file; this is file +# whose contents $(posixrules) specifies. If this is a relative +# pathname, it is relative to $(zonedir). +ifndef posixrules-file +posixrules-file = posixrules +endif + + +# Directory where your system's native header files live. +# This is used on Unix systems to generate some GNU libc header files. +ifndef sysincludedir +sysincludedir = /usr/include +endif + + +# Commands to install files. +ifndef INSTALL_DATA +INSTALL_DATA = $(INSTALL) -m 644 +endif +ifndef INSTALL_PROGRAM +INSTALL_PROGRAM = $(INSTALL) +endif +ifndef INSTALL +INSTALL = install +endif + + +# The name of the C compiler. +# If you've got GCC, and it works, use it. +ifeq ($(origin CC),default) +CC := gcc +endif + +# The name of the C compiler to use for compilations of programs to run on +# the host that is building the library. If you set CC to a +# cross-compiler, you must set this to the normal compiler. +ifndef BUILD_CC +BUILD_CC = $(CC) +endif + +# Default flags to pass the C compiler. +ifndef default_cflags +default_cflags := -g +endif + +# Flags to pass the C compiler when assembling preprocessed assembly code +# (`.S' files). On some systems the assembler doesn't understand the `#' line +# directives the preprocessor produces. If you have troubling compiling +# assembly code, try using -P here to suppress these directives. +ifndef asm-CPPFLAGS +asm-CPPFLAGS = +endif + +# Command for linking programs with the C library. +ifndef +link ++link = $(CC) -nostdlib $(LDFLAGS) -o $@ \ + $(common-objpfx)start.o $(^:lib=$(libc.a)) $(gnulib) $(libc.a) +endif +ifndef gnulib +gnulib := -lgcc +endif + +ifndef LD +LD := ld -X +endif + +ifndef RANLIB +RANLIB = ranlib +endif + +# Extra flags to pass to GCC. ++gccwarn := -Wall -Wwrite-strings -Wno-parentheses + +# This is the program that generates makefile +# dependencies from C source files. +ifndef +mkdep ++mkdep = $(CC) -M +endif + +# The program that makes Emacs-style TAGS files. +ETAGS := etags -T + +# The `m4' macro processor; this is used by sysdeps/sparc/Makefile (and +# perhaps others) to preprocess assembly code in some cases. +M4 = m4 + +#### +#### End of configuration variables. +#### + +# This tells some versions of GNU make before 3.63 not to export all variables. +.NOEXPORT: + +# We want to echo the commands we're running without +# umpteem zillion filenames along with it (we use `...' instead) +# but we don't want this echoing done when the user has said +# he doesn't want to see commands echoed by using -s. +ifneq "$(findstring s,$(MAKEFLAGS))" "" # if -s ++cmdecho := echo >/dev/null +else # not -s ++cmdecho := echo +endif # -s + +# These are the flags given to the compiler to tell +# it what sort of optimization and/or debugging output to do. +ifndef +cflags +# If `CFLAGS' was defined, use that. +ifdef CFLAGS ++cflags := $(filter-out -I%,$(CFLAGS)) +endif # CFLAGS +endif # +cflags + +# If none of the above worked, default to "-g". +ifeq "$(strip $(+cflags))" "" ++cflags := $(default_cflags) +endif # $(+cflags) == "" + +# If using gcc, add flags that only it will grok. +ifneq "$(findstring gcc,$(CC))" "" ++cflags := $(+cflags) $(+gccwarn) ++gcc-nowarn := -w +else ++gcc-nowarn := +endif # gcc + +# Don't duplicate options if we inherited variables from the parent. ++cflags := $(sort $(+cflags)) + + +# These are flags given to the C compiler to tell it to look for include +# files (including ones given in angle brackets) in the current directory +# and in the parent library source directory. +# `+sysdep-includes' will be defined by Makerules. ++includes = -I. $(filter-out -I,-I$(patsubst %/,%,$(..))) \ + $(includes) $(+sysdep-includes) $(last-includes) + + +# These are the variables that the implicit compilation rules use. +CPPFLAGS = $(+includes) $(defines) -include $(..)libc-symbols.h \ + $(sysdep-CPPFLAGS) +override CFLAGS = $(+cflags) $(sysdep-CFLAGS) + + +# This is the macro that the implicit linking rules use. +ifneq "$(filter -g,$(+cflags))" "" # -g is in $(+cflags) +LDFLAGS := -g +endif + ++gnu-stabs = $(shell echo>&2 '*** BARF ON ME') + +ifneq ($(BUILD_CC),$(CC)) +cross-compiling := yes +else +cross-compiling := no +endif + + +endif # Makeconfig not yet included diff --git a/Makefile b/Makefile new file mode 100644 index 00000000000..6a3fb17d4c2 --- /dev/null +++ b/Makefile @@ -0,0 +1,233 @@ +# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# +# Master Makefile for the GNU C library +# +ifneq (,) +This makefile requires GNU Make. +endif + + +# This is the default target; it makes everything except the tests. +.PHONY: all +all: lib others + +define autoconf-it +autoconf $(ACFLAGS) $< > $@.new +mv -f $@.new $@ +test -d CVS && cvs commit -m'Regenerated: autoconf $(ACFLAGS) $<' $@ +endef + +configure: configure.in; $(autoconf-it) +%/configure: %/configure.in; $(autoconf-it) + +include Makeconfig + +ifndef avoid-generated +include $(objpfx)sysd-dirs +define \n + + +endef +sysdep-subdirs := $(subst $(\n), ,$(sysdep-subdirs)) +endif + +# These are the subdirectories containing the library source. ++ansi_dirs := assert ctype locale math setjmp \ + signal stdio stdlib malloc string time ++posix_dirs := dirent grp pwd posix io termios ++other_dirs := resource socket misc gnulib $(wildcard crypt) manual csu +subdirs := $(strip $(+ansi_dirs) $(+posix_dirs) $(+other_dirs) \ + $(sysdep-subdirs)) +export subdirs := $(subdirs) # Benign, useless in GNU make before 3.63. + +# The mach and hurd subdirectories have many generated header files which +# the much of rest of the library depends on, so it is best to build them +# first (and mach before hurd, at that). The before-compile additions in +# sysdeps/{mach,hurd}/Makefile should make it reliably work for these files +# not to exist when making in other directories, but it will be slower that +# way with more somewhat expensive `make' invocations. +subdirs := $(filter mach,$(subdirs)) $(filter hurd,$(subdirs)) \ + $(filter-out mach hurd,$(subdirs)) + +# All initialization source files. ++subdir_inits := $(wildcard $(foreach dir,$(subdirs),$(dir)/init-$(dir).c)) +# All subdirectories containing initialization source files. ++init_subdirs := $(patsubst %/,%,$(dir $(+subdir_inits))) + + +# These are the targets that are made by making them in each subdirectory. ++subdir_targets := subdir_lib objects objs others subdir_mostlyclean \ + subdir_clean subdir_distclean subdir_realclean \ + tests subdir_lint.out \ + subdir_echo-headers subdir_echo-distinfo \ + subdir_install $(addprefix install-, \ + no-libc.a bin lib \ + data headers others) + +headers := features.h errno.h sys/errno.h errnos.h limits.h $(stddef.h) +aux = sysdep $(libc-init) version + +echo-headers: subdir_echo-headers + +# What to install. +install-others = $(includedir)/stubs.h + +ifeq (yes,$(gnu-ld)) +libc-init = set-init +else +libc-init = munch-init +$(objpfx)munch-init.c: munch.awk munch-tmpl.c $(+subdir_inits) + awk -f $< subdirs='$(+init_subdirs)' $(word 2,$^) > $@-t + mv -f $@-t $@ +generated := $(generated) munch-init.c +endif + + +include Makerules + +# Install from subdirectories too. +install: subdir_install + +lib-noranlib $(libc.a)(__.SYMDEF): subdir_lib + + +$(objpfx)sysd-dirs: $(+sysdir_pfx)config.make + (echo define sysdep-subdirs; \ + for dir in $(sysdirs); do \ + if [ -r $(sysdep_dir)/$$dir/Subdirs ]; then \ + sed 's/#.*$$//' $(sysdep_dir)/$$dir/Subdirs; \ + else true; \ + fi; \ + done; \ + echo endef) > $@-tmp + mv -f $@-tmp $@ + +# Makerules creates a file `stub-$(subdir)' for each subdirectory, which +# contains `#define __stub_FUNCTION' for each function which is a stub. +# Here we paste all of these together into . + +subdir-stubs := $(foreach dir,$(subdirs),$(common-objpfx)stub-$(dir)) + +# Since stubs.h is never needed when building the library, we simplify the +# hairy installation process by producing it in place only as the last part +# of the top-level `make install'. It depends on subdir_install, which +# iterates over all the subdirs; subdir_install in each subdir depends on +# the subdir's stubs file. Having more direct dependencies would result in +# extra iterations over the list for subdirs and many recursive makes. +$(includedir)/stubs.h: subdir_install + @rm -f $(objpfx)stubs.h + (echo '/* This file is automatically generated.';\ + echo ' It defines a symbol `__stub_FUNCTION'\'' for each function';\ + echo ' in the C library which is a stub, meaning it will fail';\ + echo ' every time called, usually setting errno to ENOSYS. */';\ + sort $(subdir-stubs)) > $(objpfx)stubs.h + $(INSTALL_DATA) $(objpfx)stubs.h $@ + rm -f $(objpfx)stubs.h + +# This makes the Info or DVI file of the documentation from the Texinfo source. +.PHONY: info dvi +info dvi: + $(MAKE) -C manual $@ + +# This makes all the subdirectory targets. + +# For each target, make it depend on DIR/target for each subdirectory DIR. +$(+subdir_targets): %: $(addsuffix /%,$(subdirs)) + +# Compute a list of all those targets. +all-subdirs-targets := $(foreach dir,$(subdirs),\ + $(addprefix $(dir)/,$(+subdir_targets))) + +# The action for each of those is to cd into the directory and make the +# target there. +$(all-subdirs-targets): + $(MAKE) -C $(@D) $(@F) + +.PHONY: $(+subdir_targets) $(all-subdirs-targets) + +# Targets to clean things up to various degrees. + +.PHONY: clean realclean distclean distclean-1 parent-clean parent-mostlyclean + +# Subroutines of all cleaning targets. +parent-mostlyclean: common-mostlyclean # common-mostlyclean is in Makerules. + -rm -f $(libc.a) $(addprefix $(objpfx),$(install-lib)) +parent-clean: parent-mostlyclean common-clean + -rm -f $(addprefix $(common-objpfx),$(common-generated)) + -rm -f $(addprefix $(+sysdir_pfx),sysd-Makefile sysd-dirs sysd-rules) + +clean: parent-clean +# This is done this way rather than having `subdir_clean' be a +# dependency of this target so that libc.a will be removed before the +# subdirectories are dealt with and so they won't try to remove object +# files from it when it's going to be removed anyway. + @$(MAKE) subdir_clean no_deps=t +mostlyclean: parent-mostlyclean + @$(MAKE) subdir_mostlyclean no_deps=t + +# The realclean target is just like distclean for the parent, but we want +# the subdirs to know the difference in case they care. +realclean distclean: parent-clean +# This is done this way rather than having `subdir_distclean' be a +# dependency of this target so that libc.a will be removed before the +# subdirectories are dealt with and so they won't try to remove object +# files from it when it's going to be removed anyway. + @$(MAKE) distclean-1 no_deps=t distclean-1=$@ avoid-generated=yes + +# Subroutine of distclean and realclean. +distclean-1: subdir_$(distclean-1) + -rm -f $(config-generated) + -rm -f $(addprefix $(objpfx),config.status cache.cache) + -rm -f $(addprefix $(objpfx),config.make config-name.h) +ifdef objdir + -rm -f $(objpfx)Makefile +endif + -rm -f $(sysdep-$(distclean-1)) + +.PHONY: echo_subdirs +echo_subdirs:;@echo '$(subdirs)' + +.PHONY: echo-distinfo parent_echo-distinfo +echo-distinfo: parent_echo-distinfo subdir_echo-distinfo +parent_echo-distinfo: + @echo $(addprefix +header+,$(headers)) \ + $(addprefix +nodist+,$(generated)) + +# Make the distribution tarfile. + +distribute := README INSTALL NOTES COPYING.LIB COPYING ChangeLog NEWS \ + Makefile Makeconfig Makerules Rules Make-dist MakeTAGS \ + ansidecl.h mkinstalldirs move-if-change install-sh \ + configure configure.in aclocal.m4 config.sub config.guess\ + config.make.in config-name.in Makefile.in \ + munch-tmpl.c munch.awk sysdep.h set-hooks.h libc-symbols.h + +distribute := $(strip $(distribute)) +generated := $(generated) stubs.h + +README: README.template version.c ; # Make-dist should update README. + +define format-me +@rm -f $@ +makeinfo --no-validate --no-warn --no-headers $< -o $@ +-chmod a-w $@ +endef +INSTALL: manual/maint.texi; $(format-me) +NOTES: manual/creature.texi; $(format-me) diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 00000000000..6ec07a64c62 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,6 @@ +# Generated from $Id$. + +srcdir = @srcdir@ + +all .DEFAULT: + $(MAKE) -C $(srcdir) objdir=`pwd` $@ diff --git a/Makerules b/Makerules new file mode 100644 index 00000000000..76ed429e9d7 --- /dev/null +++ b/Makerules @@ -0,0 +1,544 @@ +# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# +# Common rules for making the GNU C library. This file is included +# by the top-level Makefile and by all subdirectory makefiles +# (through Rules). +# +ifneq (,) +This makefile requires GNU Make. +endif + + +ifdef subdir +.. := ../ +endif # subdir + +# If `sources' was defined by the parent makefile, undefine it so +# we will later get it from wildcard search in this directory. +ifneq "$(findstring env,$(origin sources))" "" +sources := +endif + +headers := $(headers) $(sysdep_headers) + +oPATH := $(PATH) +PATH := this definition should take precedence over $(oPATH) +ifeq ($(PATH),$(oPATH)) +You must not use the -e flag when building the GNU C library. +else +PATH := $(oPATH) +endif + +ifndef +included-Makeconfig +include $(..)Makeconfig +endif + +# `configure' writes a definition of `config-sysdirs' in `config.make'. +sysdirs = $(config-sysdirs) + ++sysdir_pfx = $(common-objpfx) + +export sysdirs := $(sysdirs) + ++sysdep_dirs := $(addprefix $(sysdep_dir)/,$(sysdirs)) +ifdef objdir ++sysdep_dirs := $(objdir) $(+sysdep_dirs) +endif + +# Add -I switches to get the right sysdep directories. +# `+includes' in Makeconfig references $(+sysdep-includes). ++sysdep-includes := $(addprefix -I,$(+sysdep_dirs)) + +# Include any system-specific makefiles. + +# This is here so things in sysdep Makefiles can easily depend on foo.h as +# appropriate and not worry about where foo.h comes from, which may be +# system dependent and not known by that Makefile. +vpath %.h $(subst $(empty) ,:,$(strip $(common-objpfx) \ + $(addprefix $(sysdep_dir)/,$(sysdirs)) \ + $(..))) + +ifeq ($(wildcard $(+sysdir_pfx)sysd-Makefile),) +# Don't do deps until this exists, because it might change the sources list. +no_deps=t +endif + +# Some sysdep makefiles use this to distinguish being included here from +# being included individually by a subdir makefile (hurd/Makefile needs this). +in-Makerules := yes + +ifndef avoid-generated +include $(+sysdir_pfx)sysd-Makefile +$(+sysdir_pfx)sysd-Makefile: $(+sysdir_pfx)config.make $(..)Makerules + -@rm -f $@T + (for dir in $(sysdirs); do \ + file=sysdeps/$$dir/Makefile; \ + if [ -f $(..)$$file ]; then \ + echo include "\$$(..)$$file"; \ + else true; fi; \ + done; \ + echo 'sysd-Makefile-done=t') > $@T + mv -f $@T $@ +endif + +# Reorder before-compile so that mach things come first, and hurd things +# second, before all else. The mach and hurd subdirectories have many +# generated header files which the much of rest of the library depends on, +# so it is best to build them first (and mach before hurd, at that). +before-compile := $(filter $(common-objpfx)mach% $(common-objpfx)hurd%,\ + $(before-compile)) \ + $(filter-out $(common-objpfx)mach% $(common-objpfx)hurd%,\ + $(before-compile)) + +# Remove existing files from `before-compile'. Things are added there when +# they must exist for dependency generation to work right, but once they +# exist there is no further need for every single file to depend on them, +# and those gratuitous dependencies result in many gratuitous +# recompilations. +before-compile := $(filter-out $(wildcard $(before-compile)),$(before-compile)) + +# Don't let any before-compile file be an intermediate and get removed. +ifdef before-compile +$(before-compile): +endif + +# Generate an ordered list of implicit rules which find the source files in +# each sysdep directory. The old method was to use vpath to search all the +# sysdep directories. However, that had the problem that a .S file in a +# later directory would be chosen over a .c file in an earlier directory, +# which does not preserve the desired sysdeps ordering behavior. + +# When making the list of .d files to include, we can't know which ones +# have source in .s files, and thus do not in fact need a .d file. +# So we must define rules to make .d files for .s files. +define make-dummy-dep +$(addprefix ln $(objpfx)dummy.d ,$(filter-out $(wildcard $@),$@)) +endef +$(objpfx)dummy.d: + echo '# .s files cannot contain includes, so they need no deps.' > $@ + +# It matters that this set of rules, for compiling from sources in +# the current directory (the $srcdir/$subdir) come before the +# generated sysdep rules in included from sysd-rules below. When +# compiling in the source tree, generated sources go into the current +# directory, and those should be chosen before any sources in sysdeps. +$(objpfx)%.o: %.S $(before-compile); $(compile-command.S) +$(objpfx)%.d: %.S $(before-compile); $(+make-deps) +$(objpfx)%.o: %.s $(before-compile); $(compile-command.s) +$(objpfx)%.d: %.s $(objpfx)dummy.d; $(make-dummy-dep) +$(objpfx)%.o: %.c $(before-compile); $(compile-command.c) +$(objpfx)%.d: %.c $(before-compile); $(+make-deps) + +# Omit the objpfx rules when building in the source tree, because +# objpfx is empty and so these rules just override the ones above. +ifdef objpfx +# Define first rules to find the source files in $(objpfx). +# Generated source files will end up there. +$(objpfx)%.o: $(objpfx)%.S $(before-compile); $(compile-command.S) +$(objpfx)%.d: $(objpfx)%.S $(before-compile); $(+make-deps) +$(objpfx)%.o: $(objpfx)%.s $(before-compile); $(compile-command.s) +$(objpfx)%.d: $(objpfx)%.s $(objpfx)dummy.d; $(make-dummy-dep) +$(objpfx)%.o: $(objpfx)%.c $(before-compile); $(compile-command.c) +$(objpfx)%.d: $(objpfx)%.c $(before-compile); $(+make-deps) +endif + +# System-dependent makefiles can put in `inhibit-sysdep-asm' wildcard +# patterns matching sysdep directories whose assembly source files should +# be suppressed. +ifdef inhibit-sysdep-asm +define open-check-inhibit-asm +case $$sysdir in $(subst $(empty) ,|,$(inhibit-sysdep-asm))) : ;; *) +endef +close-check-inhibit-asm = ;; esac +endif + +# Don't include sysd-rules until sysd-Makefile is already there and has been +# included. It might define inhibit-sysdep-asm, which would affect the +# contents of sysd-rules. +ifdef sysd-Makefile-done +include $(+sysdir_pfx)sysd-rules +endif +$(+sysdir_pfx)sysd-rules: $(+sysdir_pfx)config.make $(..)Makerules \ + $(wildcard $(foreach dir,$(sysdirs),\ + $(sysdep_dir)/$(dir)/Makefile)) + -@rm -f $@T + (for sysdir in $(sysdirs); do \ + dir="\$$(sysdep_dir)/$$sysdir"; \ + $(open-check-inhibit-asm) \ + echo "\$$(objpfx)%.o: $$dir/%.S \$$(before-compile); \ + \$$(compile-command.S)"; \ + echo "\$$(objpfx)%.d: $$dir/%.S \$$(before-compile); \ + \$$(+make-deps)"; \ + echo "\$$(objpfx)%.o: $$dir/%.s \$$(before-compile); \ + \$$(compile-command.s)"; \ + echo "\$$(objpfx)%.d: $$dir/%.s \$$(objpfx)dummy.d; \ + \$$(make-dummy-dep)" $(close-check-inhibit-asm); \ + echo "\$$(objpfx)%.o: $$dir/%.c \$$(before-compile); \ + \$$(compile-command.c)"; \ + echo "\$$(objpfx)%.d: $$dir/%.c \$$(before-compile); \ + \$$(+make-deps)"; \ + done) > $@T + mv -f $@T $@ + +ifndef compile-command.S +compile-command.S = $(compile.S) $(OUTPUT_OPTION) +endif +ifndef compile-command.s +compile-command.s = $(COMPILE.s) $< $(OUTPUT_OPTION) +endif +ifndef compile-command.c +compile-command.c = $(compile.c) $(OUTPUT_OPTION) +endif + +ifneq ($(filter %gcc,$(notdir $(firstword $(CC)))),) +# GCC can grok options after the file name, and it looks nicer that way. +compile.S = $(CC) $< -c $(CPPFLAGS) -DASSEMBLER $(asm-CPPFLAGS) +compile.c = $(CC) $< -c $(CFLAGS) $(CPPFLAGS) +else +compile.S = $(COMPILE.S) -DASSEMBLER $(asm-CPPFLAGS) $< +compile.c = $(COMPILE.c) $< +endif + +ifndef OUTPUT_OPTION +ifdef objpfx +# We need this for the output to go in the right place. It will default to +# empty if make was configured to work with a cc that can't grok -c and -o +# together. You can't compile the C library with such a compiler. +OUTPUT_OPTION = -o $@ +endif +endif + +S-CPPFLAGS = $(asm-CPPFLAGS) +define +make-deps +-@rm -f $@ +$(+mkdep) $< $(CPPFLAGS) $($(<:$*.%=%)-CPPFLAGS) | \ +sed -e 's,$*\.o,$(@:.d=.o) $@,' $(sed-remove-objpfx) > $(@:.d=.T) +mv -f $(@:.d=.T) $@ +endef +ifneq (,$(objpfx)) +sed-remove-objpfx = -e 's@ $(subst @,\@,$(objpfx))@ $$(objpfx)@g' \ + -e 's@^$(subst @,\@,$(objpfx))@$$(objpfx)@g' +endif + +# Figure out the source filenames in this directory. + +override sources := $(addsuffix .c,$(filter-out $(elided-routines),\ + $(routines) $(aux) \ + $(sysdep_routines))) +sysdep_routines := $(sysdep_routines) + +# This is the list of all object files, gotten by +# replacing every ".c" in `sources' with a ".o". +override objects := $(addprefix $(objpfx),$(sources:.c=.o)) + ++depfiles := $(strip $(sources:.c=.d) \ + $(patsubst %.o,%.d,$(filter %.o,$(extra-objs))) \ + $(addsuffix .d,$(others) $(tests))) ++depfiles := $(addprefix $(objpfx),\ + $(filter-out $(addsuffix .d,$(omit-deps)),\ + $(+depfiles))) + +$(objpfx)depend-$(subdir): Makefile +ifdef +depfiles + for file in $(+depfiles:$(objpfx)%=%); do \ + echo "include \$$(objpfx)$$file"; \ + done > $@-tmp + mv -f $@-tmp $@ +else + cp /dev/null $@ +endif + +ifneq ($(no_deps),t) +# Include the generated dependencies of the sources in this directory. +include $(objpfx)depend-$(subdir) +endif + +# Maximize efficiency by minimizing the number of rules. +.SUFFIXES: # Clear the suffix list. +# Add the suffixes we use. +.SUFFIXES: .a .o .S .s .c .h .d + +# Generic rule for making directories. +%/: +# mkdir isn't smart enough to strip a trailing /. + mkdir $(@:%/=%) + +# Make sure that object files are not removed +# when they are intermediates between sources and library members. +# This can go away with make v4. +.PRECIOUS: %.o + +# Make sure that the parent library archive is never removed. +.PRECIOUS: $(libc.a) + +# Use the verbose option of ar and tar when not running silently. +ifeq "$(findstring s,$(MAKEFLAGS))" "" # if not -s +verbose := v +else # -s +verbose := +endif # not -s + +ARFLAGS := r$(verbose) + +# This makes all the object files in the parent library archive. + +.PHONY: lib libobjs lib-noranlib +$(libc.a): $(libc.a)(__.SYMDEF) +lib: $(libc.a) + ++libobjs := $(patsubst %,$(libc.a)(%),$(notdir $(objects))) +libobjs: $(+libobjs) +lib-noranlib: libobjs + +# Define a pattern rule that will match many targets libc.%(foo.o), for +# each foo in $(objects) (% will just happen always to match `a'). This is +# the only way to define a rule that updates many targets at once with one +# sequence of commands. +ifdef objects +$(patsubst %,$(libc.a:a=)\%(%),$(notdir $(objects))): $(objpfx)stamp-$(subdir); +$(objpfx)stamp-$(subdir): $(objects) +# $(+libc_lock_open) +ifdef objdir + cd $(objdir); $(AR) cru$(verbose) libc.a $(patsubst $(objpfx)%,%,$^) +else + $(AR) cru$(verbose) $(..)libc.a $^ +endif +# $(+libc_lock_close) + touch $@ +endif + +$(libc.a)(__.SYMDEF): $(+libobjs) + $(RANLIB) $@ + +define +libc_lock_open +@. $(..)libc-lock-open +endef +define +libc_lock_close +@rm -f $(..)LOCK-libc.a +endef + +# This makes all the object files. +.PHONY: objects objs +objects objs: $(objects) $(addprefix $(objpfx),$(extra-objs)) + +# Installation. + +# $(install-lib) are installed from the object directory into $(libdir); +# files in $(install-lib) matching `lib%.a' are ranlib'd after installation +# unless they also appear in $(non-lib.a). $(install-data) are installed +# as they are into $(datadir). $(headers) are installed as they are in +# $(includedir). $(install-bin) and $(install-sbin) are installed from the +# object directory into $(bindir) and $(sbindir), respectively. +# $(install-others) are absolute path names of files to install; rules to +# install them are defined elsewhere. + +# The simple library name to install libc.a under. +# This could be defined by a sysdep Makefile. +ifndef libc-name +libc-name := c +endif + +define do-install +$(make-target-directory) +$(INSTALL_DATA) $< $@ +endef + +# Make the target directory if it doesn't exist. Because of make's +# directory cache, this will produce the `mkdir' command when the directory +# already exists, if it didn't exist at the start of the `make' run. The +# `-' prefix ignores errors from mkdir, so there will just be some +# gratuitous but harmless `File exists' messages. +define make-target-directory +$(addprefix -mkdir ,$(filter-out $(wildcard $(@D:%/=%)),$(@D:%/=%))) +endef + +# Any directory (parent or subdir) that has any object files to build +# should install libc.a; this way "make install" in a subdir is guaranteed +# to install everything it changes. +ifdef objects +install: $(libdir)/lib$(libprefix)$(libc-name).a +# We avoid depending on lib-noranlib because that makes the parent make +# subdir_lib in all the subdirs, when the make install run they do will +# update the library anyway. Running ranlib after installing makes the +# __.SYMDEF time stamp up to date, which avoids messages from some linkers. +# Depending on subdir_install gets all the subdirs to update the library, +# and is optimal for `make install' at top level. +$(libdir)/lib$(libprefix)$(libc-name).a: libobjs subdir_install + $(make-target-directory) + $(INSTALL_DATA) $(libc.a) $@ + $(RANLIB) $@ +endif + +ifdef install-bin +$(addprefix $(bindir)/,$(install-bin)): $(bindir)/%: $(objpfx)% + $(make-target-directory) + $(INSTALL_PROGRAM) $< $@ +endif +ifdef install-sbin +$(addprefix $(sbindir)/,$(install-sbin)): $(sbindir)/%: $(objpfx)% + $(make-target-directory) + $(INSTALL_PROGRAM) $< $@ +endif +ifdef install-lib +install-lib.a := $(filter lib%.a,$(install-lib)) +install-lib-non.a := $(filter-out lib%.a,$(install-lib)) +ifdef install-lib-non.a +$(addprefix $(libdir)/$(libprefix),$(install-lib-non.a)): \ + $(libdir)/$(libprefix)%: $(objpfx)% + $(do-install) +endif +ifdef install-lib.a +$(install-lib.a:lib%.a=$(libdir)/lib$(libprefix)%.a): \ + $(libdir)/lib$(libprefix)%.a: $(objpfx)lib%.a + $(do-install) + $(patsubst %,$(RANLIB) $@,$(filter-out $(non-lib.a),$( $@T + mv -f $@T $@ + +# Make the distribution tar file. + +.PHONY: dist +dist: distinfo $(..)Make-dist + $(MAKE) -f $< -f $(word 2,$^) $(Make-dist-args) + +dist: $(distribute) + +# We used to simply export all these variables, but that frequently made the +# environment get too large. Instead, we write all the information into +# a generated makefile fragment `distinfo', and then include it with -f in +# the sub-make that makes the distribution (above). +distinfo: Makefile $(..)Makerules + $(distinfo-vars) + mv -f $@.new $@ + +define distinfo-vars +rm -f $@.new +$(foreach var,subdir sources elided-routines headers distribute \ + dont_distribute generated others tests, +echo >> $@.new '$(var) := $($(var))') +echo >> $@.new 'sources := $$(sources) $$(addsuffix .c,$$(elided-routines))' +endef + +ifneq (,$(strip $(gpl2lgpl))) +ifneq (,$(wildcard $(..)gpl2lgpl.sed)) +# Snarf from the master source and frob the copying notice. +$(gpl2lgpl): %: $(..)gpl2lgpl.sed /home/gd/gnu/lib/% + sed -f $^ > $@-tmp +# So I don't edit them by mistake. + chmod a-w $@-tmp + mv -f $@-tmp $@ + test -d CVS && cvs commit -m'Updated from $^' $@ +endif +endif diff --git a/NEWS b/NEWS new file mode 100644 index 00000000000..21f0db5b16b --- /dev/null +++ b/NEWS @@ -0,0 +1,323 @@ +GNU C Library NEWS -- history of user-visible changes. 26 January 1995 + +Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +See the end for copying conditions. + +Please send GNU C library bug reports to bug-glibc@prep.ai.mit.edu. + +Version 1.10 + +* The library has changed from using GNU ld symbol aliases to using weak + symbols where available. The ELF object file format supports weak + symbols; GNU ld also supports weak symbols in the a.out format. (There + is also now support for other GNU ld extensions in ELF. Use the + `--with-elf' option to configure to indicate you have elf, and + `--with-gnu-ld' if using GNU ld.) This changed resulted in the deletion + of many files which contained only symbol aliases, reducing the size of + the source and the compiled library; many other files were renamed to + less cryptic names previously occupied by the symbol alias files. + +* The pgrp functions have been regularized, slightly incompatibly but much + less confusingly. The core functions are now `getpgid' and `setpgid', + which take arguments for the PID to operate on; the POSIX.1 `getpgrp' (no + argument) and BSD `setpgrp' (identical to `setpgid') functions are + provided for compatibility. There is no longer an incompatible `getpgrp' + with an argument declared under _BSD_SOURCE; no BSD code uses it. + +* The new header file and suite of functions simplify programs that + operate on directory trees. This code comes from 4.4 BSD. + +* Converted to Autoconf version 2, so `configure' has more options. + Run `configure --help' to see the details. + +* The resolver code has been updated from the BIND-4.9.3-BETA14 release. + +* The new function `malloc_find_object_address' finds the starting address + of a malloc'd block, given any address within the block. This can be + useful for debugging. + +* The new functions `strtoq' and `strtouq' parse integer values from + strings, like `strtol' and `strtoul', but they return `long long int' and + `unsigned long long int' values, respectively (64-bit quantities). + +* There is a new malloc debugging hook `__memalign_hook'. + +* There are new typedefs `ushort' for `unsigned short int' and `uint' for + `unsigned int' in . These are for compatibility only and + their use is discouraged. + +* The `-lmcheck' library to enable standard malloc debugging hooks is now + done differently, so that it works even without GNU ld. + +Version 1.09 + +* For cross-compilation you should now set `BUILD_CC' instead of `HOST_CC'. + +* New header file and new functions `getfsspec', `getfsent' and + friends, for parsing /etc/fstab. This code comes from 4.4 BSD. + +* The new function `daemon' from 4.4 BSD is useful for server programs that + want to put themselves in the background. + +* Joel Sherrill has contributed support for several standalone boards that + run without an operating system. + +* `printf', `scanf' and friends now accept a `q' type modifier for long + long int as well as `ll'. Formats using these might be `%qu' or `%lld'. + +* All of the code taken from BSD (notably most of the math and networking + routines) has been updated from the BSD 4.4-Lite release. + +* The resolver code has been updated from the BIND-4.9.3-BETA9 release. + +* The new functions `getdomainname' and `setdomainname' fetch or change the + YP/NIS domain name. These are system calls which exist on systems which + have YP (aka NIS). + +* The time zone data files have been updated for the latest international + conventions. + +* The SunRPC programs `portmap' and `rpcinfo' are now installed in + $(sbindir) (usually /usr/local/sbin) instead of $(bindir). + +Version 1.08 + +* The C library now includes support for Sun RPC, from Sun's free + RPCSRC-4.0 distribution. The `portmap', `rpcinfo', and `rpcgen' programs + are included. (There is still no support for YP.) + +* Tom Quinn has contributed a port of the C library to SGI machines running + Irix 4 (mips-sgi-irix4). + +* The new `lockf' function is a simplified interface to the locking + facilities of `fcntl', included for compatibility. + +* New time functions `timegm', `timelocal', and `dysize' for compatibility. + +* New header file and new function `ftime' for compatibility. + +* New header files and and new function `poll' for + compatibility. + +* The error message printed by `assert' for a failed assertion now includes + the name of the program (if using GNU ld) and the name of the calling + function (with versions of GCC that support this). + +* The `psignal' function is now declared in , not . + +* The library now includes the header file and memory + management functions `mmap', `munmap', `mprotect', `msync', and + `madvise', on systems that support those facilities. + +* The interface for `mcheck' has changed slightly: the function called to + abort the program when an allocation inconsistency is detected now takes + an argument that indicates the type of failure. The new function + `mprobe' lets you request a consistency check for a particular block at + any time (checks are normally done only when you call `free' or `realloc' + on a block). + +* It is now possible to easily cross-compile the C library, building on one + system a library to run on another machine and/or operating system. All + you need to do is set the variable `HOST_CC' in `configparms' to the + native compiler for programs to run on the machine you are building on (a + few generator programs are used on Unix systems); set `CC' to the + cross-compiler. + +* The new function `fexecve' (only implemented on the GNU system) executes + a program file given a file descriptor already open on the file. + +Version 1.07 + +* Brendan Kehoe has contributed most of a port to the DEC Alpha + running OSF/1 (alpha-dec-osf1). He says it is 75% complete. + +* You can set the variable `libprefix' in `configparms' to specify a prefix + to be prepended to installed library files; this makes it easy to install + the GNU C library to be linked as `-lgnuc' or whatever. + +* The new `stpncpy' is a cross between `stpcpy' and `strncpy': It + copies a limited number of characters from a string, and returns the + address of the last character written. + +* You no longer need to check for whether the installed `stddef.h' is + compatible with the GNU C library. configure now checks for you. + +* You can now define a per-stream `fileno' function to convert the + stream's cookie into an integral file descriptor. + +* ``malloc (0)'' no longer returns a null pointer. Instead, it + allocates zero bytes of storage, and returns a unique pointer which + you can pass to `realloc' or `free'. The behavior is undefined if + you dereference this pointer. + +* The C library now runs on Sony NEWS m68k machines running either + NewsOS 3 or NewsOS 4. + +* The new `syscall' function is a system-dependent primitive function + for invoking system calls. It has the canonical behavior on Unix + systems, including unreliable return values for some calls (such as + `pipe', `fork' and `getppid'). + +* The error code `EWOULDBLOCK' is now obsolete; it is always defined + to `EAGAIN', which is the preferred name. On systems whose kernels + use two distinct codes, the C library now translates EWOULDBLOCK to + EAGAIN in every system call function. + +Version 1.06 + +* The GNU C Library Reference Manual is now distributed with the library. + `make dvi' will produce a DVI file of the printed manual. + `make info' will produce Info files that you can read on line using C-h i + in Emacs or the `info' program. + Please send comments on the manual to bug-glibc-manual@prep.ai.mit.edu. + +* The library now supports SVR4 on i386s (i386-unknown-sysv4). + +* Brendan Kehoe has contributed a port to Sun SPARCs running Solaris 2. + +* Jason Merrill has contributed a port to the Sequent Symmetry running + Dynix version 3 (i386-sequent-dynix). + +* The library has been ported to i386s running SCO 3.2.4 (also known as SCO + ODT 2.0; i386-unknown-sco3.2.4) or SCO 3.2 (i386-unknown-sco3.2). + +* New function `memory_warnings' lets you arrange to get warnings when + malloc is running out of memory to allocate, like Emacs gives you. + +* The C library now contains the relocating allocator used in Emacs 19 for + its editing buffers. This allocator (ralloc) minimizes allocation + overhead and fragmentation by moving allocated regions around whenever it + needs to. You always refer to a ralloc'd region with a "handle" (a + pointer to a pointer--an object of type `void **'). + +* There is a new `printf' format: `%m' gives you the string corresponding + to the error code in `errno'. + +* In `scanf' formats, you can now use `%as' or `%a[' to do the normal `%s' + or `%[' conversion, but instead of filling in a fixed-sized buffer you + pass, the `a' modifier says to fill in a `char **' you pass with a + malloc'd string. + +* The `fnmatch' function supports the new flag bits `FNM_LEADING_DIR' and + `FNM_CASEFOLD'. `FNM_LEADING_DIR' lets a pattern like `foo*' match a + name like `foo/bar'. `FNM_CASEFOLD' says to ignore case in matching. + +* `mkstemp' is a traditional Unix function to atomically create and open a + uniquely-named temporary file. + +Version 1.05 + +* The standard location for the file that says what the local timezone is + has changed again. It is now `/usr/local/etc/localtime' (or more + precisely, `${prefix}/etc/localtime') rather than `/etc/localtime'. + +* The distribution no longer contains any files with names longer than 14 + characters. + +* `struct ttyent' has two new flag bits: TTY_TRUSTED and TTY_CONSOLE. + These are set by the new `trusted' and `console' keywords in `/etc/ttys'. + +* New functions `ttyslot' and `syslog' from 4.4 BSD. + +Version 1.04 + +* The configuration process has changed quite a bit. The `configure' + script is now used just like the configuration scripts for other GNU + packages. The `sysdeps' directory hierarchy is much rearranged. + The file `INSTALL' explains the new scheme in detail. + +* The header files no longer need to be processed into ANSI C and + traditional C versions. There is just one set of files to install, and + it will work with ANSI or old C compilers (including `gcc -traditional'). + +* Brendan Kehoe and Ian Lance Taylor have ported the library to the + MIPS DECStation running Ultrix 4. + +* The Sun 4 startup code (crt0) can now properly load SunOS 4 shared libraries. + Tom Quinn contributed the initial code. The GNU C library can NOT yet be + made itself into a shared library. + +* Yet further improved support for the i386, running 4.3 BSD-like systems + (such as Mach 3 with the Unix single-server), or System V. + +* New function `strncasecmp' to do case-insensitive string comparison + with limited length. + +* New function `strsep' is a reentrant alternative to `strtok'. + +* New functions `scandir' and `alphasort' for searching directories. + +* New function `setenv' is a better interface to `putenv'. + +* Ian Lance Taylor has contributed an implementation of the SVID `ftw' + function for traversing a directory tree. + +* The GNU obstack package is now also part of the C library. + The new function `open_obstack_stream' creates a stdio stream that + writes onto an obstack; `obstack_printf' and `obstack_vprintf' do + formatted output directly to an obstack. + +* Miscellaneous new functions: reboot, nice, sigaltstack (4.4 BSD only), + cfmakeraw, getusershell, getpass, swab, getttyent, seteuid, setegid. + +* `FNM_FILE_NAME' is another name for `FNM_PATHNAME', used with `fnmatch'. + +* The new functions `strfry' and `memfrob' do mysterious and wonderful + things to your strings. + +* There are some new test programs: test-fseek, testmb, and testrand. + +* Some work has been done to begin porting the library to 4.4 BSD and Linux. + These ports are not finished, but are a good starting place for really + supporting those systems. + +* `/etc/localtime' is now the standard location for the file that says what + the local timezone is, rather than `/usr/local/lib/zoneinfo/localtime'. + This follows the general principle that `/etc' is the place for all local + configuration files. + +* The C library header files now use `extern "C"' when used by the C++ + compiler, so the C library should now work with C++ code. + +* The header file is gone. now declares bcopy, + bcmp, bzero, and ffs. + +* Mike Haertel (of GNU e?grep and malloc fame) has written a new sorting + function which uses the `merge sort' algorithm, and is said to be + significantly faster than the old GNU `qsort' function. Merge sort is + now the standard `qsort' function. The new algorithm can require a lot + of temporary storage; so, the old sorting function is called when the + required storage is not available. + +* The C library now includes Michael Glad's Ultra Fast Crypt, which + provides the Unix `crypt' function, plus some other entry points. + Because of the United States export restriction on DES implementations, + we are distributing this code separately from the rest of the C library. + There is an extra distribution tar file just for crypt; it is called + `glibc-VERSION-crypt.tar.Z', e.g. `glibc-1.04-crypt.tar.Z'. You can just + unpack the crypt distribution along with the rest of the C library and + build; you can also build the library without getting crypt. Users + outside the USA can get the crypt distribution via anonymous FTP from + ftp.uni-c.dk [129.142.6.74], or another archive site outside the U.S. + +* The code and header files taken from 4.4 BSD have been updated with the + latest files released from Berkeley. + +---------------------------------------------------------------------- +Copyright information: + +Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc. + + Permission is granted to anyone to make or distribute verbatim copies + of this document as received, in any medium, provided that the + copyright notice and this permission notice are preserved, + thus giving the recipient permission to redistribute in turn. + + Permission is granted to distribute modified versions + of this document, or of portions of it, + under the above conditions, provided also that they + carry prominent notices stating who last changed them. + +Local variables: +version-control: never +end: diff --git a/NOTES b/NOTES new file mode 100644 index 00000000000..2af653c5f9d --- /dev/null +++ b/NOTES @@ -0,0 +1,95 @@ +Feature Test Macros +------------------- + + The exact set of features available when you compile a source file +is controlled by which "feature test macros" you define. + + If you compile your programs using `gcc -ansi', you get only the +ANSI C library features, unless you explicitly request additional +features by defining one or more of the feature macros. *Note GNU CC +Command Options: (gcc.info)Invoking GCC, for more information about GCC +options. + + You should define these macros by using `#define' preprocessor +directives at the top of your source code files. These directives +*must* come before any `#include' of a system header file. It is best +to make them the very first thing in the file, preceded only by +comments. You could also use the `-D' option to GCC, but it's better +if you make the source files indicate their own meaning in a +self-contained way. + + - Macro: _POSIX_SOURCE + If you define this macro, then the functionality from the POSIX.1 + standard (IEEE Standard 1003.1) is available, as well as all of the + ANSI C facilities. + + - Macro: _POSIX_C_SOURCE + If you define this macro with a value of `1', then the + functionality from the POSIX.1 standard (IEEE Standard 1003.1) is + made available. If you define this macro with a value of `2', + then both the functionality from the POSIX.1 standard and the + functionality from the POSIX.2 standard (IEEE Standard 1003.2) are + made available. This is in addition to the ANSI C facilities. + + - Macro: _BSD_SOURCE + If you define this macro, functionality derived from 4.3 BSD Unix + is included as well as the ANSI C, POSIX.1, and POSIX.2 material. + + Some of the features derived from 4.3 BSD Unix conflict with the + corresponding features specified by the POSIX.1 standard. If this + macro is defined, the 4.3 BSD definitions take precedence over the + POSIX definitions. + + Due to the nature of some of the conflicts between 4.3 BSD and + POSIX.1, you need to use a special "BSD compatibility library" + when linking programs compiled for BSD compatibility. This is + because some functions must be defined in two different ways, one + of them in the normal C library, and one of them in the + compatibility library. If your program defines `_BSD_SOURCE', you + must give the option `-lbsd-compat' to the compiler or linker when + linking the program, to tell it to find functions in this special + compatibility library before looking for them in the normal C + library. + + - Macro: _SVID_SOURCE + If you define this macro, functionality derived from SVID is + included as well as the ANSI C, POSIX.1, and POSIX.2 material. + + - Macro: _GNU_SOURCE + If you define this macro, everything is included: ANSI C, POSIX.1, + POSIX.2, BSD, SVID, and GNU extensions. In the cases where POSIX.1 + conflicts with BSD, the POSIX definitions take precedence. + + If you want to get the full effect of `_GNU_SOURCE' but make the + BSD definitions take precedence over the POSIX definitions, use + this sequence of definitions: + + #define _GNU_SOURCE + #define _BSD_SOURCE + #define _SVID_SOURCE + + Note that if you do this, you must link your program with the BSD + compatibility library by passing the `-lbsd-compat' option to the + compiler or linker. *Note:* If you forget to do this, you may get + very strange errors at run time. + + We recommend you use `_GNU_SOURCE' in new programs. If you don't +specify the `-ansi' option to GCC and don't define any of these macros +explicitly, the effect is the same as defining `_GNU_SOURCE'. + + When you define a feature test macro to request a larger class of +features, it is harmless to define in addition a feature test macro for +a subset of those features. For example, if you define +`_POSIX_C_SOURCE', then defining `_POSIX_SOURCE' as well has no effect. +Likewise, if you define `_GNU_SOURCE', then defining either +`_POSIX_SOURCE' or `_POSIX_C_SOURCE' or `_SVID_SOURCE' as well has no +effect. + + Note, however, that the features of `_BSD_SOURCE' are not a subset of +any of the other feature test macros supported. This is because it +defines BSD features that take precedence over the POSIX features that +are requested by the other macros. For this reason, defining +`_BSD_SOURCE' in addition to the other feature test macros does have an +effect: it causes the BSD features to take priority over the conflicting +POSIX features. + diff --git a/README b/README new file mode 100644 index 00000000000..b9b43e3f4d3 --- /dev/null +++ b/README @@ -0,0 +1,67 @@ +This directory contains the version 1.09.5 test release of the GNU C Library. +Many bugs have been fixed since the last release. +Some bugs surely remain. + +As of this release, the GNU C library has been ported to the following +configurations: + + alpha-dec-osf1 + i386-bsd4.3 + i386-force_cpu386-none + i386-gnu (for Hurd development only) + i386-isc2.2 + i386-isc3 + i386-sco3.2 + i386-sco3.2v4 + i386-sequent-bsd + i386-sysv + i386-sysv4 + i960-nindy960-none + m68k-hp-bsd4.3 + m68k-mvme135-none + m68k-mvme136-none + m68k-sony-newsos3 + m68k-sony-newsos4 + m68k-sun-sunos4 + mips-dec-ultrix4 + mips-sgi-irix4 + sparc-sun-solaris2 + sparc-sun-sunos4 + +Porting the library is not hard. If you are interested in doing a port, +please get on the mailing list by sending electronic mail to +bug-glibc-request@prep.ai.mit.edu. + +The GNU C library now includes Michael Glad's Ultra Fast Crypt, which +provides the Unix `crypt' function, plus some other entry points. +Because of the United States export restriction on DES implementations, +we are distributing this code separately from the rest of the C +library. There is an extra distribution tar file just for crypt; it is +called `glibc-1.09.5-crypt.tar.gz'. You can just unpack the crypt +distribution along with the rest of the C library and build; you can +also build the library without getting crypt. Users outside the USA +can get the crypt distribution via anonymous FTP from ftp.uni-c.dk +[129.142.6.74], or another archive site outside the USA. Archive +maintainers are encouraged to copy this distribution to their archives +outside the USA. Please get it from ftp.uni-c.dk; transferring this +distribution from prep.ai.mit.edu (or any other site in the USA) to a +site outside the USA is in violation of US export laws. + +See the file INSTALL to find out how to configure, build, install, and port +the GNU C library. + +The GNU C Library is completely documented by the Texinfo manual found +in the `manual/' subdirectory. The manual is still being updated and +contains some known errors and omissions; we regret that we do not have +the resources to work on the manual as much as we would like. Please +send comments on the manual to bug-glibc-manual@prep.ai.mit.edu, and +not to the library bug-reporting address. + +The file NOTES contains a description of the feature-test macros used +in the GNU C library, explaining how you can tell the library what +facilities you want it to make available. + +Send bug reports to bug-glibc@prep.ai.mit.edu. + +The GNU C Library is free software. See the file COPYING.LIB for copying +conditions. diff --git a/README.template b/README.template new file mode 100644 index 00000000000..6cd5ffab91f --- /dev/null +++ b/README.template @@ -0,0 +1,67 @@ +This directory contains the version VERSION test release of the GNU C Library. +Many bugs have been fixed since the last release. +Some bugs surely remain. + +As of this release, the GNU C library has been ported to the following +configurations: + + alpha-dec-osf1 + i386-bsd4.3 + i386-force_cpu386-none + i386-gnu (for Hurd development only) + i386-isc2.2 + i386-isc3 + i386-sco3.2 + i386-sco3.2v4 + i386-sequent-bsd + i386-sysv + i386-sysv4 + i960-nindy960-none + m68k-hp-bsd4.3 + m68k-mvme135-none + m68k-mvme136-none + m68k-sony-newsos3 + m68k-sony-newsos4 + m68k-sun-sunos4 + mips-dec-ultrix4 + mips-sgi-irix4 + sparc-sun-solaris2 + sparc-sun-sunos4 + +Porting the library is not hard. If you are interested in doing a port, +please get on the mailing list by sending electronic mail to +bug-glibc-request@prep.ai.mit.edu. + +The GNU C library now includes Michael Glad's Ultra Fast Crypt, which +provides the Unix `crypt' function, plus some other entry points. +Because of the United States export restriction on DES implementations, +we are distributing this code separately from the rest of the C +library. There is an extra distribution tar file just for crypt; it is +called `glibc-VERSION-crypt.tar.gz'. You can just unpack the crypt +distribution along with the rest of the C library and build; you can +also build the library without getting crypt. Users outside the USA +can get the crypt distribution via anonymous FTP from ftp.uni-c.dk +[129.142.6.74], or another archive site outside the USA. Archive +maintainers are encouraged to copy this distribution to their archives +outside the USA. Please get it from ftp.uni-c.dk; transferring this +distribution from prep.ai.mit.edu (or any other site in the USA) to a +site outside the USA is in violation of US export laws. + +See the file INSTALL to find out how to configure, build, install, and port +the GNU C library. + +The GNU C Library is completely documented by the Texinfo manual found +in the `manual/' subdirectory. The manual is still being updated and +contains some known errors and omissions; we regret that we do not have +the resources to work on the manual as much as we would like. Please +send comments on the manual to bug-glibc-manual@prep.ai.mit.edu, and +not to the library bug-reporting address. + +The file NOTES contains a description of the feature-test macros used +in the GNU C library, explaining how you can tell the library what +facilities you want it to make available. + +Send bug reports to bug-glibc@prep.ai.mit.edu. + +The GNU C Library is free software. See the file COPYING.LIB for copying +conditions. diff --git a/Rules b/Rules new file mode 100644 index 00000000000..2d33edcbc41 --- /dev/null +++ b/Rules @@ -0,0 +1,128 @@ +# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# +# Rules for making a subdirectory in the GNU C library. +# Each subdirectory Makefile defines some variables and includes this. +# +ifneq (,) +This makefile requires GNU Make. +endif + +all: # Don't let the default goal come from Makeconfig. + +include ../Makeconfig + +ifndef subdir +Each subdirectory makefile must define the `subdir' variable. +endif +# This is benign and useless in GNU make before 3.63. +export subdir := $(subdir) + +# This is the default target; it makes the library and auxiliary programs. +.PHONY: all +all: lib others + +ifneq "$(findstring env,$(origin headers))" "" +headers := +endif + +ifneq "$(findstring env,$(origin generated))" "" +generated := +endif + +ifeq "$(strip $(headers))" "" +ifneq "$(wildcard $(subdir).h)" "" +override headers := $(subdir).h +endif +endif + +include ../Makerules + +.PHONY: subdir_lib +subdir_lib: lib-noranlib + +# Some subdirs need to install a dummy library. +# They can use "$(objpfx)libfnord.a: $(dep-dummy-lib); $(make-dummy-lib)". +dep-dummy-lib = $(objpfx)dummy.o +define make-dummy-lib +$(AR) cr$(verbose) $@ $< +endef +$(objpfx)dummy.o: + @rm -f $(@:.o=.c) + echo 'void __dummy__ () { }' > $(@:.o=.c) + $(CC) -c $(@:.o=.c) -o $@ + +# This makes all the auxilliary and test programs. + +.PHONY: others tests +others: $(addprefix $(objpfx),$(others)) +ifeq ($(cross-compiling),yes) +tests: $(addprefix $(objpfx),$(tests)) +else +tests: $(tests:%=$(objpfx)%.out) +endif + +ifneq "$(strip $(others) $(tests))" "" +$(addprefix $(objpfx),$(others) $(tests)): %: %.o $(libc.a) + $(+link) +endif + +ifneq "$(strip $(tests))" "" +# These are the implicit rules for making test outputs +# from the test programs and whatever input files are present. +$(objpfx)%.out: $(objpfx)% %.args %.input + $(dir $<)$(notdir $<) `cat $(word 2,$^)` < $(word 3,$^) > $@ +$(objpfx)%.out: $(objpfx)% %.args + $(dir $<)$(notdir $<) `cat $(word 2,$^)` > $@ +$(objpfx)%.out: $(objpfx)% %.input + $(dir $<)$(notdir $<) < $(word 2,$^) > $@ +$(objpfx)%.out: $(objpfx)% + $(dir $<)$(notdir $<) > $@ +endif # tests + +.PHONY: distclean realclean subdir_distclean subdir_realclean \ + subdir_clean subdir_mostlyclean +subdir_mostlyclean: mostlyclean +subdir_clean: clean +subdir_distclean: distclean +subdir_realclean: realclean +realclean: distclean +distclean: clean + +.PHONY: subdir_echo-headers +subdir_echo-headers: echo-headers + +.PHONY: subdir_echo-distinfo +subdir_echo-distinfo: + @echo $(addprefix +header+,$(headers)) \ + $(addprefix +nodist+,$(generated) $(dont_distribute)) + +# We want to install everything except the library itself, but update all +# our portions of the library because the parent make will install it later +# (likewise the stubs file). +.PHONY: subdir_install +subdir_install: install-no-libc.a lib-noranlib stubs + +.PHONY: subdir_TAGS subdir_dist +subdir_TAGS: TAGS +subdir_dist: dist + +# Convenient target to update all the generated source files. +.PHONY: generated +generated: $(addprefix $(objpfx),$(generated)) diff --git a/a.out.h b/a.out.h new file mode 100644 index 00000000000..9582d72ba01 --- /dev/null +++ b/a.out.h @@ -0,0 +1 @@ +#include diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 00000000000..1d48b8f875b --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,32 @@ +dnl We define the macro GLIBC_PROVIDES to do an AC_PROVIDE for each macro +dnl which appears in configure.in before the sysdep configure scripts are run. +dnl Each sysdep configure.in does GLIBC_PROVIDES first, to avoid any +dnl AC_REQUIREs or AC_BEFOREs duplicating their code. +dnl +define(AC_FD_MSG,4)dnl Autoconf lossage. +AC_DEFUN([GLIBC_PROVIDES], [dnl +AC_PROVIDE([AC_PROG_INSTALL])dnl +AC_PROVIDE([AC_PROG_RANLIB])dnl +AC_PROVIDE([AC_PROG_CC])dnl +AC_PROVIDE([AC_PROG_CPP])dnl +# This file is generated from configure.in by Autoconf. DO NOT EDIT! +])dnl +dnl +dnl Check for a symbol +dnl +AC_DEFUN(AC_CHECK_SYMBOL, [dnl +AC_MSG_CHECKING(for $1) +AC_CACHE_VAL(ac_cv_check_symbol_$1, [dnl +AC_TRY_LINK(, +changequote(,)dnl +extern char *$1[]; puts(*$1);, +changequote([,])dnl + ac_cv_check_symbol_$1=yes, ac_cv_check_symbol_$1=no)]) +if test "$ac_cv_check_symbol_$1" = yes; then +changequote(,)dnl + ac_tr_symbol=`echo $1 | tr '[a-z]' '[A-Z]'` +changequote([,])dnl + AC_DEFINE_UNQUOTED(HAVE_${ac_tr_symbol}) +fi +AC_MSG_RESULT($ac_cv_check_symbol_$1)])dnl +dnl diff --git a/alloca.h b/alloca.h new file mode 100644 index 00000000000..34eeeab78e8 --- /dev/null +++ b/alloca.h @@ -0,0 +1 @@ +#include diff --git a/ansidecl.h b/ansidecl.h new file mode 100644 index 00000000000..c351653b62b --- /dev/null +++ b/ansidecl.h @@ -0,0 +1,108 @@ +/* Copyright (C) 1991 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 1, or (at your option) +any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with the GNU C Library; see the file COPYING. If not, write to +the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* ANSI and traditional C compatibility macros + + ANSI C is assumed if __STDC__ is #defined. + + Macro ANSI C definition Traditional C definition + ----- ---- - ---------- ----------- - ---------- + PTR `void *' `char *' + LONG_DOUBLE `long double' `double' + CONST `const' `' + VOLATILE `volatile' `' + SIGNED `signed' `' + PTRCONST `void *const' `char *' + + DEFUN(name, arglist, args) + + Defines function NAME. + + ARGLIST lists the arguments, separated by commas and enclosed in + parentheses. ARGLIST becomes the argument list in traditional C. + + ARGS list the arguments with their types. It becomes a prototype in + ANSI C, and the type declarations in traditional C. Arguments should + be separated with `AND'. For functions with a variable number of + arguments, the last thing listed should be `DOTS'. + + DEFUN_VOID(name) + + Defines a function NAME, which takes no arguments. + + EXFUN(name, prototype) + + Is used in an external function declaration. + In ANSI C it is `NAMEPROTOTYPE' (so PROTOTYPE should be enclosed in + parentheses). In traditional C it is `NAME()'. + For a function that takes no arguments, PROTOTYPE should be `(NOARGS)'. + + For example: + extern int EXFUN(printf, (CONST char *format DOTS)); + int DEFUN(fprintf, (stream, format), + FILE *stream AND CONST char *format DOTS) { ... } + void DEFUN_VOID(abort) { ... } +*/ + +#ifndef _ANSIDECL_H + +#define _ANSIDECL_H 1 + + +/* Every source file includes this file, + so they will all get the switch for lint. */ +/* LINTLIBRARY */ + + +#ifdef __STDC__ + +#define PTR void * +#define PTRCONST void *CONST +#define LONG_DOUBLE long double + +#define AND , +#define NOARGS void +#define CONST const +#define VOLATILE volatile +#define SIGNED signed +#define DOTS , ... + +#define EXFUN(name, proto) name proto +#define DEFUN(name, arglist, args) name(args) +#define DEFUN_VOID(name) name(NOARGS) + +#else /* Not ANSI C. */ + +#define PTR char * +#define PTRCONST PTR +#define LONG_DOUBLE double + +#define AND ; +#define NOARGS +#define CONST +#define VOLATILE +#define SIGNED +#define DOTS + +#define EXFUN(name, proto) name() +#define DEFUN(name, arglist, args) name arglist args; +#define DEFUN_VOID(name) name() + +#endif /* ANSI C. */ + + +#endif /* ansidecl.h */ diff --git a/arpa/ftp.h b/arpa/ftp.h new file mode 100644 index 00000000000..c716d681563 --- /dev/null +++ b/arpa/ftp.h @@ -0,0 +1 @@ +#include diff --git a/arpa/inet.h b/arpa/inet.h new file mode 100644 index 00000000000..65733b618c0 --- /dev/null +++ b/arpa/inet.h @@ -0,0 +1 @@ +#include diff --git a/arpa/nameser.h b/arpa/nameser.h new file mode 100644 index 00000000000..944fe732a6e --- /dev/null +++ b/arpa/nameser.h @@ -0,0 +1 @@ +#include diff --git a/arpa/telnet.h b/arpa/telnet.h new file mode 100644 index 00000000000..742c04cfe3f --- /dev/null +++ b/arpa/telnet.h @@ -0,0 +1 @@ +#include diff --git a/arpa/tftp.h b/arpa/tftp.h new file mode 100644 index 00000000000..21d5197f24c --- /dev/null +++ b/arpa/tftp.h @@ -0,0 +1 @@ +#include diff --git a/assert.h b/assert.h new file mode 100644 index 00000000000..e2fa7020c11 --- /dev/null +++ b/assert.h @@ -0,0 +1 @@ +#include diff --git a/assert/Makefile b/assert/Makefile new file mode 100644 index 00000000000..76b75bb2f83 --- /dev/null +++ b/assert/Makefile @@ -0,0 +1,26 @@ +# Copyright (C) 1991, 1994 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# +# Sub-makefile for assert portion of the library. +# +subdir := assert + +routines := assert assert-perr + +include ../Rules diff --git a/assert/assert-perr.c b/assert/assert-perr.c new file mode 100644 index 00000000000..b0436ad5758 --- /dev/null +++ b/assert/assert-perr.c @@ -0,0 +1,55 @@ +/* Copyright (C) 1994, 1995 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include +#include + + +extern const char *__assert_program_name; /* In assert.c. */ + +/* This function, when passed an error number, a filename, and a line + number, prints a message on the standard error stream of the form: + a.c:10: foobar: Unexpected error: Computer bought the farm + It then aborts program execution via a call to `abort'. */ + +#ifdef FATAL_PREPARE_INCLUDE +#include FATAL_PREPARE_INCLUDE +#endif + +void +__assert_perror_fail (int errnum, + const char *file, unsigned int line, + const char *function) +{ +#ifdef FATAL_PREPARE + FATAL_PREPARE; +#endif + + /* Print the message. */ + (void) fprintf (stderr, "%s%s%s:%u: %s%sUnexpected error: %s.\n", + __assert_program_name ? __assert_program_name : "", + __assert_program_name ? ": " : "", + file, line, + function ? function : "", function ? ": " : "", + strerror (errnum)); + (void) fflush (stderr); + + abort (); +} diff --git a/assert/assert.c b/assert/assert.c new file mode 100644 index 00000000000..9da9e22be40 --- /dev/null +++ b/assert/assert.c @@ -0,0 +1,83 @@ +/* Copyright (C) 1991, 1994, 1995 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include +#include +#include + + +CONST char *__assert_program_name; + +/* This function, when passed a string containing an asserted + expression, a filename, and a line number, prints a message + on the standard error stream of the form: + a.c:10: foobar: Assertion `a == b' failed. + It then aborts program execution via a call to `abort'. */ + +#ifdef FATAL_PREPARE_INCLUDE +#include FATAL_PREPARE_INCLUDE +#endif + +void +DEFUN(__assert_fail, (assertion, file, line, function), + CONST char *assertion AND + CONST char *file AND unsigned int line AND CONST char *function) +{ +#ifdef FATAL_PREPARE + FATAL_PREPARE; +#endif + + /* Print the message. */ + (void) fprintf (stderr, "%s%s%s:%u: %s%sAssertion `%s' failed.\n", + __assert_program_name ? __assert_program_name : "", + __assert_program_name ? ": " : "", + file, line, + function ? function : "", function ? ": " : "", + assertion); + (void) fflush (stderr); + + abort (); +} + +#ifdef HAVE_GNU_LD + +#include + +static void +DEFUN(set_progname, (argc, argv, envp), + int argc AND char **argv AND char **envp) +{ + char *p; + + if (argv && argv[0]) + { + p = strrchr (argv[0], '/'); + if (p == NULL) + __assert_program_name = argv[0]; + else + __assert_program_name = p + 1; + } + + (void) &set_progname; /* Avoid "defined but not used" warning. */ +} + +text_set_element (__libc_subinit, set_progname); + +#endif diff --git a/assert/assert.h b/assert/assert.h new file mode 100644 index 00000000000..7f7fc7f733a --- /dev/null +++ b/assert/assert.h @@ -0,0 +1,98 @@ +/* Copyright (C) 1991, 1992, 1994, 1995 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the, 1992 Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +/* + * ANSI Standard: 4.2 DIAGNOSTICS + */ + +#ifdef _ASSERT_H + +#undef _ASSERT_H +#undef assert + +#endif /* assert.h */ + +#define _ASSERT_H 1 +#include + +/* void assert (int expression); + + If NDEBUG is defined, do nothing. + If not, and EXPRESSION is zero, print an error message and abort. */ + +#ifdef NDEBUG + +#define assert(expr) ((void) 0) + +/* void assert_perror (int errnum); + + If NDEBUG is defined, do nothing. If not, and ERRNUM is not zero, print an + error message with the error text for ERRNUM and abort. + (This is a GNU extension.) */ + +#ifdef __USE_GNU +#define assert_perror(errnum) ((void) 0) +#endif + +#else /* Not NDEBUG. */ + +#include + +__BEGIN_DECLS + +/* This prints an "Assertion failed" message and aborts. */ +extern void __assert_fail __P ((__const char *__assertion, + __const char *__file, + unsigned int __line, + __const char *__function)) + __attribute__ ((__noreturn__)); + +/* Likewise, but prints the error text for ERRNUM. */ +extern void __assert_perror_fail __P ((int __errnum, + __const char *__file, + unsigned int __line, + __const char *__function)) + __attribute__ ((__noreturn__)); + +__END_DECLS + +#define assert(expr) \ + ((void) ((expr) || \ + (__assert_fail (__STRING(expr), \ + __FILE__, __LINE__, __ASSERT_FUNCTION), 0))) + +#ifdef __USE_GNU +#define assert_perror(errnum) \ + ((void) ((errnum) && (__assert_perror_fail ((errnum), \ + __FILE__, __LINE__, \ + __ASSERT_FUNCTION), 0))) +#endif + +/* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__' + which contains the name of the function currently being defined. + This is broken in G++ before version 2.6. */ +#if (!defined (__GNUC__) || __GNUC__ < 2 || \ + __GNUC_MINOR__ < (defined (__cplusplus) ? 6 : 4)) +#define __ASSERT_FUNCTION ((__const char *) 0) +#else +#define __ASSERT_FUNCTION __PRETTY_FUNCTION__ +#endif + + +#endif /* NDEBUG. */ + diff --git a/bare/Makefile b/bare/Makefile new file mode 100644 index 00000000000..588a713c83b --- /dev/null +++ b/bare/Makefile @@ -0,0 +1,55 @@ +# Copyright (C) 1994 Free Software Foundation, Inc. +# Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil), +# On-Line Applications Research Corporation. +# +# This file is part of the GNU C Library. +# +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. +# +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +subdir := bare + +bare-routines := brdinit console strtsupp +routines = $(bare-routines) +elided-routines = $(bare-routines) +extra-objs = $(bare-routines:%=%.o) + +install-lib = lib$(config-vendor).a + +include ../Rules + +# +# For bare targets, the $(config-vendor) is the name of the board. +# We will place the board dependent code ONLY in a library which +# is board dependent. This way many target boards can share a +# single libc.a. To resolve all symbols and successfully link +# a program, the application must link against libc.a and libMY_TARGET.a. +# For example, the target specific library for the Motorola MVME135 +# board will be named libmvme135.a. To link a program for the +# MVME135, one must link against -lc and -lmvme135. +# + +lib: $(objpfx)lib$(config-vendor).a + +$(objpfx)lib$(config-vendor).a: $(bare-routines:%=$(objpfx)%.o) +# This library is small enough that it's simplest to recreate the archive +# from scratch each time. + rm -f $@ +ifdef objdir + cd $(objdir); $(AR) cq$(verbose) $@ $(^:$(objpfx)%=%) +else + $(AR) cq$(verbose) $@ $^ +endif + $(RANLIB) $@ diff --git a/conf/portability.h b/conf/portability.h new file mode 100644 index 00000000000..ab41b5d977b --- /dev/null +++ b/conf/portability.h @@ -0,0 +1,20 @@ +/* This file is used by some of the resolver code in inet/ that + comes from BIND 4.9. I have written this file instead of modifying + those things not to use it so that I can later drop in replacement + files from future BIND distributions without change. */ + +#include +#include +#include + +/* Some BIND code decides it can omit the definitions of some functions + if BSD is defined to some value. That might make sense when the BIND + code is augmenting or replacing an existing system library, but we can + never omit a function here, since we are defining the system library. */ + +#undef BSD + +/* Some code does stupid compatibility kludges for SunOS braindeath + #ifdef sun. */ + +#undef sun diff --git a/config-name.in b/config-name.in new file mode 100644 index 00000000000..6380b09254e --- /dev/null +++ b/config-name.in @@ -0,0 +1,10 @@ +/* @configure_input@ -*- C -*- + Generated from $Id$. + + This is used only by the generic `uname' function for systems with no real + `uname' call. If this data is not correct, it does not matter much. */ + +#define UNAME_SYSNAME "@uname_sysname@" +#define UNAME_RELEASE "@uname_release@" +#define UNAME_VERSION "@uname_version@" +#define UNAME_MACHINE "@host_cpu@-@host_vendor@" diff --git a/config.guess b/config.guess new file mode 100755 index 00000000000..4d4e6944a82 --- /dev/null +++ b/config.guess @@ -0,0 +1,494 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# Written by Per Bothner . +# The master version of this file is at the FSF in /home/gd/gnu/lib. +# +# This script attempts to guess a canonical system name similar to +# config.sub. If it succeeds, it prints the system name on stdout, and +# exits with 0. Otherwise, it exits with 1. +# +# The plan is that this can be called by configure scripts if you +# don't specify an explicit system type (host/target name). +# +# Only a few systems have been added to this list; please add others +# (but try to keep the structure clean). +# + +# This is needed to find uname on a Pyramid OSx when run in the BSD universe. +# (ghazi@noc.rutgers.edu 8/24/94.) +if (test -f /.attbin/uname) >/dev/null 2>&1 ; then + PATH=$PATH:/.attbin ; export PATH +fi + +UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown +UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown +UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown +UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown + +trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15 + +# Note: order is significant - the case branches are not exclusive. + +case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + alpha:OSF1:V*:*) + # After 1.2, OSF1 uses "V1.3" for uname -r. + echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^V//'` + exit 0 ;; + alpha:OSF1:*:*) + # 1.2 uses "1.2" for uname -r. + echo alpha-dec-osf${UNAME_RELEASE} + exit 0 ;; + arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) + echo arm-acorn-riscix${UNAME_RELEASE} + exit 0;; + Pyramid*:OSx*:*:*) + if test "`(/bin/universe) 2>/dev/null`" = att ; then + echo pyramid-pyramid-sysv3 + else + echo pyramid-pyramid-bsd + fi + exit 0 ;; + sun4*:SunOS:5.*:*) + echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:6*:*) + # According to config.sub, this is the proper way to canonicalize + # SunOS6. Hard to guess exactly what SunOS6 will be like, but + # it's likely to be more like Solaris than SunOS4. + echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit 0 ;; + sun4*:SunOS:*:*) + case "`/usr/bin/arch -k`" in + Series*|S4*) + UNAME_RELEASE=`uname -v` + ;; + esac + # Japanese Language versions have a version number like `4.1.3-JL'. + echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + exit 0 ;; + sun3*:SunOS:*:*) + echo m68k-sun-sunos${UNAME_RELEASE} + exit 0 ;; + RISC*:ULTRIX:*:*) + echo mips-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + VAX*:ULTRIX*:*:*) + echo vax-dec-ultrix${UNAME_RELEASE} + exit 0 ;; + mips:*:5*:RISCos) + echo mips-mips-riscos${UNAME_RELEASE} + exit 0 ;; + m88k:CX/UX:7*:*) + echo m88k-harris-cxux7 + exit 0 ;; + m88k:*:4*:R4*) + echo m88k-motorola-sysv4 + exit 0 ;; + m88k:*:3*:R3*) + echo m88k-motorola-sysv3 + exit 0 ;; + AViiON:dgux:*:*) + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \ + -o ${TARGET_BINARY_INTERFACE}x = x ] ; then + echo m88k-dg-dgux${UNAME_RELEASE} + else + echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + exit 0 ;; + M88*:DolphinOS:*:*) # DolphinOS (SVR3) + echo m88k-dolphin-sysv3 + exit 0 ;; + M88*:*:R3*:*) + # Delta 88k system running SVR3 + echo m88k-motorola-sysv3 + exit 0 ;; + XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) + echo m88k-tektronix-sysv3 + exit 0 ;; + Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) + echo m68k-tektronix-bsd + exit 0 ;; + *:IRIX*:*:*) + echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + exit 0 ;; + ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. + echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id + exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' + i[34]86:AIX:*:*) + echo i386-ibm-aix + exit 0 ;; + *:AIX:2:3) + if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then + sed 's/^ //' << EOF >dummy.c + #include + + main() + { + if (!__power_pc()) + exit(1); + puts("powerpc-ibm-aix3.2.5"); + exit(0); + } +EOF + ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 + rm -f dummy.c dummy + echo rs6000-ibm-aix3.2.5 + elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then + echo rs6000-ibm-aix3.2.4 + else + echo rs6000-ibm-aix3.2 + fi + exit 0 ;; + *:AIX:*:4) + if /usr/sbin/lsattr -EHl proc0 | grep POWER >/dev/null 2>&1; then + IBM_ARCH=rs6000 + else + IBM_ARCH=powerpc + fi + if grep bos410 /usr/include/stdio.h >/dev/null 2>&1; then + IBM_REV=4.1 + elif grep bos411 /usr/include/stdio.h >/dev/null 2>&1; then + IBM_REV=4.1.1 + else + IBM_REV=4.${UNAME_RELEASE} + fi + echo ${IBM_ARCH}-ibm-aix${IBM_REV} + exit 0 ;; + *:AIX:*:*) + echo rs6000-ibm-aix + exit 0 ;; + ibmrt:4.4BSD:*|romp-ibm:BSD:*) + echo romp-ibm-bsd4.4 + exit 0 ;; + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and + echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + exit 0 ;; # report: romp-ibm BSD 4.3 + *:BOSX:*:*) + echo rs6000-bull-bosx + exit 0 ;; + DPX/2?00:B.O.S.:*:*) + echo m68k-bull-sysv3 + exit 0 ;; + 9000/[34]??:4.3bsd:1.*:*) + echo m68k-hp-bsd + exit 0 ;; + hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) + echo m68k-hp-bsd4.4 + exit 0 ;; + 9000/[3478]??:HP-UX:*:*) + case "${UNAME_MACHINE}" in + 9000/31? ) HP_ARCH=m68000 ;; + 9000/[34]?? ) HP_ARCH=m68k ;; + 9000/7?? | 9000/8?7 ) HP_ARCH=hppa1.1 ;; + 9000/8?? ) HP_ARCH=hppa1.0 ;; + esac + HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` + echo ${HP_ARCH}-hp-hpux${HPUX_REV} + exit 0 ;; + 3050*:HI-UX:*:*) + sed 's/^ //' << EOF >dummy.c + #include + int + main () + { + long cpu = sysconf (_SC_CPU_VERSION); + /* The order matters, because CPU_IS_HP_MC68K erroneously returns + true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct + results, however. */ + if (CPU_IS_PA_RISC (cpu)) + { + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; + case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; + default: puts ("hppa-hitachi-hiuxwe2"); break; + } + } + else if (CPU_IS_HP_MC68K (cpu)) + puts ("m68k-hitachi-hiuxwe2"); + else puts ("unknown-hitachi-hiuxwe2"); + exit (0); + } +EOF + ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 + rm -f dummy.c dummy + echo unknown-hitachi-hiuxwe2 + exit 0 ;; + 9000/7??:4.3bsd:*:* | 9000/8?7:4.3bsd:*:* ) + echo hppa1.1-hp-bsd + exit 0 ;; + 9000/8??:4.3bsd:*:*) + echo hppa1.0-hp-bsd + exit 0 ;; + hp7??:OSF1:*:* | hp8?7:OSF1:*:* ) + echo hppa1.1-hp-osf + exit 0 ;; + hp8??:OSF1:*:*) + echo hppa1.0-hp-osf + exit 0 ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) + echo c1-convex-bsd + exit 0 ;; + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) + echo c34-convex-bsd + exit 0 ;; + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) + echo c38-convex-bsd + exit 0 ;; + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) + echo c4-convex-bsd + exit 0 ;; + CRAY*X-MP:UNICOS:*:*) + echo xmp-cray-unicos + exit 0 ;; + CRAY*Y-MP:UNICOS:*:*) + echo ymp-cray-unicos + exit 0 ;; + CRAY-2:UNICOS:*:*) + echo cray2-cray-unicos + exit 0 ;; + hp3[0-9][05]:NetBSD:*:*) + echo m68k-hp-netbsd${UNAME_RELEASE} + exit 0 ;; + i[34]86:BSD/386:*:* | *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + exit 0 ;; + *:FreeBSD:*:*) + echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit 0 ;; + *:NetBSD:*:*) + echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + exit 0 ;; + *:GNU:*:*) + echo `echo ${UNAME_MACHINE}|sed -e 's,/.*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + exit 0 ;; + *:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux + exit 0 ;; +# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions +# are messed up and put the nodename in both sysname and nodename. + i[34]86:DYNIX/ptx:4*:*) + echo i386-sequent-sysv4 + exit 0 ;; + i[34]86:*:4.*:* | i[34]86:SYSTEM_V:4.*:*) + if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then + echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE} + else + echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE} + fi + exit 0 ;; + i[34]86:*:3.2:*) + if test -f /usr/options/cb.name; then + UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then + UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` + (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 + echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL + else + echo ${UNAME_MACHINE}-unknown-sysv32 + fi + exit 0 ;; + Intel:Mach:3*:*) + echo i386-unknown-mach3 + exit 0 ;; + paragon:*:*:*) + echo i860-intel-osf1 + exit 0 ;; + i860:*:4.*:*) # i860-SVR4 + if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then + echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + else # Add other i860-SVR4 vendors below as they are discovered. + echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + fi + exit 0 ;; + mini*:CTIX:SYS*5:*) + # "miniframe" + echo m68010-convergent-sysv + exit 0 ;; + M680[234]0:*:R3V[567]*:*) + test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; + 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0) + uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4.3 && exit 0 ;; + 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) + uname -p 2>/dev/null | grep 86 >/dev/null \ + && echo i486-ncr-sysv4 && exit 0 ;; + m680[234]0:LynxOS:2.2*:*) + echo m68k-lynx-lynxos${UNAME_RELEASE} + exit 0 ;; + mc68030:UNIX_System_V:4.*:*) + echo m68k-atari-sysv4 + exit 0 ;; + i[34]86:LynxOS:2.2*:*) + echo i386-lynx-lynxos${UNAME_RELEASE} + exit 0 ;; + TSUNAMI:LynxOS:2.2*:*) + echo sparc-lynx-lynxos${UNAME_RELEASE} + exit 0 ;; + rs6000:LynxOS:2.2*:*) + echo rs6000-lynx-lynxos${UNAME_RELEASE} + exit 0 ;; + RM*:SINIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; + *:SINIX-*:*:*) + if uname -p 2>/dev/null >/dev/null ; then + UNAME_MACHINE=`(uname -p) 2>/dev/null` + echo ${UNAME_MACHINE}-sni-sysv4 + else + echo ns32k-sni-sysv + fi + exit 0 ;; +esac + +#echo '(No uname command or uname output not recognized.)' 1>&2 +#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 + +cat >dummy.c < + printf ("m68k-sony-newsos%s\n", +#ifdef NEWSOS4 + "4" +#else + "" +#endif + ); exit (0); +#endif +#endif + +#if defined (__arm) && defined (__acorn) && defined (__unix) + printf ("arm-acorn-riscix"); exit (0); +#endif + +#if defined (hp300) && !defined (hpux) + printf ("m68k-hp-bsd\n"); exit (0); +#endif + +#if defined (NeXT) +#if !defined (__ARCHITECTURE__) +#define __ARCHITECTURE__ "m68k" +#endif + int version; + version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; + printf ("%s-next-nextstep%s\n", __ARCHITECTURE__, version==2 ? "2" : "3"); + exit (0); +#endif + +#if defined (MULTIMAX) || defined (n16) +#if defined (UMAXV) + printf ("ns32k-encore-sysv\n"); exit (0); +#else +#if defined (CMU) + printf ("ns32k-encore-mach\n"); exit (0); +#else + printf ("ns32k-encore-bsd\n"); exit (0); +#endif +#endif +#endif + +#if defined (__386BSD__) + printf ("i386-unknown-bsd\n"); exit (0); +#endif + +#if defined (sequent) +#if defined (i386) + printf ("i386-sequent-dynix\n"); exit (0); +#endif +#if defined (ns32000) + printf ("ns32k-sequent-dynix\n"); exit (0); +#endif +#endif + +#if defined (_SEQUENT_) + printf ("i386-sequent-ptx\n"); exit (0); +#endif + +#if defined (vax) +#if !defined (ultrix) + printf ("vax-dec-bsd\n"); exit (0); +#else + printf ("vax-dec-ultrix\n"); exit (0); +#endif +#endif + +#if defined (alliant) && defined (i860) + printf ("i860-alliant-bsd\n"); exit (0); +#endif + + exit (1); +} +EOF + +${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0 +rm -f dummy.c dummy + +# Apollos put the system type in the environment. + +test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } + +# Convex versions that predate uname can use getsysinfo(1) + +if [ -x /usr/convex/getsysinfo ] +then + case `getsysinfo -f cpu_type` in + c1*) + echo c1-convex-bsd + exit 0 ;; + c2*) + if getsysinfo -f scalar_acc + then echo c32-convex-bsd + else echo c2-convex-bsd + fi + exit 0 ;; + c34*) + echo c34-convex-bsd + exit 0 ;; + c38*) + echo c38-convex-bsd + exit 0 ;; + c4*) + echo c4-convex-bsd + exit 0 ;; + esac +fi + +#echo '(Unable to guess system type)' 1>&2 + +exit 1 diff --git a/config.h.in b/config.h.in new file mode 100644 index 00000000000..5761db2c5c6 --- /dev/null +++ b/config.h.in @@ -0,0 +1,30 @@ +/* Define if using GNU ld, with support for weak symbols in a.out, + and for symbol set and warning messages extensions in a.out and ELF. + This implies HAVE_WEAK_SYMBOLS; set by --with-gnu-ld. */ +#undef HAVE_GNU_LD + +/* Define if using ELF, which supports weak symbols. + This implies HAVE_WEAK_SYMBOLS; set by --with-elf. */ +#undef HAVE_ELF + +/* Define if weak symbols are available in the assembler and + linker being used. Set by --with-weak-symbols. */ +#undef HAVE_WEAK_SYMBOLS + +/* Define if using the GNU assembler, gas. */ +#undef HAVE_GNU_AS + +/* These symbols might be defined by some sysdeps configures. */ + +/* sysdeps/generic/configure.in */ +#undef HAVE_PSIGNAL + +/* sysdeps/unix/common/configure.in */ +#undef HAVE_SYS_SIGLIST +#undef HAVE__SYS_SIGLIST +#undef HAVE__CTYPE_ +#undef HAVE___CTYPE_ +#undef HAVE___CTYPE +#undef HAVE__CTYPE__ +#undef HAVE__CTYPE +#undef HAVE__LOCP diff --git a/config.make.in b/config.make.in new file mode 100644 index 00000000000..b2105e01af7 --- /dev/null +++ b/config.make.in @@ -0,0 +1,26 @@ +# @configure_input@ +# From $Id$. +# Don't edit this file. Put configuration parameters in configparms instead. + +config-machine = @host_cpu@ +config-vendor = @host_vendor@ +config-os = @host_os@ +config-sysdirs = @sysnames@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +config-defines = @DEFS@ +gnu-as = @gnu_as@ +gnu-ld = @gnu_ld@ +elf = @elf@ +weak-symbols = @weak@ + +CC = @CC@ +AR = @AR@ +RANLIB = @RANLIB@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ + +# More variables may be inserted below by configure. diff --git a/config.sub b/config.sub new file mode 100755 index 00000000000..667d3d23bea --- /dev/null +++ b/config.sub @@ -0,0 +1,816 @@ +#! /bin/sh +# Configuration validation subroutine script, version 1.1. +# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# This file is (in principle) common to ALL GNU software. +# The presence of a machine in this file suggests that SOME GNU software +# can handle that machine. It does not imply ALL GNU software can. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# Configuration subroutine to validate and canonicalize a configuration type. +# Supply the specified configuration type as an argument. +# If it is invalid, we print an error message on stderr and exit with code 1. +# Otherwise, we print the canonical config type on stdout and succeed. + +# This file is supposed to be the same for all GNU packages +# and recognize all the CPU types, system types and aliases +# that are meaningful with *any* GNU software. +# Each package is responsible for reporting which valid configurations +# it does not support. The user should be able to distinguish +# a failure to support a valid configuration from a meaningless +# configuration. + +# The goal of this file is to map all the various variations of a given +# machine specification into a single specification in the form: +# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM +# It is wrong to echo any other type of specification. + +if [ x$1 = x ] +then + echo Configuration name missing. 1>&2 + echo "Usage: $0 CPU-MFR-OPSYS" 1>&2 + echo "or $0 ALIAS" 1>&2 + echo where ALIAS is a recognized configuration type. 1>&2 + exit 1 +fi + +# First pass through any local machine types. +case $1 in + *local*) + echo $1 + exit 0 + ;; + *) + ;; +esac + +# Separate what the user gave into CPU-COMPANY and OS (if any). +basic_machine=`echo $1 | sed 's/-[^-]*$//'` +if [ $basic_machine != $1 ] +then os=`echo $1 | sed 's/.*-/-/'` +else os=; fi + +### Let's recognize common machines as not being operating systems so +### that things like config.sub decstation-3100 work. We also +### recognize some manufacturers as not being operating systems, so we +### can provide default operating systems below. +case $os in + -sun*os*) + # Prevent following clause from handling this invalid input. + ;; + -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ + -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ + -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ + -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ + -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ + -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp ) + os= + basic_machine=$1 + ;; + -hiux*) + os=-hiuxwe2 + ;; + -sco4) + os=-sco3.2v4 + basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` + ;; + -sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` + ;; + -sco3.2v[4-9]*) + # Don't forget version if it is 3.2v4 or newer. + basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` + ;; + -sco*) + os=-sco3.2v2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` + ;; + -isc) + os=-isc2.2 + basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` + ;; + -clix*) + basic_machine=clipper-intergraph + ;; + -isc*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'` + ;; + -lynx) + os=-lynxos + ;; + -ptx*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + ;; + -windowsnt*) + os=`echo $os | sed -e 's/windowsnt/winnt/'` + ;; +esac + +# Decode aliases for certain CPU-COMPANY combinations. +case $basic_machine in + # Recognize the basic CPU types without company name. + # Some are omitted here because they have special meanings below. + tahoe | i[345]86 | i860 | m68k | m68000 | m88k | ns32k | arm | pyramid \ + | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \ + | alpha | we32k | ns16k | clipper | sparclite | i370 | sh \ + | powerpc | sparc64 | 1750a | dsp16xx | mips64 | mipsel \ + | pdp11 | mips64el | mips64orion | mips64orionel \ + | sparc) + basic_machine=$basic_machine-unknown + ;; + # Object if more than one company name word. + *-*-*) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; + # Recognize the basic CPU types with company name. + vax-* | tahoe-* | i[345]86-* | i860-* | m68k-* | m68000-* | m88k-* \ + | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \ + | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ + | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \ + | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \ + | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \ + | pdp11-* | sh-* | powerpc-* | sparc64-* | mips64-* | mipsel-* \ + | mips64el-* | mips64orion-* | mips64orionel-*) + ;; + # Recognize the various machine names and aliases which stand + # for a CPU type and a company and sometimes even an OS. + 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) + basic_machine=m68000-att + ;; + 3b*) + basic_machine=we32k-att + ;; + alliant | fx80) + basic_machine=fx80-alliant + ;; + altos | altos3068) + basic_machine=m68k-altos + ;; + am29k) + basic_machine=a29k-none + os=-bsd + ;; + amdahl) + basic_machine=580-amdahl + os=-sysv + ;; + amiga | amiga-*) + basic_machine=m68k-cbm + ;; + amigados) + basic_machine=m68k-cbm + os=-amigados + ;; + amigaunix | amix) + basic_machine=m68k-cbm + os=-sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=-sysv + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + convex-c1) + basic_machine=c1-convex + os=-bsd + ;; + convex-c2) + basic_machine=c2-convex + os=-bsd + ;; + convex-c32) + basic_machine=c32-convex + os=-bsd + ;; + convex-c34) + basic_machine=c34-convex + os=-bsd + ;; + convex-c38) + basic_machine=c38-convex + os=-bsd + ;; + cray | ymp) + basic_machine=ymp-cray + os=-unicos + ;; + cray2) + basic_machine=cray2-cray + os=-unicos + ;; + crds | unos) + basic_machine=m68k-crds + ;; + da30 | da30-*) + basic_machine=m68k-da30 + ;; + decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) + basic_machine=mips-dec + ;; + delta | 3300 | motorola-3300 | motorola-delta \ + | 3300-motorola | delta-motorola) + basic_machine=m68k-motorola + ;; + delta88) + basic_machine=m88k-motorola + os=-sysv3 + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + ebmon29k) + basic_machine=a29k-amd + os=-ebmon + ;; + elxsi) + basic_machine=elxsi-elxsi + os=-bsd + ;; + encore | umax | mmax) + basic_machine=ns32k-encore + ;; + fx2800) + basic_machine=i860-alliant + ;; + genix) + basic_machine=ns32k-ns + ;; + gmicro) + basic_machine=tron-gmicro + os=-sysv + ;; + h3050r* | hiux*) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=-hms + ;; + harris) + basic_machine=m88k-harris + os=-sysv3 + ;; + hp300-*) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=-bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=-hpux + ;; + hp9k2[0-9][0-9] | hp9k31[0-9]) + basic_machine=m68000-hp + ;; + hp9k3[2-9][0-9]) + basic_machine=m68k-hp + ;; + hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7) + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][0-9] | hp8[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + i370-ibm* | ibm*) + basic_machine=i370-ibm + os=-mvs + ;; +# I'm not sure what "Sysv32" means. Should this be sysv3.2? + i[345]86v32) + basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` + os=-sysv32 + ;; + i[345]86v4*) + basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` + os=-sysv4 + ;; + i[345]86v) + basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` + os=-sysv + ;; + i[345]86sol2) + basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'` + os=-solaris2 + ;; + iris | iris4d) + basic_machine=mips-sgi + case $os in + -irix*) + ;; + *) + os=-irix4 + ;; + esac + ;; + isi68 | isi) + basic_machine=m68k-isi + os=-sysv + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + miniframe) + basic_machine=m68000-convergent + ;; + mips3*-*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` + ;; + mips3*) + basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown + ;; + ncr3000) + basic_machine=i486-ncr + os=-sysv4 + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=-newsos + ;; + news1000) + basic_machine=m68030-sony + os=-newsos + ;; + news-3600 | risc-news) + basic_machine=mips-sony + os=-newsos + ;; + next | m*-next ) + basic_machine=m68k-next + case $os in + -nextstep* ) + ;; + -ns2*) + os=-nextstep2 + ;; + *) + os=-nextstep3 + ;; + esac + ;; + nh3000) + basic_machine=m68k-harris + os=-cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=-cxux + ;; + nindy960) + basic_machine=i960-intel + os=-nindy + ;; + np1) + basic_machine=np1-gould + ;; + pa-hitachi) + basic_machine=hppa1.1-hitachi + os=-hiuxwe2 + ;; + paragon) + basic_machine=i860-intel + os=-osf + ;; + pbd) + basic_machine=sparc-tti + ;; + pbb) + basic_machine=m68k-tti + ;; + pc532 | pc532-*) + basic_machine=ns32k-pc532 + ;; + pentium-*) + # We will change tis to say i586 once there has been + # time for various packages to start to recognize that. + basic_machine=i486-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + pn) + basic_machine=pn-gould + ;; + ps2) + basic_machine=i386-ibm + ;; + rtpc | rtpc-*) + basic_machine=romp-ibm + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sps7) + basic_machine=m68k-bull + os=-sysv2 + ;; + spur) + basic_machine=spur-unknown + ;; + sun2) + basic_machine=m68000-sun + ;; + sun2os3) + basic_machine=m68000-sun + os=-sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=-sunos4 + ;; + sun3os3) + basic_machine=m68k-sun + os=-sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=-sunos4 + ;; + sun4os3) + basic_machine=sparc-sun + os=-sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=-sunos4 + ;; + sun3 | sun3-*) + basic_machine=m68k-sun + ;; + sun4) + basic_machine=sparc-sun + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + ;; + symmetry) + basic_machine=i386-sequent + os=-dynix + ;; + tower | tower-32) + basic_machine=m68k-ncr + ;; + udi29k) + basic_machine=a29k-amd + os=-udi + ;; + ultra3) + basic_machine=a29k-nyu + os=-sym1 + ;; + vaxv) + basic_machine=vax-dec + os=-sysv + ;; + vms) + basic_machine=vax-dec + os=-vms + ;; + vxworks960) + basic_machine=i960-wrs + os=-vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=-vxworks + ;; + xmp) + basic_machine=xmp-cray + os=-unicos + ;; + xps | xps100) + basic_machine=xps100-honeywell + ;; + none) + basic_machine=none-none + os=-none + ;; + +# Here we handle the default manufacturer of certain CPU types. It is in +# some cases the only manufacturer, in others, it is the most popular. + mips) + basic_machine=mips-mips + ;; + romp) + basic_machine=romp-ibm + ;; + rs6000) + basic_machine=rs6000-ibm + ;; + vax) + basic_machine=vax-dec + ;; + pdp11) + basic_machine=pdp11-dec + ;; + we32k) + basic_machine=we32k-att + ;; + sparc) + basic_machine=sparc-sun + ;; + cydra) + basic_machine=cydra-cydrome + ;; + orion) + basic_machine=orion-highlevel + ;; + orion105) + basic_machine=clipper-highlevel + ;; + *) + echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 + exit 1 + ;; +esac + +# Here we canonicalize certain aliases for manufacturers. +case $basic_machine in + *-digital*) + basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` + ;; + *-commodore*) + basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + ;; + *) + ;; +esac + +# Decode manufacturer-specific aliases for certain operating systems. + +if [ x"$os" != x"" ] +then +case $os in + # -solaris* is a basic system type, with this one exception. + -solaris1 | -solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` + ;; + -solaris) + os=-solaris2 + ;; + -unixware* | svr4*) + os=-sysv4 + ;; + -gnu/linux*) + os=`echo $os | sed -e 's|gnu/linux|linux|'` + ;; + # First accept the basic system types. + # The portable systems comes first. + # Each alternative must end in a *, to match a version number. + # -sysv* is not here because it comes later, after sysvr4. + -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ + | -vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[345]* \ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -amigados* | -msdos* | -newsos* | -unicos* | -aos* \ + | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \ + | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \ + | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta | -udi | -eabi) + ;; + -sunos5*) + os=`echo $os | sed -e 's|sunos5|solaris2|'` + ;; + -sunos6*) + os=`echo $os | sed -e 's|sunos6|solaris3|'` + ;; + -osfrose*) + os=-osfrose + ;; + -osf*) + os=-osf + ;; + -utek*) + os=-bsd + ;; + -dynix*) + os=-bsd + ;; + -acis*) + os=-aos + ;; + -ctix* | -uts*) + os=-sysv + ;; + -triton*) + os=-sysv3 + ;; + -oss*) + os=-sysv3 + ;; + -svr4) + os=-sysv4 + ;; + -svr3) + os=-sysv3 + ;; + -sysvr4) + os=-sysv4 + ;; + # This must come after -sysvr4. + -sysv*) + ;; + -xenix) + os=-xenix + ;; + -none) + ;; + *) + # Get rid of the `-' at the beginning of $os. + os=`echo $os | sed 's/[^-]*-//'` + echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + exit 1 + ;; +esac +else + +# Here we handle the default operating systems that come with various machines. +# The value should be what the vendor currently ships out the door with their +# machine or put another way, the most popular os provided with the machine. + +# Note that if you're going to try to match "-MANUFACTURER" here (say, +# "-sun"), then you have to tell the case statement up towards the top +# that MANUFACTURER isn't an operating system. Otherwise, code above +# will signal an error saying that MANUFACTURER isn't an operating +# system, and we'll never get to this point. + +case $basic_machine in + *-acorn) + os=-riscix1.2 + ;; + pdp11-*) + os=-none + ;; + *-dec | vax-*) + os=-ultrix4.2 + ;; + m68*-apollo) + os=-domain + ;; + i386-sun) + os=-sunos4.0.2 + ;; + m68000-sun) + os=-sunos3 + # This also exists in the configure program, but was not the + # default. + # os=-sunos4 + ;; + *-tti) # must be before sparc entry or we get the wrong os. + os=-sysv3 + ;; + sparc-* | *-sun) + os=-sunos4.1.1 + ;; + *-ibm) + os=-aix + ;; + *-hp) + os=-hpux + ;; + *-hitachi) + os=-hiux + ;; + i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) + os=-sysv + ;; + *-cbm) + os=-amigados + ;; + *-dg) + os=-dgux + ;; + *-dolphin) + os=-sysv3 + ;; + m68k-ccur) + os=-rtu + ;; + m88k-omron*) + os=-luna + ;; + *-sequent) + os=-ptx + ;; + *-crds) + os=-unos + ;; + *-ns) + os=-genix + ;; + i370-*) + os=-mvs + ;; + *-next) + os=-nextstep3 + ;; + *-gould) + os=-sysv + ;; + *-highlevel) + os=-bsd + ;; + *-encore) + os=-bsd + ;; + *-sgi) + os=-irix + ;; + *-masscomp) + os=-rtu + ;; + *) + os=-none + ;; +esac +fi + +# Here we handle the case where we know the os, and the CPU type, but not the +# manufacturer. We pick the logical manufacturer. +vendor=unknown +case $basic_machine in + *-unknown) + case $os in + -riscix*) + vendor=acorn + ;; + -sunos*) + vendor=sun + ;; + -lynxos*) + vendor=lynx + ;; + -aix*) + vendor=ibm + ;; + -hpux*) + vendor=hp + ;; + -hiux*) + vendor=hitachi + ;; + -unos*) + vendor=crds + ;; + -dgux*) + vendor=dg + ;; + -luna*) + vendor=omron + ;; + -genix*) + vendor=ns + ;; + -mvs*) + vendor=ibm + ;; + -ptx*) + vendor=sequent + ;; + -vxworks*) + vendor=wrs + ;; + esac + basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` + ;; +esac + +echo $basic_machine$os diff --git a/configure b/configure new file mode 100755 index 00000000000..9a364330990 --- /dev/null +++ b/configure @@ -0,0 +1,1503 @@ +#! /bin/sh + +# From configure.in Id: configure.in,v 1.72 1995/01/30 07:26:57 roland Exp roland +# Guess values for system-dependent variables and create Makefiles. +# Generated automatically using autoconf version 2.1.1 +# Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Defaults: +ac_help= +ac_default_prefix=/usr/local +# Any additions from configure.in: +ac_help="$ac_help + --with-gmp=DIRECTORY find GMP source code in DIRECTORY (not needed)" +ac_help="$ac_help + --with-gnu-binutils if using GNU binutils (as and ld)" +ac_help="$ac_help + --with-gnu-ld if using GNU ld (in the binutils package)" +ac_help="$ac_help + --with-gnu-as if using GNU as (in the binutils package)" +ac_help="$ac_help + --with-elf if using the ELF object format" +ac_help="$ac_help + --with-weak-symbols if weak symbols are available in as and ld" + +# Initialize some variables set by options. +# The variables have the same names as the options, with +# dashes changed to underlines. +build=NONE +cache_file=./config.cache +exec_prefix=NONE +host=NONE +no_create= +nonopt=NONE +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +target=NONE +verbose= +x_includes=NONE +x_libraries=NONE + +# Initialize some other variables. +subdirs= + +ac_prev= +for ac_option +do + + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval "$ac_prev=\$ac_option" + ac_prev= + continue + fi + + case "$ac_option" in + -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) ac_optarg= ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case "$ac_option" in + + -build | --build | --buil | --bui | --bu | --b) + ac_prev=build ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=* | --b=*) + build="$ac_optarg" ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file="$ac_optarg" ;; + + -disable-* | --disable-*) + ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + eval "enable_${ac_feature}=no" ;; + + -enable-* | --enable-*) + ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "enable_${ac_feature}='$ac_optarg'" ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix="$ac_optarg" ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he) + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat << EOF +Usage: configure [options] [host] +Options: [defaults in brackets after descriptions] +Configuration: + --cache-file=FILE cache test results in FILE + --help print this message + --no-create do not create output files + --quiet, --silent do not print \`checking...' messages + --version print the version of autoconf that created configure +Directory and file names: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=PREFIX install architecture-dependent files in PREFIX + [same as prefix] + --srcdir=DIR find the sources in DIR [configure dir or ..] + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM run sed PROGRAM on installed program names +Host type: + --build=BUILD configure for building on BUILD [BUILD=HOST] + --host=HOST configure for HOST [guessed] + --target=TARGET configure for TARGET [TARGET=HOST] +Features and packages: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --x-includes=DIR X include files are in DIR + --x-libraries=DIR X library files are in DIR +--enable and --with options recognized:$ac_help +EOF + exit 0 ;; + + -host | --host | --hos | --ho) + ac_prev=host ;; + -host=* | --host=* | --hos=* | --ho=*) + host="$ac_optarg" ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix="$ac_optarg" ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix="$ac_optarg" ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix="$ac_optarg" ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name="$ac_optarg" ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site="$ac_optarg" ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir="$ac_optarg" ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target="$ac_optarg" ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers) + echo "configure generated by autoconf version 2.1.1" + exit 0 ;; + + -with-* | --with-*) + ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "with_${ac_package}='$ac_optarg'" ;; + + -without-* | --without-*) + ac_package=`echo $ac_option|sed -e 's/-*without-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + eval "with_${ac_package}=no" ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes="$ac_optarg" ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries="$ac_optarg" ;; + + -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } + ;; + + *) + if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then + echo "configure: warning: $ac_option: invalid host type" 1>&2 + fi + if test "x$nonopt" != xNONE; then + { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } + fi + nonopt="$ac_option" + ;; + + esac +done + +if test -n "$ac_prev"; then + { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } +fi + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 4 checking for... messages and results +# 5 compiler messages saved in config.log +if test "$silent" = yes; then + exec 4>/dev/null +else + exec 4>&1 +fi +exec 5>./config.log + +echo "\ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. +" 1>&5 + +# Strip out --no-create and --no-recursion so they do not pile up. +# Also quote any args containing shell metacharacters. +ac_configure_args= +for ac_arg +do + case "$ac_arg" in + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) ;; + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) + ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) ac_configure_args="$ac_configure_args $ac_arg" ;; + esac +done + +# NLS nuisances. +# Only set LANG and LC_ALL to C if already set. +# These must not be set unconditionally because not all systems understand +# e.g. LANG=C (notably SCO). +if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi +if test "${LANG+set}" = set; then LANG=C; export LANG; fi + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -rf conftest* confdefs.h +# AIX cpp loses on an empty file, so make sure it contains at least a newline. +echo > confdefs.h + +# A filename unique to this package, relative to the directory that +# configure is in, which we can look for to find out if srcdir is correct. +ac_unique_file=features.h + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then its parent. + ac_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + srcdir=$ac_confdir + if test ! -r $srcdir/$ac_unique_file; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r $srcdir/$ac_unique_file; then + if test "$ac_srcdir_defaulted" = yes; then + { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } + else + { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } + fi +fi +srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` + +# Prefer explicitly selected file to automatically selected ones. +if test -z "$CONFIG_SITE"; then + if test "x$prefix" != xNONE; then + CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" + else + CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" + fi +fi +for ac_site_file in $CONFIG_SITE; do + if test -r "$ac_site_file"; then + echo "loading site script $ac_site_file" + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} conftest.$ac_ext $CFLAGS $CPPFLAGS -c 1>&5 2>&5' +ac_link='${CC-cc} conftest.$ac_ext $CFLAGS $CPPFLAGS $LDFLAGS -o conftest $LIBS 1>&5 2>&5' + +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + + if test -r /vmunix; then + kernel_id=`strings /vmunix | grep UNIX` + elif test -r /dynix; then + kernel_id=`strings /dynix | grep DYNIX` + else + kernel_id= + fi + + + + +# This will get text that should go into config.make. +config_vars= + +# Check for a --with-gmp argument and set gmp-srcdir in config.make. +# Check whether --with-gmp or --without-gmp was given. +withval="$with_gmp" +if test -n "$withval"; then + case "$with_gmp" in +yes) { echo "configure: error: --with-gmp requires an argument; use --with-gmp=DIRECTORY" 1>&2; exit 1; } ;; +''|no) ;; +*) config_vars="$config_vars +gmp-srcdir = $withval" ;; +esac + +fi + + +# Check whether --with-gnu-binutils or --without-gnu-binutils was given. +withval="$with_gnu_binutils" +if test -n "$withval"; then + gnu_binutils=yes +else + gnu_binutils=no +fi + +# Check whether --with-gnu-ld or --without-gnu-ld was given. +withval="$with_gnu_ld" +if test -n "$withval"; then + gnu_ld=yes +else + gnu_ld=no +fi + +# Check whether --with-gnu-as or --without-gnu-as was given. +withval="$with_gnu_as" +if test -n "$withval"; then + gnu_as=yes +else + gnu_as=no +fi + +test $gnu_binutils = yes && gnu_as=yes gnu_ld=yes +# Check whether --with-elf or --without-elf was given. +withval="$with_elf" +if test -n "$withval"; then + elf=yes +else + elf=no +fi + +# Check whether --with-weak-symbols or --without-weak-symbols was given. +withval="$with_weak_symbols" +if test -n "$withval"; then + weak=yes +else + weak=no +fi + + +ac_aux_dir= +for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/install-sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f $ac_dir/install.sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; } +fi +ac_config_guess=$ac_aux_dir/config.guess +ac_config_sub=$ac_aux_dir/config.sub +ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. + + +# Make sure we can run config.sub. +if $ac_config_sub sun4 >/dev/null 2>&1; then : +else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } +fi + +echo $ac_n "checking host system type""... $ac_c" 1>&4 + +host_alias=$host +case "$host_alias" in +NONE) + case $nonopt in + NONE) + if host_alias=`$ac_config_guess`; then : + else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } + fi ;; + *) host_alias=$nonopt ;; + esac ;; +esac + +host=`$ac_config_sub $host_alias` +host_cpu=`echo $host | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'` +host_vendor=`echo $host | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\2/'` +host_os=`echo $host | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\3/'` +echo "$ac_t""$host" 1>&4 + +# We keep the original values in `$config_*' and never modify them, so we +# can write them unchanged into config.make. Everything else uses +# $machine, $vendor, and $os, and changes them whenever convenient. +config_machine=$host_cpu config_vendor=$host_vendor config_os=$host_os + +sysdep_dir=$srcdir/sysdeps +echo $ac_n "checking sysdep dirs""... $ac_c" 1>&4 +if eval "test \"`echo '${'libc_cv_sysdirs'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + machine=$config_machine +vendor=$config_vendor +os=$config_os + +# Expand the configuration machine name into a subdirectory by architecture +# type and particular chip. +case "$machine" in +i[345]86) + machine=i386/$machine ;; +sparc[6789]) + machine=sparc/$machine ;; +m68k) + machine=m68k/m68020 ;; +m680?0) + machine=m68k/$machine ;; +m88k) + machine=m88k/m88100 ;; +m88???) + machine=m88k/$machine ;; +mips64*) + machine=mips/mips64/$machine ;; +mips*) + machine=mips/$machine ;; +esac + +# Make sco3.2v4 become sco3.2.4 and sunos4.1.1_U1 become sunos4.1.1.U1. +os="`echo $os | sed 's/\([0-9A-Z]\)[v_]\([0-9A-Z]\)/\1.\2/g'`" + +case "$os" in +gnu*) + base_os=mach/hurd ;; +netbsd* | 386bsd*) + base_os=unix/bsd/bsd4.4 ;; +osf1* | sunos* | ultrix* | newsos* | dynix* | *bsd*) + base_os=unix/bsd ;; +linux* | sysv* | isc* | esix* | sco* | minix* | irix4*) + base_os=unix/sysv ;; +solaris[2-9]*) + base_os=unix/sysv/sysv4 ;; +none) + base_os=standalone ;; +*) + base_os='' ;; +esac + +# For sunos4.1.1, try sunos4.1.1, then sunos4.1, then sunos4, then sunos. +tail=$os +ostry=$os +while o=`echo $tail | sed 's/\.[^.]*$//'`; test $o != $tail; do + ostry="$ostry /$o" + tail=$o +done +o=`echo $tail | sed 's/[0-9]*$//'` +if test $o != $tail; then + ostry="$ostry /$o" +fi + +# For unix/sysv/sysv4, try unix/sysv/sysv4, then unix/sysv, then unix. +base= +tail=$base_os +while b=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$b"; do + set $b + base="$base /$1" + tail="$2" +done + +# For sparc/sparc9, try sparc/sparc9 and then sparc. +mach= +tail=$machine +while m=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$m"; do + set $m + mach="$mach /$1" + tail="$2" +done + + +# Find what sysdep directories exist. +sysnames= +for b in $base ''; do + for m0 in $mach ''; do + for v in /$vendor ''; do + for o in /$ostry ''; do + for m in $mach ''; do + try="$m0$b$v$o$m" + if test -d $sysdep_dir$try; then + sysnames="$sysnames $try" + { test -n "$o" || test -n "$b"; } && os_used=t + { test -n "$m" || test -n "$m0"; } && machine_used=t + fi + done + done + done + done +done + +if test -z "$os_used" && test "$os" != none; then + { echo "configure: error: Operating system $os is not supported." 1>&2; exit 1; } +fi +if test -z "$machine_used" && test "$machine" != none; then + { echo "configure: error: The $machine is not supported." 1>&2; exit 1; } +fi + +# We have now validated the configuration. + +# Remove the leading slashes. +sysnames="`echo $sysnames | sed -e 's@^/@@' -e 's@ /@ @g'`" + +# Prepend the machine's FPU directory unless --without-fp. +if test "$with_fp" = no; then + fpu_dirs= + for m in $mach; do + if test -d $sysdep_dir$m/fpu; then + fpu_dirs="$fpu_dirs $m/fpu" + fi + done + sysnames="`echo $fpu_dirs | sed -e 's,^/,,' -e 's, /,,g'` $sysnames" +fi + +# Expand the list of system names into a full list of directories +# from each element's parent name and Implies file (if present). +set $sysnames +while test $# -gt 0; do + name=$1 + shift + + if test -f $sysdep_dir/$name/Implies; then + # Collect more names from the `Implies' file (removing comments). + implied="`sed 's/#.*$//' < $sysdep_dir/$name/Implies`" + for x in $implied; do + test -d $sysdep_dir/$x || echo "Warning: $name implies nonexistent $x">&2 + done + else + implied= + fi + + # Add NAME to the list of names. + names="$names $name" + + # Find the parent of NAME, using the empty string if it has none. + parent="`echo $name | sed -n -e '/\//!q' -e 's=/[^/]*$==p'`" + + # Add the names implied by NAME, and NAME's parent (if it has one), to + # the list of names to be processed (the argument list). We prepend the + # implied names to the list and append the parent. We want implied + # directories to come before further directories inferred from the + # configuration components; this ensures that for sysv4, unix/common + # (implied by unix/sysv/sysv4) comes before unix/sysv (in ostry (here $*) + # after sysv4). + sysnames="`echo $implied $* $parent`" + test -n "$sysnames" && set $sysnames +done + +# Add the default directories. +names="$names generic stub" + +# Now uniquize the list. +seen= +sysnames= +for name in $names; do + if echo "$seen" | fgrep -x $name >/dev/null; then + # Already in the list. + true; + else + # A new one. + if test -z "$seen"; then + seen="$name" sysnames="$name" + else + seen="$seen +$name" + sysnames="$sysnames $name" + fi + fi +done +libc_cv_sysdirs="$sysnames" +fi + + sysnames="$libc_cv_sysdirs" +echo "$ac_t""${sysnames}" 1>&4 + +case "$host_os" in +gnu* | linux* | bsd4.4* | netbsd* | freebsd*) + gnu_ld=yes gnu_as=yes +esac +case "$host_os" in +gnu*elf* | linux*elf* | sysv4* | solaris2*) + elf=yes +esac + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&4 +if test -z "$INSTALL"; then +if eval "test \"`echo '${'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + for ac_prog in ginstall installbsd scoinst install; do + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + # OSF/1 installbsd also uses dspmsg, but is usable. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_ifs" + # As a last resort, use the slow shell script. + test -z "$ac_cv_path_install" && ac_cv_path_install="$ac_install_sh" +fi + INSTALL="$ac_cv_path_install" +fi +echo "$ac_t""$INSTALL" 1>&4 + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +if test "$INSTALL" = "${srcdir}/install-sh"; then + # The makefiles need to use a different form to find it in $srcdir. + INSTALL='$(..)./install-sh' +fi + +echo $ac_n "checking build system type""... $ac_c" 1>&4 + +build_alias=$build +case "$build_alias" in +NONE) + case $nonopt in + NONE) build_alias=$host_alias ;; + *) build_alias=$nonopt ;; + esac ;; +esac + +build=`$ac_config_sub $build_alias` +build_cpu=`echo $build | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\1/'` +build_vendor=`echo $build | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\2/'` +build_os=`echo $build | sed 's/^\(.*\)-\(.*\)-\(.*\)$/\3/'` +echo "$ac_t""$build" 1>&4 + +if test $host != $build; then + ac_tool_prefix=${host_alias}- +else + ac_tool_prefix= +fi + +# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +set dummy ${ac_tool_prefix}gcc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 +if eval "test \"`echo '${'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_CC" && ac_cv_prog_CC="gcc" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&4 +else + echo "$ac_t""no" 1>&4 +fi + + + +# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. +set dummy ${ac_tool_prefix}ar; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 +if eval "test \"`echo '${'ac_cv_prog_AR'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_AR="${ac_tool_prefix}ar" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar" +fi +fi +AR="$ac_cv_prog_AR" +if test -n "$AR"; then + echo "$ac_t""$AR" 1>&4 +else + echo "$ac_t""no" 1>&4 +fi + + + +# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. +set dummy ${ac_tool_prefix}ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 +if eval "test \"`echo '${'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&4 +else + echo "$ac_t""no" 1>&4 +fi + + +if test -z "$ac_cv_prog_RANLIB"; then +if test -n "$ac_tool_prefix"; then + # Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 +if eval "test \"`echo '${'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="ranlib" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&4 +else + echo "$ac_t""no" 1>&4 +fi + +else + RANLIB=":" +fi +fi + +echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&4 +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then +if eval "test \"`echo '${'ac_cv_prog_CPP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + # This must be in double quotes, not single quotes, because CPP may get + # substituted into the Makefile and "${CC-cc}" will confuse make. + CPP="${CC-cc} -E" + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. + cat > conftest.$ac_ext < +Syntax Error +EOF +eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + rm -rf conftest* + CPP="${CC-cc} -E -traditional-cpp" + cat > conftest.$ac_ext < +Syntax Error +EOF +eval "$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + rm -rf conftest* + CPP=/lib/cpp +fi +rm -f conftest* +fi +rm -f conftest* + ac_cv_prog_CPP="$CPP" +fi +fi +CPP="$ac_cv_prog_CPP" +echo "$ac_t""$CPP" 1>&4 + + +echo $ac_n "checking signed size_t type""... $ac_c" 1>&4 +if eval "test \"`echo '${'libc_cv_signed_size_t'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + echo '#include +FOOBAR __SIZE_TYPE__ FOOBAR' > conftest.c +if eval "$ac_cpp conftest.c 2>/dev/null" \ +| grep '^FOOBAR.*unsigned.*FOOBAR$' >/dev/null; then + libc_cv_signed_size_t=no +else + libc_cv_signed_size_t=yes +fi +rm -f conftest* +fi + +echo "$ac_t""$libc_cv_signed_size_t" 1>&4 +if test $libc_cv_signed_size_t = yes; then + cat >> confdefs.h <<\EOF +#undef __SIZE_TYPE__ +#define __SIZE_TYPE__ unsigned +EOF +fi + +echo $ac_n "checking libc-friendly stddef.h""... $ac_c" 1>&4 +if eval "test \"`echo '${'libc_cv_friendly_stddef'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + cat > conftest.$ac_ext < +#define __need_NULL +#include +int main() { return 0; } +int t() { +size_t size; wchar_t wchar; +#ifdef offsetof +#error stddef.h ignored __need_* +#endif +if (&size == NULL || &wchar == NULL) abort (); +; return 0; } +EOF +if eval $ac_compile; then + rm -rf conftest* + libc_cv_friendly_stddef=yes +else + rm -rf conftest* + libc_cv_friendly_stddef=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$libc_cv_friendly_stddef" 1>&4 +if test $libc_cv_friendly_stddef = yes; then + config_vars="$config_vars +override stddef.h = # The installed seems to be libc-friendly." +fi + +echo $ac_n "checking whether we need to use -P to assemble .S files""... $ac_c" 1>&4 +if eval "test \"`echo '${'libc_cv_need_minus_P'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + cat > conftest.S </dev/null; then + libc_cv_need_minus_P=no +else + libc_cv_need_minus_P=yes +fi +rm -f conftest* +fi + +echo "$ac_t""$libc_cv_need_minus_P" 1>&4 +if test $libc_cv_need_minus_P = yes; then + config_vars="$config_vars +asm-CPPFLAGS = -P # The assembler can't grok cpp's # line directives." +fi + +# sysdeps configure fragments may set these with files to be linked below. +libc_link_dests= +libc_link_sources= + +# Iterate over all the sysdep directories we will use, running their +# configure fragments, and looking for a uname implementation. +uname= +for dir in $sysnames; do + if test -r $sysdep_dir/$dir/configure; then + echo "$ac_t""running configure fragment for $dir" 1>&4 + . $sysdep_dir/$dir/configure + fi + if test -z "$uname"; then + { test -r $sysdep_dir/$dir/uname.c || test -r $sysdep_dir/$dir/uname.S; } \ + && uname=$dir + fi +done + + + +# If we will use the generic uname implementation, we must figure out what +# it will say by examining the system, and write the results in config-name.h. +if test "$uname" = generic; then + + uname_sysname=`echo $config_os | sed 's/[0-9.]*$//'` + if test $uname_sysname != $config_os; then + config_release=`echo $config_os | sed s/$uname_sysname//` + fi + + echo $ac_n "checking OS release for uname""... $ac_c" 1>&4 + if eval "test \"`echo '${'libc_cv_uname_release'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'` + if test x`echo "$config_release" | sed "s/^$kernel_release//"` \ + != x$config_release; then + # The configuration release is a substring of the kernel release. + libc_cv_uname_release=$kernel_release + elif test x$config_release != x; then + libc_cv_uname_release=$config_release + elif test x$kernel_release != x; then + libc_cv_uname_release=$kernel_release + else + libc_cv_uname_release=unknown + fi +fi + + echo "$ac_t""$libc_cv_uname_release" 1>&4 + uname_release="$libc_cv_uname_release" + + echo $ac_n "checking OS version for uname""... $ac_c" 1>&4 + if eval "test \"`echo '${'libc_cv_uname_version'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&4 +else + kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'` + if test -n "$kernel_version"; then + libc_cv_uname_version="$kernel_version" + else + libc_cv_uname_version=unknown + fi +fi + + echo "$ac_t""$libc_cv_uname_version" 1>&4 + uname_version="$libc_cv_uname_version" + + config_uname=config-name.h:config-name.in +else + # For non-generic uname, we don't need to create config-name.h at all. + config_uname= +fi + + +if test $gnu_ld = yes; then + cat >> confdefs.h <<\EOF +#define HAVE_GNU_LD 1 +EOF + +fi +if test $gnu_as = yes; then + cat >> confdefs.h <<\EOF +#define HAVE_GNU_AS 1 +EOF + +fi +if test $elf = yes; then + cat >> confdefs.h <<\EOF +#define HAVE_ELF 1 +EOF + +fi +if test $weak = yes; then + cat >> confdefs.h <<\EOF +#define HAVE_WEAK_SYMBOLS 1 +EOF + +fi + + +if test "`(cd $srcdir; pwd)`" = "`pwd`"; then + config_makefile= +else + config_makefile=Makefile +fi + +trap '' 1 2 15 +if test -w $cache_file; then +echo "updating cache $cache_file" +cat > $cache_file <<\EOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs. It is not useful on other systems. +# If it contains results you don't want to keep, you may remove or edit it. +# +# By default, configure uses ./config.cache as the cache file, +# creating it if it does not exist already. You can give configure +# the --cache-file=FILE option to use a different cache file; that is +# what configure does when it calls configure scripts in +# subdirectories, so they share the cache. +# Giving --cache-file=/dev/null disables caching, for debugging configure. +# config.status only pays attention to the cache file if you give it the +# --recheck option to rerun configure. +# +EOF +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +(set) 2>&1 | + sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \ + >> $cache_file +else +echo "not updating unwritable cache $cache_file" +fi + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +# Any assignment to VPATH causes Sun make to only execute +# the first set of double-colon rules, so remove it if not needed. +# If there is a colon in the path, we need to keep it. +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' +fi + +trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 + +DEFS=-DHAVE_CONFIG_H + +# Without the "./", some shells look in PATH for config.status. +: ${CONFIG_STATUS=./config.status} + +echo creating $CONFIG_STATUS +rm -f $CONFIG_STATUS +cat > $CONFIG_STATUS </dev/null | sed 1q`: +# +# $0 $ac_configure_args +# +# Compiler output produced by configure, useful for debugging +# configure, is in ./config.log if it exists. + +ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" +for ac_option +do + case "\$ac_option" in + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" + exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; + -version | --version | --versio | --versi | --vers | --ver | --ve | --v) + echo "$CONFIG_STATUS generated by autoconf version 2.1.1" + exit 0 ;; + -help | --help | --hel | --he | --h) + echo "\$ac_cs_usage"; exit 0 ;; + *) echo "\$ac_cs_usage"; exit 1 ;; + esac +done + +ac_given_srcdir=$srcdir +ac_given_INSTALL="$INSTALL" + +trap 'rm -fr `echo config.make ${config_makefile} ${config_uname} config.h | tr : " "` conftest*; exit 1' 1 2 15 + +# Protect against being on the right side of a sed subst in config.status. +sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\\\&%]/\\\\&/g; + s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF +$ac_vpsub +$extrasub +s%@CFLAGS@%$CFLAGS%g +s%@CPPFLAGS@%$CPPFLAGS%g +s%@CXXFLAGS@%$CXXFLAGS%g +s%@DEFS@%$DEFS%g +s%@LDFLAGS@%$LDFLAGS%g +s%@LIBS@%$LIBS%g +s%@exec_prefix@%$exec_prefix%g +s%@prefix@%$prefix%g +s%@program_transform_name@%$program_transform_name%g +s%@host@%$host%g +s%@host_alias@%$host_alias%g +s%@host_cpu@%$host_cpu%g +s%@host_vendor@%$host_vendor%g +s%@host_os@%$host_os%g +s%@sysnames@%$sysnames%g +s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g +s%@INSTALL_DATA@%$INSTALL_DATA%g +s%@build@%$build%g +s%@build_alias@%$build_alias%g +s%@build_cpu@%$build_cpu%g +s%@build_vendor@%$build_vendor%g +s%@build_os@%$build_os%g +s%@CC@%$CC%g +s%@AR@%$AR%g +s%@RANLIB@%$RANLIB%g +s%@CPP@%$CPP%g +s%@uname_sysname@%$uname_sysname%g +s%@uname_release@%$uname_release%g +s%@uname_version@%$uname_version%g +s%@gnu_ld@%$gnu_ld%g +s%@gnu_as@%$gnu_as%g +s%@elf@%$elf%g +s%@weak@%$weak%g + +CEOF +EOF +cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF +for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then + # Support "outfile[:infile]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%.*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + # Adjust relative srcdir, etc. for subdirectories. + + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dir_suffix. + ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dir_suffix= ac_dots= + fi + + case "$ac_given_srcdir" in + .) srcdir=. + if test -z "$ac_dots"; then top_srcdir=. + else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; + /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; + *) # Relative path. + srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" + top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + + case "$ac_given_INSTALL" in + [/$]*) INSTALL="$ac_given_INSTALL" ;; + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac + echo creating "$ac_file" + rm -f "$ac_file" + configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." + case "$ac_file" in + *Makefile*) ac_comsub="1i\\ +# $configure_input" ;; + *) ac_comsub= ;; + esac + sed -e "$ac_comsub +s%@configure_input@%$configure_input%g +s%@srcdir@%$srcdir%g +s%@top_srcdir@%$top_srcdir%g +s%@INSTALL@%$INSTALL%g +" -f conftest.subs $ac_given_srcdir/$ac_file_in > $ac_file +fi; done +rm -f conftest.subs + +# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where +# NAME is the cpp macro being defined and VALUE is the value it is being given. +# +# ac_d sets the value in "#define NAME VALUE" lines. +ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)' +ac_dB='\([ ][ ]*\)[^ ]*%\1#\2' +ac_dC='\3' +ac_dD='%g' +# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE". +ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_uB='\([ ]\)%\1#\2define\3' +ac_uC=' ' +ac_uD='\4%g' +# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE". +ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_eB='$%\1#\2define\3' +ac_eC=' ' +ac_eD='%g' + +CONFIG_HEADERS=${CONFIG_HEADERS-"config.h"} +for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then + # Support "outfile[:infile]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%.*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + echo creating $ac_file + + rm -f conftest.frag conftest.in conftest.out + cp $ac_given_srcdir/$ac_file_in conftest.in + +EOF + +# Transform confdefs.h into a sed script conftest.vals that substitutes +# the proper values into config.h.in to produce config.h. And first: +# Protect against being on the right side of a sed subst in config.status. +# Protect against being in an unquoted here document in config.status. +rm -f conftest.vals +cat > conftest.hdr <<\EOF +s/[\\&%]/\\&/g +s%[\\$`]%\\&%g +s%#define \([A-Za-z_][A-Za-z0-9_]*\) \(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp +s%ac_d%ac_u%gp +s%ac_u%ac_e%gp +EOF +sed -n -f conftest.hdr confdefs.h > conftest.vals +rm -f conftest.hdr + +# This sed command replaces #undef with comments. This is necessary, for +# example, in the case of _POSIX_SOURCE, which is predefined and required +# on some systems where configure will not decide to define it. +cat >> conftest.vals <<\EOF +s%^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */% +EOF + +# Break up conftest.vals because some shells have a limit on +# the size of here documents, and old seds have small limits too. +# Maximum number of lines to put in a single here document. +ac_max_here_lines=12 + +rm -f conftest.tail +while : +do + ac_lines=`grep -c . conftest.vals` + # grep -c gives empty output for an empty file on some AIX systems. + if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi + # Write a limited-size here document to conftest.frag. + echo ' cat > conftest.frag <> $CONFIG_STATUS + sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS + echo 'CEOF + sed -f conftest.frag conftest.in > conftest.out + rm -f conftest.in + mv conftest.out conftest.in +' >> $CONFIG_STATUS + sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail + rm -f conftest.vals + mv conftest.tail conftest.vals +done +rm -f conftest.vals + +cat >> $CONFIG_STATUS <<\EOF + rm -f conftest.frag conftest.h + echo "/* $ac_file. Generated automatically by configure. */" > conftest.h + cat conftest.in >> conftest.h + rm -f conftest.in + if cmp -s $ac_file conftest.h 2>/dev/null; then + echo "$ac_file is unchanged" + rm -f conftest.h + else + rm -f $ac_file + mv conftest.h $ac_file + fi +fi; done + +EOF + +cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF +srcdir=$ac_given_srcdir +while test -n "$ac_sources"; do + set $ac_dests; ac_dest=$1; shift; ac_dests=$* + set $ac_sources; ac_source=$1; shift; ac_sources=$* + + echo "linking $srcdir/$ac_source to $ac_dest" + + if test ! -r $srcdir/$ac_source; then + { echo "configure: error: $srcdir/$ac_source: File not found" 1>&2; exit 1; } + fi + rm -f $ac_dest + + # Make relative symlinks. + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dest_dir=`echo $ac_dest|sed 's%/[^/][^/]*$%%'` + if test "$ac_dest_dir" != "$ac_dest" && test "$ac_dest_dir" != .; then + # The dest file is in a subdirectory. + test ! -d "$ac_dest_dir" && mkdir "$ac_dest_dir" + ac_dest_dir_suffix="/`echo $ac_dest_dir|sed 's%^\./%%'`" + # A "../" for each directory in $ac_dest_dir_suffix. + ac_dots=`echo $ac_dest_dir_suffix|sed 's%/[^/]*%../%g'` + else + ac_dest_dir_suffix= ac_dots= + fi + + case "$srcdir" in + [/$]*) ac_rel_source="$srcdir/$ac_source" ;; + *) ac_rel_source="$ac_dots$srcdir/$ac_source" ;; + esac + + # Make a symlink if possible; otherwise try a hard link. + if ln -s $ac_rel_source $ac_dest 2>/dev/null || + ln $srcdir/$ac_source $ac_dest; then : + else + { echo "configure: error: can not link $ac_dest to $srcdir/$ac_source" 1>&2; exit 1; } + fi +done +EOF +cat >> $CONFIG_STATUS <> config.make +EOF +cat >> $CONFIG_STATUS <<\EOF + +exit 0 +EOF +chmod +x $CONFIG_STATUS +rm -fr confdefs* $ac_clean_files +test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 + diff --git a/configure.in b/configure.in new file mode 100644 index 00000000000..4d03b808cdd --- /dev/null +++ b/configure.in @@ -0,0 +1,413 @@ +dnl Process this file with autoconf to produce a configure script. +AC_REVISION([$Id$]) +AC_PREREQ(2.1)dnl dnl Minimum Autoconf version required. +AC_INIT(features.h) +AC_CONFIG_HEADER(config.h) + +# This will get text that should go into config.make. +config_vars= + +# Check for a --with-gmp argument and set gmp-srcdir in config.make. +AC_ARG_WITH(gmp, dnl + --with-gmp=DIRECTORY find GMP source code in DIRECTORY (not needed), + [dnl +case "$with_gmp" in +yes) AC_MSG_ERROR(--with-gmp requires an argument; use --with-gmp=DIRECTORY) ;; +''|no) ;; +*) config_vars="$config_vars +gmp-srcdir = $withval" ;; +esac +]) + +AC_ARG_WITH(gnu-binutils, dnl + --with-gnu-binutils if using GNU binutils (as and ld), + gnu_binutils=yes, gnu_binutils=no) +AC_ARG_WITH(gnu-ld, dnl + --with-gnu-ld if using GNU ld (in the binutils package), + gnu_ld=yes, gnu_ld=no) +AC_ARG_WITH(gnu-as, dnl + --with-gnu-as if using GNU as (in the binutils package), + gnu_as=yes, gnu_as=no) +test $gnu_binutils = yes && gnu_as=yes gnu_ld=yes +AC_ARG_WITH(elf, dnl + --with-elf if using the ELF object format, + elf=yes, elf=no) +AC_ARG_WITH(weak-symbols, dnl + --with-weak-symbols if weak symbols are available in as and ld, + weak=yes, weak=no) + +AC_CANONICAL_HOST +# We keep the original values in `$config_*' and never modify them, so we +# can write them unchanged into config.make. Everything else uses +# $machine, $vendor, and $os, and changes them whenever convenient. +config_machine=$host_cpu config_vendor=$host_vendor config_os=$host_os + +sysdep_dir=$srcdir/sysdeps +AC_MSG_CHECKING(sysdep dirs) +AC_CACHE_VAL(libc_cv_sysdirs, [dnl +machine=$config_machine +vendor=$config_vendor +os=$config_os + +dnl We need to use [ and ] for other purposes for a while now. +changequote(,)dnl +# Expand the configuration machine name into a subdirectory by architecture +# type and particular chip. +case "$machine" in +i[345]86) + machine=i386/$machine ;; +sparc[6789]) + machine=sparc/$machine ;; +m68k) + machine=m68k/m68020 ;; +m680?0) + machine=m68k/$machine ;; +m88k) + machine=m88k/m88100 ;; +m88???) + machine=m88k/$machine ;; +mips64*) + machine=mips/mips64/$machine ;; +mips*) + machine=mips/$machine ;; +esac + +# Make sco3.2v4 become sco3.2.4 and sunos4.1.1_U1 become sunos4.1.1.U1. +os="`echo $os | sed 's/\([0-9A-Z]\)[v_]\([0-9A-Z]\)/\1.\2/g'`" + +case "$os" in +gnu*) + base_os=mach/hurd ;; +netbsd* | 386bsd*) + base_os=unix/bsd/bsd4.4 ;; +osf1* | sunos* | ultrix* | newsos* | dynix* | *bsd*) + base_os=unix/bsd ;; +linux* | sysv* | isc* | esix* | sco* | minix* | irix4*) + base_os=unix/sysv ;; +solaris[2-9]*) + base_os=unix/sysv/sysv4 ;; +none) + base_os=standalone ;; +*) + base_os='' ;; +esac + +# For sunos4.1.1, try sunos4.1.1, then sunos4.1, then sunos4, then sunos. +tail=$os +ostry=$os +while o=`echo $tail | sed 's/\.[^.]*$//'`; test $o != $tail; do + ostry="$ostry /$o" + tail=$o +done +o=`echo $tail | sed 's/[0-9]*$//'` +if test $o != $tail; then + ostry="$ostry /$o" +fi + +# For unix/sysv/sysv4, try unix/sysv/sysv4, then unix/sysv, then unix. +base= +tail=$base_os +while b=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$b"; do + set $b + base="$base /$1" + tail="$2" +done + +# For sparc/sparc9, try sparc/sparc9 and then sparc. +mach= +tail=$machine +while m=`echo $tail | sed 's@^\(.*\)/\([^/]*\)$@& \1@'`; test -n "$m"; do + set $m + mach="$mach /$1" + tail="$2" +done + +dnl We are done with glob and regexp uses of [ and ]; return to autoconf. +changequote([,])dnl + +# Find what sysdep directories exist. +sysnames= +for b in $base ''; do + for m0 in $mach ''; do + for v in /$vendor ''; do + for o in /$ostry ''; do + for m in $mach ''; do + try="$m0$b$v$o$m" + if test -d $sysdep_dir$try; then + sysnames="$sysnames $try" + { test -n "$o" || test -n "$b"; } && os_used=t + { test -n "$m" || test -n "$m0"; } && machine_used=t + fi + done + done + done + done +done + +if test -z "$os_used" && test "$os" != none; then + AC_MSG_ERROR(Operating system $os is not supported.) +fi +if test -z "$machine_used" && test "$machine" != none; then + AC_MSG_ERROR(The $machine is not supported.) +fi + +# We have now validated the configuration. + +# Remove the leading slashes. +sysnames="`echo $sysnames | sed -e 's@^/@@' -e 's@ /@ @g'`" + +# Prepend the machine's FPU directory unless --without-fp. +if test "$with_fp" = no; then + fpu_dirs= + for m in $mach; do + if test -d $sysdep_dir$m/fpu; then + fpu_dirs="$fpu_dirs $m/fpu" + fi + done + sysnames="`echo $fpu_dirs | sed -e 's,^/,,' -e 's, /,,g'` $sysnames" +fi + +# Expand the list of system names into a full list of directories +# from each element's parent name and Implies file (if present). +set $sysnames +while test $# -gt 0; do + name=$1 + shift + + if test -f $sysdep_dir/$name/Implies; then + # Collect more names from the `Implies' file (removing comments). + implied="`sed 's/#.*$//' < $sysdep_dir/$name/Implies`" + for x in $implied; do + test -d $sysdep_dir/$x || echo "Warning: $name implies nonexistent $x">&2 + done + else + implied= + fi + + # Add NAME to the list of names. + names="$names $name" + + # Find the parent of NAME, using the empty string if it has none. +changequote(,)dnl + parent="`echo $name | sed -n -e '/\//!q' -e 's=/[^/]*$==p'`" +changequote([,])dnl + + # Add the names implied by NAME, and NAME's parent (if it has one), to + # the list of names to be processed (the argument list). We prepend the + # implied names to the list and append the parent. We want implied + # directories to come before further directories inferred from the + # configuration components; this ensures that for sysv4, unix/common + # (implied by unix/sysv/sysv4) comes before unix/sysv (in ostry (here $*) + # after sysv4). + sysnames="`echo $implied $* $parent`" + test -n "$sysnames" && set $sysnames +done + +# Add the default directories. +names="$names generic stub" + +# Now uniquize the list. +seen= +sysnames= +for name in $names; do + if echo "$seen" | fgrep -x $name >/dev/null; then + # Already in the list. + true; + else + # A new one. + if test -z "$seen"; then + seen="$name" sysnames="$name" + else + seen="$seen +$name" + sysnames="$sysnames $name" + fi + fi +done +libc_cv_sysdirs="$sysnames"]) +AC_SUBST(sysnames) sysnames="$libc_cv_sysdirs" +AC_MSG_RESULT(${sysnames}) + +case "$host_os" in +gnu* | linux* | bsd4.4* | netbsd* | freebsd*) + gnu_ld=yes gnu_as=yes +esac +case "$host_os" in +gnu*elf* | linux*elf* | sysv4* | solaris2*) + elf=yes +esac + +AC_PROG_INSTALL +if test "$INSTALL" = "${srcdir}/install-sh"; then + # The makefiles need to use a different form to find it in $srcdir. + INSTALL='$(..)./install-sh' +fi + +AC_PROG_CC +AC_PROG_CPP +AC_CHECK_PROG(AR, ar, ar, ar) +AC_PROG_RANLIB + +AC_MSG_CHECKING(signed size_t type) +AC_CACHE_VAL(libc_cv_signed_size_t, [dnl +echo '#include +FOOBAR __SIZE_TYPE__ FOOBAR' > conftest.c +if eval "$ac_cpp conftest.c 2>/dev/null" \ +| grep '^FOOBAR.*unsigned.*FOOBAR$' >/dev/null; then + libc_cv_signed_size_t=no +else + libc_cv_signed_size_t=yes +fi +rm -f conftest*]) +AC_MSG_RESULT($libc_cv_signed_size_t) +if test $libc_cv_signed_size_t = yes; then + dnl Do this by hand instead of AC_DEFINE so can add #undef to avoid warnings. + cat >> confdefs.h <<\EOF +#undef __SIZE_TYPE__ +#define __SIZE_TYPE__ unsigned +EOF +fi + +AC_MSG_CHECKING(libc-friendly stddef.h) +AC_CACHE_VAL(libc_cv_friendly_stddef, [dnl +AC_TRY_COMPILE(dnl +[#define __need_size_t +#define __need_wchar_t +#include +#define __need_NULL +#include ], [size_t size; wchar_t wchar; +#ifdef offsetof +#error stddef.h ignored __need_* +#endif +if (&size == NULL || &wchar == NULL) abort ();], + libc_cv_friendly_stddef=yes, + libc_cv_friendly_stddef=no)]) +AC_MSG_RESULT($libc_cv_friendly_stddef) +if test $libc_cv_friendly_stddef = yes; then + config_vars="$config_vars +override stddef.h = # The installed seems to be libc-friendly." +fi + +AC_MSG_CHECKING(whether we need to use -P to assemble .S files) +AC_CACHE_VAL(libc_cv_need_minus_P, [dnl +cat > conftest.S </dev/null; then + libc_cv_need_minus_P=no +else + libc_cv_need_minus_P=yes +fi +rm -f conftest*]) +AC_MSG_RESULT($libc_cv_need_minus_P) +if test $libc_cv_need_minus_P = yes; then + config_vars="$config_vars +asm-CPPFLAGS = -P # The assembler can't grok cpp's # line directives." +fi + +# sysdeps configure fragments may set these with files to be linked below. +libc_link_dests= +libc_link_sources= + +# Iterate over all the sysdep directories we will use, running their +# configure fragments, and looking for a uname implementation. +uname= +for dir in $sysnames; do + if test -r $sysdep_dir/$dir/configure; then + AC_MSG_RESULT(running configure fragment for $dir) + . $sysdep_dir/$dir/configure + fi + if test -z "$uname"; then + { test -r $sysdep_dir/$dir/uname.c || test -r $sysdep_dir/$dir/uname.S; } \ + && uname=$dir + fi +done + +AC_LINK_FILES(`echo $libc_link_sources`, `echo $libc_link_dests`) + +# If we will use the generic uname implementation, we must figure out what +# it will say by examining the system, and write the results in config-name.h. +if test "$uname" = generic; then + +changequote(,)dnl + uname_sysname=`echo $config_os | sed 's/[0-9.]*$//'` +changequote([,])dnl + if test $uname_sysname != $config_os; then + config_release=`echo $config_os | sed s/$uname_sysname//` + fi +dnl +AC_DEFUN(LIBC_KERNEL_ID, [dnl + if test -r /vmunix; then + kernel_id=`strings /vmunix | grep UNIX` + elif test -r /dynix; then + kernel_id=`strings /dynix | grep DYNIX` + else + kernel_id= + fi +])dnl + + AC_MSG_CHECKING(OS release for uname) + AC_CACHE_VAL(libc_cv_uname_release, [dnl +AC_REQUIRE([LIBC_KERNEL_ID])dnl +changequote(,)dnl + kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'` +changequote([,])dnl + if test x`echo "$config_release" | sed "s/^$kernel_release//"` \ + != x$config_release; then + # The configuration release is a substring of the kernel release. + libc_cv_uname_release=$kernel_release + elif test x$config_release != x; then + libc_cv_uname_release=$config_release + elif test x$kernel_release != x; then + libc_cv_uname_release=$kernel_release + else + libc_cv_uname_release=unknown + fi]) + AC_MSG_RESULT($libc_cv_uname_release) + uname_release="$libc_cv_uname_release" + + AC_MSG_CHECKING(OS version for uname) + AC_CACHE_VAL(libc_cv_uname_version, [dnl +AC_REQUIRE([LIBC_KERNEL_ID])dnl +changequote(,)dnl + kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'` +changequote([,])dnl + if test -n "$kernel_version"; then + libc_cv_uname_version="$kernel_version" + else + libc_cv_uname_version=unknown + fi]) + AC_MSG_RESULT($libc_cv_uname_version) + uname_version="$libc_cv_uname_version" + +AC_SUBST(uname_sysname) AC_SUBST(uname_release) AC_SUBST(uname_version)dnl + config_uname=config-name.h:config-name.in +else + # For non-generic uname, we don't need to create config-name.h at all. + config_uname= +fi + +AC_SUBST(gnu_ld) AC_SUBST(gnu_as) AC_SUBST(elf) AC_SUBST(weak) +if test $gnu_ld = yes; then + AC_DEFINE(HAVE_GNU_LD) +fi +if test $gnu_as = yes; then + AC_DEFINE(HAVE_GNU_AS) +fi +if test $elf = yes; then + AC_DEFINE(HAVE_ELF) +fi +if test $weak = yes; then + AC_DEFINE(HAVE_WEAK_SYMBOLS) +fi + + +if test "`(cd $srcdir; pwd)`" = "`pwd`"; then + config_makefile= +else + config_makefile=Makefile +fi + +AC_OUTPUT(config.make ${config_makefile} ${config_uname}, , + [echo '$config_vars' >> config.make]) diff --git a/crypt-README b/crypt-README new file mode 100644 index 00000000000..c80ddf5c15b --- /dev/null +++ b/crypt-README @@ -0,0 +1,14 @@ +The GNU C library now includes Michael Glad's Ultra Fast Crypt, which +provides the Unix `crypt' function, plus some other entry points. Because +of the United States export restriction on DES implementations, we are +distributing this code separately from the rest of the C library. There is +an extra distribution tar file just for crypt; it is called +`glibc-1.07-crypt.tar.gz'. You can just unpack the crypt distribution +along with the rest of the C library and build; you can also build the +library without getting crypt. Users outside the USA can get the crypt +distribution via anonymous FTP from ftp.uni-c.dk [129.142.6.74], or another +archive site outside the USA. Archive maintainers are encouraged to copy +this distribution to their archives outside the USA. Please get it from +ftp.uni-c.dk; transferring this distribution from prep.ai.mit.edu (or any +other site in the USA) to a site outside the USA is in violation of US +export laws. diff --git a/csu/Makefile b/csu/Makefile new file mode 100644 index 00000000000..6de77b768c3 --- /dev/null +++ b/csu/Makefile @@ -0,0 +1,84 @@ +# Makefile for csu code for GNU C library. + +# Copyright (C) 1995 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License +# as published by the Free Software Foundation; either version 2 of +# the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# This directory contains the C startup code (that which calls main). This +# consists of the startfile, built from start.c and installed as crt0.o +# (traditionally) or crt1.o (for ELF); and some initialization code which +# is in the C library itself. In ELF we also install crti.o and crtn.o, +# special "initializer" and "finalizer" files in used in the link to make +# the .init and .fini sections work right; both these files are built (in +# an arcane manner) from initfini.c. + +subdir := csu + +csu-dummies = $(filter-out $(start-installed-name),crt1.o Mcrt1.o) +extra-objs = start.o $(start-installed-name) $(csu-dummies) +omit-deps = $(patsubst %.o,%,$(start-installed-name) $(csu-dummies)) +install-lib = $(start-installed-name) $(csu-dummies) +distribute = initfini.c + +all: # Make this the default target; it will be defined in Rules. + +include ../Makeconfig + +ifneq ($(elf),yes) +# When not using ELF, there is just one startfile, called crt0.o. +start-installed-name = crt0.o +else +# In the ELF universe, crt0.o is called crt1.o, and there are +# some additional bizarre files. +start-installed-name = crt1.o +install-lib += crti.o crtn.o +extra-objs += crti.o crtn.o +generated += crti.s crtn.s +omit-deps += crti crtn + +# Compile initfini.c to assembly code, which contains embedded shell +# commands that prodice crti.s-new and crtn.s-new when run. We need to +# disable emission of .size directives and debugging information, since +# they will get confused by the splitting of the output we do. +$(objpfx)cr%i.s $(objpfx)cr%n.s: initfini.c + -rm -f $(objpfx)crtcommon.tmp + (echo 'cat > crtcommon.tmp <<\EOF_common'; \ + $(CC) $< $(CPPFLAGS) $(CFLAGS) -finhibit-size-directive -g0 -S -o -; \ + echo 'EOF_common') | (cd $(@D); $(SHELL)) + cat $(objpfx)crtcommon.tmp >> $(objpfx)crti.s-new + cat $(objpfx)crtcommon.tmp >> $(objpfx)crtn.s-new + rm -f $(objpfx)crtcommon.tmp + mv -f $(objpfx)crti.s-new $(objpfx)crti.s + mv -f $(objpfx)crtn.s-new $(objpfx)crtn.s +endif + + +include ../Rules + +# The startfile is installed under different names, so we just call our +# source file `start.c' and copy to the installed name after compiling. +$(objpfx)$(start-installed-name): $(objpfx)start.o + -rm -f $@ + ln $< $@ + +# These extra files are sometimes expected by system standard linking +# procedures, but we have nothing for them to do. So compile empty files. +$(addprefix $(objpfx),$(filter-out $(start-installed-name),$(csu-dummies))): + cp /dev/null $(@:.o=.c) + $(COMPILE.c) $(@:.o=.c) $(OUTPUT_OPTION) + rm -f $(@:.o=.c) + diff --git a/csu/initfini.c b/csu/initfini.c new file mode 100644 index 00000000000..ea16e62ffe8 --- /dev/null +++ b/csu/initfini.c @@ -0,0 +1,85 @@ +/* Special .init and .fini section support. +Copyright (C) 1995 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +/* This file is compiled into assembly code which is then surrounded by the + lines `cat > crtcommon.tmp <<\EOF_common' and `EOF_common' and thus + becomes a shell script which creates three files of assembly code. + + * The first file is crti.s-new; this puts a function prologue at the + beginning of the .init and .fini sections and defines global symbols for + those addresses, so they can be called as functions. + + * The second file is crtn.s-new; this puts the corresponding function + epilogues in the .init and .fini sections. + + * The third file is crtcommon.tmp, which is whatever miscellaneous cruft + the compiler generated at the end; it should be appended to both crti.s-new + and crtn.s-new. */ + +#include + +/* These declarations make the functions go in the right sections when + we define them below. GCC syntax does not allow the attribute + specifications to be in the function definitions themselves. */ +void _init (void) __attribute__ ((section (".init"))); +void _fini (void) __attribute__ ((section (".fini"))); + +/* End the here document containing the initial common code. + Then move the output file crtcommon.tmp to crti.s-new and crtn.s-new. */ +asm ("\nEOF_common\n\ +mv -f crtcommon.tmp crti.s-new\n\ +cp -f crti.s-new crtn.s-new"); + +/* Append the .init prologue to crti.s-new. */ +asm ("cat >> crti.s-new <<\\EOF.crti.init"); +void +_init (void) +{ + /* End the here document containing the .init prologue code. + Then fetch the .section directive just written and append that + to crtn.s-new, followed by the function epilogue. */ + asm ("\nEOF.crti.init +\n\ + fgrep .init crti.s-new >>crtn.s-new\n\ + cat >> crtn.s-new <<\\EOF.crtn.init"); +} + +/* End the here document containing the .init epilogue code. + Then append the .fini prologue to crti.s-new. */ +asm ("\nEOF.crtn.init\ +\n\ +cat >> crti.s-new <<\\EOF.crti.fini"); + +void +_fini (void) +{ + /* End the here document containing the .fini prologue code. + Then fetch the .section directive just written and append that + to crtn.s-new, followed by the function epilogue. */ + asm ("\nEOF.crti.fini\ +\n\ + fgrep .fini crti.s-new >>crtn.s-new\n\ + cat >> crtn.s-new <<\\EOF.crtn.fini"); +} + +/* End the here document containing the .fini epilogue code. + Finally, put the remainder of the generated assembly into crtcommon.tmp. */ +asm ("\nEOF.crtn.fini\ +\n\ +cat > crtcommon.tmp <<\\EOF_common"); diff --git a/ctype.h b/ctype.h new file mode 100644 index 00000000000..7b51e1f5ebc --- /dev/null +++ b/ctype.h @@ -0,0 +1 @@ +#include diff --git a/ctype/Makefile b/ctype/Makefile new file mode 100644 index 00000000000..21dfc8e3b1e --- /dev/null +++ b/ctype/Makefile @@ -0,0 +1,29 @@ +# Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# +# Sub-makefile for ctype portion of the library. +# +subdir := ctype + +routines := ctype ctype-extn +aux := ctype-info + +tests := test_ctype + +include ../Rules diff --git a/ctype/ctype-extn.c b/ctype/ctype-extn.c new file mode 100644 index 00000000000..ccf5552c858 --- /dev/null +++ b/ctype/ctype-extn.c @@ -0,0 +1,32 @@ +/* Copyright (C) 1991 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include + +#define __NO_CTYPE +#include + +/* Real function versions of the non-ANSI ctype functions. */ + +int DEFUN(isblank, (c), int c) { return __isctype ((c), _ISblank); } + +int DEFUN(_tolower, (c), int c) { return __tolower(c); } +int DEFUN(_toupper, (c), int c) { return __toupper(c); } + +int DEFUN(toascii, (c), int c) { return __toascii(c); } +int DEFUN(isascii, (c), int c) { return __isascii(c); } diff --git a/ctype/ctype-info.c b/ctype/ctype-info.c new file mode 100644 index 00000000000..2a1e596223c --- /dev/null +++ b/ctype/ctype-info.c @@ -0,0 +1,30 @@ +/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include + +/* Defined in locale/locale-C-ct.c. */ +extern CONST unsigned short int __ctype_b_C[]; +extern CONST short int __ctype_tolower_C[]; +extern CONST short int __ctype_toupper_C[]; + +CONST unsigned short int *__ctype_b = __ctype_b_C + 1; +CONST short int *__ctype_tolower = __ctype_tolower_C + 1; +CONST short int *__ctype_toupper = __ctype_toupper_C + 1; diff --git a/ctype/ctype.c b/ctype/ctype.c new file mode 100644 index 00000000000..ee874de057b --- /dev/null +++ b/ctype/ctype.c @@ -0,0 +1,51 @@ +/* Copyright (C) 1991, 1992 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include + +#define __NO_CTYPE +#include + +/* Provide real-function versions of all the ctype macros. */ + +#define func(name, type) \ + int DEFUN(name, (c), int c) { return __isctype(c, type); } + +func(isalnum, _ISalnum) +func(isalpha, _ISalpha) +func(iscntrl, _IScntrl) +func(isdigit, _ISdigit) +func(islower, _ISlower) +func(isgraph, _ISgraph) +func(isprint, _ISprint) +func(ispunct, _ISpunct) +func(isspace, _ISspace) +func(isupper, _ISupper) +func(isxdigit, _ISxdigit) + +int +DEFUN(tolower, (c), int c) +{ + return __tolower (c); +} + +int +DEFUN(toupper, (c), int c) +{ + return __toupper (c); +} diff --git a/ctype/ctype.h b/ctype/ctype.h new file mode 100644 index 00000000000..0f35d2a1d79 --- /dev/null +++ b/ctype/ctype.h @@ -0,0 +1,152 @@ +/* Copyright (C) 1991, 1992, 1993, 1995 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the, 1992 Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +/* + * ANSI Standard 4.3: CHARACTER HANDLING + */ + +#ifndef _CTYPE_H + +#define _CTYPE_H 1 +#include + +__BEGIN_DECLS + +/* These are all the characteristics of characters. All the + interdependencies (such as that an alphabetic is an uppercase or a + lowercase) are here. If there get to be more than + (sizeof (unsigned short int) * CHAR_BIT) distinct characteristics, + many things must be changed that use `unsigned short int's. */ +enum +{ + _ISupper = 1 << 0, /* UPPERCASE. */ + _ISlower = 1 << 1, /* lowercase. */ + _IScntrl = 1 << 2, /* Control character. */ + _ISdigit = 1 << 3, /* Numeric. */ + _ISspace = 1 << 4, /* Whitespace. */ + _IShex = 1 << 5, /* A - F, a - f. */ + _ISpunct = 1 << 6, /* Punctuation. */ + _NOgraph = 1 << 7, /* Printing but nongraphical. */ + _ISblank = 1 << 8, /* Blank (usually SPC and TAB). */ + _ISalpha = 1 << 9, /* Alphabetic. */ + _ISalnum = _ISalpha | _ISdigit, /* Alphanumeric. */ + _ISxdigit = _ISdigit | _IShex, /* Hexadecimal numeric. */ + _ISgraph = _ISalnum | _ISpunct, /* Graphical. */ + _ISprint = _ISgraph | _NOgraph /* Printing. */ +}; + +/* These are defined in localeinfo.c. + The declarations here must match those in localeinfo.h. + + These point to the second element ([1]) of arrays of size (UCHAR_MAX + 1). + EOF is -1, so [EOF] is the first element of the original array. + ANSI requires that the ctype functions work for `unsigned char' values + and for EOF. The case conversion arrays are of `short int's rather than + `unsigned char's because tolower (EOF) must be EOF, which doesn't fit + into an `unsigned char'. */ +extern __const unsigned short int *__ctype_b; /* Characteristics. */ +extern __const short int *__ctype_tolower; /* Case conversions. */ +extern __const short int *__ctype_toupper; /* Case conversions. */ + +#define __isctype(c, type) \ + (__ctype_b[(int) (c)] & (unsigned short int) type) + +#define __isascii(c) (((c) & (1 << 7)) == 0) /* If high bit is set. */ +#define __toascii(c) ((c) & 0x7f) /* Mask off high bit. */ + +#define __tolower(c) ((int) __ctype_tolower[(int) (c)]) +#define __toupper(c) ((int) __ctype_toupper[(int) (c)]) + +#define __exctype(name) extern int name __P ((int)) + +/* The following names are all functions: + int isCHARACTERISTIC(int c); + which return nonzero iff C has CHARACTERISTIC. + For the meaning of the characteristic names, see the `enum' above. */ +__exctype (isalnum); +__exctype (isalpha); +__exctype (iscntrl); +__exctype (isdigit); +__exctype (islower); +__exctype (isgraph); +__exctype (isprint); +__exctype (ispunct); +__exctype (isspace); +__exctype (isupper); +__exctype (isxdigit); + +#ifdef __USE_GNU +__exctype (isblank); +#endif + + +/* Return the lowercase version of C. */ +extern int tolower __P ((int __c)); + +/* Return the uppercase version of C. */ +extern int toupper __P ((int __c)); + + +#if defined(__USE_SVID) || defined(__USE_MISC) + +/* Return nonzero iff C is in the ASCII set + (i.e., is no more than 7 bits wide). */ +extern int isascii __P ((int __c)); + +/* Return the part of C that is in the ASCII set + (i.e., the low-order 7 bits of C). */ +extern int toascii __P ((int __c)); + +#endif /* Use SVID or use misc. */ + +#ifdef __USE_SVID +/* These are the same as `toupper' and and `tolower'. */ +__exctype (_toupper); +__exctype (_tolower); +#endif + +#ifndef __NO_CTYPE +#define isalnum(c) __isctype((c), _ISalnum) +#define isalpha(c) __isctype((c), _ISalpha) +#define iscntrl(c) __isctype((c), _IScntrl) +#define isdigit(c) __isctype((c), _ISdigit) +#define islower(c) __isctype((c), _ISlower) +#define isgraph(c) __isctype((c), _ISgraph) +#define isprint(c) __isctype((c), _ISprint) +#define ispunct(c) __isctype((c), _ISpunct) +#define isspace(c) __isctype((c), _ISspace) +#define isupper(c) __isctype((c), _ISupper) +#define isxdigit(c) __isctype((c), _ISxdigit) + +#ifdef __USE_GNU +#define isblank(c) __isctype((c), _ISblank) +#endif + +#define tolower(c) __tolower(c) +#define toupper(c) __toupper(c) + +#if defined(__USE_SVID) || defined(__USE_MISC) +#define isascii(c) __isascii(c) +#define toascii(c) __toascii(c) +#endif + +#endif /* Not __NO_CTYPE. */ + +__END_DECLS + +#endif /* ctype.h */ diff --git a/ctype/test_ctype.c b/ctype/test_ctype.c new file mode 100644 index 00000000000..622e5bf7622 --- /dev/null +++ b/ctype/test_ctype.c @@ -0,0 +1,92 @@ +/* Copyright (C) 1991, 1994 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include +#include +#include + +#define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#define XOR(e,f) (((e) && !(f)) || (!(e) && (f))) + +#ifdef __GNUC__ +__inline +#endif +static void +DEFUN(print_char, (c), unsigned char c) +{ + printf("%d/", (int) c); + if (isgraph(c)) + printf("'%c'", c); + else + printf("'\\%.3o'", c); +} + +int +DEFUN(main, (argc, argv), int argc AND char **argv) +{ + register unsigned short int c; + int lose = 0; + + for (c = 0; c <= UCHAR_MAX; ++c) + { + print_char (c); + + if (XOR (islower (c), ISLOWER (c)) || toupper (c) != TOUPPER (c)) + { + fputs (" BOGUS", stdout); + ++lose; + } + + if (isascii(c)) + fputs(" isascii", stdout); + if (isalnum(c)) + fputs(" isalnum", stdout); + if (isalpha(c)) + fputs(" isalpha", stdout); + if (iscntrl(c)) + fputs(" iscntrl", stdout); + if (isdigit(c)) + fputs(" isdigit", stdout); + if (isgraph(c)) + fputs(" isgraph", stdout); + if (islower(c)) + fputs(" islower", stdout); + if (isprint(c)) + fputs(" isprint", stdout); + if (ispunct(c)) + fputs(" ispunct", stdout); + if (isspace(c)) + fputs(" isspace", stdout); + if (isupper(c)) + fputs(" isupper", stdout); + if (isxdigit(c)) + fputs(" isxdigit", stdout); + if (isblank(c)) + fputs(" isblank", stdout); + fputs("; lower = ", stdout); + print_char(tolower(c)); + fputs("; upper = ", stdout); + print_char(toupper(c)); + putchar('\n'); + } + + exit (lose ? EXIT_FAILURE : EXIT_SUCCESS); +} diff --git a/dirent.h b/dirent.h new file mode 100644 index 00000000000..f59a6b778b9 --- /dev/null +++ b/dirent.h @@ -0,0 +1 @@ +#include diff --git a/dirent/Makefile b/dirent/Makefile new file mode 100644 index 00000000000..ed3335ce1b7 --- /dev/null +++ b/dirent/Makefile @@ -0,0 +1,32 @@ +# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public License as +# published by the Free Software Foundation; either version 2 of the +# License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Library General Public License for more details. + +# You should have received a copy of the GNU Library General Public +# License along with the GNU C Library; see the file COPYING.LIB. If +# not, write to the Free Software Foundation, Inc., 675 Mass Ave, +# Cambridge, MA 02139, USA. + +# +# Sub-makefile for dirent portion of the library. +# +subdir := dirent + +headers := dirent.h dirstream.h +routines := opendir closedir readdir rewinddir \ + seekdir telldir scandir alphasort \ + getdents +distribute := direct.h + +tests := list tst-seekdir + +include ../Rules diff --git a/dirent/alphasort.c b/dirent/alphasort.c new file mode 100644 index 00000000000..a7bdf3820ee --- /dev/null +++ b/dirent/alphasort.c @@ -0,0 +1,29 @@ +/* Copyright (C) 1992 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include + +int +DEFUN(alphasort, (a, b), + CONST PTR a AND CONST PTR b) +{ + return strcmp (((struct dirent *) a)->d_name, + ((struct dirent *) b)->d_name); +} diff --git a/dirent/dirent.h b/dirent/dirent.h new file mode 100644 index 00000000000..b102a4786c6 --- /dev/null +++ b/dirent/dirent.h @@ -0,0 +1,149 @@ +/* Copyright (C) 1991, 1992, 1993, 1994 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the, 1992 Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +/* + * POSIX Standard: 5.1.2 Directory Operations + */ + +#ifndef _DIRENT_H + +#define _DIRENT_H 1 +#include + +__BEGIN_DECLS + +#include + + +/* Directory entry structure. + + This structure is laid out identically to the `struct direct' that + represents directory entries in the GNU Hurd and in BSD 4.4 (and + incidentally, on disk in the Berkeley fast file system). The `readdir' + implementations for GNU and BSD know this; you must change them if you + change this structure. */ + +struct dirent + { + __ino_t d_fileno; /* File serial number. */ + unsigned short int d_reclen; /* Length of the whole `struct dirent'. */ + unsigned char d_type; /* File type, possibly unknown. */ + unsigned char d_namlen; /* Length of the file name. */ + + /* Only this member is in the POSIX standard. */ + char d_name[1]; /* File name (actually longer). */ + }; + +#if defined(__USE_BSD) || defined(__USE_MISC) +#define d_ino d_fileno /* Backward compatibility. */ +#endif + +#ifdef __USE_BSD +/* File types for `d_type'. */ +enum + { + DT_UNKNOWN = 0, + DT_FIFO = 1, + DT_CHR = 2, + DT_DIR = 4, + DT_BLK = 6, + DT_REG = 8, + DT_LNK = 10, + DT_SOCK = 12 + }; + +/* Convert between stat structure types and directory types. */ +#define IFTODT(mode) (((mode) & 0170000) >> 12) +#define DTTOIF(dirtype) ((dirtype) << 12) +#endif + + +/* Get the system-dependent definition of `DIR', + the data type of directory stream objects. */ +#include + +/* Open a directory stream on NAME. + Return a DIR stream on the directory, or NULL if it could not be opened. */ +extern DIR *opendir __P ((__const char *__name)); + +/* Close the directory stream DIRP. + Return 0 if successful, -1 if not. */ +extern int closedir __P ((DIR * __dirp)); + +/* Read a directory entry from DIRP. + Return a pointer to a `struct dirent' describing the entry, + or NULL for EOF or error. The storage returned may be overwritten + by a later readdir call on the same DIR stream. */ +extern struct dirent *readdir __P ((DIR * __dirp)); + +/* Rewind DIRP to the beginning of the directory. */ +extern void rewinddir __P ((DIR * __dirp)); + +#if defined(__USE_BSD) || defined(__USE_MISC) + +#ifndef MAXNAMLEN +/* Get the definitions of the POSIX.1 limits. */ +#include + +/* `MAXNAMLEN' is the BSD name for what POSIX calls `NAME_MAX'. */ +#ifdef NAME_MAX +#define MAXNAMLEN NAME_MAX +#else +#define MAXNAMLEN 255 +#endif +#endif + +#include +#define __need_size_t +#include + +/* Seek to position POS on DIRP. */ +extern void seekdir __P ((DIR * __dirp, __off_t __pos)); + +/* Return the current position of DIRP. */ +extern __off_t telldir __P ((DIR * __dirp)); + +/* Scan the directory DIR, calling SELECT on each directory entry. + Entries for which SELECT returns nonzero are individually malloc'd, + sorted using qsort with CMP, and collected in a malloc'd array in + *NAMELIST. Returns the number of entries selected, or -1 on error. */ +extern int scandir __P ((__const char *__dir, + struct dirent ***__namelist, + int (*__select) __P ((struct dirent *)), + int (*__cmp) __P ((__const __ptr_t, + __const __ptr_t)))); + +/* Function to compare two `struct dirent's alphabetically. */ +extern int alphasort __P ((__const __ptr_t, __const __ptr_t)); + + +/* Read directory entries from FD into BUF, reading at most NBYTES. + Reading starts at offset *BASEP, and *BASEP is updated with the new + position after reading. Returns the number of bytes read; zero when at + end of directory; or -1 for errors. */ +extern __ssize_t __getdirentries __P ((int __fd, char *__buf, + size_t __nbytes, __off_t *__basep)); +extern __ssize_t getdirentries __P ((int __fd, char *__buf, + size_t __nbytes, __off_t *__basep)); + + +#endif /* Use BSD or misc. */ + +__END_DECLS + +#endif /* dirent.h */ diff --git a/dirent/list.c b/dirent/list.c new file mode 100644 index 00000000000..606bd42591b --- /dev/null +++ b/dirent/list.c @@ -0,0 +1,68 @@ +/* Copyright (C) 1991, 1993 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include +#include +#include +#include + + +void +DEFUN(test, (name), CONST char *name) +{ + DIR *dirp; + struct dirent *entp; + + puts(name); + + dirp = opendir(name); + if (dirp == NULL) + { + perror("opendir"); + return; + } + + errno = 0; + while ((entp = readdir(dirp)) != NULL) + printf("%s\tfile number %lu\n", + entp->d_name, (unsigned long int) entp->d_fileno); + + if (errno) + perror ("readdir"); + + if (closedir(dirp) < 0) + perror("closedir"); +} + +int +DEFUN(main, (argc, argv), int argc AND char **argv) +{ + --argc; + ++argv; + + if (argc == 0) + test("."); + else + while (argc-- > 0) + test(*argv++); + + exit(0); + return(0); +} diff --git a/dirent/scandir.c b/dirent/scandir.c new file mode 100644 index 00000000000..6794eadf0dd --- /dev/null +++ b/dirent/scandir.c @@ -0,0 +1,89 @@ +/* Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include + +int +DEFUN(scandir, (dir, namelist, select, cmp), + CONST char *dir AND + struct dirent ***namelist AND + int EXFUN((*select), (struct dirent *)) AND + int EXFUN((*cmp), (CONST PTR, CONST PTR))) +{ + DIR *dp = opendir (dir); + struct dirent **v = NULL; + size_t vsize = 0, i; + struct dirent *d; + int save; + + if (dp == NULL) + return -1; + + save = errno; + errno = 0; + + i = 0; + while ((d = readdir (dp)) != NULL) + if (select == NULL || (*select) (d)) + { + if (i == vsize) + { + struct dirent **new; + if (vsize == 0) + vsize = 10; + else + vsize *= 2; + new = (struct dirent **) realloc (v, vsize * sizeof (*v)); + if (new == NULL) + { + lose: + errno = ENOMEM; + break; + } + v = new; + } + + v[i] = (struct dirent *) malloc (sizeof (**v)); + if (v[i] == NULL) + goto lose; + + *v[i++] = *d; + } + + if (errno != 0) + { + save = errno; + (void) closedir (dp); + while (i > 0) + free (v[--i]); + free (v); + errno = save; + return -1; + } + + (void) closedir (dp); + errno = save; + + /* Sort the list if we have a comparison function to sort with. */ + if (cmp != NULL) + qsort (v, i, sizeof (*v), cmp); + *namelist = v; + return i; +} diff --git a/dirent/tst-seekdir.c b/dirent/tst-seekdir.c new file mode 100644 index 00000000000..fc282468fe9 --- /dev/null +++ b/dirent/tst-seekdir.c @@ -0,0 +1,40 @@ +#include +#include +#include + +int +main () +{ + + DIR * dirp; + long save3; + int i = 0; + struct dirent *dp; + + dirp = opendir("."); + for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) + { + /* save position 3 (fourth entry) */ + if (i++ == 3) + save3 = telldir(dirp); + + printf("%s\n", dp->d_name); + + /* stop at 400 (just to make sure dirp->__offset and dirp->__size are + scrambled */ + if (i == 400) + break; + } + + /* go back to saved entry */ + seekdir (dirp, save3); + + + /* print remaining files (3-last) */ + for (dp = readdir(dirp); dp != NULL; dp = readdir(dirp)) + printf("%s\n", dp->d_name); + + + closedir (dirp); + exit(0); +} diff --git a/elf/elf.h b/elf/elf.h new file mode 100644 index 00000000000..452b5c92d9e --- /dev/null +++ b/elf/elf.h @@ -0,0 +1,587 @@ +/* This file defines standard ELF types, structures, and macros. +Copyright (C) 1995 Free Software Foundation, Inc. +Contributed by Ian Lance Taylor (ian@cygnus.com). + +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#ifndef _ELF_H +#define _ELF_H 1 + + +/* Standard ELF types. + + Using __attribute__ mode ensures that gcc will choose the right for + these types. */ + +typedef unsigned int Elf32_Addr __attribute__ ((mode (SI))); +typedef unsigned int Elf32_Half __attribute__ ((mode (HI))); +typedef unsigned int Elf32_Off __attribute__ ((mode (SI))); +typedef int Elf32_Sword __attribute__ ((mode (SI))); +typedef unsigned int Elf32_Word __attribute__ ((mode (SI))); + +/* The ELF file header. This appears at the start of every ELF file. */ + +#define EI_NIDENT (16) + +typedef struct +{ + unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ + Elf32_Half e_type; /* Object file type */ + Elf32_Half e_machine; /* Architecture */ + Elf32_Word e_version; /* Object file version */ + Elf32_Addr e_entry; /* Entry point virtual address */ + Elf32_Off e_phoff; /* Program header table file offset */ + Elf32_Off e_shoff; /* Section header table file offset */ + Elf32_Word e_flags; /* Processor-specific flags */ + Elf32_Half e_ehsize; /* ELF header size in bytes */ + Elf32_Half e_phentsize; /* Program header table entry size */ + Elf32_Half e_phnum; /* Program header table entry count */ + Elf32_Half e_shentsize; /* Section header table entry size */ + Elf32_Half e_shnum; /* Section header table entry count */ + Elf32_Half e_shstrndx; /* Section header string table index */ +} Elf32_Ehdr; + +/* Fields in the e_ident array. The EI_* macros are indices into the + array. The macros under each EI_* macro are the values the byte + may have. */ + +#define EI_MAG0 0 /* File identification byte 0 index */ +#define ELFMAG0 0x7f /* Magic number byte 0 */ + +#define EI_MAG1 1 /* File identification byte 1 index */ +#define ELFMAG1 'E' /* Magic number byte 1 */ + +#define EI_MAG2 2 /* File identification byte 2 index */ +#define ELFMAG2 'L' /* Magic number byte 2 */ + +#define EI_MAG3 3 /* File identification byte 3 index */ +#define ELFMAG3 'F' /* Magic number byte 3 */ + +#define EI_CLASS 4 /* File class byte index */ +#define ELFCLASSNONE 0 /* Invalid class */ +#define ELFCLASS32 1 /* 32-bit objects */ +#define ELFCLASS64 2 /* 64-bit objects */ + +#define EI_DATA 5 /* Data encoding byte index */ +#define ELFDATANONE 0 /* Invalid data encoding */ +#define ELFDATA2LSB 1 /* 2's complement, little endian */ +#define ELFDATA2MSB 2 /* 2's complement, big endian */ + +#define EI_VERSION 6 /* File version byte index */ + /* Value must be EV_CURRENT */ + +#define EI_PAD 7 /* Byte index of padding bytes */ + +/* Legal values for e_type (object file type). */ + +#define ET_NONE 0 /* No file type */ +#define ET_REL 1 /* Relocatable file */ +#define ET_EXEC 2 /* Executable file */ +#define ET_DYN 3 /* Shared object file */ +#define ET_CORE 4 /* Core file */ +#define ET_LOPROC 0xff00 /* Processor-specific */ +#define ET_HIPROC 0xffff /* Processor-specific */ + +/* Legal values for e_machine (architecture). */ + +#define EM_NONE 0 /* No machine */ +#define EM_M32 1 /* AT&T WE 32100 */ +#define EM_SPARC 2 /* SUN SPARC */ +#define EM_386 3 /* Intel 80386 */ +#define EM_68K 4 /* Motorola m68k family */ +#define EM_88K 5 /* Motorola m88k family */ +#define EM_486 6 /* Intel 80486 */ +#define EM_860 7 /* Intel 80860 */ +#define EM_MIPS 8 /* MIPS R3000 big-endian */ +#define EM_S370 9 /* Amdhal */ +#define EM_MIPS_RS4_BE 10 /* MIPS R4000 big-endian */ + +#define EM_SPARC64 11 /* SPARC v9 (not official) 64-bit */ + +#define EM_PARISC 15 /* HPPA */ + +/* If it is necessary to assign new unofficial EM_* values, please + pick large random numbers (0x8523, 0xa7f2, etc.) to minimize the + chances of collision with official or non-GNU unofficial values. */ + +/* Legal values for e_version (version). */ + +#define EV_NONE 0 /* Invalid ELF version */ +#define EV_CURRENT 1 /* Current version */ + +/* Section header. */ + +typedef struct +{ + Elf32_Word sh_name; /* Section name (string tbl index) */ + Elf32_Word sh_type; /* Section type */ + Elf32_Word sh_flags; /* Section flags */ + Elf32_Addr sh_addr; /* Section virtual addr at execution */ + Elf32_Off sh_offset; /* Section file offset */ + Elf32_Word sh_size; /* Section size in bytes */ + Elf32_Word sh_link; /* Link to another section */ + Elf32_Word sh_info; /* Additional section information */ + Elf32_Word sh_addralign; /* Section alignment */ + Elf32_Word sh_entsize; /* Entry size if section holds table */ +} Elf32_Shdr; + +/* Special section indices. */ + +#define SHN_UNDEF 0 /* Undefined section */ +#define SHN_LORESERVE 0xff00 /* Start of reserved indices */ +#define SHN_LOPROC 0xff00 /* Start of processor-specific */ +#define SHN_HIPROC 0xff1f /* End of processor-specific */ +#define SHN_ABS 0xfff1 /* Associated symbol is absolute */ +#define SHN_COMMON 0xfff2 /* Associated symbol is common */ +#define SHN_HIRESERVE 0xffff /* End of reserved indices */ + +/* Legal values for sh_type (section type). */ + +#define SHT_NULL 0 /* Section header table entry unused */ +#define SHT_PROGBITS 1 /* Program data */ +#define SHT_SYMTAB 2 /* Symbol table */ +#define SHT_STRTAB 3 /* String table */ +#define SHT_RELA 4 /* Relocation entries with addends */ +#define SHT_HASH 5 /* Symbol hash table */ +#define SHT_DYNAMIC 6 /* Dynamic linking information */ +#define SHT_NOTE 7 /* Notes */ +#define SHT_NOBITS 8 /* Program space with no data (bss) */ +#define SHT_REL 9 /* Relocation entries, no addends */ +#define SHT_SHLIB 10 /* Reserved */ +#define SHT_DYNSYM 11 /* Dynamic linker symbol table */ +#define SHT_LOPROC 0x70000000 /* Start of processor-specific */ +#define SHT_HIPROC 0x7fffffff /* End of processor-specific */ +#define SHT_LOUSER 0x80000000 /* Start of application-specific */ +#define SHT_HIUSER 0x8fffffff /* End of application-specific */ + +/* Legal values for sh_flags (section flags). */ + +#define SHF_WRITE (1 << 0) /* Writable */ +#define SHF_ALLOC (1 << 1) /* Occupies memory during execution */ +#define SHF_EXECINSTR (1 << 2) /* Executable */ +#define SHF_MASKPROC 0xf0000000 /* Processor-specific */ + +/* Symbol table entry. */ + +typedef struct +{ + Elf32_Word st_name; /* Symbol name (string tbl index) */ + Elf32_Addr st_value; /* Symbol value */ + Elf32_Word st_size; /* Symbol size */ + unsigned char st_info; /* Symbol type and binding */ + unsigned char st_other; /* No defined meaning, 0 */ + Elf32_Half st_shndx; /* Section index */ +} Elf32_Sym; + +/* Special symbol index. */ + +#define STN_UNDEF 0 /* Undefined symbol */ + +/* How to extract and insert information held in the st_info field. */ + +#define ELF32_ST_BIND(val) (((unsigned char) (val)) >> 4) +#define ELF32_ST_TYPE(val) ((val) & 0xf) +#define ELF32_ST_INFO(bind, type) (((bind) << 4) + ((type) & 0xf)) + +/* Legal values for ST_BIND subfield of st_info (symbol binding). */ + +#define STB_LOCAL 0 /* Local symbol */ +#define STB_GLOBAL 1 /* Global symbol */ +#define STB_WEAK 2 /* Weak symbol */ +#define STB_LOPROC 13 /* Start of processor-specific */ +#define STB_HIPROC 15 /* End of processor-specific */ + +/* Legal values for ST_TYPE subfield of st_info (symbol type). */ + +#define STT_NOTYPE 0 /* Symbol type is unspecified */ +#define STT_OBJECT 1 /* Symbol is a data object */ +#define STT_FUNC 2 /* Symbol is a code object */ +#define STT_SECTION 3 /* Symbol associated with a section */ +#define STT_FILE 4 /* Symbol's name is file name */ +#define STT_LOPROC 13 /* Start of processor-specific */ +#define STT_HIPROC 15 /* End of processor-specific */ + +/* Relocation table entry without addend (in section of type SHT_REL). */ + +typedef struct +{ + Elf32_Addr r_offset; /* Address */ + Elf32_Word r_info; /* Relocation type and symbol index */ +} Elf32_Rel; + +/* Relocation table entry with addend (in section of type SHT_RELA). */ + +typedef struct +{ + Elf32_Addr r_offset; /* Address */ + Elf32_Word r_info; /* Relocation type and symbol index */ + Elf32_Sword r_addend; /* Addend */ +} Elf32_Rela; + +/* How to extract and insert information held in the r_info field. */ + +#define ELF32_R_SYM(val) ((val) >> 8) +#define ELF32_R_TYPE(val) ((val) & 0xff) +#define ELF32_R_INFO(sym, type) (((sym) << 8) + ((type) & 0xff)) + +/* Program segment header. */ + +typedef struct { + Elf32_Word p_type; /* Segment type */ + Elf32_Off p_offset; /* Segment file offset */ + Elf32_Addr p_vaddr; /* Segment virtual address */ + Elf32_Addr p_paddr; /* Segment physical address */ + Elf32_Word p_filesz; /* Segment size in file */ + Elf32_Word p_memsz; /* Segment size in memory */ + Elf32_Word p_flags; /* Segment flags */ + Elf32_Word p_align; /* Segment alignment */ +} Elf32_Phdr; + +/* Legal values for p_type (segment type). */ + +#define PT_NULL 0 /* Program header table entry unused */ +#define PT_LOAD 1 /* Loadable program segment */ +#define PT_DYNAMIC 2 /* Dynamic linking information */ +#define PT_INTERP 3 /* Program interpreter */ +#define PT_NOTE 4 /* Auxiliary information */ +#define PT_SHLIB 5 /* Reserved */ +#define PT_PHDR 6 /* Entry for header table itself */ +#define PT_LOPROC 0x70000000 /* Start of processor-specific */ +#define PT_HIPROC 0x7fffffff /* End of processor-specific */ + +/* Legal values for p_flags (segment flags). */ + +#define PF_X (1 << 0) /* Segment is executable */ +#define PF_W (1 << 1) /* Segment is writable */ +#define PF_R (1 << 2) /* Segment is readable */ +#define PF_MASKPROC 0xf0000000 /* Processor-specific */ + +/* Dynamic section entry. */ + +typedef struct +{ + Elf32_Sword d_tag; /* Dynamic entry type */ + union + { + Elf32_Word d_val; /* Integer value */ + Elf32_Addr d_ptr; /* Address value */ + } d_un; +} Elf32_Dyn; + +/* Legal values for d_tag (dynamic entry type). */ + +#define DT_NULL 0 /* Marks end of dynamic section */ +#define DT_NEEDED 1 /* Name of needed library */ +#define DT_PLTRELSZ 2 /* Size in bytes of PLT relocs */ +#define DT_PLTGOT 3 /* Processor defined value */ +#define DT_HASH 4 /* Address of symbol hash table */ +#define DT_STRTAB 5 /* Address of string table */ +#define DT_SYMTAB 6 /* Address of symbol table */ +#define DT_RELA 7 /* Address of Rela relocs */ +#define DT_RELASZ 8 /* Total size of Rela relocs */ +#define DT_RELAENT 9 /* Size of one Rela reloc */ +#define DT_STRSZ 10 /* Size of string table */ +#define DT_SYMENT 11 /* Size of one symbol table entry */ +#define DT_INIT 12 /* Address of init function */ +#define DT_FINI 13 /* Address of termination function */ +#define DT_SONAME 14 /* Name of shared object */ +#define DT_RPATH 15 /* Library search path */ +#define DT_SYMBOLIC 16 /* Start symbol search here */ +#define DT_REL 17 /* Address of Rel relocs */ +#define DT_RELSZ 18 /* Total size of Rel relocs */ +#define DT_RELENT 19 /* Size of one Rel reloc */ +#define DT_PLTREL 20 /* Type of reloc in PLT */ +#define DT_DEBUG 21 /* For debugging; unspecified */ +#define DT_TEXTREL 22 /* Reloc might modify .text */ +#define DT_JMPREL 23 /* Address of PLT relocs */ +#define DT_LOPROC 0x70000000 /* Start of processor-specific */ +#define DT_HIPROC 0x7fffffff /* End of processor-specific */ + +/* Standard 64 bit ELF types. */ + +typedef unsigned int Elf64_Addr __attribute__ ((mode (DI))); +typedef unsigned int Elf64_Half __attribute__ ((mode (HI))); +typedef unsigned int Elf64_Off __attribute__ ((mode (DI))); +typedef int Elf64_Sword __attribute__ ((mode (SI))); +typedef int Elf64_Sxword __attribute__ ((mode (DI))); +typedef unsigned int Elf64_Word __attribute__ ((mode (SI))); +typedef unsigned int Elf64_Xword __attribute__ ((mode (DI))); +typedef unsigned int Elf64_Byte __attribute__ ((mode (QI))); +typedef unsigned int Elf64_Section __attribute__ ((mode (HI))); + +/* 64 bit ELF file header. */ + +typedef struct +{ + unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ + Elf64_Half e_type; /* Object file type */ + Elf64_Half e_machine; /* Architecture */ + Elf64_Word e_version; /* Object file version */ + Elf64_Addr e_entry; /* Entry point virtual address */ + Elf64_Off e_phoff; /* Program header table file offset */ + Elf64_Off e_shoff; /* Section header table file offset */ + Elf64_Word e_flags; /* Processor-specific flags */ + Elf64_Half e_ehsize; /* ELF header size in bytes */ + Elf64_Half e_phentsize; /* Program header table entry size */ + Elf64_Half e_phnum; /* Program header table entry count */ + Elf64_Half e_shentsize; /* Section header table entry size */ + Elf64_Half e_shnum; /* Section header table entry count */ + Elf64_Half e_shstrndx; /* Section header string table index */ +} Elf64_Ehdr; + +/* 64 bit section header. */ + +typedef struct +{ + Elf64_Word sh_name; /* Section name (string tbl index) */ + Elf64_Word sh_type; /* Section type */ + Elf64_Xword sh_flags; /* Section flags */ + Elf64_Addr sh_addr; /* Section virtual addr at execution */ + Elf64_Off sh_offset; /* Section file offset */ + Elf64_Xword sh_size; /* Section size in bytes */ + Elf64_Word sh_link; /* Link to another section */ + Elf64_Word sh_info; /* Additional section information */ + Elf64_Xword sh_addralign; /* Section alignment */ + Elf64_Xword sh_entsize; /* Entry size if section holds table */ +} Elf64_Shdr; + +/* 64 bit symbol table entry. */ + +typedef struct +{ + Elf64_Word st_name; /* Symbol name (string tbl index) */ + Elf64_Byte st_info; /* Symbol type and binding */ + Elf64_Byte st_other; /* No defined meaning, 0 */ + Elf64_Section st_shndx; /* Section index */ + Elf64_Addr st_value; /* Symbol value */ + Elf64_Xword st_size; /* Symbol size */ +} Elf64_Sym; + +/* The 64 bit st_info field is the same as the 32 bit one. */ + +#define ELF64_ST_BIND(val) (((unsigned char) (val)) >> 4) +#define ELF64_ST_TYPE(val) ((val) & 0xf) +#define ELF64_ST_INFO(bind, type) (((bind) << 4) + ((type) & 0xf)) + +/* I have seen two different definitions of the Elf64_Rel and + Elf64_Rela structures, so we'll leave them out until Novell (or + whoever) gets their act together. */ + +/* Auxiliary vector. */ + +/* This vector is normally only used by the program interpreter. The + usual definition in an ABI supplement uses the name auxv_t. The + vector is not usually defined in a standard file, but it + can't hurt. We rename it to avoid conflicts. The sizes of these + types are an arrangement between the exec server and the program + interpreter, so we don't fully specify them here. */ + +typedef struct +{ + int a_type; /* Entry type */ + union + { + long a_val; /* Integer value */ + void *a_ptr; /* Pointer value */ + void (*a_fcn) (); /* Function pointer value */ + } a_un; +} Elf32_auxv_t; + +/* Legal values for a_type (entry type). */ + +#define AT_NULL 0 /* End of vector */ +#define AT_IGNORE 1 /* Entry should be ignored */ +#define AT_EXECFD 2 /* File descriptor of program */ +#define AT_PHDR 3 /* Program headers for program */ +#define AT_PHENT 4 /* Size of program header entry */ +#define AT_PHNUM 5 /* Number of program headers */ +#define AT_PAGESZ 6 /* System page size */ +#define AT_BASE 7 /* Base address of interpreter */ +#define AT_FLAGS 8 /* Flags */ +#define AT_ENTRY 9 /* Entry point of program */ +#define AT_NOTELF 10 /* Program is not ELF */ +#define AT_UID 11 /* Real uid */ +#define AT_EUID 12 /* Effective uid */ +#define AT_GID 13 /* Read gid */ +#define AT_EGID 14 /* Effective gid */ + +/* Intel 80386 specific definitions. */ + +/* i386 relocs. */ + +#define R_386_NONE 0 /* No reloc */ +#define R_386_32 1 /* Direct 32 bit */ +#define R_386_PC32 2 /* PC relative 32 bit */ +#define R_386_GOT32 3 /* 32 bit GOT entry */ +#define R_386_PLT32 4 /* 32 bit PLT address */ +#define R_386_COPY 5 /* Copy symbol at runtime */ +#define R_386_GLOB_DAT 6 /* Create GOT entry */ +#define R_386_JMP_SLOT 7 /* Create PLT entry */ +#define R_386_RELATIVE 8 /* Adjust by program base */ +#define R_386_GOTOFF 9 /* 32 bit offset to GOT */ +#define R_386_GOTPC 10 /* 32 bit PC relative offset to GOT */ + +/* SUN SPARC specific definitions. */ + +/* SPARC relocs. */ + +#define R_SPARC_NONE 0 /* No reloc */ +#define R_SPARC_8 1 /* Direct 8 bit */ +#define R_SPARC_16 2 /* Direct 16 bit */ +#define R_SPARC_32 3 /* Direct 32 bit */ +#define R_SPARC_DISP8 4 /* PC relative 8 bit */ +#define R_SPARC_DISP16 5 /* PC relative 16 bit */ +#define R_SPARC_DISP32 6 /* PC relative 32 bit */ +#define R_SPARC_WDISP30 7 /* PC relative 30 bit shifted */ +#define R_SPARC_WDISP22 8 /* PC relative 22 bit shifted */ +#define R_SPARC_HI22 9 /* High 22 bit */ +#define R_SPARC_22 10 /* Direct 22 bit */ +#define R_SPARC_13 11 /* Direct 13 bit */ +#define R_SPARC_LO10 12 /* Truncated 10 bit */ +#define R_SPARC_GOT10 13 /* Truncated 10 bit GOT entry */ +#define R_SPARC_GOT13 14 /* 13 bit GOT entry */ +#define R_SPARC_GOT22 15 /* 22 bit GOT entry shifted */ +#define R_SPARC_PC10 16 /* PC relative 10 bit truncated */ +#define R_SPARC_PC22 17 /* PC relative 22 bit shifted */ +#define R_SPARC_WPLT30 18 /* 30 bit PC relative PLT address */ +#define R_SPARC_COPY 19 /* Copy symbol at runtime */ +#define R_SPARC_GLOB_DAT 20 /* Create GOT entry */ +#define R_SPARC_JMP_SLOT 21 /* Create PLT entry */ +#define R_SPARC_RELATIVE 22 /* Adjust by program base */ +#define R_SPARC_UA32 23 /* Direct 32 bit unaligned */ + +/* MIPS R3000 specific definitions. */ + +/* Legal values for e_flags field of Elf32_Ehdr. */ + +#define EF_MIPS_NOREORDER 1 /* A .noreorder directive was used */ +#define EF_MIPS_PIC 2 /* Contains PIC code */ +#define EF_MIPS_CPIC 4 /* Uses PIC calling sequence */ +#define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level */ + +/* Special section indices. */ + +#define SHN_MIPS_ACOMMON 0xff00 /* Allocated common symbols */ +#define SHN_MIPS_SCOMMON 0xff03 /* Small common symbols */ +#define SHN_MIPS_SUNDEFINED 0xff04 /* Small undefined symbols */ + +/* Legal values for sh_type field of Elf32_Shdr. */ + +#define SHT_MIPS_LIBLIST 0x70000000 /* Shared objects used in link */ +#define SHT_MIPS_CONFLICT 0x70000002 /* Conflicting symbols */ +#define SHT_MIPS_GPTAB 0x70000003 /* Global data area sizes */ +#define SHT_MIPS_UCODE 0x70000004 /* Reserved for SGI/MIPS compilers */ +#define SHT_MIPS_DEBUG 0x70000005 /* MIPS ECOFF debugging information */ +#define SHT_MIPS_REGINFO 0x70000006 /* Register usage information */ + +/* Legal values for sh_flags field of Elf32_Shdr. */ + +#define SHF_MIPS_GPREL 0x10000000 /* Must be part of global data area */ + +/* Entries found in sections of type SHT_MIPS_GPTAB. */ + +typedef union +{ + struct + { + Elf32_Word gt_current_g_value; /* -G value used for compilation */ + Elf32_Word gt_unused; /* Not used */ + } gt_header; /* First entry in section */ + struct + { + Elf32_Word gt_g_value; /* If this value were used for -G */ + Elf32_Word gt_bytes; /* This many bytes would be used */ + } gt_entry; /* Subsequent entries in section */ +} Elf32_gptab; + +/* Entry found in sections of type SHT_MIPS_REGINFO. */ + +typedef struct +{ + Elf32_Word ri_gprmask; /* General registers used */ + Elf32_Word ri_cprmask[4]; /* Coprocessor registers used */ + Elf32_Sword ri_gp_value; /* $gp register value */ +} Elf32_RegInfo; + +/* MIPS relocs. */ + +#define R_MIPS_NONE 0 /* No reloc */ +#define R_MIPS_16 1 /* Direct 16 bit */ +#define R_MIPS_32 2 /* Direct 32 bit */ +#define R_MIPS_REL32 3 /* PC relative 32 bit */ +#define R_MIPS_26 4 /* Direct 26 bit shifted */ +#define R_MIPS_HI16 5 /* High 16 bit */ +#define R_MIPS_LO16 6 /* Low 16 bit */ +#define R_MIPS_GPREL16 7 /* GP relative 16 bit */ +#define R_MIPS_LITERAL 8 /* 16 bit literal entry */ +#define R_MIPS_GOT16 9 /* 16 bit GOT entry */ +#define R_MIPS_PC16 10 /* PC relative 16 bit */ +#define R_MIPS_CALL16 11 /* 16 bit GOT entry for function */ +#define R_MIPS_GPREL32 12 /* GP relative 32 bit */ + +/* Legal values for p_type field of Elf32_Phdr. */ + +#define PT_MIPS_REGINFO 0x70000000 /* Regiser usage information */ + +/* Legal values for d_tag field of Elf32_Dyn. */ + +#define DT_MIPS_RLD_VERSION 0x70000001 /* Runtime linker interface version */ +#define DT_MIPS_TIME_STAMP 0x70000002 /* Timestamp */ +#define DT_MIPS_ICHECKSUM 0x70000003 /* Checksum */ +#define DT_MIPS_IVERSION 0x70000004 /* Version string (string tbl index) */ +#define DT_MIPS_FLAGS 0x70000005 /* Flags */ +#define DT_MIPS_BASE_ADDRESS 0x70000006 /* Base address */ +#define DT_MIPS_CONFLICT 0x70000008 /* Address of CONFLICT section */ +#define DT_MIPS_LIBLIST 0x70000009 /* Address of LIBLIST section */ +#define DT_MIPS_LOCAL_GOTNO 0x7000000a /* Number of local GOT entries */ +#define DT_MIPS_CONFLICTNO 0x7000000b /* Number of CONFLICT entries */ +#define DT_MIPS_LIBLISTNO 0x70000010 /* Number of LIBLIST entries */ +#define DT_MIPS_SYMTABNO 0x70000011 /* Number of DYNSYM entries */ +#define DT_MIPS_UNREFEXTNO 0x70000012 /* First external DYNSYM */ +#define DT_MIPS_GOTSYM 0x70000013 /* First GOT entry in DYNSYM */ +#define DT_MIPS_HIPAGENO 0x70000014 /* Number of GOT page table entries */ + +/* Legal values for DT_MIPS_FLAG Elf32_Dyn entry. */ + +#define RHF_NONE 0 /* No flags */ +#define RHF_QUICKSTART (1 << 0) /* Use quickstart */ +#define RHF_NOTPOT (1 << 1) /* Hash size not power of 2 */ +#define RHF_NO_LIBRARY_REPLACEMENT (1 << 2) /* Ignore LD_LIBRARY_PATH */ + +/* Entries found in sections of type SHT_MIPS_LIBLIST. */ + +typedef struct +{ + Elf32_Word l_name; /* Name (string table index) */ + Elf32_Word l_time_stamp; /* Timestamp */ + Elf32_Word l_checksum; /* Checksum */ + Elf32_Word l_version; /* Interface version */ + Elf32_Word l_flags; /* Flags */ +} Elf32_Lib; + +/* Legal values for l_flags. */ + +#define LL_EXACT_MATCH (1 << 0) /* Require exact match */ +#define LL_IGNORE_INT_VER (1 << 1) /* Ignore interface version */ + +/* Entries found in sections of type SHT_MIPS_CONFLICT. */ + +typedef Elf32_Addr Elf32_Conflict; + + +#endif /* elf.h */ diff --git a/endian.h b/endian.h new file mode 100644 index 00000000000..cacf2fe9b73 --- /dev/null +++ b/endian.h @@ -0,0 +1 @@ +#include diff --git a/errno.h b/errno.h new file mode 100644 index 00000000000..08fc6802e86 --- /dev/null +++ b/errno.h @@ -0,0 +1,45 @@ +/* Copyright (C) 1991, 1992, 1993, 1994 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the, 1992 Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +/* + * ANSI Standard: 4.1.3 Errors + */ + +#ifndef _ERRNO_H + +#define _ERRNO_H 1 +#include + +__BEGIN_DECLS + +/* Get the error number constants. */ +#include + +/* Declare the `errno' variable. */ +extern int errno; + +#ifdef __USE_GNU +/* The full and simple forms of the name with which the program was + invoked. These variables are set up automatically at startup based on + the value of ARGV[0] (this works only if you use GNU ld). */ +extern char *program_invocation_name, *program_invocation_short_name; +#endif + +__END_DECLS + +#endif /* errno.h */ diff --git a/fcntl.h b/fcntl.h new file mode 100644 index 00000000000..bac1e8685d6 --- /dev/null +++ b/fcntl.h @@ -0,0 +1 @@ +#include diff --git a/features.h b/features.h new file mode 100644 index 00000000000..0778092ed90 --- /dev/null +++ b/features.h @@ -0,0 +1,157 @@ +/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#ifndef _FEATURES_H + +#define _FEATURES_H 1 + +/* These are defined by the user (or the compiler) + to specify the desired environment: + + __STRICT_ANSI__ ANSI Standard C. + _POSIX_SOURCE IEEE Std 1003.1. + _POSIX_C_SOURCE If ==1, like _POSIX_SOURCE; if ==2 add IEEE Std 1003.2. + _BSD_SOURCE ANSI, POSIX, and 4.3BSD things. + _SVID_SOURCE ANSI, POSIX, and SVID things. + _GNU_SOURCE All of the above, plus GNU extensions. + + The `-ansi' switch to the GNU C compiler defines __STRICT_ANSI__. + If none of these are defined, the default is _GNU_SOURCE. + If more than one of these are defined, they accumulate. + For example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE + together give you ANSI C, 1003.1, and 1003.2, but nothing else. + + These are defined by this file and are used by the + header files to decide what to declare or define: + + __USE_POSIX Define IEEE Std 1003.1 things. + __USE_POSIX2 Define IEEE Std 1003.2 things. + __USE_BSD Define 4.3BSD things. + __USE_SVID Define SVID things. + __USE_MISC Define things common to BSD and System V Unix. + __USE_GNU Define GNU extensions. + __FAVOR_BSD Favor 4.3BSD things in cases of conflict. + + The macro `__GNU_LIBRARY__' is defined by this file unconditionally. + + All macros defined by this file are defined as 1. + All macros listed above as possibly being defined by this file are + explicitly undefined if they are not explicitly defined. + Feature-test macros that are not defined by the user or compiler + but are implied by the other feature-test macros defined (or by the + lack of any definitions) are defined by the file. */ + + +/* Undefine everything, so we get a clean slate. */ +#undef __USE_POSIX +#undef __USE_POSIX2 +#undef __USE_BSD +#undef __USE_SVID +#undef __USE_MISC +#undef __USE_GNU +#undef __FAVOR_BSD + + +/* If nothing is defined, define _GNU_SOURCE. */ +#if (!defined(_GNU_SOURCE) && !defined(__STRICT_ANSI__) && \ + !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE) && \ + !defined(_BSD_SOURCE) && !defined(_SVID_SOURCE)) +#define _GNU_SOURCE 1 +#endif + + +/* Always use ANSI things. */ +#define __USE_ANSI 1 + + +/* If _BSD_SOURCE was defined by the user, favor BSD over POSIX. */ +#ifdef _BSD_SOURCE +#define __FAVOR_BSD 1 +#endif + + +/* If nothing (other than _GNU_SOURCE) is defined, + define _BSD_SOURCE and _SVID_SOURCE. */ +#if (!defined(__STRICT_ANSI__) && !defined(_POSIX_SOURCE) && \ + !defined(_POSIX_C_SOURCE) && !defined(_BSD_SOURCE) && \ + !defined(_SVID_SOURCE)) +#define _BSD_SOURCE 1 +#define _SVID_SOURCE 1 +#endif + +/* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2. */ +#if (!defined(__STRICT_ANSI__) && !defined(_POSIX_SOURCE) && \ + !defined(_POSIX_C_SOURCE)) +#define _POSIX_SOURCE 1 +#define _POSIX_C_SOURCE 2 +#endif + +#if defined(_POSIX_SOURCE) || _POSIX_C_SOURCE >= 1 +#define __USE_POSIX 1 +#endif + +#if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 2 +#define __USE_POSIX2 1 +#endif + +#if defined(_BSD_SOURCE) || defined(_SVID_SOURCE) +#define __USE_MISC 1 +#endif + +#ifdef _BSD_SOURCE +#define __USE_BSD 1 +#endif + +#ifdef _SVID_SOURCE +#define __USE_SVID 1 +#endif + +#ifdef _GNU_SOURCE +#define __USE_GNU 1 +#endif + + +#undef __GNU_LIBRARY__ +#define __GNU_LIBRARY__ 1 + + +#if !defined(__GNUC__) || __GNUC__ < 2 +/* In GCC version 2, (__extension__ EXPR) will not complain + about GCC extensions used in EXPR under -ansi or -pedantic. */ +#define __extension__ +#endif + + +/* This is here only because every header file already includes this one. */ +#include + +/* This is here only because every header file already includes this one. */ +#ifndef _LIBC +/* Get the definitions of all the appropriate `__stub_FUNCTION' symbols. + contains `#define __stub_FUNCTION' when FUNCTION is a stub + which will always return failure (and set errno to ENOSYS). + + We avoid including when compiling the C library itself to + avoid a dependency loop. stubs.h depends on every object file. If + this #include were done for the library source code, then every object + file would depend on stubs.h. */ + +#include +#endif + +#endif /* __features.h */ diff --git a/fnmatch.h b/fnmatch.h new file mode 100644 index 00000000000..b12b786df0f --- /dev/null +++ b/fnmatch.h @@ -0,0 +1 @@ +#include diff --git a/ftw.h b/ftw.h new file mode 100644 index 00000000000..4fb654cf220 --- /dev/null +++ b/ftw.h @@ -0,0 +1 @@ +#include diff --git a/getopt.h b/getopt.h new file mode 100644 index 00000000000..74ca6d453a4 --- /dev/null +++ b/getopt.h @@ -0,0 +1 @@ +#include diff --git a/glob.h b/glob.h new file mode 100644 index 00000000000..ce047bb1778 --- /dev/null +++ b/glob.h @@ -0,0 +1 @@ +#include diff --git a/gnu-stabs.h b/gnu-stabs.h new file mode 100644 index 00000000000..3cdc91def86 --- /dev/null +++ b/gnu-stabs.h @@ -0,0 +1,75 @@ +#error This file is obsolete. + +/* Copyright (C) 1991, 1992, 1994 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#ifndef __GNU_STABS_H + +#define __GNU_STABS_H 1 + +#ifdef HAVE_GNU_LD + +/* Alias a function: + function_alias(creat, _creat, int, (file, mode), + DEFUN(creat, (file, mode), + CONST char *file AND int mode)) + Yes, this is very repetitive. Nothing you can do about it, so shut up. */ +#define function_alias(name, _name, type, args, defun) \ + symbol_alias (_name, name); + +#define function_alias_void(name, _name, args, defun) \ + symbol_alias (_name, name); + +#ifdef NO_UNDERSCORES +#define __SYMBOL_PREFIX +#else +#define __SYMBOL_PREFIX "_" +#endif + +/* Make references to ALIAS refer to SYMBOL. */ +#define symbol_alias(symbol, alias) \ + asm(".stabs \"" __SYMBOL_PREFIX #alias "\",11,0,0,0\n"\ + ".stabs \"" __SYMBOL_PREFIX #symbol "\",1,0,0,0") + +/* Issue a warning message from the linker whenever SYMBOL is referenced. */ +#define warn_references(symbol, msg) \ + asm(".stabs \"" msg "\",30,0,0,0\n" \ + ".stabs \"" __SYMBOL_PREFIX #symbol "\",1,0,0,0") + +#define stub_warning(name) \ + warn_references(name, \ + "warning: " #name " is not implemented and will always fail") + +#define text_set_element(set, symbol) \ + asm(".stabs \"" __SYMBOL_PREFIX #set "\",23,0,0," __SYMBOL_PREFIX #symbol) +#define data_set_element(set, symbol) \ + asm(".stabs \"" __SYMBOL_PREFIX #set "\",25,0,0," __SYMBOL_PREFIX #symbol) +#define bss_set_element(set, symbol) \ + asm(".stabs \"" __SYMBOL_PREFIX #set "\",27,0,0," __SYMBOL_PREFIX #symbol) + +#else /* No GNU stabs. */ + +#define function_alias(name, _name, type, args, defun) \ + type defun { return _name args; } + +#define function_alias_void(name, _name, args, defun) \ + void defun { _name args; } + +#endif /* GNU stabs. */ + +#endif /* gnu-stabs.h */ diff --git a/gnu/signal.h b/gnu/signal.h new file mode 100644 index 00000000000..3c1dfa2baf7 --- /dev/null +++ b/gnu/signal.h @@ -0,0 +1 @@ +#include diff --git a/gnu/time.h b/gnu/time.h new file mode 100644 index 00000000000..9f905885462 --- /dev/null +++ b/gnu/time.h @@ -0,0 +1 @@ +#include