Commit Graph

794 Commits

Author SHA1 Message Date
Roland McGrath
6e86a7c21b * Makerules (elfobjdir): Use $(objdir) if set, even in elf subdir.
* elf/Makefile (routines): Remove init-first.
	* csu/Makefile (routines): New variable; put it here instead.

	* config.make.in (CFLAGS): New variable.

	* io/sys/stat.h (S_ISLNK, S_ISSOCK): Make conditional on __USE_BSD,
	not __USE_GNU.
	* string/string.h (strncasecmp): Likewise.
1996-06-12 01:34:32 +00:00
Roland McGrath
a89d30d444 * elf/Makefile (lib-noranlib): Move rule adding deps for ld.so et al
to after `include ../Rules', so $(rtld-installed-name) is defined.
1996-06-11 21:41:42 +00:00
Roland McGrath
d8c7ef98c1 * string/basename.c (basename): Cast FILENAME to char * for return.
* Makerules ($(libdir)/libc.so): Put $(rtld-installed) name between
	libc.so and libc.a in the deps.
1996-06-11 21:33:17 +00:00
Roland McGrath
852fc4b91e * elf/Makefile ($(objpfx)$(rtld-installed-name)): New target to make
link to ld.so if that is not the installed name.
	(lib-noranlib): Depend on the installed name in the build directory
	instead of on ld.so.

	* Makeconfig (link-libc): Include $(elfobjdir)/$(rtld-installed-name)
	between libc.so and libc.a, because with libc.so's DT_NEEDED for ld.so
	ld searches libc.a before ld.so (is that an ld bug?).
	Add $(elfobjdir) to -rpath-link.

	* Makerules (elfobjdir): Define as . when $(subdir) is elf.

	* sysdeps/i386/dl-machine.h (elf_machine_rel): In R_386_32 case when
	relocating _dl_rtld_map, subtract SYM's value from final reloc value,
	but don't change *RELOC_ADDR before calling *RESOLVE, because it might
	call the function we are relocating!
1996-06-11 21:07:00 +00:00
Roland McGrath
6ba3531662 Tue Jun 11 15:09:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* string/basename.c: New file.
	* string/Makefile (routines): Add basename.
1996-06-11 19:18:38 +00:00
Roland McGrath
ba79d61b44 * Makerules ($(common-objpfx)libc.so): Depend on $(elfobjdir)/ld.so.
* elf/dl-close.c: New file.
	* elf/link.h: Declare _dl_close.
	* elf/Makefile (routines): Add dl-close.
	* elf/dlclose.c (dlclose): Use _dl_close.

	* elf/Makefile ($(objpfx)librtld.so): Remove libelf from deps.

	* elf/dl-runtime.c (_dl_global_scope): New variable.
	(_dl_object_relocation_scope): New function.
	(fixup): Use it.
	* elf/rtld.c (dl_main): Use it.
	* elf/dl-open.c (_dl_open): Use it.  If (MODE & RTLD_GLOBAL), set the
	l_global bit and append the new map to _dl_global_scope.
	* elf/link.h: Declare _dl_global_scope, _dl_global_scope_alloc,
	and _dl_object_relocation_scope.

	* elf/link.h (struct link_map): Add l_loader member.
	Remove _dl_map_object_from_fd decl.
	* elf/dl-load.c (_dl_map_object): Pass LOADER to ...
	(_dl_map_object_from_fd): Take new arg LOADER and set l_loader member.
	(_dl_map_object): Try DT_RPATH from all loaders up the chain.

	* elf/dl-object.c (_dl_loaded): Variable removed.
	(_dl_default_scope): New variable replaces it.
	* elf/link.h (_dl_loaded): Remove variable decl; instead define as
	macro for _dl_default_scope[2].
	(_dl_default_scope): Declare it.
	* sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_default_scope[2]
	instead of _dl_loaded.
	* sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
	* elf/rtld.c (dl_main): Use _dl_default_scope for symbol lookups.

	* elf/dl-reloc.c (_dl_relocate_object): Remove check for _dl_rtld_map.
	* elf/rtld.c (dl_main): Pass 0 for LAZY flag when re-relocating self.

	* elf/link.h (struct link_map.l_type): Remove lt_interpreter.
 	(struct link_map): Add new flag member l_global.

	* elf/dl-reloc.c (_dl_relocate_object): Check for _dl_rtld_map
	directly instead of looking for lt_interpreter.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
	* elf/rtld.c (_dl_start): Don't bother setting BOOTSTRAP_MAP.l_type.
	(dl_main): Set _dl_rtld_map.l_type to lt_library.

	* elf/dl-deps.c (_dl_map_object_deps): Propagate MAP->l_type to
	dependencies loaded, downgrading lt_executable -> lt_library.

	* elf/dl-load.c (_dl_map_object_from_fd): Take new arg TYPE and set
	l_type from that, translating lt_library->lt_executable based on the
	file's ELF type.
	(_dl_map_object): Likewise.
	* elf/link.h: Update prototypes.
	* elf/dl-open.c: Pass type lt_loaded.
	* elf/rtld.c: Pass type lt_library.

	* elf/dl-load.c (_dl_map_object_from_fd): Handle null return from
	_dl_new_object.
	(_dl_map_object_from_fd: lose): Unchain and free L if it's not null.
	Free REALNAME, and just use NAME in error message.
	* elf/dl-object.c (_dl_new_object): If malloc fails, return null
	instead of calling _dl_signal_error.

	* elf/dl-load.c (_dl_map_object_from_fd): Close FD before signalling
	error for _dl_zerofd setup failure.

	* elf/dl-object.c (_dl_startup_loaded): Variable removed.
	* elf/link.h: Remove its decl.

	* elf/dl-reloc.c (_dl_relocate_object): Take new SCOPE arg and pass it
	through to _dl_lookup_symbol.
	* elf/link.h (_dl_relocate_object): Update comment and prototype.
	* elf/rtld.c (dl_main): Pass scope vector to _dl_relocate_object.

	* elf/dl-lookup.c (_dl_lookup_symbol): Arg SYMBOL_SCOPE is now a
	null-terminated vector of pointers, no longer a vector of exactly two.
	* elf/link.h (_dl_lookup_symbol): Update comment and prototype.

	* elf/dl-runtime.c (fixup): Set up scope for symbol lookup properly as
	done in _dl_relocate_object.

	* elf/dlopen.c: Pass "" to _dl_open when FILE is null.
1996-06-10 20:19:39 +00:00
Roland McGrath
567c63af19 * elf/link.h: Include elfclass.h to define __ELF_NATIVE_CLASS.
(ElfW, ELFW): Use it.
	* elf/Makefile (headers): Add elfclass.h.
	* sysdeps/wordsize-32/elfclass.h: New file.
	* sysdeps/wordsize-64/elfclass.h: New file.
	* sysdeps/alpha/Implies: Add wordsize-64.
	* sysdeps/i386/Implies: Add wordsize-32.
	* sysdeps/m68k/Implies: Add wordsize-32.
	* sysdeps/mips/Implies: Add wordsize-32.
	* sysdeps/sparc/Implies: Add wordsize-32.
1996-06-10 13:03:12 +00:00
Roland McGrath
266180eb98 Mon Jun 10 06:14:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/hurd/dl-sysdep.c (__open): Define this instead of open.
	(__close, __mmap): Likewise define with __ names now.

Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/dl-support.c: New file.
	* elf/Makefile (CFLAGS-dl-support.c): New variable.
	(routines, elide-routines.so): Add dl-support.

	* elf/dl-minimal.c (_dl_pagesize): Remove common defn.
	* elf/dl-load.c (_dl_pagesize): Define it here.
	(_dl_map_object_from_fd): Initialize it if zero.
	* elf/link.h (_dl_pagesize): Remove const.

Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/Makefile (routines): Add dl-symbol.
	* elf/dl-lookup.c (_dl_symbol_value): Moved to ...
	* elf/dl-symbol.c: New file.

	* elf/elf.h (Elf32_Xword, Elf32_Sxword): New types.
	(Elf32_Section, Elf64_Section): New types, 16 bits.
	(Elf32_Sym, Elf64_Sym): Use it.

	* elf/dl-deps.c (_dl_open): Moved to ...
	* elf/dl-open.c: New file.
	* Makefile (routines): Add dl-open.

	* elf/Makefile (dl-routines): New variable.
	(routines): Add $(dl-routines).
	(elide-routines.so): New variable, set to $(dl-routines).
	(libdl-inhibit-o): Variable removed; build all flavors of -ldl.
	(rtld-routines): All but rtld, dl-sysdep, and dl-minimal moved to
 	$(dl-routines).

	* elf/dl-lookup.c (_dl_lookup_symbol): Remove magic symbol grokage.

	* elf/dladdr.c: Use ELFW(ST_BIND) in place of ELF32_ST_BIND.

	* elf/dl-load.c (open_path): Use __ names for open and close.  Avoid
	using strdup.
	(_dl_map_object): Likewise.
	(_dl_map_object_from_fd): Use __ names for mmap, munmap, and mprotect.
	* elf/dl-minimal.c (malloc): Likewise.
	* elf/dl-reloc.c (_dl_relocate_object): Likewise.

	* elf/dl-minimal.c (_dl_pagesize): New variable.
	(malloc): Use that instead of a static variable.
	* elf/dl-reloc.c (_dl_relocate_object): Use _dl_pagesize instead of
	calling getpagesize.
	* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
	* elf/link.h: Declare _dl_pagesize.

	* elf/rtld.c (dl_r_debug): Renamed to _dl_r_debug.

	* elf/link.h (struct link_map): Use Half for l_phnum instead of Word.
  	* elf/rtld.c (dl_main): Use Half for phdr count arg.
	(_dl_sysdep_start): Update prototype of DL_MAIN function ptr arg.

	* elf/dl-load.c (_dl_map_object_from_fd): Use explicit Elf32_Word to
 	extract 4-byte magic number, not ElfW(Word).  Match EI_CLASS against
 	native wordsize, either 32 or 64.

	* elf/elf.h (Elf64_Byte, Elf64_Section): Typedefs removed.  In C a
 	char is always a byte, no need for a typedef.  Section indices are
	16-bit quantities in elf64, which already have a typedef Elf64_Half.

	Remove partial -lelf implementation.  There is now a
	separately-distributed `libelf' package that implements it.
	* elf/dl-lookup.c: Don't #include <libelf.h> any more.
	(_dl_elf_hash): New function, moved from
	libelf.h:elf_hash.
	(_dl_lookup_symbol): Use it instead of elf_hash.
	* elf/libelf.h: File removed.
	* elf/elf_hash.c: File removed.
	* elf/Makefile (headers): Remove libelf.h.
	(extra-libs): Remove libelf.
	(libelf-routines): Variable removed.

	* elf/Makefile (libdl.so): Remove commands from this target.  The
 	implicit rule commands are correct, this explicit rule just serves to
 	add some dependencies.

	* elf/dl-lookup.c (_dl_lookup_symbol): Use ELFW(ST_TYPE) in place of
 	ELF32_ST_TYPE.  Likewise ST_BIND.
	* elf/do-rel.h (elf_dynamic_do_rel): Likewise R_SYM.

	* elf/link.h (ElfW): New macro for wordsize-independent ElfXX_* type
	naming.
	(ELFW): New macro, likewise for ELFXX_* macro naming.
	(_ElfW, _ElfW_1): New macros, subroutines of ElfW and ELF.

