DragonFly users List (threaded) for 2010-02
pkgsrc bash-4.1 won't build
I've just done a pkgsrc update and fired off a build of my packages
only to find that bash fails to build because of this bit of code:
# if defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD,
# OpenBSD, Dra
gonFly, MacOS X, Cygwin */
if (result == 0)
/* Correct the invariants that fpurge broke.
<stdio.h> on BSD systems says:
"The following always hold: if _flags & __SRD, _w is 0."
If this invariant is not fulfilled and the stream is read-write but
currently writing, subsequent putc or fputc calls will write directly
into the buffer, although they shouldn't be allowed to. */
if ((fp->_flags & __SRD) != 0)
fp->_w = 0;
I can't get it to compile because of course FILE is unavailable,
but is the statement that DragonFly fpurge breaks an important invariant
correct ? If so fixing it in fpurge is of course trivial and I think
desirable - if not then I think bash should not be fixing it outside libc.
Steve O'Hara-Smith | Directable Mirror Arrays
C:>WIN | A better way to focus the sun
The computer obeys and wins. | licences available see
You lose and Bill collects. | http://www.sohara.org/