-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
link musl libc statically #8585
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
dbcdbb6 to
89320c8
Compare
|
GNU testsuite comparison: |
89320c8 to
c1ea4a0
Compare
|
GNU testsuite comparison: |
In the context of musl, users are typically expecting statically-linked tools, as this is one of musl's strong suits and one of the biggest reasons to use it instead of glibc (that is not static-link-friendly for reasons). - remove the build-flag which was causing musl libc to be linked dynamically - re-add feat_os_unix_musl which was removed in uutils@21d5cef - exclude stdbuf from feat_os_unix_musl, since libstdbuf.so can't be built with a statically linked musl libc - add test_musl_no_dynamic_deps so that this does not regress in the future Fixes uutils#8572 Signed-off-by: Etienne Cordonnier <[email protected]>
c1ea4a0 to
e722250
Compare
|
GNU testsuite comparison: |
|
hello from a musl/linux based distribution dynamically linking rust packages, wouldn't it be better if it was called not that I think this change will affect us, since we can continue to use |
If I understood correctly, the naming "feat_os_unix_musl_static" makes sense. So you're saying that Alpine Linux is dynamically linking rust packages to musl libc and that you want a working stdbuf? Then we would need a way to toggle |
|
Originally it was mostly a comment against the idea that "musl build" means "static build". From what I can see, we don't have a problem with I had forgotten, though, that tests have been disabled for some time (due to file descriptor issues on our package builders, something we don't see in CI, will have to check if this is still an issue), so of course we have to skip the here introduced |
You should be getting a build error for stdbuf after this change, unless you're setting the rust flag to link musl dynamically yourself. |
|
it doesn't look like it, from the build log I linked to above, what am I missing? |
|
@omnivagant I guess something in your build environment provides the crt-static rust flag I mentioned. This is what I get with uutils coreutils 0.2.2 on Ubuntu 24.04: Also please note that as far as I can see, the file aports/community/uutils/APKBUILD does not install stdbuf, even in your branch uutils-0.2.0-r0 |
|
But we are not Ubuntu and, as I said, we patch Rust. The HackMD link show one of our efforts to resolve the issue with I don't know how you would infer from the In the Here is a more recent build log, where I allow tests to fail with At the bottom we would see content changes to the packages of the aport but, besides size differences, there are none. The only |
In the context of musl, users are typically expecting statically-linked tools,
as this is one of musl's strong suits and one of the biggest reasons to use it
instead of glibc (that is not static-link-friendly for reasons).
Fixes #8572