Sat Jun  8 20:52:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* elf/link.h, elf/do-rel.h, elf/dynamic-link.h, elf/dl-deps.c,
 	elf/dl-init.c, elf/dl-load.c, elf/dl-lookup.c, elf/dl-reloc.c,
 	elf/dl-runtime.c, elf/dladdr.c, elf/dlclose.c, elf/dlsym.c,
 	elf/linux-compat.c, elf/rtld.c: Change all uses of `Elf32_XXX' to
 	`ElfW(XXX)' for wordsize-independence.

Sat Jun  8 20:50:42 1996  Richard Henderson  <rth@tamu.edu>

	* elf/elf.h: Move Elf64_* types in parity with Elf32 counterparts.
	(Elf64_auxv_t): New type.
	(EM_ALPHA, R_ALPHA_*): New macros for elf64-alpha format.
1996-06-10 10:18:47 +00:00
Roland McGrath
564210fe2f Mon Jun 10 02:22:24 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/configure.in: New file, start with configure.
	Add check for installed <linux/version.h> being v2.0 or later.

	* sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill): Call __open
	instead of open.
	(_dl_sysdep_fatal): Call __write instead of write.
	(_dl_sysdep_message): Likewise.

Sun Jun  9 20:40:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/m68k/fpu/e_acosl.c: New file.

	* Makerules (o-objects): New variable.  Use it in place of
	$(objects:.o=$o); it filters out $(elide-routines$o).
	Use o-iterator for ar and ranlib rules so they use the per-type object
	list.

	* sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
