Post AtlEdWPg79MJKrcirQ by navi@social.vlhl.dev
(DIR) More posts by navi@social.vlhl.dev
(DIR) Post #AtlDrqQsNbuhWZRwKe by navi@social.vlhl.dev
2025-05-04T19:43:51.211012Z
0 likes, 0 repeats
autotools be like "checking <standardized libc function> works"why is it even checking that? if it doesn't work i have a broken system to begin with, it's a waste of time, processing, and power, every build for a stupid checkat *most* it should check if the function exists in libc.so and/or the headers, and that's it
(DIR) Post #AtlDrrBfZdLNrhLJGi by lanodan@queer.hacktivis.me
2025-05-04T19:55:01.229152Z
0 likes, 0 repeats
@navi POSIX stuff I could maybe get it but now that I'm digging in the standards even more regularly due to dayjob I'm also spotting some ISO C functions ;w;And yeah I think you should only check for things you can actually gracefully handle.
(DIR) Post #AtlEZyCcqsCKMfpByK by lanodan@queer.hacktivis.me
2025-05-04T20:03:00.831166Z
0 likes, 0 repeats
@navi Also for POSIX you could probably just ask getconf(1)/sysconf(3) for _POSIX_VERSION and _XOPEN_VERSION (XSI) and then just consider that the system is close enough to conforming (and adding checks for the rare cases where some aren't).(And auto*hell loves doing things like calling the non-standard --version output and pattern-matching it…)
(DIR) Post #AtlEdWPg79MJKrcirQ by navi@social.vlhl.dev
2025-05-04T19:57:55.090771Z
1 likes, 0 repeats
@mirabilos i'm trying to cross compile gentoo for arm and diffutils fails because `configure: error: cannot run test program while cross compiling` for strcasecmp...
(DIR) Post #AtlEuasel3BS77Jnuq by busterb@infosec.exchange
2025-05-04T20:04:25Z
0 likes, 0 repeats
@navi those checks are controlled by the package maintainer. You can make autoconf check for as much or as little as you want.When you are a package maintainer supporting weird broken systems or cross compiling, all assumptions go out the window.
(DIR) Post #AtlEuc5SGx11r6JXVI by navi@social.vlhl.dev
2025-05-04T20:05:27.087157Z
1 likes, 0 repeats
@busterb > When you are a package maintainer supporting weird broken systems or cross compiling, all assumptions go out the window.ah yes, and the solution is to not let me cross-compile at all: https://social.vlhl.dev/notice/AtlE72vNDvyxuI9Jfk(no, the solution is to let me tell the target system runs musl and thus complies with posix, so the checks are *always* unnecessary)
(DIR) Post #AtlEy4HZtlrsAfdF6u by phnt@fluffytail.org
2025-05-04T20:07:28.097626Z
0 likes, 1 repeats
@navi You can thank HP-UX for like half of the function and header checks, because it's infamous for shipping libc with half of the functions broken.
(DIR) Post #AtlFD4Js2kI8d5rCng by navi@social.vlhl.dev
2025-05-04T20:07:20.022047Z
1 likes, 0 repeats
@phnt (i am not in an hp-ux, autotools can *easily* check that)
(DIR) Post #AtlFXlM1kbLvtJjXmq by phnt@fluffytail.org
2025-05-04T20:13:55.109636Z
0 likes, 1 repeats
@navi It's not that easy since functions can be fixed in one release and broken in another. AIX also had a semi-working libc that had some functions, but they didn't conform to standards. It's a rabbit hole of compatiblity. And instead of writing a more intelligent build system, GNU opted just for a huge list of m4 macros that generate a shell script with barely working caching.I would also like a world where I don't have to deal with autotools, but that world does not exist yet. Especially for portable software.
(DIR) Post #AtlGTqJNTfsu3tBm6K by navi@social.vlhl.dev
2025-05-04T20:21:17.191927Z
1 likes, 0 repeats
@phnt i'm literally trying to build for linux-musl from linux-glibcwhatever version of AIX or HP-UX or whatever is broken, it won't be broken here. and> Especially for portable software.there's meson, where if upstream decided for this weird check, i could do `have_strcasecmp=yes` to a machine file and done, works!autotools is stuck in the 80s and it hurts me every time i have to touch it