-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Fix conan.tools.files.collect_libs() not handling files with multiple file extensions. #17816
base: develop2
Are you sure you want to change the base?
Conversation
… file extensions. Libraries on Linux often have a version number behind their file extension. E.g. `libnode.so.108`.
Hi @JulianGro Thanks for your contribution! Some quick feedback:
|
Thank you for your feedback @memsharded. I am a newbie when it comes to Conan, so it is highly appreciated.
Problem with that approach is that Is Personally, I feel like finding |
That is unexpected. You can check in
I am not fully sure, I think CMake |
As far as I can tell, both directories are correctly defined.
Not by libnode's build system at least. I looked at how Debian packages it, and they create the symlink in their own code later; Not sure if that matters though. |
That makes sense, as it conforms more to standard practices, it looks like the build system is lacking the creation of such symlinks, which are expected by other parts of the ecosystem. I think it would make sense that the Conan |
Sounds reasonable to me. |
Libraries on Linux often have a version number behind their file extension. E.g.
libnode.so.108
. In our case, we are building libnode downstream and it automatically gets its version appended by its build system. I felt like changing the behaviour of collect_libs() to include files like that can save someone else some headache, since people might expect collect_libs() to just find the libraries regardless of them having weird names. In our case, it took us an entire week to figure this out, since it only caused visible errors at the end of our entire build process.Changelog: (Fix): Fix conan.tools.files.collect_libs() not handling .so files with multiple file extensions, such as libnode.so.108.
Docs: https://github.com/conan-io/docs/pull/XXXX Todo
develop
branch, documenting this one.