Commit Graph

74 Commits

Author SHA1 Message Date
christos d3d1227320 Ld directory reorganization:
- separate out the common files used by rtld ldd ld
	- move machine dependent files into arch
	- move ld in its own directory
	- factor out .PATH and CFLAGS common to all Makefiles
1997-04-16 16:49:28 +00:00
christos 0aad9d4378 Makefile cleanups 1997-03-24 22:02:40 +00:00
scottr 372fe2ff92 Catch up with const changes to dlopen() and dlsym() prototypes in
<dlfcn.h>.  Tested on i386 and hp300 for crt0.o and ld.so, verified
other references by inspection.
1997-01-03 22:37:58 +00:00
pk db6c2ee527 <link.h> has moved in with the run-time linker source. 1996-12-23 22:13:03 +00:00
pk 49dc4d2fe7 Deal with weak symbols when looking up in shared libraries. 1996-12-21 21:53:16 +00:00
pk c51687391d Actually set the RTLD_DL flag in dlopen'ed shared objects, per PR#2791. 1996-10-06 19:03:32 +00:00
thorpej 7d468e4a0c Iff __m68k__, use a `slight hack' to determine the magic of the executable
we're doing a dynamic link for, and change the page size used for offset
and size calculations if necessary.  Allows the same ld.so to be used with
mixed m68k4k and m68k8k executables and libraries.

Thanks a million to Gordon Ross for the help in making this work!
1996-09-10 22:17:51 +00:00
thorpej 648aed921f RCS id police. 1996-07-03 03:28:09 +00:00
pk 721a11bff8 Use DESTDIR to point at libraries like bsd.prog.mk does (PR#2524). 1996-06-08 22:22:26 +00:00
pk 55d51fbb95 Relax checking of minor version number in `findhint()'. Also use the
directories from the hints (v.2) file for directory traversing.
This should take care of PR#1146.
1996-01-14 00:35:17 +00:00
pk ccc1c895ef Deal with v.2 hint files (hint srch dirs not yet used). 1996-01-09 00:02:28 +00:00
pk d98240030c Define LD_HINTS_VERSION_2:
- no longer hash on minor version number in hints file.
	- add list of ldconfig(8) search directories.
