This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

ld internationalization fixes


	* emultempl/aarch64elf.em: Wrap einfo strings in _().  Formatting.
	* emultempl/aix.em: Likewise.
	* emultempl/armcoff.em: Likewise.
	* emultempl/armelf.em: Likewise.
	* emultempl/avrelf.em: Likewise.
	* emultempl/beos.em: Likewise.
	* emultempl/cr16elf.em: Likewise.
	* emultempl/elf-generic.em: Likewise.
	* emultempl/elf32.em: Likewise.
	* emultempl/genelf.em: Likewise.
	* emultempl/hppaelf.em: Likewise.
	* emultempl/linux.em: Likewise.
	* emultempl/lnk960.em: Likewise.
	* emultempl/m68hc1xelf.em: Likewise.
	* emultempl/m68kcoff.em: Likewise.
	* emultempl/m68kelf.em: Likewise.
	* emultempl/metagelf.em: Likewise.
	* emultempl/mipself.em: Likewise.
	* emultempl/mmix-elfnmmo.em: Likewise.
	* emultempl/mmo.em: Likewise.
	* emultempl/msp430.em: Likewise.
	* emultempl/nds32elf.em: Likewise.
	* emultempl/nios2elf.em: Likewise.
	* emultempl/pe.em: Likewise.
	* emultempl/pep.em: Likewise.
	* emultempl/ppc32elf.em: Likewise.
	* emultempl/ppc64elf.em: Likewise.
	* emultempl/riscvelf.em: Likewise.
	* emultempl/s390.em: Likewise.
	* emultempl/scoreelf.em: Likewise.
	* emultempl/spuelf.em: Likewise.
	* emultempl/sunos.em: Likewise.
	* emultempl/tic6xdsbt.em: Likewise.
	* emultempl/v850elf.em: Likewise.
	* emultempl/vms.em: Likewise.
	* emultempl/vxworks.em: Likewise.
	* ldcref.c: Likewise.
	* ldlang.c: Likewise.
	* ldlex.l: Likewise.
	* ldmain.c: Likewise.
	* pe-dll.c: Likewise.
	* plugin.c: Likewise.

diff --git a/ld/emultempl/aarch64elf.em b/ld/emultempl/aarch64elf.em
index 74267cd..5731ecd 100644
--- a/ld/emultempl/aarch64elf.em
+++ b/ld/emultempl/aarch64elf.em
@@ -189,7 +189,7 @@ elf${ELFSIZE}_aarch64_add_stub_section (const char *stub_sec_name,
     return stub_sec;
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
@@ -232,7 +232,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   ret = bfd_elf_discard_info (link_info.output_bfd, & link_info);
   if (ret < 0)
     {
-      einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+      einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
       return;
     }
   else if (ret > 0)
@@ -248,7 +248,8 @@ gld${EMULATION_NAME}_after_allocation (void)
 	{
 	  if (ret < 0)
 	    {
-	      einfo ("%X%P: could not compute sections lists for stub generation: %E\n");
+	      einfo (_("%X%P: could not compute sections lists "
+		       "for stub generation: %E\n"));
 	      return;
 	    }
 
@@ -262,7 +263,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 					  & elf${ELFSIZE}_aarch64_add_stub_section,
 					  & gldaarch64_layout_sections_again))
 	    {
-	      einfo ("%X%P: cannot size stub section: %E\n");
+	      einfo (_("%X%P: cannot size stub section: %E\n"));
 	      return;
 	    }
 	}
@@ -281,7 +282,7 @@ gld${EMULATION_NAME}_finish (void)
       if (stub_file->the_bfd->sections != NULL)
 	{
 	  if (! elf${ELFSIZE}_aarch64_build_stubs (& link_info))
-	    einfo ("%X%P: can not build stubs: %E\n");
+	    einfo (_("%X%P: can not build stubs: %E\n"));
 	}
     }
 
@@ -299,7 +300,8 @@ aarch64_elf_create_output_section_statements (void)
 	 These will only be created if the output format is an arm format,
 	 hence we do not support linking and changing output formats at the
 	 same time.  Use a link followed by objcopy to change output formats.  */
-      einfo ("%F%X%P: error: Cannot change output format whilst linking AArch64 binaries.\n");
+      einfo (_("%F%X%P: error: Cannot change output format "
+	       "whilst linking AArch64 binaries.\n"));
       return;
     }
 
@@ -319,7 +321,7 @@ aarch64_elf_create_output_section_statements (void)
 			      bfd_get_arch (link_info.output_bfd),
 			      bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create BFD %E\n");
+      einfo (_("%X%P: can not create BFD %E\n"));
       return;
     }
 
diff --git a/ld/emultempl/aix.em b/ld/emultempl/aix.em
index 02fe282..8d11863 100644
--- a/ld/emultempl/aix.em
+++ b/ld/emultempl/aix.em
@@ -320,7 +320,7 @@ read_file_list (const char *filename)
   f = fopen (filename, FOPEN_RT);
   if (f == NULL)
     {
-      einfo ("%F%P: cannot open %s\n", filename);
+      einfo (_("%F%P: cannot open %s\n"), filename);
       return;
     }
   if (fseek (f, 0L, SEEK_END) == -1)
@@ -367,7 +367,7 @@ read_file_list (const char *filename)
   return;
 
  error:
-  einfo ("%F%P: cannot read %s\n", optarg);
+  einfo (_("%F%P: cannot read %s\n"), optarg);
   fclose (f);
 }
 
@@ -395,7 +395,7 @@ gld${EMULATION_NAME}_handle_option (int optc)
     case 'D':
       val = bfd_scan_vma (optarg, &end, 0);
       if (*end != '\0')
-	einfo ("%P: warning: ignoring invalid -D number %s\n", optarg);
+	einfo (_("%P: warning: ignoring invalid -D number %s\n"), optarg);
       else if (val != -1)
 	lang_section_start (".data", exp_intop (val), NULL);
       break;
@@ -403,7 +403,7 @@ gld${EMULATION_NAME}_handle_option (int optc)
     case 'H':
       val = bfd_scan_vma (optarg, &end, 0);
       if (*end != '\0' || (val & (val - 1)) != 0)
-	einfo ("%P: warning: ignoring invalid -H number %s\n", optarg);
+	einfo (_("%P: warning: ignoring invalid -H number %s\n"), optarg);
       else
 	file_align = val;
       break;
@@ -515,7 +515,8 @@ gld${EMULATION_NAME}_handle_option (int optc)
     case OPTION_MAXDATA:
       val = bfd_scan_vma (optarg, &end, 0);
       if (*end != '\0')
-	einfo ("%P: warning: ignoring invalid -bmaxdata number %s\n", optarg);
+	einfo (_("%P: warning: ignoring invalid -bmaxdata number %s\n"),
+	       optarg);
       else
 	maxdata = val;
       break;
@@ -523,7 +524,7 @@ gld${EMULATION_NAME}_handle_option (int optc)
     case OPTION_MAXSTACK:
       val = bfd_scan_vma (optarg, &end, 0);
       if (*end != '\0')
-	einfo ("%P: warning: ignoring invalid -bmaxstack number %s\n",
+	einfo (_("%P: warning: ignoring invalid -bmaxstack number %s\n"),
 	       optarg);
       else
 	maxstack = val;
@@ -536,7 +537,7 @@ gld${EMULATION_NAME}_handle_option (int optc)
 	  ++optarg;
 	}
       if (*optarg == '\0' || optarg[1] == '\0')
-	einfo ("%P: warning: ignoring invalid module type %s\n", optarg);
+	einfo (_("%P: warning: ignoring invalid module type %s\n"), optarg);
       else
 	modtype = (*optarg << 8) | optarg[1];
       break;
@@ -566,7 +567,7 @@ gld${EMULATION_NAME}_handle_option (int optc)
 	 expression.  */
       val = bfd_scan_vma (optarg, &end, 0);
       if (*end != '\0')
-	einfo ("%P: warning: ignoring invalid -pD number %s\n", optarg);
+	einfo (_("%P: warning: ignoring invalid -pD number %s\n"), optarg);
       else
 	{
 	  etree_type *t;
@@ -589,7 +590,7 @@ gld${EMULATION_NAME}_handle_option (int optc)
 	 within the file.  */
       val = bfd_scan_vma (optarg, &end, 0);
       if (*end != '\0')
-	einfo ("%P: warning: ignoring invalid -pT number %s\n", optarg);
+	einfo (_("%P: warning: ignoring invalid -pT number %s\n"), optarg);
       else
 	{
 	  etree_type *t;
@@ -718,7 +719,7 @@ gld${EMULATION_NAME}_after_open (void)
       size = (p->count + 2) * 4;
       if (!bfd_xcoff_link_record_set (link_info.output_bfd, &link_info,
 				      p->h, size))
-	einfo ("%F%P: bfd_xcoff_link_record_set failed: %E\n");
+	einfo (_("%F%P: bfd_xcoff_link_record_set failed: %E\n"));
     }
 }
 
@@ -748,9 +749,9 @@ gld${EMULATION_NAME}_before_allocation (void)
 
       h = bfd_link_hash_lookup (link_info.hash, el->name, FALSE, FALSE, FALSE);
       if (h == NULL)
-	einfo ("%P%F: bfd_link_hash_lookup of export symbol failed: %E\n");
+	einfo (_("%P%F: bfd_link_hash_lookup of export symbol failed: %E\n"));
       if (!bfd_xcoff_export_symbol (link_info.output_bfd, &link_info, h))
-	einfo ("%P%F: bfd_xcoff_export_symbol failed: %E\n");
+	einfo (_("%P%F: bfd_xcoff_export_symbol failed: %E\n"));
     }
 
   /* Track down all relocations called for by the linker script (these
@@ -834,7 +835,7 @@ gld${EMULATION_NAME}_before_allocation (void)
        maxstack, maxdata, gc && !unix_ld ? TRUE : FALSE,
        modtype, textro ? TRUE : FALSE, flags, special_sections,
        rtld ? TRUE : FALSE))
-    einfo ("%P%F: failed to set dynamic section sizes: %E\n");
+    einfo (_("%P%F: failed to set dynamic section sizes: %E\n"));
 
   /* Look through the special sections, and put them in the right
      place in the link ordering.  This is especially magic.  */
@@ -856,7 +857,7 @@ gld${EMULATION_NAME}_before_allocation (void)
       is = NULL;
       os = lang_output_section_get (sec->output_section);
       if (os == NULL)
-	einfo ("%P%F: can't find output section %s\n",
+	einfo (_("%P%F: can't find output section %s\n"),
 	       sec->output_section->name);
 
       for (pls = &os->children.head; *pls != NULL; pls = &(*pls)->header.next)
@@ -893,7 +894,7 @@ gld${EMULATION_NAME}_before_allocation (void)
 
       if (is == NULL)
 	{
-	  einfo ("%P%F: can't find %s in output section\n",
+	  einfo (_("%P%F: can't find %s in output section\n"),
 		 bfd_get_section_name (sec->owner, sec));
 	}
 
@@ -961,7 +962,8 @@ gld${EMULATION_NAME}_before_allocation (void)
 	sec = bfd_get_section_by_name (link_info.output_bfd,
 				       must_keep_sections[i]);
 	if (sec == NULL)
-	  einfo ("%P: can't find required output section %s\n", must_keep_sections[i]);
+	  einfo (_("%P: can't find required output section %s\n"),
+		 must_keep_sections[i]);
 	else
 	  sec->flags |= SEC_KEEP;
       }
@@ -1169,7 +1171,8 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 	      obstack_free (o, obstack_base (o));
 	    }
 	  else if (*s == '(')
