diff options
Diffstat (limited to 'gnu/usr.bin/binutils/ld/emulparams')
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/armcoff.sh | 2 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/armpe.sh | 3 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/elf32_sparc.sh | 1 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/elf32b4300.sh | 10 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/elf32bmip.sh | 8 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/elf32l4300.sh | 10 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/elf32lmip.sh | 8 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/elf32ppc.sh | 4 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/elf64_sparc.sh | 44 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/i386go32.sh | 4 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/i386pe.sh | 5 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/ppcpe.sh | 3 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/ld/emulparams/sun4.sh | 1 |
13 files changed, 79 insertions, 24 deletions
diff --git a/gnu/usr.bin/binutils/ld/emulparams/armcoff.sh b/gnu/usr.bin/binutils/ld/emulparams/armcoff.sh index 9ef6ac44698..91df7d3c41d 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/armcoff.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/armcoff.sh @@ -3,4 +3,4 @@ SCRIPT_NAME=armcoff OUTPUT_FORMAT="coff-arm-little" LITTLE_OUTPUT_FORMAT="coff-arm-little" BIG_OUTPUT_FORMAT="coff-arm-big" -#TEMPLATE_NAME=armcoff +TEMPLATE_NAME=armcoff diff --git a/gnu/usr.bin/binutils/ld/emulparams/armpe.sh b/gnu/usr.bin/binutils/ld/emulparams/armpe.sh index 22468050e54..257c9ded5f5 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/armpe.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/armpe.sh @@ -4,3 +4,6 @@ OUTPUT_FORMAT="pei-arm-little" LITTLE_OUTPUT_FORMAT="pei-arm-little" BIG_OUTPUT_FORMAT="pei-arm-big" TEMPLATE_NAME=pe +ENTRY="_mainCRTStartup" +SUBSYSTEM=PE_DEF_SUBSYSTEM +INITIAL_SYMBOL_CHAR=\"_\" diff --git a/gnu/usr.bin/binutils/ld/emulparams/elf32_sparc.sh b/gnu/usr.bin/binutils/ld/emulparams/elf32_sparc.sh index 1397f38c181..3279fc3b6b2 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/elf32_sparc.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/elf32_sparc.sh @@ -3,6 +3,7 @@ OUTPUT_FORMAT="elf32-sparc" TEXT_START_ADDR=0x10000 MAXPAGESIZE=0x10000 NONPAGED_TEXT_START_ADDR=0x10000 +ALIGNMENT=8 ARCH=sparc TEMPLATE_NAME=elf32 DATA_PLT= diff --git a/gnu/usr.bin/binutils/ld/emulparams/elf32b4300.sh b/gnu/usr.bin/binutils/ld/emulparams/elf32b4300.sh index 147ec2d5086..24f8d98eab0 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/elf32b4300.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/elf32b4300.sh @@ -1,15 +1,15 @@ -SCRIPT_NAME=elfmips +SCRIPT_NAME=elf OUTPUT_FORMAT="elf32-bigmips" BIG_OUTPUT_FORMAT="elf32-bigmips" LITTLE_OUTPUT_FORMAT="elf32-littlemips" TEXT_START_ADDR=0xa0020000 -DATA_ADDR=. MAXPAGESIZE=0x40000 -OTHER_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' OTHER_GOT_SYMBOLS=' _gp = ALIGN(16) + 0x7ff0; ' -OTHER_READWRITE_SECTIONS=' +OTHER_GOT_SECTIONS=' .lit8 : { *(.lit8) } .lit4 : { *(.lit4) } ' @@ -22,7 +22,7 @@ OTHER_SECTIONS=' .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } ' ARCH=mips -MACHINE=4000 +MACHINE= TEMPLATE_NAME=elf32 GENERATE_SHLIB_SCRIPT=yes DYNAMIC_LINK=false diff --git a/gnu/usr.bin/binutils/ld/emulparams/elf32bmip.sh b/gnu/usr.bin/binutils/ld/emulparams/elf32bmip.sh index 2bcb2956450..ffe82628150 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/elf32bmip.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/elf32bmip.sh @@ -1,4 +1,4 @@ -SCRIPT_NAME=elfmips +SCRIPT_NAME=elf OUTPUT_FORMAT="elf32-bigmips" BIG_OUTPUT_FORMAT="elf32-bigmips" LITTLE_OUTPUT_FORMAT="elf32-littlemips" @@ -7,11 +7,13 @@ DATA_ADDR=0x10000000 MAXPAGESIZE=0x40000 NONPAGED_TEXT_START_ADDR=0x0400000 SHLIB_TEXT_START_ADDR=0x5ffe0000 -OTHER_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +TEXT_DYNAMIC= +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' OTHER_GOT_SYMBOLS=' _gp = ALIGN(16) + 0x7ff0; ' -OTHER_READWRITE_SECTIONS=' +OTHER_GOT_SECTIONS=' .lit8 : { *(.lit8) } .lit4 : { *(.lit4) } ' diff --git a/gnu/usr.bin/binutils/ld/emulparams/elf32l4300.sh b/gnu/usr.bin/binutils/ld/emulparams/elf32l4300.sh index fdf31b134e3..690de88b3aa 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/elf32l4300.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/elf32l4300.sh @@ -1,15 +1,15 @@ -SCRIPT_NAME=elfmips +SCRIPT_NAME=elf OUTPUT_FORMAT="elf32-littlemips" BIG_OUTPUT_FORMAT="elf32-bigmips" LITTLE_OUTPUT_FORMAT="elf32-littlemips" TEXT_START_ADDR=0xa0020000 -DATA_ADDR=. MAXPAGESIZE=0x40000 -OTHER_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' OTHER_GOT_SYMBOLS=' _gp = ALIGN(16) + 0x7ff0; ' -OTHER_READWRITE_SECTIONS=' +OTHER_GOT_SECTIONS=' .lit8 : { *(.lit8) } .lit4 : { *(.lit4) } ' @@ -22,7 +22,7 @@ OTHER_SECTIONS=' .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } ' ARCH=mips -MACHINE=4000 +MACHINE= TEMPLATE_NAME=elf32 GENERATE_SHLIB_SCRIPT=yes DYNAMIC_LINK=false diff --git a/gnu/usr.bin/binutils/ld/emulparams/elf32lmip.sh b/gnu/usr.bin/binutils/ld/emulparams/elf32lmip.sh index 4be75dd430e..a686a9f2449 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/elf32lmip.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/elf32lmip.sh @@ -1,4 +1,4 @@ -SCRIPT_NAME=elfmips +SCRIPT_NAME=elf OUTPUT_FORMAT="elf32-littlemips" BIG_OUTPUT_FORMAT="elf32-bigmips" LITTLE_OUTPUT_FORMAT="elf32-littlemips" @@ -7,11 +7,13 @@ DATA_ADDR=0x10000000 MAXPAGESIZE=0x40000 NONPAGED_TEXT_START_ADDR=0x0400000 SHLIB_TEXT_START_ADDR=0x5ffe0000 -OTHER_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +TEXT_DYNAMIC= +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' OTHER_GOT_SYMBOLS=' _gp = ALIGN(16) + 0x7ff0; ' -OTHER_READWRITE_SECTIONS=' +OTHER_GOT_SECTIONS=' .lit8 : { *(.lit8) } .lit4 : { *(.lit4) } ' diff --git a/gnu/usr.bin/binutils/ld/emulparams/elf32ppc.sh b/gnu/usr.bin/binutils/ld/emulparams/elf32ppc.sh index 4c1e7b31949..fcafd1139ee 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/elf32ppc.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/elf32ppc.sh @@ -2,6 +2,6 @@ TEMPLATE_NAME=elf32 GENERATE_SHLIB_SCRIPT=yes SCRIPT_NAME=elfppc OUTPUT_FORMAT="elf32-powerpc" -TEXT_START_ADDR=0x40000 -MAXPAGESIZE=0x40000 +TEXT_START_ADDR=0x01800000 +MAXPAGESIZE=0x10000 ARCH=powerpc diff --git a/gnu/usr.bin/binutils/ld/emulparams/elf64_sparc.sh b/gnu/usr.bin/binutils/ld/emulparams/elf64_sparc.sh index 4a9dc0b767a..2ab2e4fabb9 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/elf64_sparc.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/elf64_sparc.sh @@ -1,6 +1,46 @@ SCRIPT_NAME=elf +ELFSIZE=64 +TEMPLATE_NAME=elf32 OUTPUT_FORMAT="elf64-sparc" -TEXT_START_ADDR=0x100200 +TEXT_START_ADDR=0x100000 MAXPAGESIZE=0x100000 -NONPAGED_TEXT_START_ADDR=0x100200 +NONPAGED_TEXT_START_ADDR=0x100000 ARCH="sparc:v9" +MACHINE= +DATA_PLT= +GENERATE_SHLIB_SCRIPT=yes +NOP=0x01000000 + +if [ "x${host}" = "x${target}" ]; then + case " $EMULATION_LIBPATH " in + *" ${EMULATION_NAME} "*) + # Native, and default or emulation requesting LIB_PATH. + + # Linux and Solaris modify the default library search path + # to first include a 64-bit specific directory. It's put + # in slightly different places on the two systems. + case "$target" in + sparc*-linux*) + suffix=64 ;; + sparc*-solaris*) + suffix=/sparcv9 ;; + esac + + if [ -n "${suffix}" ]; then + + LIB_PATH=/lib${suffix}:/lib + LIB_PATH=${LIB_PATH}:/usr/lib${suffix}:/usr/lib + if [ -n "${NATIVE_LIB_DIRS}" ]; then + LIB_PATH=${LIB_PATH}:`echo ${NATIVE_LIB_DIRS} | sed s/:/${suffix}:/g`${suffix}:${NATIVE_LIB_DIRS} + fi + if [ "${libdir}" != /usr/lib ]; then + LIB_PATH=${LIB_PATH}:${libdir}${suffix}:${libdir} + fi + if [ "${libdir}" != /usr/local/lib ]; then + LIB_PATH=${LIB_PATH}:/usr/local/lib${suffix}:/usr/local/lib + fi + + fi + ;; + esac +fi diff --git a/gnu/usr.bin/binutils/ld/emulparams/i386go32.sh b/gnu/usr.bin/binutils/ld/emulparams/i386go32.sh index 52649a1e5d9..0ef16c4d37c 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/i386go32.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/i386go32.sh @@ -1,8 +1,8 @@ SCRIPT_NAME=i386go32 -OUTPUT_FORMAT="coff-i386" +OUTPUT_FORMAT="coff-go32" TEXT_START_ADDR=0x10a8 TARGET_PAGE_SIZE=0x1000 -SEGMENT_SIZE=0x1000 +SEGMENT_SIZE=0x200 NONPAGED_TEXT_START_ADDR=0x0 ARCH=i386 diff --git a/gnu/usr.bin/binutils/ld/emulparams/i386pe.sh b/gnu/usr.bin/binutils/ld/emulparams/i386pe.sh index 1249064a420..a8add23d6d1 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/i386pe.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/i386pe.sh @@ -1,5 +1,8 @@ ARCH=i386 SCRIPT_NAME=pe OUTPUT_FORMAT="pei-i386" +RELOCATEABLE_OUTPUT_FORMAT="pe-i386" TEMPLATE_NAME=pe - +ENTRY="_mainCRTStartup" +SUBSYSTEM=PE_DEF_SUBSYSTEM +INITIAL_SYMBOL_CHAR=\"_\" diff --git a/gnu/usr.bin/binutils/ld/emulparams/ppcpe.sh b/gnu/usr.bin/binutils/ld/emulparams/ppcpe.sh index 655282d3fc3..a2d09ef2238 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/ppcpe.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/ppcpe.sh @@ -2,3 +2,6 @@ ARCH=powerpc SCRIPT_NAME=ppcpe OUTPUT_FORMAT="pei-powerpcle" TEMPLATE_NAME=pe +ENTRY="_mainCRTStartup" +SUBSYSTEM=PE_DEF_SUBSYSTEM +INITIAL_SYMBOL_CHAR=\"_\" diff --git a/gnu/usr.bin/binutils/ld/emulparams/sun4.sh b/gnu/usr.bin/binutils/ld/emulparams/sun4.sh index e2b15260178..bd42775331b 100644 --- a/gnu/usr.bin/binutils/ld/emulparams/sun4.sh +++ b/gnu/usr.bin/binutils/ld/emulparams/sun4.sh @@ -3,5 +3,6 @@ OUTPUT_FORMAT="a.out-sunos-big" TEXT_START_ADDR=0x2020 TARGET_PAGE_SIZE=0x2000 NONPAGED_TEXT_START_ADDR=0x2000 +ALIGNMENT=8 ARCH=sparc TEMPLATE_NAME=sunos |