* config.bfd (arm*-*-symbianelf*): Use OS-specific target vectors.
authorMark Mitchell <mark@codesourcery.com>
Fri, 3 Sep 2004 17:15:44 +0000 (17:15 +0000)
committerMark Mitchell <mark@codesourcery.com>
Fri, 3 Sep 2004 17:15:44 +0000 (17:15 +0000)
commite5a52504a53dcf6bfb4ac1b94cac6a952c3da118
treece7af0b4625d1d493fa66a24c05963b27ed20a63
parentf3219c75e5e25c63696baf0b9fc94dd394c4718e
* config.bfd (arm*-*-symbianelf*): Use OS-specific target vectors.
* configure.in (bfd_elf32_bigarm_symbian_vec): Add it.
(bfd_elf32_littlearm_symbian_vec): Likewise.
* configure: Regenerated.
* elf-bfd.h (elf_backend_data): Add dynamic_sec_flags.
* elf32-arm.h (PLT_HEADER_SIZE): Do not define.
(PLT_ENTRY_SIZE): Likewise.
(bfd_vma_elf32_arm_symbian_plt_entry): New
variable.
(elf32_arm_link_hash_table): Add plt_header_size, plt_entry_size,
and symbian_p.
(create_got_section): Don't create sections when generating BPABI
objects.
(elf32_arm_create_dynamic_sections): Tidy.
(elf32_arm_link_hash_table_create): Set plt_header_size,
plt_entry_size, and symbian_p.
(elf32_arm_check_relocs): Do not mark .rel.dyn as loadable when
generating BPABI objects.
(allocate_dynrelocs): Use htab->plt_header_size, not
PLT_HEADER_SIZE.  Do not add to .got.plt when
generating BPABI objects.
(elf32_arm_finish_dynamic_symbol): Generate Symbian OS PLTs.
* elfarm-nabi.c: Add SymbianOS target vectors.
* elflink.c (_bfd_elf_create_got_section): Use dynamic_sec_flags.
(_bfd_elf_link_create_dynamic_sections): Likewise.
* elfxx-target.h (ELF_DYNAMIC_SEC_FLAGS): New macro.
(elfNN_bed): Use it.
* targets.c (bfd_elf32_bigarm_symbian_vec): New variable.
(bfd_elf32_littlearm_symbian_vec): Likewise.
(_bfd_target_vector): Add them.

* Makefile.am (TARG_ENV_HFILES): Add te-symbian.h.
* Makefile.in: Regenerated.
* configure.in: Set em for arm*-*-symbianelf*.
* configure: Regenerated.
* config/tc-arm.c (elf32_arm_target_format): Use Symbian target
vectors when appropriate.
* config/te-symbian.h: New file.

* Makefile.am (ALL_EMULATIONS): Add earmsymbian.o.
(earmsymbian.c): New target.
* configure.tgt: Use armsymbian emulation for arm*-*-symbianelf*.
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: Likewise.
* emulparams/armsymbian.sh: New file.
25 files changed:
bfd/ChangeLog
bfd/config.bfd
bfd/configure
bfd/configure.in
bfd/elf-bfd.h
bfd/elf32-arm.h
bfd/elfarm-nabi.c
bfd/elflink.c
bfd/elfxx-target.h
bfd/targets.c
binutils/configure
gas/ChangeLog
gas/Makefile.am
gas/Makefile.in
gas/config/tc-arm.c
gas/config/te-symbian.h [new file with mode: 0644]
gas/configure
gas/configure.in
ld/ChangeLog
ld/Makefile.am
ld/Makefile.in
ld/aclocal.m4
ld/configure
ld/configure.tgt
ld/emulparams/armsymbian.sh [new file with mode: 0644]