-	    einfo ("%F%s%d: #! ([member]) is not supported in import files\n",
+	    einfo (_("%F%s%d: #! ([member]) is not supported "
+		     "in import files\n"),
 		   filename, lineno);
 	  else
 	    {
@@ -1185,7 +1188,7 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 	      *s = '\0';
 	      if (!bfd_xcoff_split_import_path (link_info.output_bfd,
 						start, &imppath, &impfile))
-		einfo ("%F%P: Could not parse import path: %E\n");
+		einfo (_("%F%P: Could not parse import path: %E\n"));
 	      while (ISSPACE (cs))
 		{
 		  ++s;
@@ -1195,7 +1198,7 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 		{
 		  impmember = "";
 		  if (cs != '\0')
-		    einfo ("%s:%d: warning: syntax error in import file\n",
+		    einfo (_("%s:%d: warning: syntax error in import file\n"),
 			   filename, lineno);
 		}
 	      else
@@ -1207,7 +1210,7 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 		  if (*s == ')')
 		    *s = '\0';
 		  else
-		    einfo ("%s:%d: warning: syntax error in import file\n",
+		    einfo (_("%s:%d: warning: syntax error in import file\n"),
 			   filename, lineno);
 		}
 	    }
@@ -1242,7 +1245,8 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 		  while (ISSPACE (*se))
 		    ++se;
 		  if (*se != '\0')
-		    einfo ("%s%d: warning: syntax error in import/export file\n",
+		    einfo (_("%s%d: warning: syntax error in "
+			     "import/export file\n"),
 			   filename, lineno);
 		}
 
@@ -1259,7 +1263,8 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 		      address = bfd_scan_vma (s, &end, 0);
 		      if (*end != '\0')
 			{
-			  einfo ("%s:%d: warning: syntax error in import/export file\n",
+			  einfo (_("%s:%d: warning: syntax error in "
+				   "import/export file\n"),
 				 filename, lineno);
 
 			}
@@ -1293,7 +1298,7 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 						&link_info, h,
 						address, imppath, impfile,
 						impmember, syscall_flag))
-		    einfo ("%X%s:%d: failed to import symbol %s: %E\n",
+		    einfo (_("%X%s:%d: failed to import symbol %s: %E\n"),
 			   filename, lineno, symname);
 		}
 	    }
@@ -1303,7 +1308,7 @@ gld${EMULATION_NAME}_read_file (const char *filename, bfd_boolean import)
 
   if (obstack_object_size (o) > 0)
     {
-      einfo ("%s:%d: warning: ignoring unterminated last line\n",
+      einfo (_("%s:%d: warning: ignoring unterminated last line\n"),
 	     filename, lineno);
       obstack_free (o, obstack_base (o));
     }
@@ -1338,10 +1343,10 @@ gld${EMULATION_NAME}_find_relocs (lang_statement_union_type *s)
 
       rs = &s->reloc_statement;
       if (rs->name == NULL)
-	einfo ("%F%P: only relocations against symbols are permitted\n");
+	einfo (_("%F%P: only relocations against symbols are permitted\n"));
       if (!bfd_xcoff_link_count_reloc (link_info.output_bfd, &link_info,
 				       rs->name))
-	einfo ("%F%P: bfd_xcoff_link_count_reloc failed: %E\n");
+	einfo (_("%F%P: bfd_xcoff_link_count_reloc failed: %E\n"));
     }
 
   if (s->header.type == lang_assignment_statement_enum)
@@ -1369,7 +1374,7 @@ gld${EMULATION_NAME}_find_exp_assignment (etree_type *exp)
 	  if (!bfd_xcoff_record_link_assignment (link_info.output_bfd,
 						 &link_info,
 						 exp->assign.dst))
-	    einfo ("%P%F: failed to record assignment to %s: %E\n",
+	    einfo (_("%P%F: failed to record assignment to %s: %E\n"),
 		   exp->assign.dst);
 	}
       gld${EMULATION_NAME}_find_exp_assignment (exp->assign.src);
@@ -1467,7 +1472,7 @@ gld${EMULATION_NAME}_create_output_section_statements (void)
 				  bfd_get_arch (link_info.output_bfd),
 				  bfd_get_mach (link_info.output_bfd)))
 	{
-	  einfo ("%X%P: can not create BFD %E\n");
+	  einfo (_("%X%P: can not create BFD %E\n"));
 	  return;
 	}
 
@@ -1477,7 +1482,7 @@ gld${EMULATION_NAME}_create_output_section_statements (void)
 					    link_info.fini_function,
 					    rtld))
 	{
-	  einfo ("%X%P: can not create BFD %E\n");
+	  einfo (_("%X%P: can not create BFD %E\n"));
 	  return;
 	}
 
diff --git a/ld/emultempl/armcoff.em b/ld/emultempl/armcoff.em
index 93ffb65..de2847b 100644
--- a/ld/emultempl/armcoff.em
+++ b/ld/emultempl/armcoff.em
@@ -140,7 +140,8 @@ gld${EMULATION_NAME}_after_open (void)
 	 These will only be created if the output format is an arm format,
 	 hence we do not support linking and changing output formats at the
 	 same time.  Use a link followed by objcopy to change output formats.  */
-      einfo ("%F%X%P: error: cannot change output format whilst linking ARM binaries\n");
+      einfo (_("%F%X%P: error: cannot change output format "
+	       "whilst linking ARM binaries\n"));
       return;
     }
 
diff --git a/ld/emultempl/armelf.em b/ld/emultempl/armelf.em
index 8a57727..29c73ff 100644
--- a/ld/emultempl/armelf.em
+++ b/ld/emultempl/armelf.em
@@ -262,7 +262,7 @@ elf32_arm_add_stub_section (const char * stub_sec_name,
     }
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
@@ -374,7 +374,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   ret = bfd_elf_discard_info (link_info.output_bfd, & link_info);
   if (ret < 0)
     {
-      einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+      einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
       return;
     }
   else if (ret > 0)
@@ -389,7 +389,8 @@ gld${EMULATION_NAME}_after_allocation (void)
 	{
 	  if (ret < 0)
 	    {
-	      einfo ("%X%P: could not compute sections lists for stub generation: %E\n");
+	      einfo (_("%X%P: could not compute sections lists "
+		       "for stub generation: %E\n"));
 	      return;
 	    }
 
@@ -403,7 +404,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 				      & elf32_arm_add_stub_section,
 				      & gldarm_layout_sections_again))
 	    {
-	      einfo ("%X%P: cannot size stub section: %E\n");
+	      einfo (_("%X%P: cannot size stub section: %E\n"));
 	      return;
 	    }
 	}
@@ -437,7 +438,7 @@ gld${EMULATION_NAME}_finish (void)
       if (stub_file->the_bfd->sections != NULL)
 	{
 	  if (! elf32_arm_build_stubs (& link_info))
-	    einfo ("%X%P: can not build stubs: %E\n");
+	    einfo (_("%X%P: can not build stubs: %E\n"));
 	}
     }
 
@@ -510,7 +511,8 @@ arm_elf_create_output_section_statements (void)
 	 These will only be created if the output format is an arm format,
 	 hence we do not support linking and changing output formats at the
 	 same time.  Use a link followed by objcopy to change output formats.  */
-      einfo ("%F%X%P: error: Cannot change output format whilst linking ARM binaries.\n");
+      einfo (_("%F%X%P: error: Cannot change output format "
+	       "whilst linking ARM binaries.\n"));
       return;
     }
 
@@ -520,10 +522,10 @@ arm_elf_create_output_section_statements (void)
 					bfd_get_target (link_info.output_bfd));
 
       if (params.in_implib_bfd == NULL)
-	einfo ("%F%s: Can't open: %E\n", in_implib_filename);
+	einfo (_("%F%s: Can't open: %E\n"), in_implib_filename);
 
       if (!bfd_check_format (params.in_implib_bfd, bfd_object))
-	einfo ("%F%s: Not a relocatable file: %E\n", in_implib_filename);
+	einfo (_("%F%s: Not a relocatable file: %E\n"), in_implib_filename);
     }
 
   bfd_elf32_arm_set_target_params (link_info.output_bfd, &link_info, &params);
@@ -537,7 +539,7 @@ arm_elf_create_output_section_statements (void)
  			      bfd_get_arch (link_info.output_bfd),
  			      bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create BFD %E\n");
+      einfo (_("%X%P: can not create BFD %E\n"));
       return;
     }
 
diff --git a/ld/emultempl/avrelf.em b/ld/emultempl/avrelf.em
index acb478f..7aeecb7 100644
--- a/ld/emultempl/avrelf.em
+++ b/ld/emultempl/avrelf.em
@@ -96,14 +96,14 @@ avr_elf_${EMULATION_NAME}_before_allocation (void)
   ret = elf32_avr_setup_section_lists (link_info.output_bfd, &link_info);
 
   if (ret < 0)
-    einfo ("%X%P: can not setup the input section list: %E\n");
+    einfo (_("%X%P: can not setup the input section list: %E\n"));
 
   if (ret <= 0)
     return;
 
   /* Call into the BFD backend to do the real "stub"-work.  */
   if (! elf32_avr_size_stubs (link_info.output_bfd, &link_info, TRUE))
-    einfo ("%X%P: can not size stub section: %E\n");
+    einfo (_("%X%P: can not size stub section: %E\n"));
 }
 
 /* This is called before the input files are opened.  We create a new
@@ -116,7 +116,8 @@ avr_elf_create_output_section_statements (void)
 
   if (bfd_get_flavour (link_info.output_bfd) != bfd_target_elf_flavour)
     {
-      einfo ("%X%P: changing output format whilst linking is not supported\n");
+      einfo (_("%X%P: changing output format whilst linking "
+	       "is not supported\n"));
       return;
     }
 
@@ -130,7 +131,7 @@ avr_elf_create_output_section_statements (void)
                              bfd_get_arch (link_info.output_bfd),
                              bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create stub BFD %E\n");
+      einfo (_("%X%P: can not create stub BFD %E\n"));
       return;
     }
 
@@ -151,7 +152,7 @@ avr_elf_create_output_section_statements (void)
   return;
 
   err_ret:
-   einfo ("%X%P: can not make stub section: %E\n");
+   einfo (_("%X%P: can not make stub section: %E\n"));
    return;
 }
 
@@ -165,7 +166,7 @@ avr_elf_after_allocation (void)
       /* If relaxing, elf32_avr_size_stubs will be called from
 	 elf32_avr_relax_section.  */
       if (!elf32_avr_size_stubs (link_info.output_bfd, &link_info, TRUE))
-	einfo ("%X%P: can not size stub section: %E\n");
+	einfo (_("%X%P: can not size stub section: %E\n"));
     }
 
   gld${EMULATION_NAME}_after_allocation ();
@@ -174,7 +175,7 @@ avr_elf_after_allocation (void)
   if (!avr_no_stubs)
     {
       if (!elf32_avr_build_stubs (&link_info))
-	einfo ("%X%P: can not build stubs: %E\n");
+	einfo (_("%X%P: can not build stubs: %E\n"));
     }
 }
 
diff --git a/ld/emultempl/beos.em b/ld/emultempl/beos.em
index 9a67ff8..ff447bd 100644
--- a/ld/emultempl/beos.em
+++ b/ld/emultempl/beos.em
@@ -209,7 +209,7 @@ set_pe_subsystem (void)
 	set_pe_name ("__minor_subsystem_version__",
 		     strtoul (end + 1, &end, 0));
       if (*end != '\0')
-	einfo ("%P: warning: bad version number in -subsystem option\n");
+	einfo (_("%P: warning: bad version number in -subsystem option\n"));
     }
 
   for (i = 0; v[i].name; i++)
@@ -226,7 +226,7 @@ set_pe_subsystem (void)
 	  return;
 	}
     }
-  einfo ("%P%F: invalid subsystem type %s\n", optarg);
+  einfo (_("%P%F: invalid subsystem type %s\n"), optarg);
 }
 
 
