This is an archive of the discontinued LLVM Phabricator instance.

libcxx: accept both GNU and ELF Tool Chain readelf format
ClosedPublic

Authored by emaste on Dec 19 2022, 9:15 AM.

Details

Summary

In libcxx ABI list tooling. ELF Tool Chain provides alternatives to most GNU binutils tools, currently used in FreeBSD.

Sponsored by: The FreeBSD Foundation

Diff Detail

Event Timeline

emaste created this revision.Dec 19 2022, 9:15 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 19 2022, 9:15 AM
Herald added a subscriber: arichardson. · View Herald Transcript
emaste requested review of this revision.Dec 19 2022, 9:15 AM

We will want to update ELF Tool Chain readelf to match GNU readelf's output, but have existing FreeBSD releases that will produce the current style.

emaste added inline comments.Dec 19 2022, 9:47 AM
libcxx/utils/libcxx/sym_check/extract.py
186–187

ELF Tool Chain readelf does not (currently) emit a blank line before the heading.

philnik set the repository for this revision to rG LLVM Github Monorepo.Dec 19 2022, 1:46 PM
Herald added a project: Restricted Project. · View Herald TranscriptDec 19 2022, 1:46 PM
Herald added a reviewer: Restricted Project. · View Herald Transcript
philnik accepted this revision.Dec 19 2022, 1:51 PM
philnik added a subscriber: philnik.

Please make sure to have the repo set. Otherwise we don't get notifications on the patches.

LGTM assuming you checked locally that this actually fixes the problem.

libcxx/utils/libcxx/sym_check/extract.py
186–187

Could you add this as a comment in the code?

This revision is now accepted and ready to land.Dec 19 2022, 1:51 PM
emaste updated this revision to Diff 484122.Dec 19 2022, 3:47 PM
emaste edited the summary of this revision. (Show Details)

Comment moved into code block. With this change generate-cxx-abilist functions:

$ ninja generate-cxx-abilist
[1/1] Generating the ABI list file for configuration x86_64-unknown-freebsd.libcxxrt.v1.stable.exceptions.new

and the output looks broadly reasonable.

This revision was landed with ongoing or failed builds.Dec 20 2022, 6:41 AM
This revision was automatically updated to reflect the committed changes.