On 01/08/2014 06:10 PM, Sergei Golubchik wrote:
Hi, Honza!
On Jan 08, Honza Horak wrote:
* change the versioning to be correct and debian-compatible, by having old symbols to appear under both libmysqlclient_16 and libmysqlclient_18 version.
I don't believe Debian will use Fedora-style versioning, it's an incompatible change after all. But they might want to use "correct-and-compatible" approach with symbol aliases and two versions per symbol.
Sergei, thanks a lot for both your advices, I'll try that. Anyway, do you happen to know from scratch how to define two versions for one symbol in the version script (what is the syntax)? I'm quite lost right now, but maybe you have experiences with it.
I didn't try it myself. But in the ld info pages they mention that it's possible. Info pages have an example, but it uses __asm__ and .symver, not a linker script. I think one can do the same with a linker script.
I've created a bug report with a patch that we're going to use in RHEL-7 probably. If anybody has some points/ideas for improvement, please, comment. https://mariadb.atlassian.net/browse/MDEV-5529 Honza