@@ -237,7 +237,7 @@ set_pe_value (char *name)
   set_pe_name (name,  strtoul (optarg, &end, 0));
   if (end == optarg)
     {
-      einfo ("%P%F: invalid hex number for PE parameter '%s'\n", optarg);
+      einfo (_("%P%F: invalid hex number for PE parameter '%s'\n"), optarg);
     }
 
   optarg = end;
@@ -254,7 +254,7 @@ set_pe_stack_heap (char *resname, char *comname)
     }
   else if (*optarg)
     {
-      einfo ("%P%F: strange hex info for PE parameter '%s'\n", optarg);
+      einfo (_("%P%F: strange hex info for PE parameter '%s'\n"), optarg);
     }
 }
 
@@ -366,7 +366,7 @@ gld_${EMULATION_NAME}_set_symbols (void)
   if (pe.FileAlignment >
       pe.SectionAlignment)
     {
-      einfo ("%P: warning, file alignment > section alignment.\n");
+      einfo (_("%P: warning, file alignment > section alignment.\n"));
     }
 }
 
@@ -380,7 +380,7 @@ gld_${EMULATION_NAME}_after_open (void)
      including an internal BFD header.  */
   if (!coff_data(link_info.output_bfd)->pe)
     {
-      einfo ("%F%P: PE operations on non PE file.\n");
+      einfo (_("%F%P: PE operations on non PE file.\n"));
     }
 
   pe_data(link_info.output_bfd)->pe_opthdr = pe;
@@ -412,37 +412,43 @@ sort_by_file_name (const void *a, const void *b)
      and HNT properly. if no reloc this one is import by ordinal
      so we have to sort by section contents */
 
-  if ( ((*ra)->input_section.section->reloc_count + (*rb)->input_section.section->reloc_count) )
+  if ((*ra)->input_section.section->reloc_count
+      + (*rb)->input_section.section->reloc_count)
     {
-       i =  (((*ra)->input_section.section->reloc_count >
-		 (*rb)->input_section.section->reloc_count) ? -1 : 0);
-       if ( i != 0)
-         return i;
+      i = ((*ra)->input_section.section->reloc_count
+	   > (*rb)->input_section.section->reloc_count) ? -1 : 0;
+      if (i != 0)
+	return i;
 
-        return  (((*ra)->input_section.section->reloc_count >
-		 (*rb)->input_section.section->reloc_count) ? 0 : 1);
+      return ((*ra)->input_section.section->reloc_count
+	      > (*rb)->input_section.section->reloc_count) ? 0 : 1;
     }
   else
     {
-       if ( (strcmp( (*ra)->input_section.section->name, ".idata$6") == 0) )
-          return 0; /* don't sort .idata$6 or .idata$7 FIXME dlltool eliminate .idata$7 */
-
-       if (! bfd_get_section_contents ((*ra)->input_section.section->owner,
-         (*ra)->input_section.section, &a_sec, (file_ptr) 0, (bfd_size_type)sizeof(a_sec)))
-            einfo ("%F%B: Can't read contents of section .idata: %E\n",
-                 (*ra)->input_section.section->owner);
-
-       if (! bfd_get_section_contents ((*rb)->input_section.section->owner,
-        (*rb)->input_section.section, &b_sec, (file_ptr) 0, (bfd_size_type)sizeof(b_sec) ))
-           einfo ("%F%B: Can't read contents of section .idata: %E\n",
-                (*rb)->input_section.section->owner);
-
-      i =  ((a_sec < b_sec) ? -1 : 0);
-      if ( i != 0)
-        return i;
-      return  ((a_sec < b_sec) ? 0 : 1);
-   }
-return 0;
+      /* don't sort .idata$6 or .idata$7 FIXME dlltool eliminate .idata$7 */
+      if ((strcmp ((*ra)->input_section.section->name, ".idata$6") == 0))
+	return 0;
+
+      if (!bfd_get_section_contents ((*ra)->input_section.section->owner,
+				     (*ra)->input_section.section, &a_sec,
+				     (file_ptr) 0,
+				     (bfd_size_type) sizeof(a_sec)))
+	einfo (_("%F%B: Can't read contents of section .idata: %E\n"),
+	       (*ra)->input_section.section->owner);
+
+      if (!bfd_get_section_contents ((*rb)->input_section.section->owner,
+				     (*rb)->input_section.section, &b_sec,
+				     (file_ptr) 0,
+				     (bfd_size_type) sizeof(b_sec)))
+	einfo (_("%F%B: Can't read contents of section .idata: %E\n"),
+	       (*rb)->input_section.section->owner);
+
+      i = a_sec < b_sec ? -1 : 0;
+      if (i != 0)
+	return i;
+      return a_sec < b_sec ? 0 : 1;
+    }
+  return 0;
 }
 
 static int
@@ -459,8 +465,8 @@ sort_by_section_name (const void *a, const void *b)
   if (i != 0)
     {
       if ((CONST_STRNEQ ((*ra)->input_section.section->name, ".stab"))
-           && (! CONST_STRNEQ ((*rb)->input_section.section->name, ".stab")))
-         return 1;
+	  && (! CONST_STRNEQ ((*rb)->input_section.section->name, ".stab")))
+	return 1;
     }
   return i;
 }
@@ -609,12 +615,12 @@ gld_${EMULATION_NAME}_before_allocation (void)
   /* Here we rummage through the found bfds to collect toc information */
   {
     LANG_FOR_EACH_INPUT_STATEMENT (is)
-      {
-	if (!ppc_process_before_allocation(is->the_bfd, &link_info))
-	  {
-	    einfo("Errors encountered processing file %s\n", is->filename);
-	  }
-      }
+    {
+      if (!ppc_process_before_allocation(is->the_bfd, &link_info))
+	{
+	  einfo (_("Errors encountered processing file %s\n"), is->filename);
+	}
+    }
   }
 
   /* We have seen it all. Allocate it, and carry on */
@@ -629,12 +635,12 @@ gld_${EMULATION_NAME}_before_allocation (void)
      option?  krk@cygnus.com */
   {
     LANG_FOR_EACH_INPUT_STATEMENT (is)
-      {
-	if (!arm_process_before_allocation (is->the_bfd, & link_info))
-	  {
-	    einfo ("Errors encountered processing file %s", is->filename);
-	  }
-      }
+    {
+      if (!arm_process_before_allocation (is->the_bfd, & link_info))
+	{
+	  einfo (_("Errors encountered processing file %s"), is->filename);
+	}
+    }
   }
 
   /* We have seen it all. Allocate it, and carry on */
@@ -680,7 +686,7 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
   /* Everything from the '\$' on gets deleted so don't allow '\$' as the
      first character.  */
   if (*secname == '\$')
-    einfo ("%P%F: section %s has '\$' as first character\n", secname);
+    einfo (_("%P%F: section %s has '\$' as first character\n"), secname);
   if (strchr (secname + 1, '\$') == NULL)
     return NULL;
 
@@ -712,7 +718,7 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
       }
   ps[0] = 0;
   if (l == NULL)
-    einfo ("%P%F: *(%s\$) missing from linker script\n", output_secname);
+    einfo (_("%P%F: *(%s\$) missing from linker script\n"), output_secname);
 
   /* Link the input section in and we're done for now.
      The sections still have to be sorted, but that has to wait until
diff --git a/ld/emultempl/cr16elf.em b/ld/emultempl/cr16elf.em
index 3e2e7b5..3e10b42 100644
--- a/ld/emultempl/cr16elf.em
+++ b/ld/emultempl/cr16elf.em
@@ -38,10 +38,10 @@ cr16_elf_after_open (void)
   /* Call the standard elf routine.  */
   gld${EMULATION_NAME}_after_open ();
 
-   if (command_line.embedded_relocs
-       && !bfd_link_relocatable (&link_info))
-     {
-       bfd *abfd;
+  if (command_line.embedded_relocs
+      && !bfd_link_relocatable (&link_info))
+    {
+      bfd *abfd;
 
       /* In the embedded relocs mode we create a .emreloc section for each
 	 input file with a nonzero .data section.  The BFD backend will fill in
@@ -57,7 +57,8 @@ cr16_elf_after_open (void)
 	     COFF and ELF.  */
 	  if (bfd_get_flavour (abfd) != bfd_target_coff_flavour
 	      && bfd_get_flavour (abfd) != bfd_target_elf_flavour)
-	    einfo ("%F%B: all input objects must be COFF or ELF for --embedded-relocs\n");
+	    einfo (_("%F%B: all input objects must be COFF or ELF "
+		     "for --embedded-relocs\n"));
 
 	  datasec = bfd_get_section_by_name (abfd, ".data.rel");
 
@@ -82,7 +83,7 @@ cr16_elf_after_open (void)
 		  || ! bfd_set_section_alignment (abfd, relsec, 2)
 		  || ! bfd_set_section_size (abfd, relsec,
 					     datasec->reloc_count * 8))
-		einfo ("%F%B: can not create .emreloc section: %E\n");
+		einfo (_("%F%B: can not create .emreloc section: %E\n"));
 	    }
 
 	  /* Double check that all other data sections are empty, as is
@@ -99,9 +100,9 @@ static void
 check_sections (bfd *abfd, asection *sec, void *datasec)
 {
   if ((strncmp (bfd_get_section_name (abfd, sec), ".data.rel", 9) == 0)
-     && sec != datasec
-     && sec->reloc_count == 0 )
-    einfo ("%B%X: section %s has relocs; can not use --embedded-relocs\n",
+      && sec != datasec
+      && sec->reloc_count == 0 )
+    einfo (_("%B%X: section %s has relocs; can not use --embedded-relocs\n"),
 	   abfd, bfd_get_section_name (abfd, sec));
 }
 
@@ -131,16 +132,16 @@ cr16elf_before_allocation (void)
   /* Call the default first.  */
   gld${EMULATION_NAME}_before_allocation ();
 
-   if (command_line.embedded_relocs
-       && (!bfd_link_relocatable (&link_info)))
-     {
+  if (command_line.embedded_relocs
+      && (!bfd_link_relocatable (&link_info)))
+    {
 
-   bfd *abfd;
+      bfd *abfd;
 
-   /* If we are generating embedded relocs, call a special BFD backend
+      /* If we are generating embedded relocs, call a special BFD backend
 	 routine to do the work.  */
-   for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
-      {
+      for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link.next)
+	{
 	  asection *datasec, *relsec;
 	  char *errmsg;
 
@@ -153,18 +154,18 @@ cr16elf_before_allocation (void)
 	  ASSERT (relsec != NULL);
 
 	  if (! bfd_cr16_elf32_create_embedded_relocs (abfd, &link_info,
-							   datasec, relsec,
-							   &errmsg))
-		{
-		  if (errmsg == NULL)
-		    einfo ("%B%X: can not create runtime reloc information: %E\n",
-			   abfd);
-		  else
-		    einfo ("%X%B: can not create runtime reloc information: %s\n",
-			   abfd, errmsg);
-		}
-       }
-     }
+						       datasec, relsec,
+						       &errmsg))
+	    {
+	      if (errmsg == NULL)
+		einfo (_("%B%X: can not create runtime reloc information: %E\n"),
+		       abfd);
+	      else
+		einfo (_("%X%B: can not create runtime reloc information: %s\n"),
+		       abfd, errmsg);
+	    }
+	}
+    }
 
   /* Enable relaxation by default if the "--no-relax" option was not
      specified.  This is done here instead of in the before_parse hook
diff --git a/ld/emultempl/elf-generic.em b/ld/emultempl/elf-generic.em
index b6e46e6..bf54672 100644
--- a/ld/emultempl/elf-generic.em
+++ b/ld/emultempl/elf-generic.em
@@ -46,7 +46,7 @@ gld${EMULATION_NAME}_map_segments (bfd_boolean need_layout)
 	    elf_seg_map (link_info.output_bfd) = NULL;
 	  if (!_bfd_elf_map_sections_to_segments (link_info.output_bfd,
 						  &link_info))
-	    einfo ("%F%P: map sections to segments failed: %E\n");
+	    einfo (_("%F%P: map sections to segments failed: %E\n"));
 
 	  if (phdr_size != elf_program_header_size (link_info.output_bfd))
 	    {
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index 748f56b..0ee02bd 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -272,7 +272,7 @@ gld${EMULATION_NAME}_stat_needed (lang_input_statement_type *s)
 
   if (bfd_stat (s->the_bfd, &st) != 0)
     {
-      einfo ("%P:%B: bfd_stat failed: %E\n", s->the_bfd);
+      einfo (_("%P:%B: bfd_stat failed: %E\n"), s->the_bfd);
       return;
     }
 
@@ -312,7 +312,7 @@ gld${EMULATION_NAME}_stat_needed (lang_input_statement_type *s)
     soname = lbasename (s->filename);
 
   if (filename_ncmp (soname, global_needed->name, suffix - global_needed->name) == 0)
-    einfo ("%P: warning: %s, needed by %B, may conflict with %s\n",
+    einfo (_("%P: warning: %s, needed by %B, may conflict with %s\n"),
 	   global_needed->name, global_needed->by, soname);
 }
 
@@ -374,7 +374,7 @@ gld${EMULATION_NAME}_try_needed (struct dt_needed *needed,
       struct bfd_link_needed_list *needs;
 
       if (! bfd_elf_get_bfd_needed_list (abfd, &needs))
-	einfo ("%F%P:%B: bfd_elf_get_bfd_needed_list failed: %E\n", abfd);
+	einfo (_("%F%P:%B: bfd_elf_get_bfd_needed_list failed: %E\n"), abfd);
 
       if (needs != NULL)
 	{
@@ -431,7 +431,7 @@ fragment <<EOF
      can only check that using stat.  */
 
   if (bfd_stat (abfd, &global_stat) != 0)
