2a9fa50cd8
* ld.h (ld_config_type): Add field dynamic_link. * ldmain.c (main): Initialize config.dynamic_link to false. Warn on attempts to use -r with -relax, -call_shared or -s. * lexsup.c (longopts): Separate OPTION_CALL_SHARED from OPTION_NON_SHARED. Add OPTION_IGNORE. Adjust macro values accordingly. Add "dy" and "non_shared" options. Change "Qy" to OPTION_IGNORE for now. Handle OPTION_CALL_SHARED and OPTION_NON_SHARED by setting dynamic_link field accordingly. Handle OPTION_IGNORE by ignoring it. Clear dynamic_link field for -r and -Ur. * ldfile.c (ldfile_open_file): If config.dynamic_link is true, try opening a file with a .so extension first. * emultempl/elf32.em: New file. * emulparams/elf32_sparc.sh (TEXT_START_ADDR): Change to 0x10000. (NONPAGED_TEXT_START_ADDR): Likewise. (TEMPLATE_NAME): Define as elf32. (DATA_PLT): Define. * emulparams/elf_i386.sh (TEMPLATE_NAME): Define as elf32. * scripttempl/elf.sc: Add placement for new dynamic sections. Don't use CREATE_OBJECT_SYMBOLS. Define _etext, _edata and _end outside of any section. Don't use ALIGN(8); just let one section VMA follow another. Put .dynbss in .bss. Don't mention debugging sections; they'll be handled correctly anyhow. * Makefile.in (eelf_i386.c): Depend upon elf32.em, not generic.em. |
||
---|---|---|
.. | ||
.Sanitize | ||
a29k.sc | ||
alpha.sc | ||
delta68.sc | ||
ebmon29k.sc | ||
elf.sc | ||
go32coff.sc | ||
h8500.sc | ||
h8500b.sc | ||
h8500c.sc | ||
h8500m.sc | ||
h8500s.sc | ||
hppaelf.sc | ||
i386coff.sc | ||
i386go32.sc | ||
i386lynx.sc | ||
i960.sc | ||
m68klynx.sc | ||
m88kbcs.sc | ||
mips.sc | ||
mipsbsd.sc | ||
README | ||
sa29200.sc | ||
sh.sc | ||
sparccoff.sc | ||
sparclynx.sc | ||
st2000.sc | ||
vanilla.sc | ||
z8ksim.sc |
The files in this directory are linker script templates. genscripts.sh sets some shell variables, then sources EMULATION.sc, to generate EMULATION.{x,xr,xu,xn,xbn} -- the script files for default, -r, -Ur, -n, -N.