diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2000-07-28 01:53:29 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2000-07-28 01:53:29 +0000 |
commit | b2009ff75163e3df981a37a2fce035c6514ed7d3 (patch) | |
tree | 4f01f3a3ab46426bacf7edfaa065eb1152701391 /ld | |
parent | 41392f033d9a298106d515efbc7e7a572eb7eb3e (diff) | |
download | gdb-b2009ff75163e3df981a37a2fce035c6514ed7d3.zip gdb-b2009ff75163e3df981a37a2fce035c6514ed7d3.tar.gz gdb-b2009ff75163e3df981a37a2fce035c6514ed7d3.tar.bz2 |
2000-07-27 H.J. Lu <hjl@gnu.org>
* emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed.
(PARSE_AND_LIST_PROLOGUE): New.
(PARSE_AND_LIST_LONGOPTS): Likewise.
(PARSE_AND_LIST_OPTIONS): Likewise.
(PARSE_AND_LIST_ARGS_CASES): Likewise.
(PARSE_AND_LIST_EPILOGUE): Likewise.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 9 | ||||
-rw-r--r-- | ld/emulparams/elf64alpha.sh | 64 |
2 files changed, 24 insertions, 49 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 9bf466b..2c3aaf2 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,12 @@ +2000-07-27 H.J. Lu <hjl@gnu.org> + + * emulparams/elf64alpha.sh (PARSE_AND_LIST_ARGS): Removed. + (PARSE_AND_LIST_PROLOGUE): New. + (PARSE_AND_LIST_LONGOPTS): Likewise. + (PARSE_AND_LIST_OPTIONS): Likewise. + (PARSE_AND_LIST_ARGS_CASES): Likewise. + (PARSE_AND_LIST_EPILOGUE): Likewise. + 2000-07-28 Alan Modra <alan@linuxcare.com.au> * emultempl/armelf.em: Elide functions common to elf32.em, diff --git a/ld/emulparams/elf64alpha.sh b/ld/emulparams/elf64alpha.sh index c3e4e52..908a6c0 100644 --- a/ld/emulparams/elf64alpha.sh +++ b/ld/emulparams/elf64alpha.sh @@ -16,60 +16,27 @@ OTHER_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' # This code gets inserted into the generic elf32.sc linker script # and allows us to define our own command line switches. -PARSE_AND_LIST_ARGS=' +PARSE_AND_LIST_PROLOGUE=' #define OPTION_TASO 300 /* Set the start address as in the Tru64 ld */ #define ALPHA_TEXT_START_32BIT 0x12000000 static int elf64alpha_32bit = 0; -static struct option longopts[] = -{ - {"taso", no_argument, NULL, OPTION_TASO}, - {NULL, no_argument, NULL, 0} -}; - -static void -gld_elf64alpha_list_options (file) - FILE * file; -{ - fprintf (file, _( -" -taso Load executable in the lower 31-bit addressable - virtual address range.\n")); -} - struct ld_emulation_xfer_struct ld_elf64alpha_emulation; static void gld_elf64alpha_finish (); +' -static int -gld_elf64alpha_parse_args (argc, argv) - int argc; - char ** argv; -{ - int longind; - int optc; - int prevoptind = optind; - int prevopterr = opterr; - int wanterror; - static int lastoptind = -1; - - if (lastoptind != optind) - opterr = 0; - - wanterror = opterr; - lastoptind = optind; +PARSE_AND_LIST_LONGOPTS=' + {"taso", no_argument, NULL, OPTION_TASO}, +' - optc = getopt_long_only (argc, argv, "-", longopts, & longind); - opterr = prevopterr; - - switch (optc) - { - default: - if (wanterror) - xexit (1); - optind = prevoptind; - return 0; +PARSE_AND_LIST_OPTIONS=' + fprintf (file, _(" -taso\t\t\tLoad executable in the lower 31-bit addressable\n")); + fprintf (file, _("\t\t\t virtual address range\n")); +' +PARSE_AND_LIST_ARGS_CASES=' case EOF: if (elf64alpha_32bit && !link_info.shared && !link_info.relocateable) { @@ -84,17 +51,16 @@ gld_elf64alpha_parse_args (argc, argv) case OPTION_TASO: elf64alpha_32bit = 1; break; - } - - return 1; -} +' +PARSE_AND_LIST_EPILOGUE=' #include "elf/internal.h" #include "elf/alpha.h" #include "elf-bfd.h" static void -gld_elf64alpha_finish () +gld_elf64alpha_finish() { elf_elfheader (output_bfd)->e_flags |= EF_ALPHA_32BIT; -}' +} +' |