Package: kfreebsd-kernel-headers
Severity: normal

It seems that some kfreebsd headers use exact-width integer types
(uint32_t and friends) but do not include stdint.h

This leads to build failures like this one 
https://buildd.debian.org/status/fetch.php?pkg=quotatool&arch=kfreebsd-amd64&ver=1%3A1.6.2-2&stamp=1549998565&raw=0

I'll work around it in my package by patching in the include by hand,
but this should probably be fixed, anyway.


As discussed on irc:

21:28 <ifvoid> anyone got an idea of why this build fails?  
https://buildd.debian.org/status/fetch.php?pkg=quotatool&arch=kfreebsd-amd64&ver=1%3A1.6.2-2&stamp=1549998565&raw=0
21:29 <jrtc27> uh I would guess that the mix of FreeBSD's ufs/ headers and 
glibc's sys/ is bad
21:29 <jrtc27> most likely ufs/ufs/quota.h is including sys/types.h and 
expecting uint32_t
21:30 <jrtc27> FreeBSD's sys/types.h gives intX_t and uintX_t, but glibc's only 
gives intX_t
21:30 <jrtc27> workaround: include stdint.h before including ufs/quota.h
21:32 <ifvoid> ah ok
21:32 <ifvoid> so it's not a bug in kfreebsd per se?
21:32 <jrtc27> it's a bug in the system headers
21:33 <jrtc27> the lazy solution would be to fix it in glibc and diverge from 
linux
21:33 <jrtc27> the better solution is probably to fix all the places that need 
uintX_t in FreeBSD's headers
21:33 <ifvoid> ok, I'll send a bug report about that
21:34 <jrtc27> feel free to just paste this discussion in the bug report, it'll 
be enough to remind me
21:34 <ifvoid> ok



-- System Information:
Debian Release: buster/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.19.0-2-amd64 (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Reply via email to