-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
ZlibSystemDependency: pass libtype to clib_compiler.find_library #11569
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
Conversation
|
@dcbaker Do you have any idea what is up with the rust link errors this PR is causing? I'm completely confused here. |
|
I can't reproduce the failure locally, so I'm wondering if it's been fixed in the mean time (also the logs are gone). I've rebased this on main, so let's see how it looks now |
|
Unfortunately the error is still there, but now you can see it in the logs. :) |
|
Oh boy, that's a legit bug that exists right now. We don't proper propogate the links out to the rust targets from external deps. You can replicate this by installing only a static zlib and using any dependency method. |
|
Oh, and it gets better. Sigh |
Rustc expects to be provided both a search path `-L`, and a link arg `-l kind=libname`, but we don't handle that correctly. Because we combine -L and -l arguments from pkg-config the backend must rematerialize the -L and -l split. We currently don't do this for static archives.
Makes it stop reporting that it found a static zlib on Solaris which does not ship a static library file for libz, and thus allows "test cases/rust/13 external c dependencies" to pass. Fixes mesonbuild#10906
|
I've added a patch that will hopefully fix this (it fixes my system at least). I think both of these deserve a backport, but if someone things the zlib one doesn't we can merge that separately so it can be backported |
|
I'm happy to backport them both, unless someone else objects. |
|
Hm, CI started to fail in master after this PR, any chance it's related? https://github.com/mesonbuild/meson/actions/runs/6276237334/job/17045465367 |
|
I cannot see how it would be related, and it passed in this PR itself. |
|
yeah, seems completely unrelated to all our changes tbh. |
|
It is most likely because homebrew updated to LLVM 17, cf. @carlocab Probably, meson has issues detecting LLVM 17 in all cases and we are simply seeing the errors on homebrew first. |
|
Ah, apparently it was fixed by adding 17 to the names of possible llvm-config programs. Yay! |
Makes it stop reporting that it found a static zlib on Solaris which does not ship a static library file for libz, and thus allows "test cases/rust/13 external c dependencies" to pass.
Fixes #10906
On Solaris 11.4.57, this changes the results of that rust test case from:
to