* scripttempl/elfmips.sc: Handle CREATE_SHLIB the same way that

elf.sc does, so that glibc works better.
This commit is contained in:
Ian Lance Taylor 1996-10-01 22:31:27 +00:00
parent 8dd53b5cc8
commit 4fc7ca82bf
2 changed files with 15 additions and 12 deletions

View file

@ -4,6 +4,9 @@ Tue Oct 1 16:17:33 1996 Joel Sherrill <joel@oarcorp.com>
Tue Oct 1 15:50:34 1996 Ian Lance Taylor <ian@cygnus.com>
* scripttempl/elfmips.sc: Handle CREATE_SHLIB the same way that
elf.sc does, so that glibc works better.
* ldver.c (ld_program_version): New variable.
(ldversion): Use it.
* ldver.h (ld_program_version): Declare.

View file

@ -92,14 +92,14 @@ SECTIONS
.init ${RELOCATING-0} : { *(.init) } =${NOP-0}
.text ${RELOCATING-0} :
{
${CREATE_SHLIB-${RELOCATING+${TEXT_START_SYMBOLS}}}
${RELOCATING+${TEXT_START_SYMBOLS}}
*(.text)
*(.stub)
/* .gnu.warning sections are handled specially by elf32.em. */
*(.gnu.warning)
} =${NOP-0}
${CREATE_SHLIB-${RELOCATING+_etext = .;}}
${CREATE_SHLIB-${RELOCATING+PROVIDE (etext = .);}}
${RELOCATING+_etext = .;}
${RELOCATING+PROVIDE (etext = .);}
.fini ${RELOCATING-0} : { *(.fini) } =${NOP-0}
/* Adjust the address for the data segment. We want to adjust up to
@ -118,11 +118,11 @@ SECTIONS
important than losing a page of the virtual address space (note
that no actual memory is lost; the page which is skipped can not
be referenced). */
${CREATE_SHLIB-${RELOCATING+. += ${DATA_ADDR} - ${TEXT_START_ADDR};}}
${CREATE_SHLIB+${RELOCATING+. += 0x10000;}}
${RELOCATING+. += ${DATA_ADDR} - ${TEXT_START_ADDR};}
${RELOCATING+. += 0x10000;}
.data ${RELOCATING-0} :
{
${CREATE_SHLIB-${RELOCATING+${DATA_START_SYMBOLS}}}
${RELOCATING+${DATA_START_SYMBOLS}}
*(.data)
${CONSTRUCTING+CONSTRUCTORS}
}
@ -139,10 +139,10 @@ SECTIONS
we can shorten the on-disk segment size. */
.sdata ${RELOCATING-0} : { *(.sdata) }
${RELOCATING+${OTHER_READWRITE_SECTIONS}}
${CREATE_SHLIB-${RELOCATING+_edata = .;}}
${CREATE_SHLIB-${RELOCATING+PROVIDE (edata = .);}}
${CREATE_SHLIB-${RELOCATING+__bss_start = .;}}
${CREATE_SHLIB-${RELOCATING+${OTHER_BSS_SYMBOLS}}}
${RELOCATING+_edata = .;}
${RELOCATING+PROVIDE (edata = .);}
${RELOCATING+__bss_start = .;}
${RELOCATING+${OTHER_BSS_SYMBOLS}}
.sbss ${RELOCATING-0} : { *(.sbss) *(.scommon) }
.bss ${RELOCATING-0} :
{
@ -150,8 +150,8 @@ SECTIONS
*(.bss)
*(COMMON)
}
${CREATE_SHLIB-${RELOCATING+_end = . ;}}
${CREATE_SHLIB-${RELOCATING+PROVIDE (end = .);}}
${RELOCATING+_end = . ;}
${RELOCATING+PROVIDE (end = .);}
/* These are needed for ELF backends which have not yet been
converted to the new style linker. */