Merge remote branch 'origin/master'
[binutils/dougsmingw.git] / ld / emulparams / elf64_sparc.sh
blob9397b87dbc68ad1a3e7b60617e036a395f9af5bd
1 SCRIPT_NAME=elf
2 ELFSIZE=64
3 TEMPLATE_NAME=elf32
4 OUTPUT_FORMAT="elf64-sparc"
5 NO_REL_RELOCS=yes
6 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
7 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
8 ARCH="sparc:v9"
9 MACHINE=
10 DATA_PLT=
11 GENERATE_SHLIB_SCRIPT=yes
12 GENERATE_PIE_SCRIPT=yes
13 NOP=0x01000000
14 NO_SMALL_DATA=yes
16 case "$target" in
17 sparc*-solaris*)
18 TEXT_START_ADDR=0x100000000
21 TEXT_START_ADDR=0x100000
23 esac
25 # Treat a host that matches the target with the possible exception of "64"
26 # and "v7", "v8", "v9" in the name as if it were native.
27 if test `echo "$host" | sed -e 's/64//;s/v[789]//'` \
28 = `echo "$target" | sed -e 's/64//;s/v[789]//'`; then
29 case " $EMULATION_LIBPATH " in
30 *" ${EMULATION_NAME} "*)
31 NATIVE=yes
33 esac
36 # Linux and Solaris modify the default library search path
37 # to first include a 64-bit specific directory. It's put
38 # in slightly different places on the two systems.
39 # Look for 64 bit target libraries in /lib64, /usr/lib64 etc., first
40 # on Linux and /lib/sparcv9, /usr/lib/sparcv9 etc. on Solaris.
41 case "$EMULATION_NAME" in
42 *64*)
43 case "$target" in
44 sparc*-linux*)
45 LIBPATH_SUFFIX=64 ;;
46 sparc*-solaris*)
47 LIBPATH_SUFFIX=/sparcv9 ;;
48 esac
50 esac