-
Notifications
You must be signed in to change notification settings - Fork 84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upstream .so name versioning? #32
Comments
Thanks for pointing this out. I think we need some CI tests to check/ensure ABI compatibility first, i will work on this. We can build baresip and retest with a released shared libre.so and run these prebuilt versions against new libre.so builds. If something breaks, without noticing it, we can decide how to deal with it (bump major/soname version or rewrite code). |
Thanks for replying! https://fedoraproject.org/wiki/How_to_check_for_ABI_changes_with_abidiff suggests |
(Basically the same as at creytiv/re#249, but it seems that this is the new home of re)
As of writing, there doesn't seem to be proper upstream .so name versioning in re. Yes, I'm aware there is something like
LIB_SUFFIX=.so.0
, but this unfortunately has nothing to do with proper .so name versioning, as the SONAME is stilllibre.so
ratherlibre.so.0
. Yes, even this can be worked around by passing some arguments likeSH_LFLAGS="-shared -Wl,-soname,libre.so.0"
, but this still doesn't let downstreams know whether the old and the new version are ABI compatible or not, thus this should be IMHO really handled by upstream.Quoting from section "SONAME handling" from https://docs.fedoraproject.org/en-US/packaging-guidelines/#_downstream_so_name_versioning:
Please note that this issue is also meant as very kind try to convince you as upstream to start versioning your .so library (as our Fedora Packaging Guidelines request).
The text was updated successfully, but these errors were encountered: