Commit Graph

3 Commits

Author SHA1 Message Date
Indu Bhagat
6f68bf969f [SFrame-V3] libsframe: bump so version to libsframe.so.3.0.0
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.
2026-01-15 17:02:24 -08:00
Indu Bhagat
6a959b1270 libsframe: bump version to 2.0
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.
2025-07-12 01:09:17 -07:00
Indu Bhagat
b91671f3f9 libsframe: add library versioning
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.
2023-06-27 12:01:56 -07:00