* ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
authorAlan Modra <amodra@gmail.com>
Fri, 28 Feb 2003 01:32:31 +0000 (01:32 +0000)
committerAlan Modra <amodra@gmail.com>
Fri, 28 Feb 2003 01:32:31 +0000 (01:32 +0000)
commit3bcf55573d377355c73846cc0b819c7d878d8e19
treebbe9a2d3302487029b4dbb711170df911a326c35
parent2c4c2bc0a526e8e0c186cd7cb005e2947cac3b88
* ldemul.c (ldemul_add_options, ldemul_handle_option): New functions.
(ldemul_parse_args): Return bfd_boolean.  Formatting.
* ldemul.h (ldemul_add_options, ldemul_handle_option): Declare.
(ldemul_parse_args): Adjust.
(struct ld_emulation_xfer_struct): Add add_options and handle_option.
Return bfd_boolean from parse_args.
* lexsup.c (parse_args): Malloc shortopts, longopts and
really_longopts.  Call ldemul_add_options and ldemul_handle_option.
* emultempl/aix.em (gld${EMULATION_NAME}_add_options): Split out from
gld${EMULATION_NAME}_parse_args.
(gld${EMULATION_NAME}_handle_option): Likewise.
(ld_${EMULATION_NAME}_emulation): Adjust initializer.
* emultempl/armcoff.em: As for aix.em, but remove parse_args.
* emultempl/beos.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/elf32.em: Likewise.  Don't duplicate long options either.
(gld${EMULATION_NAME}_add_sysroot): Prototype.
* emultempl/armelf.em (PARSE_AND_LIST_LONGOPTS): Don't duplicate
options.
* emultempl/hppaelf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/ppc32elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/ppc64elf.em (PARSE_AND_LIST_LONGOPTS): Likewise.
* emultempl/armelf_oabi.em (ld_${EMULATION_NAME}_emulation): Adjust
initializer.
* emultempl/generic.em: Likewise.
* emultempl/gld960.em: Likewise.
* emultempl/gld960c.em: Likewise.
* emultempl/linux.em: Likewise.
* emultempl/lnk960.em: Likewise.
* emultempl/m68kcoff.em: Likewise.
* emultempl/mipsecoff.em: Likewise.
* emultempl/sunos.em: Likewise.
* emultempl/vanilla.em: Likewise.
* emultempl/netbsd.em (gldnetbsd_before_parse): Prototype.
25 files changed:
ld/ChangeLog
ld/emultempl/aix.em
ld/emultempl/armcoff.em
ld/emultempl/armelf.em
ld/emultempl/armelf_oabi.em
ld/emultempl/beos.em
ld/emultempl/elf32.em
ld/emultempl/generic.em
ld/emultempl/gld960.em
ld/emultempl/gld960c.em
ld/emultempl/hppaelf.em
ld/emultempl/linux.em
ld/emultempl/lnk960.em
ld/emultempl/m68kcoff.em
ld/emultempl/mipsecoff.em
ld/emultempl/netbsd.em
ld/emultempl/pe.em
ld/emultempl/ppc32elf.em
ld/emultempl/ppc64elf.em
ld/emultempl/sunos.em
ld/emultempl/ticoff.em
ld/emultempl/vanilla.em
ld/ldemul.c
ld/ldemul.h
ld/lexsup.c