meson.build: add darwin/macOS dylib versioning#193
Conversation
|
|
||
| # ABI compatibility version should be that used for last non-meson release, 0.7.1 | ||
| raqm_ver_compat = 701 | ||
| raqm_ver_current = raqm_ver_major * 10000 + raqm_ver_minor * 100 + raqm_ver_micro |
There was a problem hiding this comment.
I don’t understand the significance of the last non-meson release here. All releases should be API and ABI-compatible.
There was a problem hiding this comment.
So raqm_ver_compat should be at 0?
There was a problem hiding this comment.
So
raqm_ver_compatshould be at 0?
No, that only works if older versions used zero, but they didn't.
There was a problem hiding this comment.
I really still don’t understand any of this. What part of autotools build was setting this dylib versioning? We should replicate the same behavior, not hard-code a specific version.
There was a problem hiding this comment.
I really still don’t understand any of this. What part of autotools build was setting this dylib versioning? We should replicate the same behavior, not hard-code a specific version.
We'd have to go back and look at the precise behavior of the autosools build to know for sure. But what I can say, is that one of the last releases set the version to that value.
So I agree, some research is needed.
There was a problem hiding this comment.
I really still don’t understand any of this. What part of autotools build was setting this dylib versioning?
I think it's libtool: https://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html
When the project migrated to Meson, Darwin/macOS dylib versioning was lost. This restores that functionality, ensuring that dependent binaries aren't broken.
In terms of the dylib compatibility version, it's set to 0.7.1. I believe that matches with what was used for 0.7.2, when built via AutoTools.