* Makefile.am: Rename .dep* files to DEP*. Change DEP variable to
[deliverable/binutils-gdb.git] / gas / as.c
index 93959668dd33adfb5fdf273296aa9be7c6c1b71f..f27a3fe62cb6807f6e86af4588ea5854c6c0c18f 100644 (file)
--- a/gas/as.c
+++ b/gas/as.c
@@ -1,5 +1,5 @@
 /* as.c - GAS main program.
-   Copyright (C) 1987, 90, 91, 92, 93, 94, 95, 96, 1997
+   Copyright (C) 1987, 90, 91, 92, 93, 94, 95, 96, 97, 98, 1999
    Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 #include "output-file.h"
 #include "sb.h"
 #include "macro.h"
-#ifndef HAVE_ITBL_CPU
+
+#ifdef HAVE_ITBL_CPU
+#include "itbl-ops.h"
+#else
 #define itbl_parse(itbl_file) 1
 #define itbl_init()
 #endif
@@ -116,9 +119,11 @@ print_version_id ()
     return;
   printed = 1;
 
-  fprintf (stderr, "GNU assembler version %s (%s)", VERSION, TARGET_ALIAS);
 #ifdef BFD_ASSEMBLER
-  fprintf (stderr, ", using BFD version %s", BFD_VERSION);
+  fprintf (stderr, _("GNU assembler version %s (%s) using BFD version %s"),
+          VERSION, TARGET_ALIAS, BFD_VERSION);
+#else
+  fprintf (stderr, _("GNU assembler version %s (%s)"), VERSION, TARGET_ALIAS);
 #endif
   fprintf (stderr, "\n");
 }
@@ -127,59 +132,64 @@ static void
 show_usage (stream)
      FILE *stream;
 {
-  fprintf (stream, "Usage: %s [option...] [asmfile...]\n", myname);
+  fprintf (stream, _("Usage: %s [option...] [asmfile...]\n"), myname);
 
-  fprintf (stream, "\
+  fprintf (stream, _("\
 Options:\n\
--a[sub-option...]      turn on listings\n\
-  Sub-options [default hls]:\n\
-  c    omit false conditionals\n\
-  d    omit debugging directives\n\
-  h    include high-level source\n\
-  l    include assembly\n\
-  m     include macro expansions\n\
-  n    omit forms processing\n\
-  s    include symbols\n\
-  =file set listing file name (must be last sub-option)\n");
-  fprintf (stream, "\
--D                     produce assembler debugging messages\n\
---defsym SYM=VAL       define symbol SYM to given value\n\
--f                     skip whitespace and comment preprocessing\n\
---gstabs               generate stabs debugging information\n\
---help                 show this message and exit\n\
--I DIR                 add DIR to search list for .include directives\n\
--J                     don't warn about signed overflow\n\
--K                     warn when differences altered for long displacements\n\
--L,--keep-locals       keep local symbols (e.g. starting with `L')\n");
-  fprintf (stream, "\
--M,--mri               assemble in MRI compatibility mode\n\
---MD FILE              write dependency information in FILE (default none)\n\
--nocpp                 ignored\n\
--o OBJFILE             name the object-file output OBJFILE (default a.out)\n\
--R                     fold data section into text section\n\
---statistics           print various measured statistics from execution\n\
---strip-local-absolute strip local absolute symbols\n\
---version              print assembler version number and exit\n\
--W                     suppress warnings\n\
---itbl INSTTBL         extend instruction set to include instructions\n\
-                       matching the specifications defined in file INSTTBL\n\
--w                     ignored\n\
--X                     ignored\n\
--Z                     generate object file even after errors\n");
-  fprintf (stream, "\
---listing-lhs-width    set the width in words of the output data column of\n\
-                       the listing\n\
---listing-lhs-width2   set the width in words of the continuation lines\n\
-                       of the output data column; ignored if smaller than\n\
-                       the width of the first line\n\
---listing-rhs-width    set the max width in characters of the lines from\n\
-                       the source file\n\
---listing-cont-lines   set the maximum number of continuation lines used\n\
-                       for the output data column of the listing\n");
+  -a[sub-option...]    turn on listings\n\
+    Sub-options [default hls]:\n\
+    c   omit false conditionals\n\
+    d   omit debugging directives\n\
+    h   include high-level source\n\
+    l   include assembly\n\
+    m   include macro expansions\n\
+    n   omit forms processing\n\
+    s   include symbols\n\
+    L   include line debug statistics (if applicable)\n\
+    =file set listing file name (must be last sub-option)\n"));
+  
+  fprintf (stream, _("\
+  -D                     produce assembler debugging messages\n\
+  --defsym SYM=VAL        define symbol SYM to given value\n\
+  -f                     skip whitespace and comment preprocessing\n\
+  --gstabs               generate stabs debugging information\n\
+  --help                 show this message and exit\n\
+  -I DIR                 add DIR to search list for .include directives\n\
+  -J                     don't warn about signed overflow\n\
+  -K                     warn when differences altered for long displacements\n\
+  -L,--keep-locals        keep local symbols (e.g. starting with `L')\n"));
+  
+  fprintf (stream, _("\
+  -M,--mri               assemble in MRI compatibility mode\n\
+  --MD FILE              write dependency information in FILE (default none)\n\
+  -nocpp                 ignored\n\
+  -o OBJFILE             name the object-file output OBJFILE (default a.out)\n\
+  -R                     fold data section into text section\n\
+  --statistics           print various measured statistics from execution\n\
+  --strip-local-absolute  strip local absolute symbols\n\
+  --traditional-format   Use same format as native assembler when possible\n\
+  --version              print assembler version number and exit\n\
+  -W                     suppress warnings\n\
+  --itbl INSTTBL         extend instruction set to include instructions\n\
+                         matching the specifications defined in file INSTTBL\n\
+  -w                     ignored\n\
+  -X                     ignored\n\
+  -Z                     generate object file even after errors\n"));
+  
+  fprintf (stream, _("\
+  --listing-lhs-width    set the width in words of the output data column of\n\
+                         the listing\n\
+  --listing-lhs-width2   set the width in words of the continuation lines\n\
+                         of the output data column; ignored if smaller than\n\
+                         the width of the first line\n\
+  --listing-rhs-width    set the max width in characters of the lines from\n\
+                         the source file\n\
+  --listing-cont-lines   set the maximum number of continuation lines used\n\
+                         for the output data column of the listing\n"));
 
   md_show_usage (stream);
 
-  fprintf (stream, "\nReport bugs to bug-gnu-utils@prep.ai.mit.edu\n");
+  fprintf (stream, _("\nReport bugs to bug-gnu-utils@gnu.org\n"));
 }
 
 #ifdef USE_EMULATIONS
@@ -216,7 +226,7 @@ select_emulation_mode (argc, argv)
     p = argv[i+1];
 
   if (!p || !*p)
-    as_fatal ("missing emulation mode name");
+    as_fatal (_("missing emulation mode name"));
   em = p;
 
  do_default:
@@ -231,7 +241,7 @@ select_emulation_mode (argc, argv)
        if (!strcmp (emulations[i]->name, em))
          break;
       if (i == n_emulations)
-       as_fatal ("unrecognized emulation name `%s'", em);
+       as_fatal (_("unrecognized emulation name `%s'"), em);
       this_emulation = emulations[i];
     }
   else
@@ -357,8 +367,10 @@ parse_args (pargc, pargv)
     {"gstabs", no_argument, NULL, OPTION_GSTABS},
 #define OPTION_STRIP_LOCAL_ABSOLUTE (OPTION_STD_BASE + 15)
     {"strip-local-absolute", no_argument, NULL, OPTION_STRIP_LOCAL_ABSOLUTE},
-#define OPTION_NOWARNSWAP (OPTION_STD_BASE + 16)
-    {"nowarnswap", no_argument, NULL, OPTION_NOWARNSWAP}
+#define OPTION_TRADITIONAL_FORMAT (OPTION_STD_BASE + 16)
+    {"traditional-format", no_argument, NULL, OPTION_TRADITIONAL_FORMAT},
+#define OPTION_GDWARF2 (OPTION_STD_BASE + 17)
+    {"gdwarf2", no_argument, NULL, OPTION_GDWARF2}
   };
 
   /* Construct the option lists from the standard list and the
@@ -443,35 +455,39 @@ parse_args (pargc, pargv)
          flag_strip_local_absolute = 1;
          break;
 
+       case OPTION_TRADITIONAL_FORMAT:
+         flag_traditional_format = 1;
+         break;
+
        case OPTION_VERSION:
          /* This output is intended to follow the GNU standards document.  */
