On Wed, 29 Apr 2026 10:43:23 -0000 (UTC)
Stuart Henderson <[email protected]> wrote:

> On 2026-04-29, vl <[email protected]> wrote:
> > New here, maybe this is a rookie mistake, so misc it is.
> >
> > I wanted to cross-compile (to a different OS and arch)
> > a certain nontrivial program using ports llvm.
> > During make it complained that stddef.h is missing.
> >
> > Investigations led me to two discoveries:
> >
> > 1. The following headers are missing man pages:
> >
> > float.h
> > inttypes.h
> > iso646.h
> > limits.h
> > stdarg.h
> > stdbool.h
> > stddef.h
> > sdtint.h
> > varargs.h
> >
> > (For our homegrown versions in /usr/include).
> > I guess this is a bug?
> > Ports man-pages-posix documents most of these.
> > Our versions differ.
> > And varargs is a gnu extension.  
> 
> We don't have manpages for headers.
> 
> Functions are documented, e.g. varargs -> va_start(3)
> 
> > 2. They are commented out in ports llvm PLIST.
> > I guess because they conflict with our homegrowns?
> > Various ports compilers have them:
> >
> > *-gcc-* cross architectures.
> > Smaller compilers like tcc and sdcc.
> > Most notably zig, being based off llvm-20.  
> 
> Those others are not used in places where a conflict would be a
> problem. The ports llvm compilers are used to compile software which
> needs to coexist with base.
> 
> > What would be the correct way to bring them back?
> > A separate package similar to libcxx?
> > Or a change in clang built-in includes is neccessary?
> > Or there is some other reasoning behind this?  
> 
> Don't know about this. Cross compile isn't a particularly high
> priority here, though..
> 
Thanks!
I guess there is not much need to document headers if you read them.
Oh well, I knew that I must have missed something, being a newbie.

On crosscompiling: I know, self-hosting arches and all.
Might still be useful for some emulators/, vmm experiments, docker.
It is a blocker for this particular port I try my hands at.
Currently I use headers extracted from llvm tarball, not ideal.

Reply via email to