xref: /netbsd-src/external/gpl3/binutils.old/dist/ld/emulparams/elf_i386.sh (revision e992f068c547fd6e84b3f104dc2340adcc955732)
1source_sh ${srcdir}/emulparams/plt_unwind.sh
2source_sh ${srcdir}/emulparams/extern_protected_data.sh
3source_sh ${srcdir}/emulparams/dynamic_undefined_weak.sh
4source_sh ${srcdir}/emulparams/call_nop.sh
5source_sh ${srcdir}/emulparams/cet.sh
6source_sh ${srcdir}/emulparams/x86-report-relative.sh
7source_sh ${srcdir}/emulparams/x86-64-level.sh
8source_sh ${srcdir}/emulparams/static.sh
9source_sh ${srcdir}/emulparams/dt-relr.sh
10SCRIPT_NAME=elf
11OUTPUT_FORMAT="elf32-i386"
12NO_RELA_RELOCS=yes
13TEXT_START_ADDR=0x08048000
14MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
15COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
16ARCH=i386
17MACHINE=
18TEMPLATE_NAME=elf
19EXTRA_EM_FILE="elf-x86"
20GENERATE_SHLIB_SCRIPT=yes
21#ELFSIZE=32
22GENERATE_PIE_SCRIPT=yes
23NO_SMALL_DATA=yes
24SEPARATE_GOTPLT="SIZEOF (.got.plt) >= 12 ? 12 : 0"
25IREL_IN_PLT=
26
27case "$target" in
28  x86_64-*-netbsd*)
29    case "$EMULATION_NAME" in
30      *i386*)
31       LIB_PATH='=/usr/lib/i386'
32       ;;
33    esac
34    ;;
35esac
36
37# These sections are placed right after .plt section.
38OTHER_PLT_SECTIONS="
39.plt.got      ${RELOCATING-0} : { *(.plt.got) }
40.plt.sec      ${RELOCATING-0} : { *(.plt.sec) }
41"
42
43# Linux modify the default library search path to first include
44# a 32-bit specific directory.
45case "$target" in
46  x86_64*-linux* | i[3-7]86*-linux*)
47    case "$EMULATION_NAME" in
48      *i386*)
49	LIBPATH_SUFFIX=32
50	LIBPATH_SUFFIX_SKIP=64
51	;;
52    esac
53    ;;
54esac
55