Skip to content
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

C shared library - proper versioned SONAME and ABI stability #600

Open
ghenry opened this issue Apr 1, 2022 · 5 comments
Open

C shared library - proper versioned SONAME and ABI stability #600

ghenry opened this issue Apr 1, 2022 · 5 comments

Comments

@ghenry
Copy link
Collaborator

ghenry commented Apr 1, 2022

Hi @aberaud

I've been working on this https://salsa.debian.org/debian/opendht to add OPENDHT_C=ON to build libopendht-c.so for use with the SentryPeer deb https://mentors.debian.net/package/sentrypeer/ for me going to v1.4.0. After chatting to the Debian Mentor team on OFTC #debian-mentors IRC, they said I need to get this added upstream:

"proper versioned soname and ABI stability"

so I can package correctly.

I think this is something you can do with CMAKE and you are already doing it for the C++ lib?

Thanks,
Gavin.

@ghenry
Copy link
Collaborator Author

ghenry commented Apr 6, 2022

Good reading:

https://github.com/pvanhoof/dir-examples

@ghenry
Copy link
Collaborator Author

ghenry commented Apr 6, 2022

Thanks for the invite @aberaud

Going to try and work on this.

@aberaud
Copy link
Member

aberaud commented Apr 6, 2022

I know about it, however the Libtool’s versioning system is so ridiculous that until now I didn't bother implementing it.

Also at the time, the ABI was changing much faster than today so it didn't make sense to try keeping a stable ABI.

Now that things are more stable and that OpenDHT is packaged in many distros, it would definitely make sense to have a stable and versionned ABI.

@ghenry
Copy link
Collaborator Author

ghenry commented Apr 6, 2022

Makes perfect sense :-)

@ghenry
Copy link
Collaborator Author

ghenry commented Apr 14, 2022

Anything I can have a go on to set this? Then I can update the OpenDHT debs and my one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants