Am Sat, 05 Nov 2022 12:07:57 +0000 schrieb Witold Baryluk <witold.bary...@gmail.com>:
> trying to overwrite shared '/usr/include/mpg123.h', which is > different from other instances of package libmpg123-dev:i386 Oh, dear. I broke multiarch headers again. By trying to fix BSDs that don't react to _FILE_OFFSET_BITS at all, I introduced a build dependency in the header. Again. Dammit. For i386, you want largefile names. for x86-64, you don't. This is about #if !defined(MPG123_LARGESUFFIX) && 1 or #if !defined(MPG123_LARGESUFFIX) && 0 (the value of @BUILD_NO_LARGENAME@ in mpg123.h.in). The 0 or 1 is determined by AC_SYS_LARGEFILE detecting largefile-sensitivity or not. Linux/i386 is sensitive, Linux/x86-64 is not. So either you need to scope the mpg123.h into the multiarch sub-directories or it needs enhancement to figure out largefile-sensitivity from macros alone. There's a reason this is no simple macro hack but figured out at configure-time. Since we do have off_t in the API (an error I regret but which I am committed to for backwards compatibility), I guess the API and thus the header _is_ architecture-specific, as not just the size of off_t varies, but even the state of it having a fixed size at all.