Comments on pmake diffs for building on Linux

Robert Watson rwatson at
Tue Mar 4 15:45:42 UTC 2008

On Tue, 4 Mar 2008, Giorgos Keramidas wrote:

>> In most ports of FreeBSD parts to Linux that I've seen, the preferred 
>> solution has to been to bring the entire FreeBSD queue.h with you rather 
>> than relying on the native Linux queue.h.  This is what we do for OpenBSM, 
>> for example; this also helps out when you get to Mac OS X, Solaris, etc, 
>> where all the queue.h's continue to vary in subtle ways.  This depends a 
>> fair amount on a lack of header pollution in the OS's own include files, of 
>> course...
> Fortunately, in Solaris where I am testing the import of sys/cdefs.h and 
> sys/queue.h today, things seem to be `ok'.  Just importing the two headers 
> at seems to have moved 
> things one step closer towards building everything on Solaris:
> Now off to the next little annoyance.  Building with Sun Studio on Solaris 
> 10, in my test machine at home, stops at:
> The next part, about the missing errx() functions on Solaris is going to be 
> tonight's fun.  If there are too many missing functions, it may be worth 
> adding a static `libcompat' with copies of just the functions we need to run 
> BSD make on non-BSD hosts.

It's beginning to sound like it would be really nice to have an 
autoconf'd/automake'd version of our make to drop onto Linux, Solaris, etc, 
etc, systems in order to bootstrap our compile.  I share Warner's reluctance 
to add autoconf parts to our native build, but having 'bsdmake' as a starting 
point is useful, and would put those other platforms more at parity with Mac 
OS X as a starting point (probably ahead due to more accessible native build 
tools).  I'm a bit surprised there isn't already a Linux 'bsdmake' package 
floating around...

(When I say 'nice' above, I mean it in the normal autoconf sense of the word 
'nice', so don't take that the wrong way!)

Robert N M Watson
Computer Laboratory
University of Cambridge

More information about the freebsd-hackers mailing list