1996-01-09 00:00:11 +00:00
thorpej 2e1dc487c5 Add -fno-function-cse to PICFLAGS. Without it, Very Bad Things happen
when ld.so is compiled with gcc 2.7.2 on the m68k.  From
Niklas Hallqvist <niklas@appli.se> in PR #1557.  (Thanks, Nik, for reminding
me about this PR...)
1996-01-02 08:54:28 +00:00
pk 2bb60e32ec Make dlopen() search for libraries if given a name of the form
`lib<name>.so[.xx[.yy]]' (per Erik M. Theisen; PR#1763; patch from PR
used in simplified form).
1995-12-28 17:57:32 +00:00
pk d04fcadcc2 Fix typo. 1995-10-09 09:24:59 +00:00
pk 9d43c41208 New style RCS IDs. 1995-10-09 00:09:39 +00:00
pk b74b1d6456 Allow customized trace output, so ldd(1) can be more conveniently used
as a filter.

Rearrange cascading stuff: remove two-level limit.
1995-10-08 23:43:28 +00:00
pk d4fe561742 Interface version 4:
implement dlexit() (per Doug Rabson)
	get actual rtld path from crt0
	pass ld_entry back to crt0 in a better place
1995-09-23 22:46:24 +00:00
pk fa6e06725c Define `dlexit()' in crt<=>rtld interface (active in v4). 1995-09-23 22:26:15 +00:00
pk 1a9159c7ba Check for zero sized BSS to avoid a big no-op syscall (per Mike Hibler). 1995-08-31 22:07:25 +00:00
pk f6797ed4f1 Install the manual page. 1995-08-25 10:08:45 +00:00
pk f42537952b man page for the run-time linker 1995-06-30 12:23:10 +00:00
pk 45359beaf4 Initialise after malloc (fixes PR#1149).
Also, correct comparison when looking in `prefered' paths.
1995-06-20 23:07:03 +00:00
pk d680ed6b95 #include <dlfcn.h> 1995-06-05 00:08:38 +00:00
pk 878392000d Put dlopen() et.al. declarations in separate header file for compatibility. 1995-06-05 00:08:07 +00:00
pk fdd7092874 Cache two more environment variable values. 1995-06-04 23:21:35 +00:00
pk fe9497fd8c Revive library search paths. 1995-06-04 21:57:18 +00:00
pk ad760ce3d6 Implement compiled-in library search paths: any `-L' argument encountered
while `dynamic link-mode' is on, is recorded in the executable. The
run-time linker will search these paths after $LD_LIBRARY_PATH but
before the default set and those currently in the hints file.
The feature is disabled whenever for set[ug]id programs.
1995-06-04 21:56:22 +00:00
pk 28dba22b40 Fix bogosities in cascade stuff. 1995-04-01 20:56:55 +00:00
pk b6340cabe2 Burn LD_RUN_PATH; I didn't read the SVR5 man-pages carefully enough. 1995-03-06 22:59:10 +00:00
pk 64edf8f86f Code from Matthew Green to do DL cascading "in the first degree".
Two `fprintf(stderr, ..)' => `warnx(..)'.
1995-03-06 20:51:24 +00:00
pk da34da6096 Put a reserved field into use (weak symbol support). 1994-12-23 20:16:59 +00:00
pk e46ed32748 Bummer! Undo mmap() changes in rev. 1.26; they royally screw up the
kernel's pmap address preference mechanism.
1994-12-19 12:21:21 +00:00
pk e2025017e0 Handle "/dev/zero" stuff more globally. 1994-12-18 16:05:49 +00:00
pk b8937d605d Re-arrange mmap() calls, per Charles' suggestion. 1994-12-18 15:38:55 +00:00
pk 524e00b29b Ensure contiguous chunks for all of an object's address space (text+data+bss). 1994-12-07 20:30:53 +00:00
mycroft 15cea8b764 Don't close the hints file while it's mapped, but unmap and close it after
loading.
1994-10-26 20:21:42 +00:00
cgd 4d2cbfce0a new RCS ID format. 1994-10-26 00:55:40 +00:00
deraadt 43965575ed NBPG --> getpagesize() 1994-09-19 16:58:18 +00:00
mycroft 72e34bc0d4 Shrink ld.so by 12k. 1994-09-19 04:49:02 +00:00
pk 233cc208f0 Re-add `LD_WARN_NON_PURE_CODE' that went missing. 1994-08-12 08:11:16 +00:00
pk 867591e7cb Relax minor version number checking somewhat; issue warning if minor
version is less than expected.
1994-08-07 10:34:40 +00:00
pk 009be1653a strdup() doesn't grok NULL pointers 1994-06-24 13:31:34 +00:00
pk a43fd7b3a2 Conversion to err()/warn() for error reports. 1994-06-10 15:16:32 +00:00
pk ca0065ab75 Another move to .data to please gdb. 1994-05-25 10:14:37 +00:00
pk 4369371ef0 Enable dl*() prototypes. 1994-05-24 10:47:48 +00:00
pk f28b14e8b3 Force some string constants into the data segment (for core-dump reading).
Rename internal dl_*() functions.
Do run-time symbol alias processing.
1994-05-24 10:44:06 +00:00
pk f8af116033 dlopen() should make a copy of argument (Thomas Eberhardt). 1994-04-07 19:46:30 +00:00
cgd 95d6a185be no more MAP_FILE 1994-03-28 02:07:04 +00:00
pk 1bb4f06e2a Libraries which are in the hints file but not in one's LD_LIBRARY_PATH (if
set) were not found.
1994-02-15 22:51:23 +00:00