1996-06-10 09:41:16 +00:00
Roland McGrath
6d9756c910 * elf/dl-load.c (_dl_map_object_from_fd): Close FD before return.
* sysdeps/mach/mprotect.c: Define with __ name and weak alias.
	* sysdeps/stub/mprotect.c: Likewise.
	* sysdeps/unix/mman/syscalls.list (mprotect): Likewise.
	* sysdeps/generic/sys/mman.h: Declare __mprotect.
	* sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
	* sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
	* sysdeps/unix/bsd/osf/sys/mman.h: Likewise.
1996-06-09 22:02:59 +00:00
Roland McGrath
9dd2fc5d87 * Make-dist ($(tardir).tar): Use sed to check for file names longer
than 14 chars, instead of doschk which checks for other things we
	don't care about.
1996-06-09 07:55:33 +00:00
Roland McGrath
780b91d932 * Version 1.90 test release. 1996-06-09 06:59:45 +00:00
Roland McGrath
dcfb26a705 Sun Jun 9 01:11:49 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makerules (make-target-directory): Use ./mkinstalldirs so we do not
	assume . is in PATH.

Sat Jun  8 22:05:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* math/Makefile (distribute): Comment out addition of
	$(long-m-routines) sources until they are all written.

	* math/Makefile (distribute): Append long double source names to this
	instead of using elided-routines.

Sat Jun  8 15:15:07 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* mach/mach_shortcuts.c: Obsolete file removed.
	* mach/mach_syscalls.h: Likewise.

	* hurd/Makefile (distribute): Consolidate defns into one.

	* time/Makefile (tzfiles): Add solar87 solar88 solar89.
1996-06-09 05:25:25 +00:00
Roland McGrath
5481bb895e Sat Jun 8 15:15:07 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* time/Makefile (tzfiles): Add solar87 solar88 solar89.
1996-06-08 15:21:40 +00:00
Per Bothner
e3ca0de5cb * config.guess (i?86-ncr-sysv*): Emit minor release numbers. Recognize the NCR 4850 machine and NCR Pentium-based platforms. 1996-06-08 01:25:20 +00:00
Miles Bader
9646d93462 *** empty log message ***
* sysdeps/mach/hurd/getpriority.c (getpriority): Use new interface
	to __proc_getprocinfo.
1996-06-07 21:50:31 +00:00
Miles Bader
061c6526bf (getpriority): Use new interface to __proc_getprocinfo. 1996-06-07 21:49:06 +00:00
Roland McGrath
bf668fc8f0 Fri Jun 7 16:48:13 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/i386/Dist: New file, list sys/perm.h and
	sys/vm86.h.

	Removed old math code no longer used since the fdlibm integration.
	* sysdeps/stub/acos.c: File removed.
	* sysdeps/stub/asin.c: File removed.
	* sysdeps/stub/atan2.c: File removed.
	* sysdeps/stub/cosh.c: File removed.
	* sysdeps/stub/exp.c: File removed.
	* sysdeps/stub/fmod.c: File removed.
	* sysdeps/stub/frexp.c: File removed.
	* sysdeps/stub/log.c: File removed.
	* sysdeps/stub/log10.c: File removed.
	* sysdeps/stub/sinh.c: File removed.
	* sysdeps/stub/tan.c: File removed.
	* sysdeps/stub/tanh.c: File removed.
	* sysdeps/generic/acos.c: File removed.
	* sysdeps/generic/acosh.c: File removed.
	* sysdeps/generic/asin.c: File removed.
	* sysdeps/generic/asinh.c: File removed.
	* sysdeps/generic/atan.c: File removed.
	* sysdeps/generic/atan2.c: File removed.
	* sysdeps/generic/atanh.c: File removed.
	* sysdeps/generic/cabs.c: File removed.
	* sysdeps/generic/ceil.c: File removed.
	* sysdeps/generic/copysign.c: File removed.
	* sysdeps/generic/cosh.c: File removed.
	* sysdeps/generic/exp.c: File removed.
	* sysdeps/generic/expm1.c: File removed.
	* sysdeps/generic/fabs.c: File removed.
	* sysdeps/generic/floor.c: File removed.
	* sysdeps/generic/fmod.c: File removed.
	* sysdeps/generic/frexp.c: File removed.
	* sysdeps/generic/hypot.c: File removed.
	* sysdeps/generic/infnan.c: File removed.
	* sysdeps/generic/isnan.c: File removed.
	* sysdeps/generic/ldexp.c: File removed.
	* sysdeps/generic/log.c: File removed.
	* sysdeps/generic/log10.c: File removed.
	* sysdeps/generic/log1p.c: File removed.
	* sysdeps/generic/modf.c: File removed.
	* sysdeps/generic/pow.c: File removed.
	* sysdeps/generic/rint.c: File removed.
	* sysdeps/generic/sinh.c: File removed.
	* sysdeps/generic/tan.c: File removed.
	* sysdeps/generic/tanh.c: File removed.
	* sysdeps/ieee754/cabs.c: File removed.
	* sysdeps/ieee754/copysign.c: File removed.
	* sysdeps/ieee754/frexp.c: File removed.
	* sysdeps/ieee754/hypot.c: File removed.
	* sysdeps/ieee754/infnan.c: File removed.
	* sysdeps/ieee754/ldexp.c: File removed.
	* sysdeps/ieee754/log10.c: File removed.

	* posix/Makefile (headers): Add schedbits.h.

	* math/Makefile (elided-routines): Add long double routines.

