mirror of
https://github.com/openharmony/third_party_elfutils.git
synced 2026-07-18 17:24:31 -04:00
f9fc50c3eced243c0648fb0fbfe2c9877c25e1e4
With GCC 5 there might be a .rela.plt section with SHF_INFO_LINK set. Buggy binutils objdump might strip it from the section in the debug file. Ignore such differences for relocation sections and put the flag back if necessary. Also improve the error message a little by only discarding the already matched sections if there is an prelink undo section. Otherwise we will report all sections as not matching if the file wasn't prelinked instead of just the non-matching sections. New testfiles generated by gcc5 and binutils objdump added. Signed-off-by: Mark Wielaard <mjw@redhat.com>
Fundamental design decision: - the sizes of external and internal types are assumed to be the same. This leaves byte ordering aside. While assuming this the code can be greatly simplified and speed increases. Since no change violating this assumption is in sight this is believed to be a worthwhile optimization. - the ABI of the backend modules is not guaranteed. Really, no guarantee whatsoever. We are enforcing this in the code. The modules and their users must match. No third-party EBL module are supported or allowed. The only reason there are separate modules is to not have the code for all architectures in all the binaries. - although the public libraries (libasm, libdw) have a stable API and are backwards ABI compatible they, and the elfutils tools, do depend on each others internals, and on internals of libelf to provide their interfaces. So they should always be upgraded in lockstep when packaging the tools and libraries separately. For one example of how to do that, see the config/elfutils.spec.
Description
Languages
C
70.8%
Shell
22.6%
C++
3.3%
Makefile
1.4%
M4
1%
Other
0.8%