-    einfo ("%F%P:%B: bfd_stat failed: %E\n", abfd);
+    einfo (_("%F%P:%B: bfd_stat failed: %E\n"), abfd);
 
   /* First strip off everything before the last '/'.  */
   soname = lbasename (abfd->filename);
@@ -467,7 +467,7 @@ fragment <<EOF
 
   /* Add this file into the symbol table.  */
   if (! bfd_link_add_symbols (abfd, &link_info))
-    einfo ("%F%B: error adding symbols: %E\n", abfd);
+    einfo (_("%F%B: error adding symbols: %E\n"), abfd);
 
   return TRUE;
 }
@@ -1186,7 +1186,7 @@ setup_build_id (bfd *ibfd)
   size = id_note_section_size (ibfd);
   if (size == 0)
     {
-      einfo ("%P: warning: unrecognized --build-id style ignored.\n");
+      einfo (_("%P: warning: unrecognized --build-id style ignored.\n"));
       return FALSE;
     }
 
@@ -1204,8 +1204,8 @@ setup_build_id (bfd *ibfd)
       return TRUE;
     }
 
-  einfo ("%P: warning: Cannot create .note.gnu.build-id section,"
-	 " --build-id ignored.\n");
+  einfo (_("%P: warning: Cannot create .note.gnu.build-id section,"
+	   " --build-id ignored.\n"));
   return FALSE;
 }
 
@@ -1234,7 +1234,7 @@ gld${EMULATION_NAME}_after_open (void)
 
       if (link_info.out_implib_bfd == NULL)
 	{
-	  einfo ("%F%s: Can't open for writing: %E\n",
+	  einfo (_("%F%s: Can't open for writing: %E\n"),
 		 command_line.out_implib_filename);
 	}
     }
@@ -1311,7 +1311,7 @@ gld${EMULATION_NAME}_after_open (void)
 	      else if (seen_type != type)
 		{
 		  einfo (_("%P%F: compact frame descriptions incompatible with"
-			 " DWARF2 .eh_frame from %B\n"),
+			   " DWARF2 .eh_frame from %B\n"),
 			 type == DWARF2_EH_HDR ? abfd : elfbfd);
 		  break;
 		}
@@ -1345,8 +1345,8 @@ gld${EMULATION_NAME}_after_open (void)
 	    }
 	}
       if (warn_eh_frame)
-	einfo ("%P: warning: Cannot create .eh_frame_hdr section,"
-	       " --eh-frame-hdr ignored.\n");
+	einfo (_("%P: warning: Cannot create .eh_frame_hdr section,"
+		 " --eh-frame-hdr ignored.\n"));
     }
 
   /* Get the list of files which appear in DT_NEEDED entries in
@@ -1534,7 +1534,8 @@ fragment <<EOF
       if (force < 2)
 	continue;
 
-      einfo ("%P: warning: %s, needed by %B, not found (try using -rpath or -rpath-link)\n",
+      einfo (_("%P: warning: %s, needed by %B, not found "
+	       "(try using -rpath or -rpath-link)\n"),
 	     l->name, l->by);
     }
 
@@ -1575,7 +1576,7 @@ gld${EMULATION_NAME}_find_exp_assignment (etree_type *exp)
 					       &link_info,
 					       exp->assign.dst, provide,
 					       exp->assign.hidden))
-	    einfo ("%P%F: failed to record assignment to %s: %E\n",
+	    einfo (_("%P%F: failed to record assignment to %s: %E\n"),
 		   exp->assign.dst);
 	}
       gld${EMULATION_NAME}_find_exp_assignment (exp->assign.src);
@@ -1776,7 +1777,7 @@ gld${EMULATION_NAME}_before_allocation (void)
 	  command_line.filter_shlib, audit, depaudit,
 	  (const char * const *) command_line.auxiliary_filters,
 	  &link_info, &sinterp)))
-    einfo ("%P%F: failed to set dynamic section sizes: %E\n");
+    einfo (_("%P%F: failed to set dynamic section sizes: %E\n"));
 
 ${ELF_INTERPRETER_SET_DEFAULT}
   /* Let the user override the dynamic linker we are using.  */
@@ -1810,7 +1811,7 @@ ${ELF_INTERPRETER_SET_DEFAULT}
 	msg = (char *) xmalloc ((size_t) (sz + 1));
 	if (! bfd_get_section_contents (is->the_bfd, s,	msg,
 					(file_ptr) 0, sz))
-	  einfo ("%F%B: Can't read contents of section .gnu.warning: %E\n",
+	  einfo (_("%F%B: Can't read contents of section .gnu.warning: %E\n"),
 		 is->the_bfd);
 	msg[sz] = '\0';
 	(*link_info.callbacks->warning) (&link_info, msg,
@@ -1838,7 +1839,7 @@ ${ELF_INTERPRETER_SET_DEFAULT}
   before_allocation_default ();
 
   if (!bfd_elf_size_dynsym_hash_dynstr (link_info.output_bfd, &link_info))
-    einfo ("%P%F: failed to set dynamic section sizes: %E\n");
+    einfo (_("%P%F: failed to set dynamic section sizes: %E\n"));
 
   if (ehdr_start != NULL)
     {
@@ -2316,7 +2317,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   int need_layout = bfd_elf_discard_info (link_info.output_bfd, &link_info);
 
   if (need_layout < 0)
-    einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+    einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
   else
     gld${EMULATION_NAME}_map_segments (need_layout);
 }
diff --git a/ld/emultempl/genelf.em b/ld/emultempl/genelf.em
index a8d350d..32c8849 100644
--- a/ld/emultempl/genelf.em
+++ b/ld/emultempl/genelf.em
@@ -54,7 +54,7 @@ gld${EMULATION_NAME}_before_allocation (void)
 {
   if (bfd_link_relocatable (&link_info)
       && !_bfd_elf_size_group_sections (&link_info))
-    einfo ("%X%P: can not size group sections: %E\n");
+    einfo (_("%X%P: can not size group sections: %E\n"));
   before_allocation_default ();
 }
 
diff --git a/ld/emultempl/hppaelf.em b/ld/emultempl/hppaelf.em
index e4e0727..08ed7ea 100644
--- a/ld/emultempl/hppaelf.em
+++ b/ld/emultempl/hppaelf.em
@@ -82,7 +82,7 @@ hppaelf_create_output_section_statements (void)
 			      bfd_get_arch (link_info.output_bfd),
 			      bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create BFD %E\n");
+      einfo (_("%X%P: can not create BFD %E\n"));
       return;
     }
 
@@ -202,7 +202,7 @@ hppaelf_add_stub_section (const char *stub_sec_name, asection *input_section)
     return stub_sec;
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
@@ -252,7 +252,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   ret = bfd_elf_discard_info (link_info.output_bfd, &link_info);
   if (ret < 0)
     {
-      einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+      einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
       return;
     }
   else if (ret > 0)
@@ -267,7 +267,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 	{
 	  if (ret < 0)
 	    {
-	      einfo ("%X%P: can not size stub section: %E\n");
+	      einfo (_("%X%P: can not size stub section: %E\n"));
 	      return;
 	    }
 
@@ -282,7 +282,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 				       &hppaelf_add_stub_section,
 				       &hppaelf_layout_sections_again))
 	    {
-	      einfo ("%X%P: can not size stub section: %E\n");
+	      einfo (_("%X%P: can not size stub section: %E\n"));
 	      return;
 	    }
 	}
@@ -296,7 +296,7 @@ gld${EMULATION_NAME}_after_allocation (void)
       /* Set the global data pointer.  */
       if (! elf32_hppa_set_gp (link_info.output_bfd, &link_info))
 	{
-	  einfo ("%X%P: can not set gp\n");
+	  einfo (_("%X%P: can not set gp\n"));
 	  return;
 	}
 
@@ -304,7 +304,7 @@ gld${EMULATION_NAME}_after_allocation (void)
       if (stub_file != NULL && stub_file->the_bfd->sections != NULL)
 	{
 	  if (! elf32_hppa_build_stubs (&link_info))
-	    einfo ("%X%P: can not build stubs: %E\n");
+	    einfo (_("%X%P: can not build stubs: %E\n"));
 	}
     }
 }
diff --git a/ld/emultempl/linux.em b/ld/emultempl/linux.em
index d9cfd24..b79537d 100644
--- a/ld/emultempl/linux.em
+++ b/ld/emultempl/linux.em
@@ -122,7 +122,7 @@ gld${EMULATION_NAME}_before_allocation (void)
      dynamic linking.  */
   if (! bfd_${EMULATION_NAME}_size_dynamic_sections (link_info.output_bfd,
 						     &link_info))
-    einfo ("%P%F: failed to set dynamic section sizes: %E\n");
+    einfo (_("%P%F: failed to set dynamic section sizes: %E\n"));
 
   before_allocation_default ();
 }
diff --git a/ld/emultempl/lnk960.em b/ld/emultempl/lnk960.em
index 9f68f26..b30acb6 100644
--- a/ld/emultempl/lnk960.em
+++ b/ld/emultempl/lnk960.em
@@ -90,7 +90,7 @@ lnk960_before_parse (void)
     {
       name = getenv("G960BASE");
       if (name == (char *) NULL)
-	einfo ("%P%F I960BASE and G960BASE not set\n");
+	einfo (_("%P%F I960BASE and G960BASE not set\n"));
     }
 
   ldfile_add_library_path (concat (name, "/lib", (const char *) NULL), FALSE);
diff --git a/ld/emultempl/m68hc1xelf.em b/ld/emultempl/m68hc1xelf.em
index f7337da..c06cb98 100644
--- a/ld/emultempl/m68hc1xelf.em
+++ b/ld/emultempl/m68hc1xelf.em
@@ -79,7 +79,7 @@ m68hc11_elf_${EMULATION_NAME}_before_allocation (void)
     {
       if (ret < 0)
 	{
-	  einfo ("%X%P: can not size stub section: %E\n");
+	  einfo (_("%X%P: can not size stub section: %E\n"));
 	  return;
 	}
 
@@ -89,7 +89,7 @@ m68hc11_elf_${EMULATION_NAME}_before_allocation (void)
 				     &link_info,
 				     &m68hc11elf_add_stub_section))
 	{
-	  einfo ("%X%P: can not size stub section: %E\n");
+	  einfo (_("%X%P: can not size stub section: %E\n"));
 	  return;
 	}
     }