-         printf ("GNU assembler %s\n", VERSION);
-         printf ("Copyright 1997 Free Software Foundation, Inc.\n");
-         printf ("\
+         printf (_("GNU assembler %s\n"), VERSION);
+         printf (_("Copyright 1997 Free Software Foundation, Inc.\n"));
+         printf (_("\
 This program is free software; you may redistribute it under the terms of\n\
-the GNU General Public License.  This program has absolutely no warranty.\n");
-         printf ("This assembler was configured for a target of `%s'.\n",
+the GNU General Public License.  This program has absolutely no warranty.\n"));
+         printf (_("This assembler was configured for a target of `%s'.\n"),
                  TARGET_ALIAS);
          exit (EXIT_SUCCESS);
 
        case OPTION_EMULATION:
 #ifdef USE_EMULATIONS
          if (strcmp (optarg, this_emulation->name))
-           as_fatal ("multiple emulation names specified");
+           as_fatal (_("multiple emulation names specified"));
 #else
-         as_fatal ("emulations not handled in this configuration");
+         as_fatal (_("emulations not handled in this configuration"));
 #endif
          break;
 
        case OPTION_DUMPCONFIG:
-         fprintf (stderr, "alias = %s\n", TARGET_ALIAS);
-         fprintf (stderr, "canonical = %s\n", TARGET_CANONICAL);
-         fprintf (stderr, "cpu-type = %s\n", TARGET_CPU);
+         fprintf (stderr, _("alias = %s\n"), TARGET_ALIAS);
+         fprintf (stderr, _("canonical = %s\n"), TARGET_CANONICAL);
+         fprintf (stderr, _("cpu-type = %s\n"), TARGET_CPU);
 #ifdef TARGET_OBJ_FORMAT
-         fprintf (stderr, "format = %s\n", TARGET_OBJ_FORMAT);
+         fprintf (stderr, _("format = %s\n"), TARGET_OBJ_FORMAT);
 #endif
 #ifdef TARGET_FORMAT
-         fprintf (stderr, "bfd-target = %s\n", TARGET_FORMAT);
+         fprintf (stderr, _("bfd-target = %s\n"), TARGET_FORMAT);
 #endif
          exit (EXIT_SUCCESS);
 
@@ -484,7 +500,7 @@ the GNU General Public License.  This program has absolutely no warranty.\n");
            for (s = optarg; *s != '\0' && *s != '='; s++)
              ;
            if (*s == '\0')
-             as_fatal ("bad defsym; format is --defsym name=value");
+             as_fatal (_("bad defsym; format is --defsym name=value"));
            *s++ = '\0';
            i = strtol (s, (char **) NULL, 0);
            n = (struct defsym_list *) xmalloc (sizeof *n);
@@ -504,7 +520,7 @@ the GNU General Public License.  This program has absolutely no warranty.\n");
 
            if (optarg == NULL)
              {
-               as_warn ( "No file name following -t option\n" );
+               as_warn ( _("No file name following -t option\n") );
                break;
              }
            
@@ -520,7 +536,7 @@ the GNU General Public License.  This program has absolutely no warranty.\n");
            itbl_files->name = xstrdup (optarg);
            if (itbl_parse (itbl_files->name) != 0)
              {
-               fprintf (stderr, "Failed to read instruction table %s\n"
+               fprintf (stderr, _("Failed to read instruction table %s\n")
                         itbl_files->name);
                exit (EXIT_SUCCESS);
              }
@@ -535,9 +551,9 @@ the GNU General Public License.  This program has absolutely no warranty.\n");
          debug_type = DEBUG_STABS;
          break;
  
-        case OPTION_NOWARNSWAP:
-          flag_warn_instructionswap = 0;
-          break;
+       case OPTION_GDWARF2:
+         debug_type = DEBUG_DWARF2;
+         break;
 
        case 'J':
          flag_signed_overflow_ok = 1;
@@ -624,7 +640,7 @@ the GNU General Public License.  This program has absolutely no warranty.\n");
                      optarg += strlen (listing_filename);
                      break;
                    default:
-                     as_fatal ("invalid listing option `%c'", *optarg);
+                     as_fatal (_("invalid listing option `%c'"), *optarg);
                      break;
                    }
                  optarg++;
@@ -684,6 +700,11 @@ main (argc, argv)
 
   start_time = get_run_time ();
 
+#if defined (HAVE_SETLOCALE) && defined (HAVE_LC_MESSAGES)
+  setlocale (LC_MESSAGES, "");
+#endif
+  bindtextdomain (PACKAGE, LOCALEDIR);
+  textdomain (PACKAGE);
 
   if (debug_memory)
     {
@@ -708,7 +729,6 @@ main (argc, argv)
 #endif
 
   out_file_name = OBJ_DEFAULT_OUTPUT_FILE_NAME;
-  flag_warn_instructionswap = 1;
 
   hex_init ();
 #ifdef BFD_ASSEMBLER
@@ -837,16 +857,15 @@ main (argc, argv)
 static void
 dump_statistics ()
 {
-  extern char **environ;
 #ifdef HAVE_SBRK
   char *lim = (char *) sbrk (0);
 #endif
   long run_time = get_run_time () - start_time;
 
-  fprintf (stderr, "%s: total time in assembly: %ld.%06ld\n",
+  fprintf (stderr, _("%s: total time in assembly: %ld.%06ld\n"),
           myname, run_time / 1000000, run_time % 1000000);
 #ifdef HAVE_SBRK
-  fprintf (stderr, "%s: data size %ld\n",
+  fprintf (stderr, _("%s: data size %ld\n"),
           myname, (long) (lim - (char *) &environ));
 #endif
 
@@ -921,9 +940,9 @@ perform_an_assembly_pass (argc, argv)
 #else /* BFD_ASSEMBLER */
   /* Create the standard sections, and those the assembler uses
      internally.  */
-  text_section = subseg_new (".text", 0);
-  data_section = subseg_new (".data", 0);
-  bss_section = subseg_new (".bss", 0);
+  text_section = subseg_new (TEXT_SECTION_NAME, 0);
+  data_section = subseg_new (DATA_SECTION_NAME, 0);
+  bss_section = subseg_new (BSS_SECTION_NAME, 0);
   /* @@ FIXME -- we're setting the RELOC flag so that sections are assumed
      to have relocs, otherwise we don't find out in time. */
   applicable = bfd_applicable_section_flags (stdoutput);
This page took 0.035283 seconds and 4 git commands to generate.