Fri Jun  7 09:11:17 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* sysdeps/unix/sysv/linux/Dist: Add sys/sysinfo.h, sys/mount.h,
	sys/kdaemon.h, sys/io.h, sys/mount.h, sysctl.c.

	* gmon/Makefile (distribute): Add profil-counter.h.

	* sysdeps/unix/sysv/linux/alpha/Dist: New file.

	* sysdeps/unix/Dist: Add s-proto.S.

	* sysdeps/unix/common/mk-local_lim.c: Obsolete file removed.

	* Make-dist (+sysdep-tsrcs): Get all syscalls.list files too.

	* csu/Makefile (distribute): Add start.c.

	* elf/Makefile (distribute): Add dl-machine.h.

	* sysdeps/alpha/Dist: Add _mcount.S.

	* sysdeps/alpha/Makefile (sysdep_routines): Append instead of
	resetting; don't add bb_init_func.

	* string/Makefile (routines): Add strerror_r.
	* string/string.h (strerror_r): Use int for BUFLEN arg.

	* Makefile (distribute): Add shlib-versions.

	* po/Makefile (distribute): Add SYS_libc.pot.

	* misc/Makefile (routines): Add lsearch.

	* manual/lang.texi (Consistency Checking): Merge in assert_perror defn
	and other changes inadvertently made to the obsolete assert.texi.
	* manual/assert.texi: File removed.

	* mach/mach_syscalls.c: Obsolete file removed.
	* mach/mach_syscalls.h: Likewise.
	* mach/mach_traps.S: Likewise.
	* mach/msg_destroy.c: Likewise.
	* mach/vm_page_size.c: Likewise.

	* locale/Makefile (distribute): Add weight.h, charset.h.

	* Makefile (distribute): Add version.h.

	* hurd/Makefile (headers): Add hurd/ioctl.h.
	(distribute): Add intr-rpc.d, intr-rpc.h, faultexc.defs.

	* csu/Makefile (distribute): Add gmon-start.c.

	* Makefile (distribute): Add config.h.in.

	sysdeps/m68k/fpu/e_atanhl.c, sysdeps/m68k/fpu/e_coshl.c: New files.
1996-06-07 21:18:34 +00:00
Roland McGrath
6f3e22dc48 Tue Jun 4 22:03:02 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/__math.h: Define long double versions of
	the inline functions.
	* sysdeps/m68k/fpu/e_asinl.c, sysdeps/m68k/fpu/e_atanl.c,
	sysdeps/m68k/fpu/e_acosl.c, sysdeps/m68k/fpu/e_expl.c,
	sysdeps/m68k/fpu/e_fmodl.c, sysdeps/m68k/fpu/e_log10l.c,
	sysdeps/m68k/fpu/e_logl.c, sysdeps/m68k/fpu/e_powl.c,
	sysdeps/m68k/fpu/e_remainderl.c, sysdeps/m68k/fpu/e_scalbl.c,
	sysdeps/m68k/fpu/e_sinhl.c, sysdeps/m68k/fpu/e_sqrtl.c,
	sysdeps/m68k/fpu/k_cosl.c, sysdeps/m68k/fpu/k_sinl.c,
	sysdeps/m68k/fpu/k_tanl.c, sysdeps/m68k/fpu/s_atanl.c,
	sysdeps/m68k/fpu/s_ceill.c, sysdeps/m68k/fpu/s_cosl.c,
	sysdeps/m68k/fpu/s_expm1l.c, sysdeps/m68k/fpu/s_fabsl.c,
	sysdeps/m68k/fpu/s_finitel.c, sysdeps/m68k/fpu/s_floorl.c,
	sysdeps/m68k/fpu/s_frexpl.c, sysdeps/m68k/fpu/s_ilogbl.c,
	sysdeps/m68k/fpu/s_isinfl.c, sysdeps/m68k/fpu/s_isnanl.c,
	sysdeps/m68k/fpu/s_ldexpl.c, sysdeps/m68k/fpu/s_log1pl.c,
	sysdeps/m68k/fpu/s_logbl.c, sysdeps/m68k/fpu/s_modfl.c,
	sysdeps/m68k/fpu/s_rintl.c, sysdeps/m68k/fpu/s_scalbnl.c,
	sysdeps/m68k/fpu/s_significandl.c, sysdeps/m68k/fpu/s_sinl.c,
	sysdeps/m68k/fpu/e_atanhl.c, sysdeps/m68k/fpu/e_coshl.c: New files.
1996-06-07 21:00:20 +00:00
Miles Bader
268eb64290 *** empty log message ***
Fri Jun  7 11:02:22 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* login/login.c (tty_name): New function.
	(login): Use it.
	(PATH_MAX): MACRO removed.
	<stdlib.h>: New include.
1996-06-07 20:38:21 +00:00
Roland McGrath
9f447fb32c Fri Jun 7 09:11:17 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* mach/mach_syscalls.c: Obsolete file removed.
	* mach/mach_syscalls.h: Likewise.
	* mach/mach_traps.S: Likewise.
	* mach/msg_destroy.c: Likewise.
	* mach/vm_page_size.c: Likewise.
1996-06-07 20:37:41 +00:00
Roland McGrath
bd5fa7727c Fri Jun 7 09:11:17 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/Dist: Add sys/sysinfo.h, sys/mount.h,
	sys/kdaemon.h, sys/io.h, sys/mount.h, sysctl.c.
1996-06-07 20:36:16 +00:00
Miles Bader
500590c767 (tty_name): New function. (login): Use it. (PATH_MAX): MACRO removed. <stdlib.h>: New include. 1996-06-07 20:32:20 +00:00
Roland McGrath
64a921419d obsolete 1996-06-07 13:21:41 +00:00
Roland McGrath
1c2f546be8 Wed Jun 5 22:06:21 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/dl-machine.h (elf_machine_rela): Fix type of reloc
	argument.
	[case R_68K_32]: Check for resolve being null.
	(RTLD_START): Add missing label.
