aboutsummaryrefslogtreecommitdiff
path: root/contrib/binutils/bfd/elflink.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/binutils/bfd/elflink.c')
-rw-r--r--contrib/binutils/bfd/elflink.c33
1 files changed, 2 insertions, 31 deletions
diff --git a/contrib/binutils/bfd/elflink.c b/contrib/binutils/bfd/elflink.c
index f1e50def8b52..e80f8ee3f22e 100644
--- a/contrib/binutils/bfd/elflink.c
+++ b/contrib/binutils/bfd/elflink.c
@@ -4356,38 +4356,9 @@ elf_link_add_object_symbols (bfd *abfd, struct bfd_link_info *info)
--no-add-needed is used. */
if ((elf_dyn_lib_class (abfd) & DYN_NO_NEEDED) != 0)
{
- bfd_boolean looks_soish;
- const char *print_name;
- int print_len;
- size_t len, lend = 0;
-
- looks_soish = FALSE;
- print_name = soname;
- print_len = strlen(soname);
- if (strncmp(soname, "lib", 3) == 0)
- {
- len = print_len;
- if (len > 5 && strcmp(soname + len - 2, ".a") == 0)
- lend = len - 5;
- else
- {
- while (len > 6 && (ISDIGIT(soname[len - 1]) ||
- soname[len - 1] == '.'))
- len--;
- if (strncmp(soname + len - 3, ".so", 3) == 0)
- lend = len - 6;
- }
- if (lend != 0)
- {
- print_name = soname + 3;
- print_len = lend;
- looks_soish = TRUE;
- }
- }
-
(*_bfd_error_handler)
- (_("undefined reference to symbol `%s' (try adding -l%s%.*s)"),
- name, looks_soish? "" : ":", print_len, print_name);
+ (_("%B: invalid DSO for symbol `%s' definition"),
+ abfd, name);
bfd_set_error (bfd_error_bad_value);
goto error_free_vers;
}