diff options
Diffstat (limited to 'binutils')
-rw-r--r-- | binutils/ChangeLog | 6 | ||||
-rw-r--r-- | binutils/NEWS | 3 | ||||
-rw-r--r-- | binutils/objcopy.c | 3 |
3 files changed, 11 insertions, 1 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 3aec667..10ff167 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,9 @@ +2021-03-03 Alan Modra <amodra@gmail.com> + + PR 27493 + * objcopy.c (filter_symbols): Apply --weaken to undefined symbols. + * NEWS: Mention feature. + 2021-03-01 H.J. Lu <hongjiu.lu@intel.com> PR binutils/27486 diff --git a/binutils/NEWS b/binutils/NEWS index d66944e..461ddab 100644 --- a/binutils/NEWS +++ b/binutils/NEWS @@ -1,5 +1,8 @@ -*- text -*- +* objcopy --weaken, --weaken-symbol and --weaken-symbols now make undefined + symbols weak on targets that support weak symbols. + * Readelf and objdump can now display and use the contents of .debug_sup sections. diff --git a/binutils/objcopy.c b/binutils/objcopy.c index 041acea..99e6cad 100644 --- a/binutils/objcopy.c +++ b/binutils/objcopy.c @@ -1673,7 +1673,8 @@ filter_symbols (bfd *abfd, bfd *obfd, asymbol **osyms, if (keep) { - if ((flags & BSF_GLOBAL) != 0 + if (((flags & BSF_GLOBAL) != 0 + || undefined) && (weaken || is_specified_symbol (name, weaken_specific_htab))) { sym->flags &= ~ BSF_GLOBAL; |