1996-06-07 13:07:15 +00:00
Roland McGrath
1be6ec3033 Fri Jun 7 1996 05:29:32 Ulrich Drepper <drepper@cygnus.com>
* misc/lsearch.c: New file.  Implementation of lfind and
	lsearch functions.

	* misc/search.h: Add prototype for functions from tsearch
	family with __ prefix.
	Correct prototype for lsearch: BASE parameter must not be
	const.

	* misc/tsearch.c: prepend all global function names with __
	and make normal names weak aliases.

Fri Jun  7 00:15:24 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* Make-dist (sysdep_dirs): Skip CVS dirs.
1996-06-07 04:36:10 +00:00
Roland McGrath
c035afc960 * malloc/Makefile (distribute): Change malloc/gmalloc-head.c to
gmalloc-head.c.
	(malloc/gmalloc.c): Depend on malloc/gmalloc-head.c.
	(malloc/Makefile): Do $(make-target-directory) first.
	* malloc/gmalloc-head.c: New file.

	* po/Makefile (linguas.mo): Don't commit .mo files to cvs.
1996-06-06 23:55:17 +00:00
Roland McGrath
4d02a5b18a Thu Jun 6 16:12:39 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* hurd/hurdsig.c (_hurd_internal_post_signal): For SIGNO==0 pending
	check, deliver a pending blocked signal if its action might be to
	ignore.
	* sysdeps/mach/hurd/sigaction.c: If new action is SIG_IGN or SIG_DFL
	and SIG is pending, wake up signal thread to check us.

	* hurd/hurdsig.c (_hurd_internal_post_signal): Don't mark a signal
	pending while blocked or stopped when the action is to ignore it.

	* hurd/hurdsig.c (_hurd_internal_post_signal: resume): Only set
	SS_SUSPENDED when the thread is really suspended.

	* elf/rtld.c (dl_main): Don't dereference _dl_rtld_map.l_next if null.
1996-06-06 20:49:22 +00:00
Roland McGrath
e60062b769 Thu Jun 6 12:56:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makerules (headers): Move append of $(sysdep_headers) after include
	of sysdep makefiles.

	* sysdeps/mach/hurd/errlist.c: File removed.
1996-06-06 17:02:44 +00:00
Roland McGrath
3ed8c0596e Thu Jun 6 12:56:03 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/hurd/errlist.c: File removed.
1996-06-06 17:02:26 +00:00
Miles Bader
02eec64431 *** empty log message ***
Thu Jun  6 07:32:14 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* resolv/gethnamaddr.c (struct hstorage): Make NAME field a pointer.
	(_gethtbyname2): Remove ALIAS variable.
	Initialize NAME field of SELF and TARGET to 0.
	Add SELF_NAME_SIZE static variable.
	Add loop to call gethostname until the space we allocated is enough.
	Use malloced strings instead of fixed size buffers.
	<stdlib.h>, <unistd.h>: New includes.
	* sysdeps/generic/sys/socket.h (PF_INET6, AF_INET6): New macros.

	* sysdeps/mach/hurd/errlist.c (_sys_errlist): Add EILSEQ.
	(_sys_nerr): Initialize to 107.
	Update _HURD_ERRNOS consistency check.

	* stdlib/canonicalize.c (canonicalize): Use pathconf for PATH_MAX,
	not sysconf.

	* login/login.c [!PATH_MAX] (PATH_MAX): Define to be 1024 if not
	already defined.

	* sysdeps/mach/hurd/setitimer.c (timer_thread): Supply SIGCODE
	argument to __msg_sig_post_request.

	* hurd/hurdmalloc.c: Changes to bring in line with the hurd
	libthreads/malloc.c:
	(more_memory): Use assert_perror instead of MACH_CALL.
	"cthread_internals.h": Include removed.
	(realloc): Use LOG2_MIN_SIZE.
	(LOG2_MIN_SIZE): New macro.
	(realloc): Don't bother allocating a new block if the
 	new size request fits in the old one and doesn't waste any space.
  	Only free the old block if we successfully got a new one.
	[MCHECK] (struct header): New type.
	(union header): Only define if !MCHECK.
	(HEADER_SIZE, HEADER_NEXT, HEADER_FREE, HEADER_CHECK): New macros.
	[MCHECK] (MIN_SIZE): Add correct definition for this case.
	(more_memory, malloc, free, realloc): Use above macros, and add
	appropiate checks & frobs in MCHECK case.
1996-06-06 15:29:59 +00:00
Miles Bader
e550852065 (PF_INET6, AF_INET6): New macros. 1996-06-06 15:10:29 +00:00
Roland McGrath
92f3773b4c Thu Jun 6 02:00:42 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Makerules (distinfo-vars): Don't write constant line to frob sources.
	* Make-dist (sources): Append $(elided-routines) and $(extra-libs)
	routines.
