Consolidate the 2.0 and 2.1 nodes into a new 3.0 node.
In subsequent patches for releasing SFrame V3, libsframe APIs will be
affected. A non-exhaustive list of noteworthy changes are mentioned
next.
Some existing APIs (breaking binary compatibility) by adding an
additional arg to these:
- sframe_fre_get_ra_offset
- sframe_fre_get_fp_offset
- sframe_fre_get_cfa_offset
Change of argument type:
- sframe_find_fre
The behaviour of some APIs will change:
- sframe_encoder_write now writes out V3.
And lastly removal of two APIs:
- sframe_decoder_get_funcdesc
- sframe_encoder_add_funcdesc
Above make this release of the library binary incompatible with previous
release, hence a version bump and new version node 3.0.
Reviewed-by: Jens Remus <jremus@linux.ibm.com>
libsframe/
* libsframe.ver: Create a new 3.0 node. Remove the 2.0 node.
* libtool-version: Bump the so version.
Remove LIBSFRAME_1.1, LIBSFRAME_1.0 nodes and add a new LIBSFRAME_2.0
node (non-inheritance version) to create new global versioned symbols.
Also announce libsframe.so.2 in NEWS.
New APIs:
sframe_decoder_get_flags;
sframe_decoder_get_offsetof_fde_start_addr;
sframe_encoder_get_flags;
sframe_encoder_get_offsetof_fde_start_addr;
Removed APIs: (already deprecated since X-2 release)
sframe_get_funcdesc_with_addr;
APIs with changed semantics:
sframe_decoder_get_funcdesc_v2;
sframe_encoder_add_funcdesc_v2;
sframe_encoder_write;
lisbframe/
* libsframe.ver: Define new LIBSFRAME_2.0.
* libtool-version: Bump the 'current' numeral to indicate a binary
incompatible release.
include/
* sframe-api.h (sframe_get_funcdesc_with_addr): Remove
deprecated interface.
libsframe/
* sframe.c (sframe_get_funcdesc_with_addr): Likewise.
binutils/
* NEWS: Announce new versioned release of libsframe.
lisbframe was first released with Bintuils 2.40. As the library
evolves, some changes will break the ABI. Add library versioning for
users to manage these changes.
For the next release of the library (libsframe.so.1), incompatible ABI
changes are planned. These will include:
- Deprecation of some APIs, like sframe_get_funcdesc_with_addr (), and
- Change in the contract of some APIs (e.g., return type, behavior).
In libtool-version, set the current to 1 to prepare for the upcoming
release. Reset revision and age to 0.
Add libtool-version file to EXTRA_DIST.
libsframe/
* Makefile.am: Use libtool versioning.
* Makefile.in: Regenerated.
* libtool-version: New file.