summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/ld/emultempl
AgeCommit message (Collapse)Author
2004-11-08Partially revert to binutils 2.14: do not put a ``warning: '' prefixMiod Vallat
to stabs warning messages, as we already provide it in the message. This will not change until all our supported architectures move to ELF.
2004-11-02Merge conflicts, bringing our changes back in:Miod Vallat
- extra $(SHELL) and sugar for make (so that files not mode +x still work) - safer temp file handling - our W^X binary layout changes in ld - OpenBSD policy for library file selection in ld - arm and m88k changes which were not merged in time for official 2.15 - bfd core file handling - a couple typos New for 2.15: - ld(1) and as(1) manpages now generated at build time - binutils/stabs.c reverted to use our in-tree libiberty for now - we still use our VIA C3 crypto code over stock binutils, as it recognizes more instructions - new emulations for OpenBSD on mips64 machines, to help OpenBSD/sgi - relaxed %f# handling in gas on OpenBSD/sparc64 (same as was in 2.14) Tested on all platforms by various people; special thanks to sturm@ and otto@.
2004-11-02Binutils 2.15, with testsuites removed, and without gdb and libiberty.Miod Vallat
2004-10-08Lookup libraries based on version numbers for implicit as well explict librariesDale Rahn
ok espie@
2004-05-19remove the disabled DO_FORCE_VERS support.Brad Smith
ok drahn@
2004-05-17Resolve merge conflicts, adjust method of W^X handing (.sh files)Dale Rahn
remove testsuites (not useable) remove mmalloc (not part of new binutils).
2004-05-17import binutils 2.14 (excluding testsuites, .info files, and .po files)Dale Rahn
2003-11-23If gld${EMULATION_NAME}_search_dir() returns NULL, return earlyNikolay Sturm
and try not to fopen(NULL, ...) later. ok millert@
2003-01-24This is a project to modify executables so that they do not have anyDale Rahn
executable regions which are writable. If a section of an executable is writable and executable, it is much easier for errant code to modify the executable's behavior. Two current areas in shared library environments which have this critical problem are the GOT (Global Offset Table) and PLT (Procedure Linkage Table). The PLT is required to be executable and both GOT and PLT are writable on most architectures. On most ELF architecture machines this would cause shared libraries to have data and BSS marked as executable. Padding to the linker script for programs and shared libraries/objects to isolate the GOT and PLT into their own load sections in the executables. This allows only the text(readonly) region and the PLT region to be marked executable with the normal data and BSS not marked as executable. The PLT region is still marked executable on most architectures because the PLT lives in the "data" or "BSS" regions and the dynamic loader will need to modify it. Since the GOT and PLT should only ever be written by the dynamic linker, it will be modified to mprotect those regions so that they are not writable during normal execution. If the dynamic linker needs to modify the regions later, (eg for lazy binding), it will mprotect the region, make the necessary changes, and mprotect it back. Since it is possible to receive a signal which would interrupt the program flow and perhaps cause the dynamic linker to modify the same (or nearby) PLT references, it is now necessary for signals to be blocked for the duration of the mprotect. This diff was omitted from the original commit, this implements the -Z option to produce traditional (non protected) executables.
2003-01-04Remove the support to force linking against a specific shlib major.minor.Dale Rahn
This behavior broke libraries which were named libN-X.Y.so.A.B. ok pval, espie
2002-12-02xstrdup the return value of basename() before recording it in the bfd,Peter Valchev
fixes the "NEEDED crtend.o" problem that appeared in varios ports and had to be workarounded. from thorpej@NetBSD, thanks to drahn@ for pointing it out; ok drahn espie
2002-05-13resolve conflicts.Federico G. Schwindt
2002-05-13Import binutils-2.11.2Federico G. Schwindt
- only the binutils package (no gdb here) - don't import libiberty and texinfo, they are elsewhere - remove all .info* generated files
2002-03-19When one shared library requires another, it will try to locate thePeter Valchev
required shared library and include it in the link if it's not specified explicitly. This change makes ld look at the -L arguments specified, and build search path. This avoids the need for -rpath-link, and somewhat resembles the a.out linker behaviour. However behaviour of -rpath and -rpath-link is still preserved as a GNU extension. ok drahn, espie looked at it too
2001-06-09Automatic cvs merge. Dread what I will have to fix after this excuseMarc Espie
of a program is done...
2001-04-19undo change which breaks the alpha. I did not see this change and approve ↵Theo de Raadt
it during tree lock. Grrr
2001-04-18date: 2001/04/18 18:33:13; author: drahn; state: Exp; lines: +41 -0Dale Rahn
Use the /var/run/ld.so.hints for looking up transitive dependancies on shared libraries in ld, this is done in linux with ld.so.conf, but the string is stored in ld.so.hints for openbsd. Fixes some "-rpath" compilation errors. as with the linux case, this is only for the native ld. Ok'd by espie@.
2000-10-20Add support for major/minor version numbers.Marc Espie
Testing by Dale. Ok'd deraadt@
2000-09-12Resolve other problems that dumb cvs can't find out by itself.Marc Espie
(trivial part done, `interesting' patches remain)
2000-09-12Help stupid cvs fixing basic conflicts.Marc Espie
2000-09-12Import binutils-2.10Marc Espie
- only the binutils package (no gdb here) - don't import libiberty and texinfo, they are elsewhere - remove all .info* generated files
1997-04-14Forgot one change...Per Fogelstrom
1997-04-13More consistent MIPS configPer Fogelstrom
1996-11-23Merge to Cygnus 961112 + add some support (not ready) for shared libsNiklas Hallqvist
1996-09-29Missing #if casePer Fogelstrom
1996-09-28Better shlib version scanningPer Fogelstrom
1996-09-28New fallback alg. added for arc machines. If libxx.so is not found scan for ↵Per Fogelstrom
highest version of libxx.so.n. This is what ldconfig sets as highest. This will make manual linking of libxx.so to libxx.so.n not requiered any more. Also some constructor/shared lib fixes. Relocs is placed in the wrong section though. Hmmm..
1996-09-04Merge the Cygnus 960904 sourcesNiklas Hallqvist
1996-06-10Bring Cygnus versions into the trunk, keeping our local patchesNiklas Hallqvist
1996-01-08Initial GNU binutils 2.6 importNiklas Hallqvist