1996-06-06 06:05:11 +00:00
Roland McGrath
8f30ca23f7 Tue Jun 4 22:03:02 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/m68k/fpu/__math.h: Define long double versions of
	the inline functions.

	* sysdeps/m68k/fpu/e_asinl.c, sysdeps/m68k/fpu/e_atanl.c,
	sysdeps/m68k/fpu/e_acosl.c, sysdeps/m68k/fpu/e_expl.c,
	sysdeps/m68k/fpu/e_fmodl.c, sysdeps/m68k/fpu/e_log10l.c,
	sysdeps/m68k/fpu/e_logl.c, sysdeps/m68k/fpu/e_powl.c,
	sysdeps/m68k/fpu/e_remainderl.c, sysdeps/m68k/fpu/e_scalbl.c,
	sysdeps/m68k/fpu/e_sinhl.c, sysdeps/m68k/fpu/e_sqrtl.c,
	sysdeps/m68k/fpu/k_cosl.c, sysdeps/m68k/fpu/k_sinl.c,
	sysdeps/m68k/fpu/k_tanl.c, sysdeps/m68k/fpu/s_atanl.c,
	sysdeps/m68k/fpu/s_ceill.c, sysdeps/m68k/fpu/s_cosl.c,
	sysdeps/m68k/fpu/s_expm1l.c, sysdeps/m68k/fpu/s_fabsl.c,
	sysdeps/m68k/fpu/s_finitel.c, sysdeps/m68k/fpu/s_floorl.c,
	sysdeps/m68k/fpu/s_frexpl.c, sysdeps/m68k/fpu/s_ilogbl.c,
	sysdeps/m68k/fpu/s_isinfl.c, sysdeps/m68k/fpu/s_isnanl.c,
	sysdeps/m68k/fpu/s_ldexpl.c, sysdeps/m68k/fpu/s_log1pl.c,
	sysdeps/m68k/fpu/s_logbl.c, sysdeps/m68k/fpu/s_modfl.c,
	sysdeps/m68k/fpu/s_rintl.c, sysdeps/m68k/fpu/s_scalbnl.c,
	sysdeps/m68k/fpu/s_significandl.c, sysdeps/m68k/fpu/s_sinl.c,
	sysdeps/m68k/fpu/s_tanhl.c, sysdeps/m68k/fpu/s_tanl.c: New files.

	* sysdeps/m68k/fpu/e_acos.c, sysdeps/m68k/fpu/e_fmod.c,
 	sysdeps/m68k/fpu/k_cos.c, sysdeps/m68k/fpu/k_sin.c,
 	sysdeps/m68k/fpu/k_tan.c, sysdeps/m68k/fpu/s_atan.c,
 	sysdeps/m68k/fpu/s_frexp.c, sysdeps/m68k/fpu/s_ilogb.c,
 	sysdeps/m68k/fpu/s_isinf.c, sysdeps/m68k/fpu/s_ldexp.c,
 	sysdeps/m68k/fpu/s_modf.c: Define generic functions using FUNC and
 	float_type with appropriate defaults.

	* sysdeps/m68k/fpu/e_acosf.c, sysdeps/m68k/fpu/e_fmodf.c,
	sysdeps/m68k/fpu/k_cosf.c, sysdeps/m68k/fpu/k_sinf.c,
	sysdeps/m68k/fpu/k_tanf.c, sysdeps/m68k/fpu/s_atanf.c,
	sysdeps/m68k/fpu/s_frexpf.c, sysdeps/m68k/fpu/s_ilogbf.c,
	sysdeps/m68k/fpu/s_isinff.c, sysdeps/m68k/fpu/s_ldexpf.c,
	sysdeps/m68k/fpu/s_modff.c: Include the corresponding double
	versions with appropriate definitions to get float functions,
	instead of defining them directly.

	* sysdeps/m68k/fpu/acos.c: File removed.
	* sysdeps/m68k/fpu/asin.c: File removed.
	* sysdeps/m68k/fpu/atan.c: File removed.
	* sysdeps/m68k/fpu/atan2.c: File removed.
	* sysdeps/m68k/fpu/atanh.c: File removed.
	* sysdeps/m68k/fpu/ceil.c: File removed.
	* sysdeps/m68k/fpu/cos.c: File removed.
	* sysdeps/m68k/fpu/cosh.c: File removed.
	* sysdeps/m68k/fpu/drem.c: File removed.
	* sysdeps/m68k/fpu/exp.c: File removed.
	* sysdeps/m68k/fpu/expm1.c: File removed.
	* sysdeps/m68k/fpu/fabs.c: File removed.
	* sysdeps/m68k/fpu/fl.h: File removed.
	* sysdeps/m68k/fpu/floor.c: File removed.
	* sysdeps/m68k/fpu/fmod.c: File removed.
	* sysdeps/m68k/fpu/frexp.c: File removed.
	* sysdeps/m68k/fpu/isinf.c: File removed.
	* sysdeps/m68k/fpu/isinfl.c: File removed.
	* sysdeps/m68k/fpu/isnan.c: File removed.
	* sysdeps/m68k/fpu/isnanl.c: File removed.
	* sysdeps/m68k/fpu/ldexp.c: File removed.
	* sysdeps/m68k/fpu/log.c: File removed.
	* sysdeps/m68k/fpu/log10.c: File removed.
	* sysdeps/m68k/fpu/log1p.c: File removed.
	* sysdeps/m68k/fpu/logb.c: File removed.
	* sysdeps/m68k/fpu/pow.c: File removed.
	* sysdeps/m68k/fpu/rint.c: File removed.
	* sysdeps/m68k/fpu/sin.c: File removed.
	* sysdeps/m68k/fpu/sinh.c: File removed.
	* sysdeps/m68k/fpu/sqrt.c: File removed.
	* sysdeps/m68k/fpu/tan.c: File removed.
	* sysdeps/m68k/fpu/tanh.c: File removed.

	* sysdeps/unix/sysv/linux/syscalls.list: Add select (the syscall name
	is _newselect).
	* sysdeps/unix/sysv/linux/select.S: File removed.

	* sysdeps/unix/sysv/linux/m68k/select.S: File removed; obsolete with
	current kernels, generic linux version is fine.
1996-06-06 05:23:42 +00:00
Roland McGrath
f127cd28b5 Thu Jun 6 00:02:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* locale/Makefile: Add vpath for %.gperf to programs.

	* Make-dist (+tsrcs): Variable removed.
	(dist): Process $^ here instead of using $(+tsrcs).

	* sysdeps/unix/sysv/linux/Makefile (install-others): Don't set.
	($(includedir)/sys/syscall.h): Target removed.
	(sysdep_headers): Add syscall-list.h.
	($(objpfx)syscall-%.[dh]): New rule to build syscall-list.[dh].
	(generated): Add those.
	* sysdeps/unix/sysv/linux/syscall.h: Include <syscall-list.h>.

	* misc/sys/syscall.h: New file.
	* misc/Makefile (headers): Add sys/syscall.h.

	* sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
1996-06-06 04:54:33 +00:00
Roland McGrath
dfe1754a55 * time/tzfile.h, time/private.h, time/zdump.c, time/zic.c,
time/africa, time/asia, time/australasia, time/europe,
 	time/northamerica, time/southamerica: Updated from ADO 96h.

	* Make-dist (all-headers): Filter $(sysdep_headers) out of $(headers).
	(try-sysdeps, +sysdep-names): Check sysdeps/libm-ieee754 too.

	* Makerules (distinfo-vars): Add sysdep_headers.
	* sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Append to
	this instead of $(headers).
	* sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.

	* Make-dist [subdirs-dirs]: Don't prefix $(subdir-dirs) with
	$(subdir); we are already there.

	* sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist: Removed.
