Page MenuHomeFreeBSD

Allow ELF Tool Chain elfcopy to be installed as objcopy
ClosedPublic

Authored by emaste on Jun 22 2015, 8:23 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Dec 16, 5:53 AM
Unknown Object (File)
Sat, Dec 7, 2:58 PM
Unknown Object (File)
Thu, Nov 28, 8:49 PM
Unknown Object (File)
Thu, Nov 28, 8:05 PM
Unknown Object (File)
Nov 2 2024, 11:49 AM
Unknown Object (File)
Oct 25 2024, 11:45 PM
Unknown Object (File)
Oct 25 2024, 11:44 PM
Unknown Object (File)
Oct 25 2024, 11:44 PM

Details

Summary

ELF Tool Chain elfcopy is nearly a drop-in replacement for GNU objcopy (but does not currently support PE output, needed for building x86 UEFI bits). Add a make.conf knob to allow installing it as objcopy and set it by default for aarch64 only, where we don't have a native binutils.

This is WIP for comment and testing.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

emaste retitled this revision from to Allow ELF Tool Chain elfcopy to be installed as objcopy.
emaste updated this object.
emaste edited the test plan for this revision. (Show Details)
emaste added a reviewer: andrew.
emaste added a subscriber: freebsd-toolchain-list.

Why not always build elfcopy and just make a hardlink objcopy if MK_ELFCOPY_AS_OBJCOPY is set?

That will make elfcopy always available to users

In D2887#56056, @bapt wrote:

Why not always build elfcopy and just make a hardlink objcopy if MK_ELFCOPY_AS_OBJCOPY is set?

That will make elfcopy always available to users

That's a possibility, although I think I'd prefer to (eventually) just install elfcopy as objcopy on all platforms, ensuring that it supports all of the options we care about. We haven't yet shipped elfcopy in a release.

bapt added a reviewer: bapt.
This revision is now accepted and ready to land.Jun 22 2015, 9:31 PM
This revision was automatically updated to reflect the committed changes.
tools/build/mk/OptionalObsoleteFiles.inc
1656 ↗(On Diff #6386)

Oops, missing ${ } here