Commit Graph

20 Commits

Author SHA1 Message Date
jkh
808a36ef65 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
jmacd
34f7e2327f Changes to make ld demangle C++ symbol names before printing
error messages containing them.

Reviewed by:	Peter Wemm
1997-01-11 05:51:03 +00:00
peter
84a69ec571 Support for .weak (in addition to the N_INDR stab) for gcc/g++. Also deal
with the -R option and store the path in the dynamic header when specified.
The $LD_RUN_PATH environment variable is not checked yet.

While here, split up the code a bit more to enable more selective replacing
of GPL'ed components that are linked with ld.so with others.

Obtained from: NetBSD (mostly, the breakup is my fault)
1996-10-01 01:22:51 +00:00
jkh
730964efd2 General -Wall warning cleanup, part I.
Submitted-By: Kent Vander Velden <graphix@iastate.edu>
1996-07-12 19:08:36 +00:00
bde
7b21039a71 Fix checks for open() failing. open() may successfully return 0.
ld.c:
Fix a an error message that said that open() failed after fopen() failed.
1995-09-28 19:43:22 +00:00
rgrimes
2ad6f3dee6 Remove trailing whitespace. 1995-05-30 05:05:38 +00:00
nate
4371f7f1b8 Back out my change to enforce command line linker order due to
underlying bugs which are caused by mixing static/shared libraries with
this change in place.

The shlib code is not capable of supporting this feature in it's present
state and will need significant modifications in order to do so.
1995-04-07 05:08:28 +00:00
nate
f5476ed249 Modify the default behavior of the linker to no longer prefer static
members over shared library members.  This modification causes the linker
to use the first definition it sees for a symbol instead of having
priorities based on the library type.  This modification should allow
gdb to compile again.

Obtained from:
  Email conversation with Paul Kranenbury, but implemented completely by
  me.  If it doesn't work, it's my fault not his.
1995-03-22 19:38:07 +00:00
nate
b9aa930e44 Weak symbol support from NetBSD. This should bring us in sync with the
NetBSD ld code except for local changes for dlopen() and friends and
the hashing on the minor value of the shlibs.  We should be binary
compatible now with all their libraries.

Obtained from: NetBSD
1995-03-04 17:49:20 +00:00
nate
7f56eb7b93 Updated to recent version of Paul K.'s shlib code. This code has better
warning handling and allows for link-time warnings with a modified
version of gas.

Note: Not all of the newer bits were updated such as some of the non-x86
machine-dependant code is relevant to FreeBSD right now.

Obtained from: NetBSD
1994-12-23 22:31:35 +00:00
rich
c2b2b84657 Changes from Paul Kranenburg which bring us into sync with his sources:
handling of errors through the standard err() and warn()
 more fixes for Geoff Rehmet's NULL pointer bug.
 fixes NULL pointer bugs when linking mono and nested X servers.
 supports a `-nostdlib' option.
 accept object files without a symbol table
 don't attempt dynamic linking when `-A' is given

a few variable names have chaged (desc -> fd), and the formatting has
changed which should make it much easier to track his sources.

I tested 'make world' for /usr/src and X twice with these changes.
1994-06-15 22:41:19 +00:00
jkh
477937c24f This is Paul K's latest set of ld changes. A commit was necessary at this
late stage due to the fact that link.h was copyright Sun Microsystems.

This version of ld sync's us up with NetBSD's ld and supports compatablily
with NetBSD's -[zZ] flags (which we had reversed).  Compiling with this
new ld will give you RRS warnings for libraries which do not contain .type
infomation - these wsarnings are harmless and will go away as soon as you
recompile your libraries (cd /usr/src; make libraries).
1994-02-13 20:43:13 +00:00
jkh
03fd21e05b C++ support changes (+misc fixes) from Paul K. 1993-12-22 23:28:35 +00:00
jkh
fa2f998399 Sync up with Paul K's latest ld from cesium. 1993-12-11 12:02:10 +00:00
jkh
0692c29b44 More changes to bring FreBSD in sync with Paul K's latest. 1993-12-04 00:53:02 +00:00
jkh
6c95372161 Second attempt to integrate Paul K's changes. 1993-12-02 00:56:40 +00:00
jkh
90b65690ec Many recent fixes from Paul K, add support for chaining of shared lib deps. 1993-11-30 20:47:54 +00:00
jkh
f730dcb859 Some of the latest changes from Paul K (taken from NetBSD-current). 1993-11-22 19:05:31 +00:00
paul
62cf7a7029 Updated to newest ld from pk.
lib.c:
Pull in archives containing definitions needed by shared objects.
warnings.c:
Less spurious "undefined symbol" msgs for shared library defined
symbols.
ld.c:
Do a better job of recognising data in text segments, eg. `const char []'.
shlib.c,ld/rtld/{Makefile rtld.c}
Use strsep() in stead of strtok() and restore colons in eg. env. vars.
1993-11-09 04:19:36 +00:00
paul
66fdbc00cf Imported NetBSD's ld for shared libs. 1993-11-03 23:41:59 +00:00