From Fedora Project Wiki

< Changes

Revision as of 20:07, 25 January 2021 by Bcotton (talk | contribs) (Bringing this change back now that the 2.36 change was deferred to F35)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Binutils 2.35

Summary

Rebase the binutils package from version 2.34 to version 2.35.

Owner

  • Name: Nick Clifton [1]
  • Email: nickc@redhat.com


Current status


  • Targeted release: Fedora 34
  • Last updated: 2021-01-25
  • FESCo issue: #2423
  • Tracker bug: #1854613
  • Release notes tracker: #526

Detailed Description

Switch the binutils package from being based on the 2.34 release of the GNU binutils to being based on the 2.35 release. This release will bring in numerous bug fixes, as well as support for DWARF-5 format line number tables.

Feedback

Benefit to Fedora

The main benefit will be the bug fixes and the improvement to the linker and assembler.

Scope

  • Proposal owners:

Change the source parameter in the binutils.spec rpm and adjust the local patches to take account of the bugs that are now already fixed. This is a significant change to the underlying tools used to build Fedora and so there should be a mass rebuild in order for the changes to be noticed across the system.


  • Other developers: None
  • Release engineering: [2]

A mass rebuild will be required.

  • Policies and guidelines: No documents need to be updated.
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

The binutils are backwards compatible with previous releases, so no changes should be necessary.

How To Test

The binutils package does include its own set of testsuites which check basic functionality. The real test however is by rebuilding other packages which depend upon the binutils, or more likely, upon gcc. If these packages continue to work then the binutils update has not broken anything.


User Experience

The change should not be noticeable to the user.

Dependencies

This update has no hard dependencies on any other package. There are other packages that do depend upon the binutils however. Most notably gcc and redhat-rpm-config.


Contingency Plan

Revert to the 2.34 binutils as currently used in rawhide. This work can be done by me, should it prove necessary.

  • Contingency deadline: Beta freeze.
  • Blocks release? No

Documentation

This rebase brings with it many bug fixes, plus the following notable new features:

  • The assembler now supports the generation of DWARF-5 format line number tables.
  • Readelf will now display a visual indication when it is forced to truncate a symbol's name in order to fit into the 80-column display limit.
  • Readelf now also has a "lint" mode to enable extra checking of binary files.
  • The BFD based now linker has the ability to make specific symbols dynamic.
  • The linker's -Map command line option can be given a directory name and the linker will create a map file inside that directory.

Release Notes