@@ -146,7 +146,8 @@ m68hc11elf_create_output_section_statements (void)
 {
   if (bfd_get_flavour (link_info.output_bfd) != bfd_target_elf_flavour)
     {
-      einfo ("%X%P: changing output format whilst linking is not supported\n");
+      einfo (_("%X%P: changing output format whilst linking "
+	       "is not supported\n"));
       return;
     }
 
@@ -159,7 +160,7 @@ m68hc11elf_create_output_section_statements (void)
 			     bfd_get_arch (link_info.output_bfd),
 			     bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create BFD %E\n");
+      einfo (_("%X%P: can not create BFD %E\n"));
       return;
     }
 
@@ -286,7 +287,7 @@ m68hc11elf_add_stub_section (const char *stub_sec_name,
     return stub_sec;
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
@@ -308,11 +309,11 @@ m68hc11elf_after_allocation (void)
 					 stub_file->the_bfd,
 					 &link_info, 0))
 	    {
-	      einfo ("%X%P: can not size stub section: %E\n");
+	      einfo (_("%X%P: can not size stub section: %E\n"));
 	      return;
 	    }
 	  if (!elf32_m68hc11_build_stubs (link_info.output_bfd, &link_info))
-	    einfo ("%X%P: can not build stubs: %E\n");
+	    einfo (_("%X%P: can not build stubs: %E\n"));
 	}
     }
 
diff --git a/ld/emultempl/m68kcoff.em b/ld/emultempl/m68kcoff.em
index 22e1912..a1383be 100644
--- a/ld/emultempl/m68kcoff.em
+++ b/ld/emultempl/m68kcoff.em
@@ -74,7 +74,8 @@ gld${EMULATION_NAME}_after_open (void)
       /* As first-order business, make sure that each input BFD is COFF. It
          better be, as we are directly calling a COFF backend function.  */
       if (bfd_get_flavour (abfd) != bfd_target_coff_flavour)
-	einfo ("%F%B: all input objects must be COFF for --embedded-relocs\n");
+	einfo (_("%F%B: all input objects must be COFF "
+		 "for --embedded-relocs\n"));
 
       datasec = bfd_get_section_by_name (abfd, ".data");
 
@@ -98,7 +99,7 @@ gld${EMULATION_NAME}_after_open (void)
 	      || ! bfd_set_section_alignment (abfd, relsec, 2)
 	      || ! bfd_set_section_size (abfd, relsec,
 					 datasec->reloc_count * 12))
-	    einfo ("%F%B: can not create .emreloc section: %E\n");
+	    einfo (_("%F%B: can not create .emreloc section: %E\n"));
 	}
 
       /* Double check that all other data sections are empty, as is
@@ -116,7 +117,7 @@ check_sections (bfd *abfd, asection *sec, void *datasec)
   if ((bfd_get_section_flags (abfd, sec) & SEC_DATA)
       && sec != datasec
       && sec->reloc_count != 0)
-    einfo ("%B%X: section %s has relocs; can not use --embedded-relocs\n",
+    einfo (_("%B%X: section %s has relocs; can not use --embedded-relocs\n"),
 	   abfd, bfd_get_section_name (abfd, sec));
 }
 
@@ -151,10 +152,10 @@ gld${EMULATION_NAME}_after_allocation (void)
 						   &errmsg))
 	{
 	  if (errmsg == NULL)
-	    einfo ("%B%X: can not create runtime reloc information: %E\n",
+	    einfo (_("%B%X: can not create runtime reloc information: %E\n"),
 		   abfd);
 	  else
-	    einfo ("%X%B: can not create runtime reloc information: %s\n",
+	    einfo (_("%X%B: can not create runtime reloc information: %s\n"),
 		   abfd, errmsg);
 	}
     }
diff --git a/ld/emultempl/m68kelf.em b/ld/emultempl/m68kelf.em
index a1616a3..9da6e66 100644
--- a/ld/emultempl/m68kelf.em
+++ b/ld/emultempl/m68kelf.em
@@ -85,7 +85,8 @@ m68k_elf_after_open (void)
 	     COFF and ELF.  */
 	  if (bfd_get_flavour (abfd) != bfd_target_coff_flavour
 	      && bfd_get_flavour (abfd) != bfd_target_elf_flavour)
-	    einfo ("%F%B: all input objects must be COFF or ELF for --embedded-relocs\n");
+	    einfo (_("%F%B: all input objects must be COFF or ELF "
+		     "for --embedded-relocs\n"));
 
 	  datasec = bfd_get_section_by_name (abfd, ".data");
 
@@ -109,7 +110,7 @@ m68k_elf_after_open (void)
 		  || ! bfd_set_section_alignment (abfd, relsec, 2)
 		  || ! bfd_set_section_size (abfd, relsec,
 					     datasec->reloc_count * 12))
-		einfo ("%F%B: can not create .emreloc section: %E\n");
+		einfo (_("%F%B: can not create .emreloc section: %E\n"));
 	    }
 
 	  /* Double check that all other data sections are empty, as is
@@ -130,7 +131,7 @@ check_sections (bfd *abfd, asection *sec, void *datasec)
   if ((bfd_get_section_flags (abfd, sec) & SEC_DATA)
       && sec != datasec
       && sec->reloc_count != 0)
-    einfo ("%B%X: section %s has relocs; can not use --embedded-relocs\n",
+    einfo (_("%B%X: section %s has relocs; can not use --embedded-relocs\n"),
 	   abfd, bfd_get_section_name (abfd, sec));
 }
 
@@ -173,10 +174,12 @@ m68k_elf_after_allocation (void)
 							  &errmsg))
 		{
 		  if (errmsg == NULL)
-		    einfo ("%B%X: can not create runtime reloc information: %E\n",
+		    einfo (_("%B%X: can not create "
+			     "runtime reloc information: %E\n"),
 			   abfd);
 		  else
-		    einfo ("%X%B: can not create runtime reloc information: %s\n",
+		    einfo (_("%X%B: can not create "
+			     "runtime reloc information: %s\n"),
 			   abfd, errmsg);
 		}
 	    }
@@ -187,10 +190,12 @@ m68k_elf_after_allocation (void)
 							   &errmsg))
 		{
 		  if (errmsg == NULL)
-		    einfo ("%B%X: can not create runtime reloc information: %E\n",
+		    einfo (_("%B%X: can not create "
+			     "runtime reloc information: %E\n"),
 			   abfd);
 		  else
-		    einfo ("%X%B: can not create runtime reloc information: %s\n",
+		    einfo (_("%X%B: can not create "
+			     "runtime reloc information: %s\n"),
 			   abfd, errmsg);
 		}
 	    }
diff --git a/ld/emultempl/metagelf.em b/ld/emultempl/metagelf.em
index 18ec7f0..0a2fbd4 100644
--- a/ld/emultempl/metagelf.em
+++ b/ld/emultempl/metagelf.em
@@ -59,7 +59,7 @@ metagelf_create_output_section_statements (void)
 			      bfd_get_arch (link_info.output_bfd),
 			      bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create BFD %E\n");
+      einfo (_("%X%P: can not create BFD %E\n"));
       return;
     }
 
@@ -178,7 +178,7 @@ metagelf_add_stub_section (const char *stub_sec_name, asection *input_section)
     return stub_sec;
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
@@ -228,7 +228,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   ret = bfd_elf_discard_info (link_info.output_bfd, &link_info);
   if (ret < 0)
     {
-      einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+      einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
       return;
     }
   else if (ret > 0)
@@ -243,7 +243,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 	{
 	  if (ret < 0)
 	    {
-	      einfo ("%X%P: can not size stub section: %E\n");
+	      einfo (_("%X%P: can not size stub section: %E\n"));
 	      return;
 	    }
 
@@ -257,7 +257,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 				      &metagelf_add_stub_section,
 				      &metagelf_layout_sections_again))
 	    {
-	      einfo ("%X%P: can not size stub section: %E\n");
+	      einfo (_("%X%P: can not size stub section: %E\n"));
 	      return;
 	    }
 	}
@@ -272,7 +272,7 @@ gld${EMULATION_NAME}_after_allocation (void)
       if (stub_file != NULL && stub_file->the_bfd->sections != NULL)
 	{
 	  if (! elf_metag_build_stubs (&link_info))
-	    einfo ("%X%P: can not build stubs: %E\n");
+	    einfo (_("%X%P: can not build stubs: %E\n"));
 	}
     }
 }
diff --git a/ld/emultempl/mipself.em b/ld/emultempl/mipself.em
index d541fef..ee1159c 100644
--- a/ld/emultempl/mipself.em
+++ b/ld/emultempl/mipself.em
@@ -44,7 +44,7 @@ mips_after_parse (void)
      MIPS ABI requires a mapping between the GOT and the symbol table.  */
   if (link_info.emit_gnu_hash)
     {
-      einfo ("%X%P: .gnu.hash is incompatible with the MIPS ABI\n");
+      einfo (_("%X%P: .gnu.hash is incompatible with the MIPS ABI\n"));
       link_info.emit_hash = TRUE;
       link_info.emit_gnu_hash = FALSE;
     }
@@ -157,7 +157,7 @@ mips_add_stub_section (const char *stub_sec_name, asection *input_section,
 				 bfd_get_arch (link_info.output_bfd),
 				 bfd_get_mach (link_info.output_bfd)))
 	{
-	  einfo ("%F%P: can not create BFD %E\n");
+	  einfo (_("%F%P: can not create BFD %E\n"));
 	  return NULL;
 	}
       stub_bfd->flags |= BFD_LINKER_CREATED;
@@ -190,7 +190,7 @@ mips_add_stub_section (const char *stub_sec_name, asection *input_section,
     return stub_sec;
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
diff --git a/ld/emultempl/mmix-elfnmmo.em b/ld/emultempl/mmix-elfnmmo.em
index 7f8eaf9..d703eac 100644
--- a/ld/emultempl/mmix-elfnmmo.em
+++ b/ld/emultempl/mmix-elfnmmo.em
@@ -44,7 +44,7 @@ mmix_before_allocation (void)
   ENABLE_RELAXATION;
 
   if (!_bfd_mmix_before_linker_allocation (link_info.output_bfd, &link_info))
-    einfo ("%X%P: Internal problems setting up section %s",
+    einfo (_("%X%P: Internal problems setting up section %s"),
 	   MMIX_LD_ALLOCATED_REG_CONTENTS_SECTION_NAME);
 }
 
@@ -88,7 +88,7 @@ mmix_after_allocation (void)
      as an undefined symbol.  */
   if (regvma < 32 * 8)
     {
-      einfo ("%X%P: Too many global registers: %u, max 223\n",
+      einfo (_("%X%P: Too many global registers: %u, max 223\n"),
 	     (unsigned) sec->size / 8);
       regvma = 32 * 8;
     }
@@ -106,7 +106,7 @@ mmix_after_allocation (void)
   if (!_bfd_mmix_after_linker_allocation (link_info.output_bfd, &link_info))
     {
       /* This is a fatal error; make einfo call not return.  */
-      einfo ("%F%P: Can't finalize linker-allocated global registers\n");
+      einfo (_("%F%P: Can't finalize linker-allocated global registers\n"));
     }
 }
 EOF
diff --git a/ld/emultempl/mmo.em b/ld/emultempl/mmo.em
index 67d7e16..7e6efc0 100644
--- a/ld/emultempl/mmo.em
+++ b/ld/emultempl/mmo.em
@@ -228,7 +228,7 @@ mmo_after_open (void)
 	{
 	  if (bfd_get_flavour (is->the_bfd) == bfd_target_elf_flavour
 	      && !_bfd_mmix_check_all_relocs (is->the_bfd, &link_info))
-	    einfo ("%X%P: Internal problems scanning %B after opening it",
+	    einfo (_("%X%P: Internal problems scanning %B after opening it"),
 		   is->the_bfd);
 	}
     }
diff --git a/ld/emultempl/msp430.em b/ld/emultempl/msp430.em
index a956a2f..5281ab4 100644
--- a/ld/emultempl/msp430.em
+++ b/ld/emultempl/msp430.em
@@ -168,7 +168,7 @@ data_statement_size (lang_data_statement_type *d)
       size = BYTE_SIZE;
       break;
     default:
-      einfo ("%P: error: unhandled data_statement size\n");
+      einfo (_("%P: error: unhandled data_statement size\n"));
       FAIL ();
     }
   return size;
