summaryrefslogtreecommitdiffstats
path: root/libexec/rtld-aout/shlib.c
Commit message (Collapse)AuthorAgeFilesLines
* 64-bit clean + WARNS=6:delphij2005-01-141-4/+3
| | | | | | | | | | | | | | | | | - Convert the (char *) cast+cast backs magic to memcpy(3). Without this, the resulting code is potentially risky with higher optimization levels. - Avoid same name when calling local variables, as well as global symbols. This reduces confusion for both human and compiler. - Add necessary casts, consts - Use new style function defination. - Minor style.Makefile(5) tweak - Bump WARNS?= from 0 to 6 ** for the aout code: changes are intentionally limited to ease maintaince.
* Restore these files to make ldconfig(8) happy.trhodes2005-01-111-0/+340
|
* Remove a.out runtime linker. It doesn't build and was removed from thetrhodes2005-01-111-340/+0
| | | | | | | | | | build over two years ago by peter. The binary a.out version of ld.so can be obtained from misc/compat22 or src/lib/compat/compat22. Discussed on: -arch Voted yes: jhb, ru, linimon, delphij
* Initiate deorbit burn for the i386-only a.out related support. Moves arepeter2002-09-171-1/+1
| | | | | | | | | | | | | | | under way to move the remnants of the a.out toolchain to ports. As the comment in src/Makefile said, this stuff is deprecated and one should not expect this to remain beyond 4.0-REL. It has already lasted WAY beyond that. Notable exceptions: gcc - I have not touched the a.out generation stuff there. ldd/ldconfig - still have some code to interface with a.out rtld. old as/ld/etc - I have not removed these yet, pending their move to ports. some includes - necessary for ldd/ldconfig for now. Tested on: i386 (extensively), alpha
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Don't recognize a file as an a.out shared library unless it has atjdp1998-09-051-6/+4
| | | | | | | | | | | | least 2 version numbers. This fixes the bug where the dynamic linker would try to load an ELF shared library if it found one. Note, this change also fixes the same thing in "ld", because the code is shared. For "ld" there is still a problem with ".a" libraries, which cannot be distinguished by name. I haven't decided what, if anything, to do about that.
* Search for libraries in dlopen() when the specified pathbrian1998-06-071-2/+2
| | | | | | contains no ``/''s. Elf already searches it seems. Mostly submitted by: Mike Smith <mike@smith.net.au>
* ELF preparation step 2:sos1998-05-261-2/+2
| | | | | | | | | | | | | | Move a.out libraries to /usr/lib/aout to make space for ELF libs. Make rtld usr /usr/lib/aout as default library path. Make ldconfig reject /usr/lib as an a.out library path. Fix various Makefiles for LIBDIR!=/usr/lib breakage. This will after a make world & reboot give a system that no longer uses /usr/lib/*, infact one could remove all the old libraries there, they are not used anymore. We are getting close to an ELF make world, but I'll let this all settle for a week or two...
* Revert $FreeBSD$ to $Id$peter1997-02-221-1/+1
|
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-1/+1
| | | | | | | | 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.
* Support for .weak (in addition to the N_INDR stab) for gcc/g++. Also dealpeter1996-10-011-19/+21
| | | | | | | | | | 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)
* Implement support for LD_PRELOAD in the dynamic linker.jdp1996-04-201-1/+27
| | | | Submitted by: Doug Ambrisko <ambrisko@ambrisko.roble.com>
* Split up the code so that a single directory can be searched, tojdp1996-01-131-81/+116
| | | | | | | support some changes in the dynamic linker. (This code is shared by the dynamic linker.) Reviewed by: nate@freebsd.org
* Removed /usr/local/lib from the standard library search path to benate1995-03-191-2/+2
| | | | | | | consistant. Programs shouldn't rely on non-standard paths for bringing in default libraries. Suggested by: Andreas Schulz <ats@freebsd.first.gmd.de>
* Weak symbol support from NetBSD. This should bring us in sync with thenate1995-03-041-2/+2
| | | | | | | | 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
* Change toswallace1995-01-051-2/+2
| | | | | #define STANDARD_SEARCH_DIRS "/usr/lib", "/usr/X11R6/lib", "/usr/local/lib" Like in 2.0R, except without /usr/X386.
* Updated to recent version of Paul K.'s shlib code. This code has betternate1994-12-231-6/+6
| | | | | | | | | | 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
* Changes from Paul Kranenburg which bring us into sync with his sources:rich1994-06-151-14/+25
| | | | | | | | | | | | | | 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.
* This is Paul K's latest set of ld changes. A commit was necessary at thisjkh1994-02-131-3/+37
| | | | | | | | | | 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).
* Remove /usr/X386/lib and /usr/local/lib from the default locations,rgrimes1994-02-091-2/+2
| | | | | these are handled by /etc/rc and this was causing errors on a new install as these places do NOT exsist by default!
* Sync up with Paul K's latest ld from cesium.jkh1993-12-111-3/+33
|
* More changes to bring FreBSD in sync with Paul K's latest.jkh1993-12-041-27/+2
|
* Many recent fixes from Paul K, add support for chaining of shared lib deps.jkh1993-11-301-2/+27
|
* Updated to newest ld from pk.paul1993-11-091-3/+4
| | | | | | | | | | | | 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.
* Imported NetBSD's ld for shared libs.paul1993-11-031-0/+203
OpenPOWER on IntegriCloud