-
Notifications
You must be signed in to change notification settings - Fork 848
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
CMake: Use VERSION/SOVERSION for all shared libs, make glslang-default-resource-limits STATIC #2419
CMake: Use VERSION/SOVERSION for all shared libs, make glslang-default-resource-limits STATIC #2419
Conversation
Hi @akien-mga, Related bug: #2283 I'm not entirely sure about versioning the libraries aside from It's my plan to add presubmit checks to verify that the API / ABI is backwards compatible when landing changes without a major version bump. I've been scratching my head over how to best deal with these libs, and your expertise would be helpful here. I see a couple of options:
I had been thinking of (a) and then maybe someday (b). Happy to hear other thoughts and opinions though! |
5868365
to
642f31c
Compare
The change to use VERSION/SOVERSION has already been done in a different PR, but the change to make glslang-default-resource-limits STATIC has not and I think still has value, as does the refactoring to use |
This makes the cmake code a bit cleaner and more consistent.
642f31c
to
c2714ae
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thanks for picking this up! :) |
The first patch is taken from the Debian and Fedora packaging (https://salsa.debian.org/xorg-team/vulkan/glslang/-/blob/debian-unstable/debian/patches/glslang-default-resource-limits_staticlib.patch). I did not double check if it's correct for
glslang-default-resource-limits
to be static, but it does seem sensible.The second patch applies the new shared library versioning from
libglslang.so
to the other shared libraries built with glslang:glslang/glslang/CMakeLists.txt
Lines 165 to 170 in 2067d1a
The output of this PR is (on Linux, with
-DBUILD_SHARED_LIBS=ON
):CC @tjaalton @airlied to review as this will impact Debian and Fedora packaging (positively AFAIK your packaging policies :)).