@@ -268,7 +268,7 @@ gld${EMULATION_NAME}_place_orphan (asection * s,
 
   if (lower == NULL && upper == NULL)
     {
-      einfo ("%P: error: no section named %s or %s in linker script\n",
+      einfo (_("%P: error: no section named %s or %s in linker script\n"),
 	     lower_name, upper_name);
       goto end;
     }
@@ -277,7 +277,7 @@ gld${EMULATION_NAME}_place_orphan (asection * s,
       lower = lang_output_section_find (name);
       if (lower == NULL)
 	{
-	  einfo ("%P: error: no section named %s in linker script\n", name);
+	  einfo (_("%P: error: no section named %s in linker script\n"), name);
 	  goto end;
 	}
     }
@@ -403,7 +403,7 @@ add_region_prefix (bfd *abfd, asection *s,
 	  move_prefixed_section (s, new_input_sec_name, upper);
 	}
       else
-	einfo ("%P: error: no section named %s in linker script\n",
+	einfo (_("%P: error: no section named %s in linker script\n"),
 	       new_output_sec_name);
       break;
     case REGION_LOWER:
@@ -416,7 +416,7 @@ add_region_prefix (bfd *abfd, asection *s,
 	  move_prefixed_section (s, new_input_sec_name, lower);
 	}
       else
-	einfo ("%P: error: no section named %s in linker script\n",
+	einfo (_("%P: error: no section named %s in linker script\n"),
 	       new_output_sec_name);
       break;
     case REGION_EITHER:
diff --git a/ld/emultempl/nds32elf.em b/ld/emultempl/nds32elf.em
index 28ee3e16..d14389b 100644
--- a/ld/emultempl/nds32elf.em
+++ b/ld/emultempl/nds32elf.em
@@ -51,8 +51,8 @@ nds32_elf_create_output_section_statements (void)
   if (strstr (bfd_get_target (link_info.output_bfd), "nds32") == NULL)
     {
       /* Check the output target is nds32.  */
-      einfo ("%F%X%P: error: Cannot change output format whilst "
-	     "linking NDS32 binaries.\n");
+      einfo (_("%F%X%P: error: Cannot change output format whilst "
+	       "linking NDS32 binaries.\n"));
       return;
     }
 
@@ -293,7 +293,7 @@ PARSE_AND_LIST_OPTIONS='
 '
 PARSE_AND_LIST_ARGS_CASES='
   case OPTION_BASELINE:
-    einfo ("%P: --mbaseline is not used anymore.\n");
+    einfo (_("%P: --mbaseline is not used anymore.\n"));
     break;
   case OPTION_ELIM_GC_RELOCS:
     eliminate_gc_relocs = 1;
@@ -304,7 +304,7 @@ PARSE_AND_LIST_ARGS_CASES='
     break;
   case OPTION_REDUCE_FP_UPDATE:
   case OPTION_NO_REDUCE_FP_UPDATE:
-    einfo ("%P: --relax-[no-]reduce-fp-updat is not used anymore.\n");
+    einfo (_("%P: --relax-[no-]reduce-fp-updat is not used anymore.\n"));
     break;
   case OPTION_EXPORT_SYMBOLS:
     if (!optarg)
diff --git a/ld/emultempl/nios2elf.em b/ld/emultempl/nios2elf.em
index 0fdbc95..4035905 100644
--- a/ld/emultempl/nios2elf.em
+++ b/ld/emultempl/nios2elf.em
@@ -64,7 +64,7 @@ nios2elf_create_output_section_statements (void)
 			      bfd_get_arch (link_info.output_bfd),
 			      bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create BFD %E\n");
+      einfo (_("%X%P: can not create BFD %E\n"));
       return;
     }
 
@@ -195,7 +195,7 @@ nios2elf_add_stub_section (const char *stub_sec_name, asection *input_section,
     return stub_sec;
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
@@ -245,7 +245,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   ret = bfd_elf_discard_info (link_info.output_bfd, &link_info);
   if (ret < 0)
     {
-      einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+      einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
       return;
     }
   else if (ret > 0)
@@ -262,7 +262,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 	{
 	  if (ret < 0)
 	    {
-	      einfo ("%X%P: can not size stub section: %E\n");
+	      einfo (_("%X%P: can not size stub section: %E\n"));
 	      return;
 	    }
 
@@ -275,7 +275,7 @@ gld${EMULATION_NAME}_after_allocation (void)
 					&nios2elf_add_stub_section,
 					&nios2elf_layout_sections_again))
 	    {
-	      einfo ("%X%P: can not size stub section: %E\n");
+	      einfo (_("%X%P: can not size stub section: %E\n"));
 	      return;
 	    }
 	}
@@ -290,7 +290,7 @@ gld${EMULATION_NAME}_after_allocation (void)
       if (stub_file != NULL && stub_file->the_bfd->sections != NULL)
 	{
 	  if (! nios2_elf32_build_stubs (&link_info))
-	    einfo ("%X%P: can not build stubs: %E\n");
+	    einfo (_("%X%P: can not build stubs: %E\n"));
 	}
     }
 }
diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em
index 16d28e2..3183caa 100644
--- a/ld/emultempl/pe.em
+++ b/ld/emultempl/pe.em
@@ -1407,7 +1407,7 @@ setup_build_id (bfd *ibfd)
 
   if (!validate_build_id_style (emit_build_id))
     {
-      einfo ("%P: warning: unrecognized --build-id style ignored.\n");
+      einfo (_("%P: warning: unrecognized --build-id style ignored.\n"));
       return FALSE;
     }
 
@@ -1431,8 +1431,8 @@ setup_build_id (bfd *ibfd)
       return TRUE;
     }
 
-  einfo ("%P: warning: Cannot create .buildid section,"
-	 " --build-id ignored.\n");
+  einfo (_("%P: warning: Cannot create .buildid section,"
+	   " --build-id ignored.\n"));
   return FALSE;
 }
 
@@ -1556,7 +1556,8 @@ gld_${EMULATION_NAME}_after_open (void)
 	 These will only be created if the output format is an arm format,
 	 hence we do not support linking and changing output formats at the
 	 same time.  Use a link followed by objcopy to change output formats.  */
-      einfo ("%F%X%P: error: cannot change output format whilst linking ARM binaries\n");
+      einfo (_("%F%X%P: error: cannot change output format "
+	       "whilst linking ARM binaries\n"));
       return;
     }
   {
@@ -1627,7 +1628,7 @@ gld_${EMULATION_NAME}_after_open (void)
 		    if (nrelocs < 0)
 		      {
 			free (relocs);
-			einfo ("%X%P: unable to process relocs: %E\n");
+			einfo (_("%X%P: unable to process relocs: %E\n"));
 			return;
 		      }
 
diff --git a/ld/emultempl/pep.em b/ld/emultempl/pep.em
index 420ffa8..6fef7d8 100644
--- a/ld/emultempl/pep.em
+++ b/ld/emultempl/pep.em
@@ -1374,7 +1374,7 @@ setup_build_id (bfd *ibfd)
 
   if (!validate_build_id_style (emit_build_id))
     {
-      einfo ("%P: warning: unrecognized --build-id style ignored.\n");
+      einfo (_("%P: warning: unrecognized --build-id style ignored.\n"));
       return FALSE;
     }
 
@@ -1398,8 +1398,8 @@ setup_build_id (bfd *ibfd)
       return TRUE;
     }
 
-  einfo ("%P: warning: Cannot create .buildid section,"
-	 " --build-id ignored.\n");
+  einfo (_("%P: warning: Cannot create .buildid section,"
+	   " --build-id ignored.\n"));
   return FALSE;
 }
 
@@ -1574,7 +1574,7 @@ gld_${EMULATION_NAME}_after_open (void)
 		    if (nrelocs < 0)
 		      {
 			free (relocs);
-			einfo ("%X%P: unable to process relocs: %E\n");
+			einfo (_("%X%P: unable to process relocs: %E\n"));
 			return;
 		      }
 
diff --git a/ld/emultempl/ppc32elf.em b/ld/emultempl/ppc32elf.em
index 1012bc9..374459c 100644
--- a/ld/emultempl/ppc32elf.em
+++ b/ld/emultempl/ppc32elf.em
@@ -71,7 +71,7 @@ ppc_after_open (void)
 
       new_plt = ppc_elf_select_plt_layout (link_info.output_bfd, &link_info);
       if (new_plt < 0)
-	einfo ("%X%P: select_plt_layout problem %E\n");
+	einfo (_("%X%P: select_plt_layout problem %E\n"));
 
       num_got = 0;
       num_plt = 0;
@@ -124,7 +124,7 @@ ppc_before_allocation (void)
 	{
 	  if (!ppc_elf_tls_optimize (link_info.output_bfd, &link_info))
 	    {
-	      einfo ("%X%P: TLS problem %E\n");
+	      einfo (_("%X%P: TLS problem %E\n"));
 	      return;
 	    }
 	}
diff --git a/ld/emultempl/ppc64elf.em b/ld/emultempl/ppc64elf.em
index cf75957..5c3ecb0 100644
--- a/ld/emultempl/ppc64elf.em
+++ b/ld/emultempl/ppc64elf.em
@@ -86,7 +86,7 @@ ppc_create_output_section_statements (void)
 			     bfd_get_arch (link_info.output_bfd),
 			     bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%F%P: can not create BFD: %E\n");
+      einfo (_("%F%P: can not create BFD: %E\n"));
       return;
     }
 
@@ -96,7 +96,7 @@ ppc_create_output_section_statements (void)
   if (params.save_restore_funcs < 0)
     params.save_restore_funcs = !bfd_link_relocatable (&link_info);
   if (!ppc64_elf_init_stub_bfd (&link_info, &params))
-    einfo ("%F%P: can not init BFD: %E\n");
+    einfo (_("%F%P: can not init BFD: %E\n"));
 }
 
 /* Called after opening files but before mapping sections.  */
@@ -280,7 +280,7 @@ ppc_before_allocation (void)
     {
       if (!no_opd_opt
 	  && !ppc64_elf_edit_opd (&link_info))
-	einfo ("%X%P: can not edit %s: %E\n", "opd");
+	einfo (_("%X%P: can not edit %s: %E\n"), "opd");
 
       if (ppc64_elf_tls_setup (&link_info)
 	  && !no_tls_opt)
@@ -290,7 +290,7 @@ ppc_before_allocation (void)
 	  prelim_size_sections ();
 
 	  if (!ppc64_elf_tls_optimize (&link_info))
-	    einfo ("%X%P: TLS problem %E\n");
+	    einfo (_("%X%P: TLS problem %E\n"));
 	}
 
       if (!no_toc_opt
@@ -299,7 +299,7 @@ ppc_before_allocation (void)
 	  prelim_size_sections ();
 
 	  if (!ppc64_elf_edit_toc (&link_info))
-	    einfo ("%X%P: can not edit %s: %E\n", "toc");
+	    einfo (_("%X%P: can not edit %s: %E\n"), "toc");
 	}
 
       if (!no_toc_sort)
