pkgsrc bash-4.1 won't build

Max Herrgård herrgard at gmail.com
Mon Feb 8 04:41:00 PST 2010


Den 2010-02-08 09:00:02 skrev Steve O'Hara-Smith <steve at sohara.org>:
	Hi,

	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;
# endif

	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.

hi. rumko filed a pr for this:  
http://www.NetBSD.org/cgi-bin/query-pr-single.pl?number=42666. is it the  
same issue?

max





More information about the Users mailing list