(linenum→info "unix/slp.c:2238")

glibc/2.7/ChangeLog.5

    1: Tue Jun 18 17:56:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
    2: 
    3:         * Version 1.91 test release.
    4: 
    5:         * Makerules ($(common-objpfx)distinfo-$(subdir)): Change target from
    6:         distinfo to this.
    7:         (distinfo): Make phony target depending on that.
    8:         (TAGS, po/%.pot, dist): Change deps.
    9:         (common-clean): Remove that file.
   10:         * rpm/Makefile (distinfo): Change names.
   11: 
   12:         * rpm/Makefile (clean): New target.
   13: 
   14:         * stdlib/test-canon.c: New test program contributed by David Mosberger.
   15:         * stdlib/Makefile (tests): Add test-canon.
   16:         * stdlib/canonicalize.c: Rewritten by David Mosberger.
   17: 
   18: Mon Jun 17 17:53:21 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
   19: 
   20:         * mach/Machrules (%_server.c %_server.h rule): Remove gratuitous
   21:         mention of $< in mig cmd.  Thanks to Shantanu Goel.
   22: 
   23:         * sysdeps/mach/hurd/brk.c (___brk_addr): Define as weak alias for
   24:         _hurd_brk.
   25: 
   26:         * libio/stdio.h [__USE_SVID]: Declare tempnam.
   27: 
   28: Fri Jun 14 19:28:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
   29: 
   30:         * sysdeps/unix/sysv/linux/syscalls.list: Add swapon with two
   31:         parameters.
   32: 
   33: Wed Jun 12 20:40:51 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
   34: 
   35:         * sysdeps/m68k/dl-machine.h (RTLD_START): Fix access to
   36:         _dl_default_scope.
   37: 
   38: Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
   39: 
   40:         * sysdeps/stub/elfclass.h: New file.
   41: 
   42:         * Make-dist (subdir): Make empty value really empty.
   43: 
   44:         * version.h (VERSION): Update to 1.91.
   45: 
   46:         * hurd/hurdinit.c (map0): Remove [!PIC] conditional.
   47: 
   48:         * shlib-versions (*-*-*): Add libutil=1.
   49: 
   50:         * rpm/Makefile (install-lib): Add libc.a et al.
   51:         (install-others): Only add libc.so if $(build-shared) is yes.
   52: 
   53:         * math/Makefile (install-lib): New variable, list libieee.a.
   54:         (non-lib.a): Likewise.
   55:         (extra-objs): Likewise, and ieee-math.o.
   56:         ($(objpfx)libieee.a): New target, link to ieee-math.o.
   57:         * math/ieee-math.c: New file.
   58:         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=math]: Remove setfpucw
   59:         and libieee.a stuff.
   60:         * sysdeps/unix/sysv/linux/ieee-fpucw.c: File removed.
   61:         * sysdeps/unix/sysv/linux/i386/ieee_fpu.c: File removed.
   62: 
   63:         * sysdeps/unix/sysv/Makefile (sysdep_headers): Make append of termio.h
   64:         and rule for it conditional on termio.h not already being in
   65:         sysdep_headers.
   66: 
   67:         * rpm/Makefile (install-others) [libc.so-version]: Get libc.so from
   68:         $(libdir), only the versioned named from $(slibdir).
   69:         (instfiles): New variable.
   70:         (glibc-$(version).$(config).rpm): New target.  Run rpm -bb.
   71:         * rpm/rpmrc: New file.  A third of the options controlling rpm can
   72:         only be given here (another third is on the command line, and a third
   73:         cannot be specified in any way shape or form).
   74: 
   75: Sun Jun 16 02:44:22 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
   76: 
   77:         * rpm/template: New file.
   78:         * rpm/Makefile: New file.
   79: 
   80:         * Makeconfig (sysdep-configures): Remove empty variable.
   81: 
   82:         * Makerules (distinfo-vars): Write defns for $(install-lib.so) and
   83:         $(versioned).
   84: 
   85:         * manual/Makefile (subdir_%): Add new rule with no deps, secondary to
   86:         to rule w/dep on %, with no-op commands.
   87: 
   88:         * Makerules (subdir_distinfo): New phony target; depend on distinfo.
   89:         * Makefile (rpm/%): New rule.
   90:         (+subdir_targets): Add subdir_distinfo.
   91: 
   92: Sun Jun 16 00:40:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
   93: 
   94:         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Don't add
   95:         fpu_control.h here.
   96: 
   97:         * time/Makefile ($(installed-localtime-file)): If target exists, do
   98:         nothing but print a message; if not, make it an absolute symlink.
   99: 
  100:         * time/tzset.c (__tzset): After stripping leading :, call
  101:         __tzfile_read on TZ even if it's empty or null.
  102:         * time/tzfile.c (__tzfile_read): Use "Universal" if passed "".
  103: 
  104: Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  105: 
  106:         * hurd/Makefile (routines): Add get-host, set-host.
  107:         (distribute): Add hurdhost.h.
  108:         * hurd/hurdhost.h: New file.
  109:         * sysdeps/mach/hurd/gethostname.c: Use _hurd_get_host_config.
  110:         * sysdeps/mach/hurd/gethostid.c: Likewise.
  111:         * sysdeps/mach/hurd/sethostname.c: Use _hurd_set_host_config.
  112:         * sysdeps/mach/hurd/sethostid.c: Likewise.
  113:         * hurd/get-host.c: New file.
  114:         * hurd/set-host.c: New file.
  115: 
  116:         * math/Makefile (headers): Add fpu_control.h.
  117:         (aux): New variable, list fpu_control and setfpucw.
  118:         * sysdeps/generic/fpu_control.c: New file.
  119:         * sysdeps/stub/fpu_control.h: New file.
  120:         * sysdeps/unix/sysv/linux/m68k/fpu_control.h: Moved to ...
  121:         * sysdeps/m68k/fpu_control.h: here.
  122:         * sysdeps/unix/sysv/linux/i386/fpu_control.h: Moved to ...
  123:         * sysdeps/i386/fpu_control.h: here.
  124:         * sysdeps/unix/sysv/linux/alpha/fpu_control.h: Moved to ...
  125:         * sysdeps/alpha/fpu/fpu_control.h: here.  Fixed copyright.
  126:         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
  127:         setfpucw, fpu_control.
  128:         * sysdeps/unix/sysv/linux/alpha/fpu_control.c: File removed.
  129:         * sysdeps/unix/sysv/linux/setfpucw.c: Moved to ...
  130:         * sysdeps/generic/setfpucw.c: here.
  131:         (__fpu_control): Variable removed.
  132:         (__setfpucw): Use SET even if zero.
  133: 
  134:         * elf/dl-deps.c (_dl_map_object_deps): Set MAP's mark bit before loop.
  135:         Set mark bits of deps as opened, instead of as scanned.
  136: 
  137:         * elf/rtld.c (dl_main): Remove _dl_rtld_map from chain unconditionally.
  138:         Then if it has a nonzero l_opencount, add it back in search order.
  139: 
  140:         * elf/dl-load.c (_dl_map_object): Don't use _dl_loaded's DT_RPATH if
  141:         it ain't got one!
  142: 
  143:         * sysdeps/unix/sysv/linux/Dist: Add sys/klog.h.
  144: 
  145:         * elf/dl-open.c (_dl_open): Remove PARENT argument, pass null.
  146:         * elf/link.h: Update prototype.
  147:         * elf/dl-load.c (_dl_map_object): If dependents' DT_RPATHs don't find
  148:         NAME, try the DT_RPATH of the executable itself if dynamic.
  149:         * elf/dlopen.c (dlopen): Don't pass first arg to _dl_open.
  150: 
  151:         * elf/dl-load.c (_dl_map_object): Exit DT_RPATH checking loop when an
  152:         open succeeds.
  153: 
  154:         * Makerules (build-shlib): Give -L opts for each elt of $(rpath-link).
  155: 
  156:         * sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): Variable removed.
  157:         (rpath-link): Append to this instead.
  158: 
  159: Fri Jun 14 01:51:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  160: 
  161:         * version.c (banner): New static const variable, complete version
  162:         banner text.
  163:         (__libc_print_version): Use it, and use __write instead of printf.
  164: 
  165:         * configure.in (sysnames): Don't cache the value, because it
  166:         depends only on libc sources.  Merge uniquifying third pass into
  167:         Implies/parent expansion second pass.  Report each unique name as
  168:         it is added in partial report string, terminated when finished.
  169: 
  170:         * Makeconfig (sysdep_dir): Move defn before config.status rule that
  171:         expands it.
  172:         (sysdep-configures): Variable removed.
  173:         (config.status): Use its contents directly, tighten up a bit, and
  174:         include Implies files.
  175: 
  176:         * elf/dl-open.c (_dl_open) [PIC]: Set PARENT to _dl_loaded if null.
  177: 
  178:         * elf/Makefile ($(objpfx)$(rtld-installed-name)): Make a symlink.
  179: 
  180: Thu Jun 13 14:29:56 1996  Miles Bader  <miles@gnu.ai.mit.edu>
  181: 
  182:         * hurd/hurdsig.c (_hurd_internal_post_signal): Rename `deliver:'
  183:         label to `deliver_pending:' to match goto.
  184: 
  185: Thu Jun 13 00:02:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  186: 
  187:         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_open_zero_fill):
  188:         Add comment.
  189: 
  190:         * elf/rtld.c (dl_main): Close _dl_zerofd after mapping deps.
  191: 
  192:         * sysdeps/generic/machine-gmon.h [NO_UNDERSCORES]: Define mcount as
  193:         weak alias for _mcount.
  194:         * sysdeps/alpha/_mcount.S (mcount): Define as weak alias.
  195: 
  196:         * elf/dl-lookup.c (_dl_lookup_symbol): If no value and *REF is
  197:         null, consider it a strong reference and give the error.
  198: 
  199: Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  200: 
  201:         * elf/dl-open.c (_dl_open): Correctly terminate relocating loop
  202:         after relocating NEW when it's the only new object.
  203: 
  204:         * elf/dl-init.c (_dl_init_next): When out of initializers, set
  205:         _r_debug.r_state to RT_CONSISTENT and call _dl_debug_state just
  206:         before return.
  207: 
  208:         * elf/rtld.c (dl_main): Move _dl_debug_initialize call after
  209:         relocation.  Call it unconditionally and only fill in DT_DEBUG
  210:         if it's present.  Then call _dl_debug_state with r_state RT_ADD
  211:         before running initializers.
  212: 
  213:         * elf/dl-open.c (_dl_open): Call _dl_debug_initialize and then call
  214:         _dl_debug_state with r_state RT_ADD before running initializers
  215:         * elf/dl-close.c (_dl_close): Call _dl_debug_state with r_state
  216:         RT_DELETE before running finalizers and with RT_CONSISTENT just
  217:         before return.
  218: 
  219:         * elf/Makefile (dl-routines): Add dl-debug.
  220:         * elf/dl-debug.c: New file.
  221:         * elf/rtld.c (_dl_r_debug): Rename to _r_debug and move to dl-debug.c.
  222:         (_dl_r_debug_state): Rename to _dl_debug_state and likewise move.
  223:         (dl_main): Use _dl_debug_initialize.
  224:         * elf/link.h: Fix name to _dl_debug_state in decl.
  225:         (_dl_debug_initialize): Declare new function from dl-debug.c.
  226:         (_r_debug): Declare it.
  227: 
  228:         * Makerules (distinfo-vars): Add install-{lib,data,bin,sbin,others}.
  229:         In distinfo set $(subdir)-VAR and then set VAR to $($(subdir)-VAR).
  230: 
  231:         * Makeconfig (rpath-link): New variable; add $(elfobjdir).
  232:         (default-rpath): Use it.
  233:         (built-program-cmd): Use it in LD_LIBRARY_PATH.
  234: 
  235:         * Makeconfig (sysdep-configures): Prepend $(sysdep_dir) to names tried.
  236: 
  237:         * sysdeps/unix/Dist: Add make-syscalls.sh.
  238: 
  239:         * misc/Makefile (headers): Add sys/swap.h.
  240:         * posix/unistd.h: Remove decls for swapon, swapoff.
  241:         * sysdeps/generic/sys/swap.h: New file.
  242:         * sysdeps/unix/sysv/linux/sys/swap.h: New file.
  243: 
  244:         * sysdeps/unix/sysv/linux/gnu/types.h: Remove temporary hack #define
  245:         of __kernel_fsid_t.  It is correctly defines in <linux/types.h> now.
  246: 
  247: Tue Jun 11 23:23:30 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  248: 
  249:         * Makerules (LDFLAGS-c.so): Use __libc_main instead of
  250:         __libc_print_version as entry point for shared object.
  251:         * version.c [HAVE_ELF] (__libc_main): New function.
  252: 
  253:         * elf/dl-load.c (_dl_map_object_from_fd): Relocate l_entry with the
  254:         load address.
  255: 
  256: Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>
  257: 
  258:         * sysdeps/alpha/dl-machine.h: New file.
  259: 
  260:         * elf/dl-close.c: Include <string.h> for memcpy.
  261:         * elf/dl-lookup.c: Same.
  262: 
  263:         * elf/elf.h: Add Elfxx_Symndx for symbol indices.
  264:         * elf/dl-lookup.c (_dl_lookup_symbol): Use it.
  265:         (_dl_setup_hash): Use it.
  266:         * elf/link.h (struct link_map): Use it.
  267: 
  268:         * elf/rtld.c (_dl_start): Don't rely on pointer-to-first-arg hack
  269:         for getting the argc/argv/envp block.  Instead, make it the argument.
  270:         sysdeps/i386/dl-machine.h (RTLD_START): Do that.
  271:         sysdeps/m68k/dl-machine.h (RTLD_START): Same.
  272: 
  273:         * shlib-versions: Add version numbers for alpha-linux.  To avoid
  274:         user confusion, make them the same as i386-linux.
  275: 
  276:         * sysdeps/alpha/Makefile [subdir elf]: Add -mno-fp-regs to
  277:         sysdep-CFLAGS so that _dl_runtime_resolve doesn't have to save them.
  278:         Add -mbuild-constants to CFLAGS-rtld.c to that we can bootstrap
  279:         without using literal data.
  280: 
  281:         * sysdeps/generic/dl-sysdep.c: Include <string.h> for memcpy.
  282:         Finish Elf32 -> ElfW migration.
  283: 
  284: Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  285: 
  286:         * Makerules (elfobjdir): Use $(objdir) if set, even in elf subdir.
  287: 
  288:         * elf/Makefile (routines): Remove init-first.
  289:         * csu/Makefile (routines): New variable; put it here instead.
  290: 
  291:         * config.make.in (CFLAGS): New variable.
  292: 
  293:         * io/sys/stat.h (S_ISLNK, S_ISSOCK): Make conditional on __USE_BSD,
  294:         not __USE_GNU.
  295:         * string/string.h (strncasecmp): Likewise.
  296: 
  297:         * elf/Makefile (lib-noranlib): Move rule adding deps for ld.so et al
  298:         to after `include ../Rules', so $(rtld-installed-name) is defined.
  299: 
  300:         * string/basename.c (basename): Cast FILENAME to char * for return.
  301: 
  302:         * Makerules ($(libdir)/libc.so): Put $(rtld-installed) name between
  303:         libc.so and libc.a in the deps.
  304: 
  305:         * elf/Makefile ($(objpfx)$(rtld-installed-name)): New target to make
  306:         link to ld.so if that is not the installed name.
  307:         (lib-noranlib): Depend on the installed name in the build directory
  308:         instead of on ld.so.
  309: 
  310:         * Makeconfig (link-libc): Include $(elfobjdir)/$(rtld-installed-name)
  311:         between libc.so and libc.a, because with libc.so's DT_NEEDED for ld.so
  312:         ld searches libc.a before ld.so (is that an ld bug?).
  313:         Add $(elfobjdir) to -rpath-link.
  314: 
  315:         * Makerules (elfobjdir): Define as . when $(subdir) is elf.
  316: 
  317:         * sysdeps/i386/dl-machine.h (elf_machine_rel): In R_386_32 case when
  318:         relocating _dl_rtld_map, subtract SYM's value from final reloc value,
  319:         but don't change *RELOC_ADDR before calling *RESOLVE, because it might
  320:         call the function we are relocating!
  321: 
  322:         * string/basename.c: New file.
  323:         * string/Makefile (routines): Add basename.
  324: 
  325: Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  326: 
  327:         * Makerules ($(common-objpfx)libc.so): Depend on $(elfobjdir)/ld.so.
  328: 
  329:         * elf/dl-close.c: New file.
  330:         * elf/link.h: Declare _dl_close.
  331:         * elf/Makefile (routines): Add dl-close.
  332:         * elf/dlclose.c (dlclose): Use _dl_close.
  333: 
  334:         * elf/Makefile ($(objpfx)librtld.so): Remove libelf from deps.
  335: 
  336:         * elf/dl-runtime.c (_dl_global_scope): New variable.
  337:         (_dl_object_relocation_scope): New function.
  338:         (fixup): Use it.
  339:         * elf/rtld.c (dl_main): Use it.
  340:         * elf/dl-open.c (_dl_open): Use it.  If (MODE & RTLD_GLOBAL), set the
  341:         l_global bit and append the new map to _dl_global_scope.
  342:         * elf/link.h: Declare _dl_global_scope, _dl_global_scope_alloc,
  343:         and _dl_object_relocation_scope.
  344: 
  345:         * elf/link.h (struct link_map): Add l_loader member.
  346:         Remove _dl_map_object_from_fd decl.
  347:         * elf/dl-load.c (_dl_map_object): Pass LOADER to ...
  348:         (_dl_map_object_from_fd): Take new arg LOADER and set l_loader member.
  349:         (_dl_map_object): Try DT_RPATH from all loaders up the chain.
  350: 
  351:         * elf/dl-object.c (_dl_loaded): Variable removed.
  352:         (_dl_default_scope): New variable replaces it.
  353:         * elf/link.h (_dl_loaded): Remove variable decl; instead define as
  354:         macro for _dl_default_scope[2].
  355:         (_dl_default_scope): Declare it.
  356:         * sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_default_scope[2]
  357:         instead of _dl_loaded.
  358:         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
  359:         * elf/rtld.c (dl_main): Use _dl_default_scope for symbol lookups.
  360: 
  361:         * elf/dl-reloc.c (_dl_relocate_object): Remove check for _dl_rtld_map.
  362:         * elf/rtld.c (dl_main): Pass 0 for LAZY flag when re-relocating self.
  363: 
  364:         * elf/link.h (struct link_map.l_type): Remove lt_interpreter.
  365:         (struct link_map): Add new flag member l_global.
  366: 
  367:         * elf/dl-reloc.c (_dl_relocate_object): Check for _dl_rtld_map
  368:         directly instead of looking for lt_interpreter.
  369:         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
  370:         * elf/rtld.c (_dl_start): Don't bother setting BOOTSTRAP_MAP.l_type.
  371:         (dl_main): Set _dl_rtld_map.l_type to lt_library.
  372: 
  373:         * elf/dl-deps.c (_dl_map_object_deps): Propagate MAP->l_type to
  374:         dependencies loaded, downgrading lt_executable -> lt_library.
  375: 
  376:         * elf/dl-load.c (_dl_map_object_from_fd): Take new arg TYPE and set
  377:         l_type from that, translating lt_library->lt_executable based on the
  378:         file's ELF type.
  379:         (_dl_map_object): Likewise.
  380:         * elf/link.h: Update prototypes.
  381:         * elf/dl-open.c: Pass type lt_loaded.
  382:         * elf/rtld.c: Pass type lt_library.
  383: 
  384:         * elf/dl-load.c (_dl_map_object_from_fd): Handle null return from
  385:         _dl_new_object.
  386:         (_dl_map_object_from_fd: lose): Unchain and free L if it's not null.
  387:         Free REALNAME, and just use NAME in error message.
  388:         * elf/dl-object.c (_dl_new_object): If malloc fails, return null
  389:         instead of calling _dl_signal_error.
  390: 
  391:         * elf/dl-load.c (_dl_map_object_from_fd): Close FD before signalling
  392:         error for _dl_zerofd setup failure.
  393: 
  394:         * elf/dl-object.c (_dl_startup_loaded): Variable removed.
  395:         * elf/link.h: Remove its decl.
  396: 
  397:         * elf/dl-reloc.c (_dl_relocate_object): Take new SCOPE arg and pass it
  398:         through to _dl_lookup_symbol.
  399:         * elf/link.h (_dl_relocate_object): Update comment and prototype.
  400:         * elf/rtld.c (dl_main): Pass scope vector to _dl_relocate_object.
  401: 
  402:         * elf/dl-lookup.c (_dl_lookup_symbol): Arg SYMBOL_SCOPE is now a
  403:         null-terminated vector of pointers, no longer a vector of exactly two.
  404:         * elf/link.h (_dl_lookup_symbol): Update comment and prototype.
  405: 
  406:         * elf/dl-runtime.c (fixup): Set up scope for symbol lookup properly as
  407:         done in _dl_relocate_object.
  408: 
  409:         * elf/dlopen.c: Pass "" to _dl_open when FILE is null.
  410: 
  411:         * elf/link.h: Include elfclass.h to define __ELF_NATIVE_CLASS.
  412:         (ElfW, ELFW): Use it.
  413:         * elf/Makefile (headers): Add elfclass.h.
  414:         * sysdeps/wordsize-32/elfclass.h: New file.
  415:         * sysdeps/wordsize-64/elfclass.h: New file.
  416:         * sysdeps/alpha/Implies: Add wordsize-64.
  417:         * sysdeps/i386/Implies: Add wordsize-32.
  418:         * sysdeps/m68k/Implies: Add wordsize-32.
  419:         * sysdeps/mips/Implies: Add wordsize-32.
  420:         * sysdeps/sparc/Implies: Add wordsize-32.
  421: 
  422:         * sysdeps/mach/hurd/dl-sysdep.c (__open): Define this instead of open.
  423:         (__close, __mmap): Likewise define with __ names now.
  424: 
  425: Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  426: 
  427:         * elf/dl-support.c: New file.
  428:         * elf/Makefile (CFLAGS-dl-support.c): New variable.
  429:         (routines, elide-routines.so): Add dl-support.
  430: 
  431:         * elf/dl-minimal.c (_dl_pagesize): Remove common defn.
  432:         * elf/dl-load.c (_dl_pagesize): Define it here.
  433:         (_dl_map_object_from_fd): Initialize it if zero.
  434:         * elf/link.h (_dl_pagesize): Remove const.
  435: 
  436: Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  437: 
  438:         * elf/Makefile (routines): Add dl-symbol.
  439:         * elf/dl-lookup.c (_dl_symbol_value): Moved to ...
  440:         * elf/dl-symbol.c: New file.
  441: 
  442:         * elf/elf.h (Elf32_Xword, Elf32_Sxword): New types.
  443:         (Elf32_Section, Elf64_Section): New types, 16 bits.
  444:         (Elf32_Sym, Elf64_Sym): Use it.
  445: 
  446:         * elf/dl-deps.c (_dl_open): Moved to ...
  447:         * elf/dl-open.c: New file.
  448:         * Makefile (routines): Add dl-open.
  449: 
  450:         * elf/Makefile (dl-routines): New variable.
  451:         (routines): Add $(dl-routines).
  452:         (elide-routines.so): New variable, set to $(dl-routines).
  453:         (libdl-inhibit-o): Variable removed; build all flavors of -ldl.
  454:         (rtld-routines): All but rtld, dl-sysdep, and dl-minimal moved to
  455:         $(dl-routines).
  456: 
  457:         * elf/dl-lookup.c (_dl_lookup_symbol): Remove magic symbol grokage.
  458: 
  459:         * elf/dladdr.c: Use ELFW(ST_BIND) in place of ELF32_ST_BIND.
  460: 
  461:         * elf/dl-load.c (open_path): Use __ names for open and close.  Avoid
  462:         using strdup.
  463:         (_dl_map_object): Likewise.
  464:         (_dl_map_object_from_fd): Use __ names for mmap, munmap, and mprotect.
  465:         * elf/dl-minimal.c (malloc): Likewise.
  466:         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
  467: 
  468:         * elf/dl-minimal.c (_dl_pagesize): New variable.
  469:         (malloc): Use that instead of a static variable.
  470:         * elf/dl-reloc.c (_dl_relocate_object): Use _dl_pagesize instead of
  471:         calling getpagesize.
  472:         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
  473:         * elf/link.h: Declare _dl_pagesize.
  474: 
  475:         * elf/rtld.c (dl_r_debug): Renamed to _dl_r_debug.
  476: 
  477:         * elf/link.h (struct link_map): Use Half for l_phnum instead of Word.
  478:         * elf/rtld.c (dl_main): Use Half for phdr count arg.
  479:         (_dl_sysdep_start): Update prototype of DL_MAIN function ptr arg.
  480: 
  481:         * elf/dl-load.c (_dl_map_object_from_fd): Use explicit Elf32_Word to
  482:         extract 4-byte magic number, not ElfW(Word).  Match EI_CLASS against
  483:         native wordsize, either 32 or 64.
  484: 
  485:         * elf/elf.h (Elf64_Byte, Elf64_Section): Typedefs removed.  In C a
  486:         char is always a byte, no need for a typedef.  Section indices are
  487:         16-bit quantities in elf64, which already have a typedef Elf64_Half.
  488: 
  489:         Remove partial -lelf implementation.  There is now a
  490:         separately-distributed `libelf' package that implements it.
  491:         * elf/dl-lookup.c: Don't #include <libelf.h> any more.
  492:         (_dl_elf_hash): New function, moved from
  493:         libelf.h:elf_hash.
  494:         (_dl_lookup_symbol): Use it instead of elf_hash.
  495:         * elf/libelf.h: File removed.
  496:         * elf/elf_hash.c: File removed.
  497:         * elf/Makefile (headers): Remove libelf.h.
  498:         (extra-libs): Remove libelf.
  499:         (libelf-routines): Variable removed.
  500: 
  501:         * elf/Makefile (libdl.so): Remove commands from this target.  The
  502:         implicit rule commands are correct, this explicit rule just serves to
  503:         add some dependencies.
  504: 
  505:         * elf/dl-lookup.c (_dl_lookup_symbol): Use ELFW(ST_TYPE) in place of
  506:         ELF32_ST_TYPE.  Likewise ST_BIND.
  507:         * elf/do-rel.h (elf_dynamic_do_rel): Likewise R_SYM.
  508: 
  509:         * elf/link.h (ElfW): New macro for wordsize-independent ElfXX_* type
  510:         naming.
  511:         (ELFW): New macro, likewise for ELFXX_* macro naming.
  512:         (_ElfW, _ElfW_1): New macros, subroutines of ElfW and ELF.
  513: 
  514: Sat Jun  8 20:52:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  515: 
  516:         * elf/link.h, elf/do-rel.h, elf/dynamic-link.h, elf/dl-deps.c,
  517:         elf/dl-init.c, elf/dl-load.c, elf/dl-lookup.c, elf/dl-reloc.c,
  518:         elf/dl-runtime.c, elf/dladdr.c, elf/dlclose.c, elf/dlsym.c,
  519:         elf/linux-compat.c, elf/rtld.c: Change all uses of `Elf32_XXX' to
  520:         `ElfW(XXX)' for wordsize-independence.
  521: 
  522: Sat Jun  8 20:50:42 1996  Richard Henderson  <rth@tamu.edu>
  523: 
  524:         * elf/elf.h: Move Elf64_* types in parity with Elf32 counterparts.
  525:         (Elf64_auxv_t): New type.
  526:         (EM_ALPHA, R_ALPHA_*): New macros for elf64-alpha format.
  527: 
  528: Mon Jun 10 02:22:24 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  529: 
  530:         * sysdeps/unix/sysv/linux/configure.in: New file, start with configure.
  531:         Add check for installed <linux/version.h> being v2.0 or later.
  532: 
  533:         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill): Call __open
  534:         instead of open.
  535:         (_dl_sysdep_fatal): Call __write instead of write.
  536:         (_dl_sysdep_message): Likewise.
  537: 
  538: Sun Jun  9 20:40:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
  539: 
  540:         * sysdeps/m68k/fpu/e_acosl.c: New file.
  541: 
  542: Sun Jun  9 01:11:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  543: 
  544:         * Makerules (o-objects): New variable.  Use it in place of
  545:         $(objects:.o=$o); it filters out $(elide-routines$o).
  546:         Use o-iterator for ar and ranlib rules so they use the per-type object
  547:         list.
  548: 
  549:         * elf/dl-load.c (_dl_map_object_from_fd): Close FD before return.
  550: 
  551:         * sysdeps/mach/mprotect.c: Define with __ name and weak alias.
  552:         * sysdeps/stub/mprotect.c: Likewise.
  553:         * sysdeps/unix/mman/syscalls.list (mprotect): Likewise.
  554:         * sysdeps/generic/sys/mman.h: Declare __mprotect.
  555:         * sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
  556:         * sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
  557:         * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
  558:         * sysdeps/unix/bsd/osf/sys/mman.h: Likewise.
  559:         * sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
  560: 
  561:         * Make-dist ($(tardir).tar): Use sed to check for file names longer
  562:         than 14 chars, instead of doschk which checks for other things we
  563:         don't care about.
  564: 
  565:         * Version 1.90 test release.
  566: 
  567:         * Makerules (make-target-directory): Use ./mkinstalldirs so we do not
  568:         assume . is in PATH.
  569: 
  570: Sat Jun  8 22:05:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  571: 
  572:         * math/Makefile (distribute): Comment out addition of
  573:         $(long-m-routines) sources until they are all written.
  574: 
  575:         * math/Makefile (distribute): Append long double source names to this
  576:         instead of using elided-routines.
  577: 
  578: Sat Jun  8 15:15:07 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  579: 
  580:         * mach/mach_shortcuts.c: Obsolete file removed.
  581:         * mach/mach_syscalls.h: Likewise.
  582: 
  583:         * hurd/Makefile (distribute): Consolidate defns into one.
  584: 
  585:         * time/Makefile (tzfiles): Add solar87 solar88 solar89.
  586: 
  587: Fri Jun  7 16:48:13 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  588: 
  589:         * sysdeps/unix/sysv/linux/i386/Dist: New file, list sys/perm.h and
  590:         sys/vm86.h.
  591: 
  592:         Removed old math code no longer used since the fdlibm integration.
  593:         * sysdeps/stub/acos.c: File removed.
  594:         * sysdeps/stub/asin.c: File removed.
  595:         * sysdeps/stub/atan2.c: File removed.
  596:         * sysdeps/stub/cosh.c: File removed.
  597:         * sysdeps/stub/exp.c: File removed.
  598:         * sysdeps/stub/fmod.c: File removed.
  599:         * sysdeps/stub/frexp.c: File removed.
  600:         * sysdeps/stub/log.c: File removed.
  601:         * sysdeps/stub/log10.c: File removed.
  602:         * sysdeps/stub/sinh.c: File removed.
  603:         * sysdeps/stub/tan.c: File removed.
  604:         * sysdeps/stub/tanh.c: File removed.
  605:         * sysdeps/generic/acos.c: File removed.
  606:         * sysdeps/generic/acosh.c: File removed.
  607:         * sysdeps/generic/asin.c: File removed.
  608:         * sysdeps/generic/asinh.c: File removed.
  609:         * sysdeps/generic/atan.c: File removed.
  610:         * sysdeps/generic/atan2.c: File removed.
  611:         * sysdeps/generic/atanh.c: File removed.
  612:         * sysdeps/generic/cabs.c: File removed.
  613:         * sysdeps/generic/ceil.c: File removed.
  614:         * sysdeps/generic/copysign.c: File removed.
  615:         * sysdeps/generic/cosh.c: File removed.
  616:         * sysdeps/generic/exp.c: File removed.
  617:         * sysdeps/generic/expm1.c: File removed.
  618:         * sysdeps/generic/fabs.c: File removed.
  619:         * sysdeps/generic/floor.c: File removed.
  620:         * sysdeps/generic/fmod.c: File removed.
  621:         * sysdeps/generic/frexp.c: File removed.
  622:         * sysdeps/generic/hypot.c: File removed.
  623:         * sysdeps/generic/infnan.c: File removed.
  624:         * sysdeps/generic/isnan.c: File removed.
  625:         * sysdeps/generic/ldexp.c: File removed.
  626:         * sysdeps/generic/log.c: File removed.
  627:         * sysdeps/generic/log10.c: File removed.
  628:         * sysdeps/generic/log1p.c: File removed.
  629:         * sysdeps/generic/modf.c: File removed.
  630:         * sysdeps/generic/pow.c: File removed.
  631:         * sysdeps/generic/rint.c: File removed.
  632:         * sysdeps/generic/sinh.c: File removed.
  633:         * sysdeps/generic/tan.c: File removed.
  634:         * sysdeps/generic/tanh.c: File removed.
  635:         * sysdeps/ieee754/cabs.c: File removed.
  636:         * sysdeps/ieee754/copysign.c: File removed.
  637:         * sysdeps/ieee754/frexp.c: File removed.
  638:         * sysdeps/ieee754/hypot.c: File removed.
  639:         * sysdeps/ieee754/infnan.c: File removed.
  640:         * sysdeps/ieee754/ldexp.c: File removed.
  641:         * sysdeps/ieee754/log10.c: File removed.
  642: 
  643:         * posix/Makefile (headers): Add schedbits.h.
  644: 
  645:         * math/Makefile (elided-routines): Add long double routines.
  646: 
  647: Fri Jun  7 11:02:22 1996  Miles Bader  <miles@gnu.ai.mit.edu>
  648: 
  649:         * sysdeps/mach/hurd/getpriority.c (getpriority): Use new interface
  650:         to __proc_getprocinfo.
  651: 
  652:         * login/login.c (tty_name): New function.
  653:         (login): Use it.
  654:         (PATH_MAX): MACRO removed.
  655:         <stdlib.h>: New include.
  656: 
  657: Fri Jun  7 09:11:17 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  658: 
  659:         * sysdeps/unix/sysv/linux/Dist: Add sys/sysinfo.h, sys/mount.h,
  660:         sys/kdaemon.h, sys/io.h, sys/mount.h, sysctl.c.
  661: 
  662:         * gmon/Makefile (distribute): Add profil-counter.h.
  663: 
  664:         * sysdeps/unix/sysv/linux/alpha/Dist: New file.
  665: 
  666:         * sysdeps/unix/Dist: Add s-proto.S.
  667: 
  668:         * sysdeps/unix/common/mk-local_lim.c: Obsolete file removed.
  669: 
  670:         * Make-dist (+sysdep-tsrcs): Get all syscalls.list files too.
  671: 
  672:         * csu/Makefile (distribute): Add start.c.
  673: 
  674:         * elf/Makefile (distribute): Add dl-machine.h.
  675: 
  676:         * sysdeps/alpha/Dist: Add _mcount.S.
  677: 
  678:         * sysdeps/alpha/Makefile (sysdep_routines): Append instead of
  679:         resetting; don't add bb_init_func.
  680: 
  681:         * string/Makefile (routines): Add strerror_r.
  682:         * string/string.h (strerror_r): Use int for BUFLEN arg.
  683: 
  684:         * Makefile (distribute): Add shlib-versions.
  685: 
  686:         * po/Makefile (distribute): Add SYS_libc.pot.
  687: 
  688:         * misc/Makefile (routines): Add lsearch.
  689: 
  690:         * manual/lang.texi (Consistency Checking): Merge in assert_perror defn
  691:         and other changes inadvertently made to the obsolete assert.texi.
  692:         * manual/assert.texi: File removed.
  693: 
  694:         * mach/mach_syscalls.c: Obsolete file removed.
  695:         * mach/mach_syscalls.h: Likewise.
  696:         * mach/mach_traps.S: Likewise.
  697:         * mach/msg_destroy.c: Likewise.
  698:         * mach/vm_page_size.c: Likewise.
  699: 
  700:         * locale/Makefile (distribute): Add weight.h, charset.h.
  701: 
  702:         * Makefile (distribute): Add version.h.
  703: 
  704:         * hurd/Makefile (headers): Add hurd/ioctl.h.
  705:         (distribute): Add intr-rpc.d, intr-rpc.h, faultexc.defs.
  706: 
  707:         * csu/Makefile (distribute): Add gmon-start.c.
  708: 
  709:         * Makefile (distribute): Add config.h.in.
  710: 
  711: Wed Jun  5 22:06:21 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
  712: 
  713:         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Fix type of reloc
  714:         argument.
  715:         [case R_68K_32]: Check for resolve being null.
  716:         (RTLD_START): Add missing label.
  717: 
  718: Fri Jun  7 1996 05:29:32  Ulrich Drepper  <drepper@cygnus.com>
  719: 
  720:         * misc/lsearch.c: New file.  Implementation of lfind and
  721:         lsearch functions.
  722: 
  723:         * misc/search.h: Add prototype for functions from tsearch
  724:         family with __ prefix.
  725:         Correct prototype for lsearch: BASE parameter must not be
  726:         const.
  727: 
  728:         * misc/tsearch.c: prepend all global function names with __
  729:         and make normal names weak aliases.
  730: 
  731: Fri Jun  7 00:15:24 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  732: 
  733:         * Make-dist (sysdep_dirs): Skip CVS dirs.
  734: 
  735: Thu Jun  6 16:12:39 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  736: 
  737:         * malloc/Makefile (distribute): Change malloc/gmalloc-head.c to
  738:         gmalloc-head.c.
  739:         (malloc/gmalloc.c): Depend on malloc/gmalloc-head.c.
  740:         (malloc/Makefile): Do $(make-target-directory) first.
  741:         * malloc/gmalloc-head.c: New file.
  742: 
  743:         * po/Makefile (linguas.mo): Don't commit .mo files to cvs.
  744: 
  745:         * hurd/hurdsig.c (_hurd_internal_post_signal): For SIGNO==0 pending
  746:         check, deliver a pending blocked signal if its action might be to
  747:         ignore.
  748:         * sysdeps/mach/hurd/sigaction.c: If new action is SIG_IGN or SIG_DFL
  749:         and SIG is pending, wake up signal thread to check us.
  750: 
  751:         * hurd/hurdsig.c (_hurd_internal_post_signal): Don't mark a signal
  752:         pending while blocked or stopped when the action is to ignore it.
  753: 
  754: Thu Jun  6 12:56:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
  755: 
  756:         * hurd/hurdsig.c (_hurd_internal_post_signal: resume): Only set
  757:         SS_SUSPENDED when the thread is really suspended.
  758: 
  759:         * elf/rtld.c (dl_main): Don't dereference _dl_rtld_map.l_next if null.
  760: 
  761:         * Makerules (headers): Move append of $(sysdep_headers) after include
  762:         of sysdep makefiles.
  763: 
  764:         * sysdeps/mach/hurd/errlist.c: File removed.
  765: 
  766: Thu Jun  6 07:32:14 1996  Miles Bader  <miles@gnu.ai.mit.edu>
  767: 
  768:         * resolv/gethnamaddr.c (struct hstorage): Make NAME field a pointer.
  769:         (_gethtbyname2): Remove ALIAS variable.
  770:         Initialize NAME field of SELF and TARGET to 0.
  771: