Retiring GNU objdump 2.17.50

Slawa Olhovchenkov slw at zxy.spb.ru
Mon Jan 13 01:40:21 UTC 2020


On Thu, Jan 09, 2020 at 10:31:55AM -0500, Ed Maste wrote:

> We currently install and use at most three tools from GNU binutils
> 2.17.50, depending on target architecture:
> 
> 1. as - assembler
> 2. ld - linker
> 3. objdump - diagnostic / information tool
> 
> I hope to retire all use of these obsolete binutils before FreeBSD 13.
> Here I'd like to discuss objdump. It is a diagnostic tool that
> provides information about object files, binaries and libraries. It's
> not required as a bootstrap tool (i.e., not needed to build FreeBSD
> world or kernel). It is required to build a limited number of ports,
> and is used by some developers.
> 
> I have a tracking PR for GNU objdump's retirement open in PR 229046.
> https://bugs.freebsd.org/229046.
> 
> There are two ways we can proceed with its retirement:
> 
> 1. Remove it without replacement. Ports that need objdump to build
> will have to depend on the binutils package/port, and users who wish
> to use it will have to install it.
> 
> Related links for this path:
> Ports exp-run: https://bugs.freebsd.org/212319
> Patch review: https://reviews.freebsd.org/D7338
> 
> 2. Install llvm-objdump in its place (perhaps via a symlink).
> llvm-objdump is broadly compatible in both command-line argument
> parsing and output format, but there are many small differences and
> it's not a full drop-in replacement.
> 
> Related links for this path:
> Patch review: https://reviews.freebsd.org/D18307
> 
> I am interested in feedback on the preferred approach. Installing
> llvm's objdump has the advantage that for most use cases everything
> will "just work", but may also introduce subtle failures.

====
     As long as pmcannotate relies on objdump(1) and pmcstat(8) to
     work, it
          will fail if one of them is not available.
====


More information about the freebsd-arch mailing list