-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
fts.h on Linux does not support _FILE_OFFSET_BITS=64 on glibc older than 2015 #3519
Comments
|
For the reference, test case should be pretty simple: |
|
See also: #3049. Unconditionally enabling this is broken on some platforms (Raspbian armhf) and hilariously broken on other platforms (Android 32-bit). We do want to fix this properly, but no one has come along who is willing to investigate the edge cases involved. Would you like to work on this? |
|
@nirbheek Is there a way to turn off this flag in builds ? If I am reading the docs correctly, it can not be turned off, so it should not be added to builds by default. I might look at it in my free time, but can not promise a fix at the moment. |
Yes, if you pass |
|
@nirbheek Thanks for the quick fix. |
|
Notes:
|
according to the manpage, it won't have any effect on 64bit system anyways. and musl always uses 64bit so this macro doesn't have any effect there either.
|
Bumping this, it bit my ass when converting a program from a different build system to meson. I think there should be a toggle at least - no other build system enforces it like that. |
Copying my comment from #1455.
Support for 64-bit operations in fts functions was added only a few years ago in glibc through this commit and there are systems that still ship older versions glibc (for e.g. opensuse). Unconditionally enabling this macro on all systems will cause compilation failures. There should be a feature test before this macro is enabled.
The text was updated successfully, but these errors were encountered: