Commit Graph

337 Commits

Author SHA1 Message Date
kleink 3ed4fcf61e In userland, pull in <errno.h> instead of <sys/errno.h> for the declaration
of errno.
1999-01-11 22:39:59 +00:00
itohy 85da239ef8 Fix byte order swapping for cross linker. 1999-01-05 10:02:20 +00:00
cjs a5b9b9c815 Include sys/resource.h, because otherwise RLIMIT_STACK is not set
and ld does not bump up its stack limit. This causes large links
(such as the kernel) to segfault on machines with a small stack
limit (particularly sparc, .5 MB).
1998-12-30 15:09:04 +00:00
pk 4ba42b7d80 shlib.c has been Moved to `src/libexec/ld.aout_so'
etc.c and ld.h have been obsoleted.
1998-12-17 15:41:48 +00:00
pk 0ea0854e75 These files now live in `src/libexec/ld.aout_so/arch' 1998-12-17 15:38:54 +00:00
pk aca560d3b4 Adjust include directories.
Enable standard gcc error checking.
1998-12-17 15:17:27 +00:00
pk e9e87c8bee Collect implementation definitions in `ld_i.h' and use that in other files.
Deal with missing and incorrect prototypes, so this compiles with gcc's
strict error checking turned on.
1998-12-17 14:34:51 +00:00
pk 9f709b3e8b The a.out version of ld.so now lives in `src/libexec/ld.aout_so' 1998-12-17 11:50:58 +00:00
pk cec94710e3 ldconfig(8) now lives in `src/sbin/ldconfig' 1998-12-17 11:47:20 +00:00
pk b489374794 ldd & ldconfig are no longer here. 1998-12-15 22:36:24 +00:00
pk 1ad0913030 Cast down the prototype revolt for now.. 1998-12-15 22:34:38 +00:00
pk fc2f406a64 Pull in proper headers; deal with compiler warnings; miscelleneous KNF. 1998-12-15 22:27:14 +00:00
pk 6dc44fab77 ldd has moved to `src/usr.bin/ldd/ldd_aout' 1998-12-15 22:10:19 +00:00
pk b53366509b Deal with compiler warnings: format strings, prototypes, variable initialization. 1998-12-15 21:35:17 +00:00
pk c03c29c0e4 Prototypes. 1998-12-15 21:33:00 +00:00
pk f6f34d9c9f Pull in <a.out.h>. 1998-12-15 21:28:28 +00:00
pk 7e47c7f32b Add & correct prototypes. 1998-12-15 21:27:08 +00:00
pk 631ebffde3 Layout & compiler warnings. 1998-12-15 21:23:57 +00:00
pk ad3e459220 NetBSD -> __NetBSD__ 1998-12-15 21:22:52 +00:00
mycroft dedf21f286 Put back code to use pc-relative branches in the PLT, and avoid doing cache
flushes.
1998-12-03 15:56:51 +00:00
mycroft 26fce3548b Use the `first' argument to md_fix_jmpslot(). 1998-12-03 15:46:28 +00:00
matt ce394ac326 Add hook to convert some DISP32 relocs to BASREL through a GOT entry.
[XXX not perfect since gotslot are allocated on a per-symbol basis but
not a per-symbol & addend tuple.  This makes impossible to have separate
GOT entries to ___sF (stdin), ___sF+88 (stdout), and ___sF+176 (stderr)]
1998-10-31 09:04:29 +00:00
matt 931b784473 Remove reference to unused include file. 1998-10-31 08:59:58 +00:00
matt 64f4491c2e Add a hook for converting "normal" DISP32 relocs that refer to data symbols
in a shared object to BASEREL relocs through a GOT entry.
1998-10-31 08:56:24 +00:00
kristerw a2030d670f Revert last change, since it treats external SIZE symbols as
weak undefined symbols. The problem it tried to solve is
actually a bug in non bfd gas.new.

Fixes PR port-i386/6351 from Bernd Ernesti.
1998-10-24 21:07:15 +00:00
matt 8f7b610683 More fixes and optimizations for VAX shared library support. Including
one that makes vfork work.
1998-10-23 00:51:36 +00:00
matt 42ba16dee7 Make the BINDER debug messages a bit more useful (print index and jmpslot
address too).
1998-10-23 00:44:44 +00:00
matt 6ee7d63576 It seems that gas.new has new types to indicate weakness
of symbols.  Adapt our ld to it.
1998-10-21 06:13:08 +00:00
kleink 069e8a5d77 GC empty `FILES' section. 1998-10-20 16:46:15 +00:00
matt 4f1a79cfbd Back out change to md_make_gotreloc which added 4 arguement of got_t *.
Add argument to md_fix_jmpslot indicating whether this the first (i.e
tranfer) jmpslot or not.  Add better support for VAX (the VAX can support
pure text code; let ld that advantage of it).  Checking in verified and
working versions of rtld VAX support routines.
1998-10-19 03:09:31 +00:00
matt f94bc8f4df Add AUX_LABEL (need for VAX JSB/JMP "jmp" slots). 1998-10-19 00:30:57 +00:00
itohy 102d06b78c 1. The 1st arg of sprintf() shall be nul terminated
(The C specification can read as such and our implementation of sprintf()
issues strlen() to the arg).
2. Eliminate memory leaks.
1998-10-17 17:14:01 +00:00
itohy 9d79a50f6a Correct return value of md_midcompat(). 1998-10-17 17:08:21 +00:00
matt bb27fa210f Get shared libraries a lot closer to working. 1998-10-12 01:33:35 +00:00
matthias 78f9c9bd25 remove some vm_offset_t fallout. 1998-10-03 20:04:01 +00:00
pk 4d98b5ce9c Prevent spurious matches matches against unwanted major versions.
Patch based on PR#6139.
1998-09-15 12:38:55 +00:00
pk e6b129450c Exit early from alloc_link_map() if we have no object; only relevant
when tracing. (PR#6140)
1998-09-12 15:03:19 +00:00
pk 0a97faa040 Assign my copyrights to TNF. 1998-09-05 13:08:38 +00:00
pk b912f72b52 Print `unreferenced' info separately from definition. 1998-09-04 09:50:47 +00:00
pk 795c860f6a The PLT symbol is also a special case when processing a shared library
symbol table (and so is the GOT symbol actually, but no one ever noticed..).

Re-enable PLT symbol.
1998-09-04 09:43:29 +00:00
matt 24d4c63088 Disable the the PLT symbol until I can get it to work properly. 1998-09-03 19:17:10 +00:00
matt 81c6c6b8c6 Fix core dump when plt_symbol didn't exist when needed with dynamic images. 1998-08-28 14:45:46 +00:00
matt c75dbabbf6 only emit __PROCEDURE_LINKAGE_TABLE_ if generating shared library. 1998-08-27 21:20:44 +00:00
matt 60f624ddb7 Fix some obvious bugs. 1998-08-26 15:32:02 +00:00
matt 2ffec21522 Create symbol for __PROCEDURE_LINKAGE_TABLE_. 1998-08-26 14:39:47 +00:00
matt 4da3f7cfd8 Add external symbol for __PROCEDURE_LINKAGE_TABLE_. Modify arguments
to md_make_gotreloc for VAX'es sake.
1998-08-26 14:37:40 +00:00
matt fb6da63fa6 More changes for shareable libraries and PIC code 1998-08-21 01:03:48 +00:00
matt 0111660e53 Get md.c to compile again. Get mdprologue.S to assemble. [Now at least
ld and rtld compile and link.]
1998-08-20 15:12:02 +00:00
matt 74018d8df6 Untested(!!) beginning of VAX a.out shared library support. This is a work
in progress.
1998-08-18 18:46:16 +00:00
mycroft 93f8d753f8 Small changes to make debugging a little easier. 1998-08-13 07:34:05 +00:00