1996-06-05 23:25:04 +00:00
Roland McGrath
92702b9197 Wed Jun 5 15:57:28 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* mach/Machrules: Undo last change.
	(mach-generated): List .uh and .__h files only for $(user-interfaces),
	not for each .h in $(interface-headers); server-interfaces have no .uh
	or .__h files.


	* mach/Makefile (mach/mach_interface.defs): Renamed from
	mach_interface.defs.
Wed Jun  5 15:10:58 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>

	* Make-dist [subdir-dirs]: Set vpath for %, not just %.c.

	* locale/Makefile (subdir-dirs): New variable.

Wed Jun  5 00:01:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1996-06-05 20:08:20 +00:00
Roland McGrath
63b129ed59 Wed Jun 5 15:57:28 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* mach/Machrules: Undo last change.
	(mach-generated): List .uh and .__h files only for $(user-interfaces),
	not for each .h in $(interface-headers); server-interfaces have no .uh
	or .__h files.
1996-06-05 20:07:42 +00:00
Miles Bader
c2bf8a5a23 (mach/mach_interface.defs): Renamed from mach_interface.defs. (mach/memory_object_user.defs): New variable. 1996-06-05 19:52:56 +00:00
Miles Bader
b13aa0b866 *** empty log message ***
Wed Jun  5 15:42:51 1996  Miles Bader  <miles@gnu.ai.mit.edu>

	* mach/Machrules (%_server.uh, %_server.__h): New rules, so that the
	corrsponding .defs file with without the `_server' will be used.
	
	* mach/Makefile (mach/mach_interface.defs): Renamed from mach_interface.defs.
	(mach/memory_object_user.defs): New variable.
1996-06-05 19:51:36 +00:00
Roland McGrath
df7c0d2312 Wed Jun 5 15:10:58 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Make-dist [subdir-dirs]: Set vpath for %, not just %.c.
1996-06-05 19:22:44 +00:00
Roland McGrath
aa592a63f9 * Makerules (distinfo-vars): Add sysdep_routines.
* mach/Machrules (include-%.defs): New canned sequence.
	Change all uses of `#include <$*.defs>' in cmds to use it.
	* mach/Makefile (mach_interface.defs): New variable, set to mach.defs.

	* sysdeps/i386/dl-machine.h (elf_machine_rel): Handle RESOLVE being
	null in all cases but R_386_COPY.
	(elf_machine_rel):

	* sysdeps/unix/bsd/ultrix4/mips/Dist: Updated.
	* sysdeps/unix/bsd/ultrix4/Dist: Removed.
	* sysdeps/unix/sysv/sysv4/Dist: Updated.
	* sysdeps/unix/sysv/sco3.2.4/Dist: Removed.
	* sysdeps/unix/sysv/irix4/Dist: Updated.
	* sysdeps/unix/sysv/linux/i386/Dist: Removed.
	* sysdeps/unix/sysv/Dist: Updated.
	* sysdeps/unix/bsd/sun/sunos4/Dist: Removed.
	* sysdeps/unix/bsd/sony/newsos4/Dist: Removed.
	* sysdeps/gnu/Dist: New file.
	* sysdeps/alpha/Dist: Updated.
	* sysdeps/mach/hurd/Dist: Updated.

	* Make-dist [subdir-dirs]: Set a vpath for %.c.

	* Make-dist (README): Fix typo in cvs cmd.
1996-06-05 19:07:37 +00:00
Roland McGrath
198046e105 Regenerated: autoconf sysdeps/mach/hurd/configure.in 1996-06-05 05:09:56 +00:00
Per Bothner
caa9e37aab * config.guess: Combine mips-mips-riscos cases, and use cpp to distinguish sysv/svr4/bsd variants. 1996-06-05 04:12:46 +00:00
Roland McGrath
1c384dcd5f Wed Jun 5 00:01:19 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dl-lookup.c (_dl_lookup_symbol): Fix typos in last change.
	Comment out ref to nonexistent _dl_close.
1996-06-05 04:03:34 +00:00
Roland McGrath
58e071515a * math/Makefile (libm-support, libm-calls): New variables.
(libm-routines): Construct this from those.
	(calls): New variable.
	(routines): Construct this from it.

	* resolv/res_debug.c: Add missing #include <ctype.h>.

	* sysdeps/unix/getlogin.c: Must pass struct utmp ptr to getutline_r.
	* sysdeps/unix/getlogin_r.c: Likewise.

	* sysdeps/libm-ieee754/w_hypotl.c: Fix typo.

	* sysdeps/libm-ieee754/w_cabsl.c: __cabsl_complex -> __cabs_complexl

	* math/Makefile (long-m-routines): Define recursive variable as
	$(long-m-$(long-double-fcts)).
	(long-m-yes): Put list of routines here.
	(long-c-routines, long-c-yes): Likewise.

	* sysdeps/unix/sysv/linux/schedbits.h: File removed.

	* sysdeps/i386/Makefile (long-double-fcts): New variable, set to yes.
	* sysdeps/m68k/Makefile: Likewise.

	* math/Makefile [$(long-double-fcts)!=yes] (CPPFLAGS): Append
 	-DNO_LONG_DOUBLE.
1996-06-05 03:29:45 +00:00
Roland McGrath
ee188d555b Tue Jun 4 21:01:20 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* sysdeps/mach/hurd/getlogin_r.c: New file.

