Commit Graph

262 Commits

Author SHA1 Message Date
cgd
10cc9f3b70 RCS Id police 1998-01-05 22:00:34 +00:00
cgd
cb1cb72951 bsd.prog.mk isn't needed here, and including it only gets us an
unnecessary obj dir.
1998-01-05 21:56:31 +00:00
pk
f58457ccca Expand on shared object's `.init' functions a bit, and mention
`/usr/lib/c++rt.o'.
1997-11-13 22:25:23 +00:00
lukem
da49bfcda7 use CPPFLAGS instead of CFLAGS 1997-10-25 10:10:19 +00:00
mark
919c9148f3 Add support for PIC code.
Add support for ld.so
1997-10-17 21:25:42 +00:00
christos
776130f509 Handle relocation of misaligned symbols. Handle all three cases by the same
macro for clarity.
1997-10-14 17:17:52 +00:00
mycroft
e96e918e60 Use bsd.subdir.mk as appropriate. 1997-10-11 09:34:07 +00:00
thorpej
c46d775b91 Document new flags and internal processing of ld.so.conf changes. 1997-08-27 06:43:07 +00:00
thorpej
c48a53ac99 Enhancements from Jim Bernard <jbernard@tater.mines.edu>, to support
processing of /etc/ld.so.conf in ld.so itself (rather than in /etc/rc):
- added do_conf function and call to it in main to implement internal
  processing of /etc/ld.so.conf
- moved maintenance of dir_list to dodir, with an added argument to
  dodir to specify whether dir_list should be updated
- added option '-c' to suppress processing of /etc/ld.so.conf
- added option '-S' to suppress processing of std directories (but not
  /etc/ld.so.conf)
- modified option -s to suppress processing of _both_ std directories
  and /etc/ld.so.conf (i.e., it is equivalent to -cS)--this was done
  so that users and scripts that interpret -s as meaning "process
  only directories specified on the command line" would not be
  startled

From PR #4031.  One change was not committed, since it was unnecessary
(option variables are in the BSS, and do not need to be initialized to
0 explicitly).

Plus one change from me:
- getopt() returns -1 when completed, not EOF.
1997-08-26 19:29:57 +00:00
mikel
2bb07f9f5c xref ldconfig(8) not nonexistent ldconfig(1) 1997-07-16 04:34:36 +00:00
christos
df79fb912d Add the necessary -I flag to pick up the libc/include/extern.h 1997-07-14 02:56:54 +00:00
matthias
a57d8745e7 * Truncate the cinv table. It was twice as long as necessary as a result
of an earlier version of th code.
* Really align the cinv table modulo 0x200. Thank's to Ian for telling me
  where I goofed up.
1997-07-11 23:39:56 +00:00
matthias
df05f3a8b1 * Flush the icache from user mode. The original code and the idea came from
Ian Dall. I just did some slight optimizations.
1997-07-09 19:32:51 +00:00
pk
c7531c0573 State explicitly that an internal consistency check failed (PR#2660). 1997-07-04 22:15:41 +00:00
pk
72023de51f Do not free dlopen'ed map structures twice.
Plug memory leak when opening the same object mor than once.
1997-06-30 22:10:06 +00:00
pk
7a27a9dd43 Fix typo in free_link_map(); noticed by Mike Grupenhoff. 1997-06-30 20:49:40 +00:00
pk
c682966345 Patch from Chris Demetriou to unmap an object on last dlclose(), which
had not be implemented. It would cause an "adress space leak" and, if
the same object would opened multiple time, unwanted relocations.
Re: Comment from Chris:

"The a.out ld.so has some problems with dlclose.  It doesn't properly
unmap objects which are dlclosed.  That's a known problem (though a
serious one for programs which dlopen then dlclose lots of objects,
because it causes address space exhaustion), but it has a
previously-unknown side-effect.

If a single object is dlopened, then dlclosed, then dlopened _again_,
the relocations will be processed again.  That causes obvious
problems."
1997-06-26 20:52:06 +00:00
mrg
586ed80911 install all man pages. 1997-06-23 13:25:41 +00:00
pk
4dd59ab4df Fix typos (PR#3761). 1997-06-20 20:38:08 +00:00
mikel
0bf17c4d39 fix typo; from Saitoh Masanobu in PR misc/3696.
also comma-separate and reorder xrefs.
1997-06-03 04:24:25 +00:00
cjs
7a66732d34 Back out BUILDDIR and NOINSTALL changes. 1997-05-31 21:21:13 +00:00
cjs
097e643f79 Remove an ifdef. Add comment about -nostdlib vs. ELF ld. 1997-05-30 14:06:34 +00:00
veego
d0b955050b Use the extra LDFLAGS if OBJDIR is defined. 1997-05-30 11:39:01 +00:00
cjs
c21a83a6fb PR 3670 from SAITOH Masanobu <msaitoh@spa.is.uec.ac.jp>
Fix typos.
1997-05-26 00:40:39 +00:00
pk
ff90cf758b Keep track of `dlsym()' symbol lookup scope differently. There's (currently)
only one special case: a NULL argument to dlopen(); return a special
token for that case.
1997-05-03 08:00:02 +00:00
christos
ffc1ff32d7 Add BINDIR 1997-04-19 17:09:53 +00:00
christos
108e13f159 Moved to arch 1997-04-16 16:59:44 +00:00
christos
2869186c80 moved to arch 1997-04-16 16:59:03 +00:00
christos
ac37de3d7e Moved to arch 1997-04-16 16:57:13 +00:00
christos
bdb0a5aeae moved to arch 1997-04-16 16:56:07 +00:00
christos
76a60a39c3 Moved to arch 1997-04-16 16:55:18 +00:00
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
b4f53dbf7c mktemp() -> mkstemp() 1997-04-16 16:46:28 +00:00
pk
f03e47e58a Calculate text size padding correctly (affects `-p' option only). 1997-04-08 23:16:27 +00:00
christos
0aad9d4378 Makefile cleanups 1997-03-24 22:02:40 +00:00
perry
48060bc2d7 Fix bug which has kept ld.so from being built for some time:
<bsd.prog.mk> was being included before an .if !defined(NOPIC)
which added rtld to the SUBDIRs. This was so that the definition
of NOPIC would get picked up. Unfortunately, this is WRONG, because
after <bsd.prog.mk> is included you shouldn't be able to touch SUBDIR
as the magic has already happened.

However, a complementary bug in the .mk files kept anyone from
noticing until now.

Fixed by moving the include of <bsd.prog.mk> to the bottom and
including <bsd.own.mk> above the .if !defined, which is the correct
way to do this sort of thing.
1997-03-24 19:54:35 +00:00
mrg
b904481502 xref ld.so.conf.5 1997-01-05 12:07:53 +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
mikel
dd40c6d884 eliminate valueless return from main(); PR bin/3073. 1997-01-03 07:10:52 +00:00
pk
c978f3a5c0 Fix another symbol mis-count noticed by Thorsten Lockert. 1996-12-28 01:11:25 +00:00
pk
db6c2ee527 <link.h> has moved in with the run-time linker source. 1996-12-23 22:13:03 +00:00
pk
f867c23217 Don't include indirect symbols in global counter if imported from a
shared library (problem noticed by Thorsten Lockert).

Also, make sure not to overwrite predefined _DYNAMIC symbol type.
1996-12-22 01:10:37 +00:00
pk
49dc4d2fe7 Deal with weak symbols when looking up in shared libraries. 1996-12-21 21:53:16 +00:00
perry
75911b347d nuke 'the the' typo 1996-12-04 00:11:23 +00:00
ws
79b6fe9805 Add machine dependent code for NetBSD/powerpc 1996-11-03 18:02:42 +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
ec67ea7102 When checking the entry point of an executable, use N_PAGSIZ() rather
than __LDPGSZ directly.
1996-09-07 22:07:15 +00:00
mark
48d30b1294 Fixed NetBSD tag. 1996-08-21 18:43:29 +00:00
phil
cc13fe98cb Fix for dynamically linked functions returning structs. PR#2586/Pfaller 1996-07-31 06:22:41 +00:00