elf_i386.sh 1.2 KB

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