@@ -429,7 +429,7 @@ ppc_add_stub_section (const char *stub_sec_name, asection *input_section)
     return stub_sec;
 
  err_ret:
-  einfo ("%X%P: can not make stub section: %E\n");
+  einfo (_("%X%P: can not make stub section: %E\n"));
   return NULL;
 }
 
@@ -463,7 +463,7 @@ build_toc_list (lang_statement_union_type *statement)
 	  && i->output_section == toc_section)
 	{
 	  if (!ppc64_elf_next_toc_section (&link_info, i))
-	    einfo ("%X%P: linker script separates .got and .toc\n");
+	    einfo (_("%X%P: linker script separates .got and .toc\n"));
 	}
     }
 }
@@ -482,7 +482,7 @@ build_section_lists (lang_statement_union_type *statement)
 	  && i->output_section->owner == link_info.output_bfd)
 	{
 	  if (!ppc64_elf_next_input_section (&link_info, i))
-	    einfo ("%X%P: can not size stub section: %E\n");
+	    einfo (_("%X%P: can not size stub section: %E\n"));
 	}
     }
 }
@@ -501,7 +501,7 @@ gld${EMULATION_NAME}_after_allocation (void)
     {
       ret = ppc64_elf_setup_section_lists (&link_info);
       if (ret < 0)
-	einfo ("%X%P: can not size stub section: %E\n");
+	einfo (_("%X%P: can not size stub section: %E\n"));
       else
 	{
 	  ppc64_elf_start_multitoc_partition (&link_info);
@@ -524,11 +524,11 @@ gld${EMULATION_NAME}_after_allocation (void)
 	  lang_for_each_statement (build_section_lists);
 
 	  if (!ppc64_elf_check_init_fini (&link_info))
-	    einfo ("%P: .init/.fini fragments use differing TOC pointers\n");
+	    einfo (_("%P: .init/.fini fragments use differing TOC pointers\n"));
 
 	  /* Call into the BFD backend to do the real work.  */
 	  if (!ppc64_elf_size_stubs (&link_info))
-	    einfo ("%X%P: can not size stub section: %E\n");
+	    einfo (_("%X%P: can not size stub section: %E\n"));
 	}
     }
 
@@ -539,7 +539,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   ret = bfd_elf_discard_info (link_info.output_bfd, &link_info);
   if (ret < 0)
     {
-      einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+      einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
       return;
     }
   else if (ret > 0)
@@ -578,7 +578,7 @@ gld${EMULATION_NAME}_finish (void)
   if (stub_file != NULL
       && !bfd_link_relocatable (&link_info)
       && !ppc64_elf_build_stubs (&link_info, config.stats ? &msg : NULL))
-    einfo ("%X%P: can not build stubs: %E\n");
+    einfo (_("%X%P: can not build stubs: %E\n"));
 
   fflush (stdout);
   for (line = msg; line != NULL; line = endline)
diff --git a/ld/emultempl/riscvelf.em b/ld/emultempl/riscvelf.em
index 99af4d8..5fe93c2 100644
--- a/ld/emultempl/riscvelf.em
+++ b/ld/emultempl/riscvelf.em
@@ -54,7 +54,7 @@ gld${EMULATION_NAME}_after_allocation (void)
       need_layout = bfd_elf_discard_info (link_info.output_bfd, &link_info);
       if (need_layout < 0)
 	{
-	  einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+	  einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
 	  return;
 	}
     }
diff --git a/ld/emultempl/s390.em b/ld/emultempl/s390.em
index 536104e..641d11e 100644
--- a/ld/emultempl/s390.em
+++ b/ld/emultempl/s390.em
@@ -34,7 +34,7 @@ static void
 s390_elf_create_output_section_statements (void)
 {
   if (!bfd_elf_s390_set_options (&link_info, &params))
-    einfo ("%F%P: can not init BFD: %E\n");
+    einfo (_("%F%P: can not init BFD: %E\n"));
 }
 
 EOF
diff --git a/ld/emultempl/scoreelf.em b/ld/emultempl/scoreelf.em
index 778f78d..9560ff2 100644
--- a/ld/emultempl/scoreelf.em
+++ b/ld/emultempl/scoreelf.em
@@ -51,7 +51,8 @@ score_elf_after_open (void)
 	 These will only be created if the output format is an score format,
 	 hence we do not support linking and changing output formats at the
 	 same time.  Use a link followed by objcopy to change output formats.  */
-      einfo ("%F%X%P: error: cannot change output format whilst linking S+core binaries\n");
+      einfo (_("%F%X%P: error: cannot change output format "
+	       "whilst linking S+core binaries\n"));
       return;
     }
 
diff --git a/ld/emultempl/spuelf.em b/ld/emultempl/spuelf.em
index 808f333..43be87b 100644
--- a/ld/emultempl/spuelf.em
+++ b/ld/emultempl/spuelf.em
@@ -113,7 +113,7 @@ spu_after_open (void)
       if (!bfd_link_relocatable (&link_info)
 	  && link_info.input_bfds != NULL
 	  && !spu_elf_create_sections (&link_info))
-	einfo ("%X%P: can not create note section: %E\n");
+	einfo (_("%X%P: can not create note section: %E\n"));
     }
 
   gld${EMULATION_NAME}_after_open ();
@@ -202,7 +202,7 @@ spu_elf_load_ovl_mgr (void)
       /* User supplied __ovly_load.  */
     }
   else if (mgr_stream->start == mgr_stream->end)
-    einfo ("%F%P: no built-in overlay manager\n");
+    einfo (_("%F%P: no built-in overlay manager\n"));
   else
     {
       lang_input_statement_type *ovl_is;
@@ -212,13 +212,13 @@ spu_elf_load_ovl_mgr (void)
 				    NULL);
 
       if (!spu_elf_open_builtin_lib (&ovl_is->the_bfd, mgr_stream))
-	einfo ("%X%P: can not open built-in overlay manager: %E\n");
+	einfo (_("%X%P: can not open built-in overlay manager: %E\n"));
       else
 	{
 	  asection *in;
 
 	  if (!load_symbols (ovl_is, NULL))
-	    einfo ("%X%P: can not load built-in overlay manager: %E\n");
+	    einfo (_("%X%P: can not load built-in overlay manager: %E\n"));
 
 	  /* Map overlay manager sections to output sections.
 	     First try for a matching output section name, if that
@@ -278,14 +278,14 @@ spu_before_allocation (void)
       /* Find overlays by inspecting section vmas.  */
       ret = spu_elf_find_overlays (&link_info);
       if (ret == 0)
-	einfo ("%X%P: can not find overlays: %E\n");
+	einfo (_("%X%P: can not find overlays: %E\n"));
       else if (ret == 2)
 	{
 	  lang_output_section_statement_type *os;
 
 	  if (params.auto_overlay != 0)
 	    {
-	      einfo ("%P: --auto-overlay ignored with user overlay script\n");
+	      einfo (_("%P: --auto-overlay ignored with user overlay script\n"));
 	      params.auto_overlay = 0;
 	    }
 
@@ -306,7 +306,7 @@ spu_before_allocation (void)
 
 	  ret = spu_elf_size_stubs (&link_info);
 	  if (ret == 0)
-	    einfo ("%X%P: can not size overlay stubs: %E\n");
+	    einfo (_("%X%P: can not size overlay stubs: %E\n"));
 	  else if (ret == 2)
 	    spu_elf_load_ovl_mgr ();
 
@@ -379,7 +379,7 @@ spu_elf_open_overlay_script (void)
   if (script == NULL)
     {
     file_err:
-      einfo ("%F%P: can not open script: %E\n");
+      einfo (_("%F%P: can not open script: %E\n"));
     }
   return script;
 }
@@ -426,10 +426,10 @@ gld${EMULATION_NAME}_finish (void)
 
 	  s = spu_elf_check_vma (&link_info);
 	  if (s != NULL && !params.auto_overlay)
-	    einfo ("%X%P: %A exceeds local store range\n", s);
+	    einfo (_("%X%P: %A exceeds local store range\n"), s);
 	}
       else if (params.auto_overlay)
-	einfo ("%P: --auto-overlay ignored with zero local store range\n");
+	einfo (_("%P: --auto-overlay ignored with zero local store range\n"));
     }
 
   finish_default ();
diff --git a/ld/emultempl/sunos.em b/ld/emultempl/sunos.em
index be6375a..44e6e51 100644
--- a/ld/emultempl/sunos.em
+++ b/ld/emultempl/sunos.em
@@ -427,11 +427,11 @@ gld${EMULATION_NAME}_after_open (void)
 	    {
 	      /* We've found the needed dynamic object.  */
 	      if (! bfd_link_add_symbols (abfd, &link_info))
-		einfo ("%F%B: error adding symbols: %E\n", abfd);
+		einfo (_("%F%B: error adding symbols: %E\n"), abfd);
 	    }
 	  else
 	    {
-	      einfo ("%P: warning: %s, needed by %B, not found\n",
+	      einfo (_("%P: warning: %s, needed by %B, not found\n"),
 		     lname, l->by);
 	    }
 
@@ -491,7 +491,7 @@ fragment <<EOF
 	    continue;
 	}
 
-      einfo ("%P: warning: %s, needed by %B, not found\n",
+      einfo (_("%P: warning: %s, needed by %B, not found\n"),
 	     l->name, l->by);
     }
 }
@@ -574,7 +574,7 @@ gld${EMULATION_NAME}_try_needed (const char *dir, const char *name)
 
   /* Add this file into the symbol table.  */
   if (! bfd_link_add_symbols (abfd, &link_info))
-    einfo ("%F%B: error adding symbols: %E\n", abfd);
+    einfo (_("%F%B: error adding symbols: %E\n"), abfd);
 
   return TRUE;
 }
@@ -717,10 +717,10 @@ gld${EMULATION_NAME}_before_allocation (void)
       hdyn = bfd_link_hash_lookup (link_info.hash, "__DYNAMIC", TRUE, FALSE,
 				   FALSE);
       if (hdyn == NULL)
-	einfo ("%P%F: bfd_link_hash_lookup: %E\n");
+	einfo (_("%P%F: bfd_link_hash_lookup: %E\n"));
       if (! bfd_sunos_record_link_assignment (link_info.output_bfd, &link_info,
 					      "__DYNAMIC"))
-	einfo ("%P%F: failed to record assignment to __DYNAMIC: %E\n");
+	einfo (_("%P%F: failed to record assignment to __DYNAMIC: %E\n"));
     }
 
   /* If we are going to make any variable assignments, we need to let
@@ -732,7 +732,7 @@ gld${EMULATION_NAME}_before_allocation (void)
      required by dynamic linking.  */
   if (! bfd_sunos_size_dynamic_sections (link_info.output_bfd, &link_info,
 					 &sdyn, &sneed, &srules))
-    einfo ("%P%F: failed to set dynamic section sizes: %E\n");
+    einfo (_("%P%F: failed to set dynamic section sizes: %E\n"));
 
   if (sneed != NULL)
     {
@@ -853,7 +853,7 @@ gld${EMULATION_NAME}_find_exp_assignment (etree_type *exp)
 	  if (! bfd_sunos_record_link_assignment (link_info.output_bfd,
 						  &link_info,
 						  exp->assign.dst))
-	    einfo ("%P%F: failed to record assignment to %s: %E\n",
+	    einfo (_("%P%F: failed to record assignment to %s: %E\n"),
 		   exp->assign.dst);
 	}
       gld${EMULATION_NAME}_find_exp_assignment (exp->assign.src);
diff --git a/ld/emultempl/tic6xdsbt.em b/ld/emultempl/tic6xdsbt.em
index 1d28817..f7f1f25 100644
--- a/ld/emultempl/tic6xdsbt.em
+++ b/ld/emultempl/tic6xdsbt.em
@@ -153,7 +153,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   ret = bfd_elf_discard_info (link_info.output_bfd, & link_info);
   if (ret < 0)
     {
-      einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+      einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
       return;
     }
   else if (ret > 0)
diff --git a/ld/emultempl/v850elf.em b/ld/emultempl/v850elf.em
index d4f6dee..2d59023 100644
--- a/ld/emultempl/v850elf.em
+++ b/ld/emultempl/v850elf.em
@@ -44,7 +44,7 @@ v850_after_open (void)
       && !bfd_link_relocatable (&link_info)
       && link_info.input_bfds != NULL
       && ! v850_elf_create_sections (& link_info))