Wed Jun  5 02:11:30 1996  Ulrich Drepper  <drepper@cygnus.com>

	* io/Makefile (routines): Add ttyname_r.

	* resolv/res_debug.c, resolv/resolv.h: Update from bind-4.3.4-T4A.

	* sysdeps/libm-i387/e_asinl.S, sysdeps/libm-i387/e_atan2l.S,
	sysdeps/libm-i387/e_expl.S, sysdeps/libm-i387/e_fmodl.S,
	sysdeps/libm-i387/e_log10l.S, sysdeps/libm-i387/e_logl.S,
	sysdeps/libm-i387/e_remainderl.S, sysdeps/libm-i387/e_scalbl.S,
	sysdeps/libm-i387/e_sqrtl.S, sysdeps/libm-i387/s_atanl.S,
	sysdeps/libm-i387/s_cosl.S, sysdeps/libm-i387/s_ilogbl.S,
	sysdeps/libm-i387/s_log1pl.S, sysdeps/libm-i387/s_logbl.S,
	sysdeps/libm-i387/s_scalbnl.S, sysdeps/libm-i387/s_sinl.S,
	sysdeps/libm-i387/s_tanl.S: New files.  i387 assembler versions
	of `long double' math functions.

	* sysdeps/libm-ieee754/k_standard.c: Add handling for errors
	in long double functions.

	* sysdeps/libm-ieee754/s_ilogbl.c, sysdeps/libm-ieee754/s_logbl.c,
	sysdeps/libm-ieee754/s_modfl.c:  New files.  Generic versions
	of `long double' math functions.

	* sysdeps/libm-ieee754/s_isinf.c [NO_LONG_DOUBLE]: Add string
        alias for __isinfl.

	* sysdeps/libm-ieee754/w_acoshl.c, sysdeps/libm-ieee754/w_acosl.c,
	sysdeps/libm-ieee754/w_asinl.c, sysdeps/libm-ieee754/w_atan2l.c,
	sysdeps/libm-ieee754/w_atanhl.c, sysdeps/libm-ieee754/w_cabsl.c,
	sysdeps/libm-ieee754/w_coshl.c, sysdeps/libm-ieee754/w_dreml.c,
	sysdeps/libm-ieee754/w_expl.c, sysdeps/libm-ieee754/w_fmodl.c,
	sysdeps/libm-ieee754/w_gammal.c, sysdeps/libm-ieee754/w_gammal_r.c,
	sysdeps/libm-ieee754/w_hypotl.c, sysdeps/libm-ieee754/w_j0l.c,
	sysdeps/libm-ieee754/w_j1l.c, sysdeps/libm-ieee754/w_jnl.c,
	sysdeps/libm-ieee754/w_lgammal.c, sysdeps/libm-ieee754/w_lgammal_r.c,
	sysdeps/libm-ieee754/w_log10l.c, sysdeps/libm-ieee754/w_logl.c,
	sysdeps/libm-ieee754/w_powl.c, sysdeps/libm-ieee754/w_remainderl.c,
	sysdeps/libm-ieee754/w_scalbl.c, sysdeps/libm-ieee754/w_sinhl.c,
	sysdeps/libm-ieee754/w_sqrtl.c: New files.  Wrapper functions
	around long double function implementations.

	* sysdeps/posix/ttyname_r.c (ttyname_r): Use _D_EXACT_NAMLEN
	to determine length of directory entry name.

	* posix/Makefile (routines): Add getlogin_r.
	* posix/unistd.h: Add prototype for getlogin_r.
	* sysdeps/stub/getlogin_r.c: New file.  Reentrant version of
	getlogin function, specified in P1003.1c/D6.  Stub version.
	* sysdeps/unix/getlogin.c (getlogin): Use ttyname_r instead of
	ttyname.  This avoids saving and restoring the old content.
	Also use setutent_r, getutline_r and endutent_r instead of
	accing UTMP file directly.
	* sysdeps/unix/getlogin_r.c: New file.  Reentrant version of
	getlogin function, specified in P1003.1c/D6.

Tue Jun  4 20:10:09 1996  J.T. Conklin  <jtc@cygnus.com>

	* sysdeps/libm-i387/s_finitef.S: Fix mask for exponent.

	* elf/dl-lookup.c (_dl_lookup_symbol): Grok magical undefined symbols
	_GNU_libc_dl_{open,close,symbol} and resolve them to dl functions.

	* elf/rtld.c (rtld_map): Renamed to _dl_rtld_map, made global.
	* elf/link.h: Declare _dl_rtld_map.

	* elf/dl-lookup.c (_dl_symbol_value): New function.
	* elf/link.h: Declare it.

	stdio-common/vfscanf.c: Prepare for reentrant libio.
	Used in reentrant libio.
1996-06-05 01:07:21 +00:00
Roland McGrath
f68b86cc7b Tue Jun 4 18:57:57 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* elf/dladdr.c: Remove #include <setjmp.h>, we don't use it.

	* shlib-versions: Set libdl=2.

	* elf/dl-deps.c (_dl_map_object_deps): Use a linked list of alloca'd
 	elements and then scan it to fill the single malloc'd array, instead
 	of using realloc to grow the array in the first pass.  _dl_map_object
	may do some mallocs that break our stream of reallocs, and the minimal
	realloc can't handle that.

	* elf/dl-init.c (_dl_init_next): Take argument, link_map whose
 	searchlist describes the piece of the DT_NEEDED graph to be
 	initialized.
	* elf/link.h: Update prototype.
	* sysdeps/i386/dl-machine.h (RTLD_START): Pass _dl_loaded as argument
	to _dl_init_next.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* elf/dl-deps.c (_dl_open): Pass new object as arg to _dl_init_next.

	* elf/link.h (struct link_map): Add `l_reserved' member, soaking up
	extra bits in last byte.
	* elf/dl-deps.c (_dl_map_object_deps): Use that for mark bit to avoid
	putting dup elts in search list.

	* elf/dlclose.c: Use MAP->l_searchlist to find deps to close.

	* elf/dlsym.c: Don't tweak linked list.  Scope array given to
	_dl_lookup_symbol does the right thing.
Tue Jun  4 02:25:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1996-06-04 23:06:02 +00:00
Roland McGrath
14d898aef6 * elf/Makefile (subdir_lib): Change this target to lib-noranlib.
(lib-noranlib): Depend on on $(extra-objs).

	* errno.h: Move __END_DECLS out of #ifdef's so it matches
	__BEGIN_DECLS.
1996-06-04 20:14:46 +00:00
Roland McGrath
a2b934be25 * stdio-common/vfprintf.c [USE_IN_LIBIO] (size_t): Don't define as
macro.  _IO_size_t is just an alias for the real size_t anyway.

	* elf/Makefile (libdl-routines): Add dladdr.
	* elf/dladdr.c: New file.
	* elf/dlfcn.h (Dl_info): New typedef.
	(dladdr): Declare it.
1996-06-04 09:29:39 +00:00