-	einfo ("%X%P: can not create note section: %E\n");
+	einfo (_("%X%P: can not create note section: %E\n"));
 
   gld${EMULATION_NAME}_after_open ();
 }
diff --git a/ld/emultempl/vms.em b/ld/emultempl/vms.em
index 49c4ba8..cd39f97 100644
--- a/ld/emultempl/vms.em
+++ b/ld/emultempl/vms.em
@@ -199,7 +199,7 @@ gld${EMULATION_NAME}_before_allocation (void)
       && bed->elf_backend_size_dynamic_sections
       && ! (*bed->elf_backend_size_dynamic_sections) (link_info.output_bfd,
                                                       &link_info))
-    einfo ("%P%F: failed to set dynamic section sizes: %E\n");
+    einfo (_("%P%F: failed to set dynamic section sizes: %E\n"));
 
   before_allocation_default ();
 }
@@ -210,7 +210,7 @@ gld${EMULATION_NAME}_after_allocation (void)
   int need_layout = bfd_elf_discard_info (link_info.output_bfd, &link_info);
 
   if (need_layout < 0)
-    einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+    einfo (_("%X%P: .eh_frame/.stab edit: %E\n"));
   else
     gld${EMULATION_NAME}_map_segments (need_layout);
 }
diff --git a/ld/emultempl/vxworks.em b/ld/emultempl/vxworks.em
index d298596..78d451d 100644
--- a/ld/emultempl/vxworks.em
+++ b/ld/emultempl/vxworks.em
@@ -44,13 +44,13 @@ vxworks_after_open (void)
       && bfd_get_flavour (link_info.output_bfd) == bfd_target_elf_flavour
       && !_bfd_elf_link_create_dynamic_sections (link_info.input_bfds,
 						 &link_info))
-    einfo ("%X%P: Cannot create dynamic sections %E\n");
+    einfo (_("%X%P: Cannot create dynamic sections %E\n"));
 
   if (!force_dynamic
       && !bfd_link_pic (&link_info)
       && bfd_get_flavour (link_info.output_bfd) == bfd_target_elf_flavour
       && elf_hash_table (&link_info)->dynamic_sections_created)
-    einfo ("%X%P: Dynamic sections created in non-dynamic link\n");
+    einfo (_("%X%P: Dynamic sections created in non-dynamic link\n"));
 }
 
 EOF
diff --git a/ld/ldcref.c b/ld/ldcref.c
index 143e671..f4e483e 100644
--- a/ld/ldcref.c
+++ b/ld/ldcref.c
@@ -410,7 +410,7 @@ output_one_cref (FILE *fp, struct cref_hash_entry *h)
   hl = bfd_link_hash_lookup (link_info.hash, h->root.string, FALSE,
 			     FALSE, TRUE);
   if (hl == NULL)
-    einfo ("%P: symbol `%T' missing from main hash table\n",
+    einfo (_("%P: symbol `%T' missing from main hash table\n"),
 	   h->root.string);
   else
     {
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 7b80bf9..ba8dcc1 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -6419,7 +6419,7 @@ ldlang_place_orphan (asection *s)
       int constraint = 0;
 
       if (config.orphan_handling == orphan_handling_error)
-	einfo ("%X%P: error: unplaced orphan section `%A' from `%B'.\n",
+	einfo (_("%X%P: error: unplaced orphan section `%A' from `%B'.\n"),
 	       s, s->owner);
 
       if (config.unique_orphan_sections || unique_section_p (s, NULL))
@@ -6437,8 +6437,8 @@ ldlang_place_orphan (asection *s)
 	}
 
       if (config.orphan_handling == orphan_handling_warn)
-	einfo ("%P: warning: orphan section `%A' from `%B' being "
-	       "placed in section `%s'.\n",
+	einfo (_("%P: warning: orphan section `%A' from `%B' being "
+		 "placed in section `%s'.\n"),
 	       s, s->owner, os->name);
     }
 }
diff --git a/ld/ldlex.l b/ld/ldlex.l
index 795a4d7..fd50856 100644
--- a/ld/ldlex.l
+++ b/ld/ldlex.l
@@ -495,7 +495,7 @@ lex_push_file (FILE *file, const char *name, unsigned int sysrooted)
 {
   if (include_stack_ptr >= MAX_INCLUDE_DEPTH)
     {
-      einfo ("%F:includes nested too deeply\n");
+      einfo (_("%F:includes nested too deeply\n"));
     }
   file_name_stack[include_stack_ptr] = name;
   lineno_stack[include_stack_ptr] = lineno;
@@ -560,7 +560,7 @@ lex_redirect (const char *string, const char *fake_filename, unsigned int count)
   yy_init = 0;
   if (include_stack_ptr >= MAX_INCLUDE_DEPTH)
     {
-      einfo("%F: macros nested too deeply\n");
+      einfo (_("%F: macros nested too deeply\n"));
     }
   file_name_stack[include_stack_ptr] = fake_filename;
   lineno_stack[include_stack_ptr] = lineno;
@@ -662,7 +662,7 @@ yy_input (char *buf, int max_size)
 	{
 	  result = fread (buf, 1, max_size, yyin);
 	  if (result < max_size && ferror (yyin))
-	    einfo ("%F%P: read in flex scanner failed\n");
+	    einfo (_("%F%P: read in flex scanner failed\n"));
 	}
     }
   return result;
@@ -676,33 +676,33 @@ comment (void)
   int c;
 
   while (1)
-  {
-    c = input();
-    while (c != '*' && c != EOF)
     {
-      if (c == '\n')
-	lineno++;
       c = input();
-    }
+      while (c != '*' && c != EOF)
+	{
+	  if (c == '\n')
+	    lineno++;
+	  c = input();
+	}
 
-    if (c == '*')
-    {
-      c = input();
-      while (c == '*')
-       c = input();
-      if (c == '/')
-       break;			/* found the end */
-    }
+      if (c == '*')
+	{
+	  c = input();
+	  while (c == '*')
+	    c = input();
+	  if (c == '/')
+	    break;			/* found the end */
+	}
 
-    if (c == '\n')
-      lineno++;
+      if (c == '\n')
+	lineno++;
 
-    if (c == EOF)
-    {
-      einfo( "%F%P: EOF in comment\n");
-      break;
+      if (c == EOF)
+	{
+	  einfo (_("%F%P: EOF in comment\n"));
+	  break;
+	}
     }
-  }
 }
 
 /* Warn the user about a garbage character WHAT in the input
@@ -720,7 +720,7 @@ lex_warn_invalid (char *where, char *what)
   if (ldfile_assumed_script)
     {
       bfd_set_error (bfd_error_file_not_recognized);
-      einfo ("%F%s: file not recognized: %E\n", ldlex_filename ());
+      einfo (_("%F%s: file not recognized: %E\n"), ldlex_filename ());
     }
 
   if (! ISPRINT (*what))
@@ -729,5 +729,5 @@ lex_warn_invalid (char *where, char *what)
       what = buf;
     }
 
-  einfo ("%P:%S: ignoring invalid character `%s'%s\n", NULL, what, where);
+  einfo (_("%P:%S: ignoring invalid character `%s'%s\n"), NULL, what, where);
 }
diff --git a/ld/ldmain.c b/ld/ldmain.c
index d223587..9e8f330 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
@@ -1486,9 +1486,9 @@ notice (struct bfd_link_info *info,
       && bfd_hash_lookup (info->notice_hash, name, FALSE, FALSE) != NULL)
     {
       if (bfd_is_und_section (section))
-	einfo ("%B: reference to %s\n", abfd, name);
+	einfo (_("%B: reference to %s\n"), abfd, name);
       else
-	einfo ("%B: definition of %s\n", abfd, name);
+	einfo (_("%B: definition of %s\n"), abfd, name);
     }
 
   if (command_line.cref || nocrossref_list != NULL)
diff --git a/ld/pe-dll.c b/ld/pe-dll.c
index e99f753..a88afac 100644
--- a/ld/pe-dll.c
+++ b/ld/pe-dll.c
@@ -1013,7 +1013,7 @@ build_filler_bfd (int include_edata)
 			     bfd_get_arch (link_info.output_bfd),
 			     bfd_get_mach (link_info.output_bfd)))
     {
-      einfo ("%X%P: can not create BFD: %E\n");
+      einfo (_("%X%P: can not create BFD: %E\n"));
       return;
     }
 
@@ -1028,7 +1028,7 @@ build_filler_bfd (int include_edata)
 				      | SEC_KEEP
 				      | SEC_IN_MEMORY)))
 	{
-	  einfo ("%X%P: can not create .edata section: %E\n");
+	  einfo (_("%X%P: can not create .edata section: %E\n"));
 	  return;
 	}
       bfd_set_section_size (filler_bfd, edata_s, edata_sz);
@@ -1043,7 +1043,7 @@ build_filler_bfd (int include_edata)
 				  | SEC_KEEP
 				  | SEC_IN_MEMORY)))
     {
-      einfo ("%X%P: can not create .reloc section: %E\n");
+      einfo (_("%X%P: can not create .reloc section: %E\n"));
       return;
     }
 
@@ -1385,7 +1385,7 @@ generate_reloc (bfd *abfd, struct bfd_link_info *info)
 	  if (s->output_section->vma == 0)
 	    {
 	      /* Huh?  Shouldn't happen, but punt if it does.  */
-	      einfo ("DJ: zero vma section reloc detected: `%s' #%d f=%d\n",
+	      einfo (_("zero vma section reloc detected: `%s' #%d f=%d\n"),
 		     s->output_section->name, s->output_section->index,
 		     s->output_section->flags);
 	      continue;
@@ -3047,7 +3047,7 @@ add_bfd_to_link (bfd *abfd, const char *name, struct bfd_link_info *linfo)
   ldlang_add_file (fake_file);
 
   if (!bfd_link_add_symbols (abfd, linfo))
-    einfo ("%P%X: addsym %s: %E\n", name);
+    einfo (_("%P%X: add symbols %s: %E\n"), name);
 }
 
 void
@@ -3233,14 +3233,14 @@ pe_implied_import_dll (const char *filename)
   dll = bfd_openr (filename, pe_details->target_name);
   if (!dll)
     {
-      einfo ("%P%X: open %s: %E\n", filename);
+      einfo (_("%P%X: open %s: %E\n"), filename);
       return FALSE;
     }
 
   /* PEI dlls seem to be bfd_objects.  */
   if (!bfd_check_format (dll, bfd_object))
     {
-      einfo ("%P%X: %s: this doesn't appear to be a DLL\n", filename);
+      einfo (_("%P%X: %s: this doesn't appear to be a DLL\n"), filename);
       return FALSE;
     }
 
diff --git a/ld/plugin.c b/ld/plugin.c
index 9abeaf0..1590c0d 100644
--- a/ld/plugin.c
+++ b/ld/plugin.c
@@ -723,7 +723,7 @@ get_symbols (const void *handle, int nsyms, struct ld_plugin_symbol *syms,
 	  && blhe->type != bfd_link_hash_common)
 	{
 	  /* We should not have a new, indirect or warning symbol here.  */
-	  einfo ("%P%F: %s: plugin symbol table corrupt (sym type %d)\n",
+	  einfo (_("%P%F: %s: plugin symbol table corrupt (sym type %d)\n"),
 		 called_plugin->name, blhe->type);
 	}
 

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]