Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 08 May 2008 01:19:52 +0200
From:      Kris Kennaway <kris@FreeBSD.org>
To:        Alfred Perlstein <alfred@freebsd.org>
Cc:        src-committers@freebsd.org, cvs-all@freebsd.org, John Baldwin <jhb@freebsd.org>, cvs-src@freebsd.org
Subject:   Re: cvs commit: src/include stdio.h src/lib/libc/stdio clrerr.c feof.c ferror.c fileno.c getc.c getchar.c local.h putc.c putchar.c xprintf.c
Message-ID:  <48223918.4010001@FreeBSD.org>
In-Reply-To: <20080507231444.GF32532@elvis.mu.org>
References:  <200805051603.m45G3rrN089219@repoman.freebsd.org> <200805051637.43073.jhb@freebsd.org> <20080507064013.GU32532@elvis.mu.org> <200805071111.39938.jhb@freebsd.org> <20080507231444.GF32532@elvis.mu.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Alfred Perlstein wrote:
> * John Baldwin <jhb@freebsd.org> [080507 10:28] wrote:
>> On Wednesday 07 May 2008 02:40:13 am Alfred Perlstein wrote:
>>> * John Baldwin <jhb@freebsd.org> [080505 13:47] wrote:
>>>> On Monday 05 May 2008 03:24:17 pm Peter Jeremy wrote:
>>>>> On Mon, May 05, 2008 at 02:59:28PM -0400, John Baldwin wrote:
>>>>>> On Monday 05 May 2008 02:40:03 pm Alfred Perlstein wrote:
>>>>>>> I'm _not_ objecting, just interested in why.
>>>>>>>
>>>>>>> Any references to discussions on this?  Are we now safe for
>>>>>>> future compat or something?
>>>>>> Having FILE be opaque broke just about every 'configure' script on the 
>>>>>> planet. :(
>>>>> Either autoconf and friends are _intended_ as impediments to
>>>>> portability or they are completely broken by design.
>>>> It appears that autoconf only believes a type is real if you can typedef 
>> it to 
>>>> another type, cast 0 to a valid pointer to the new typedef'd type, and do 
>> a 
>>>> sizeof() of the typdef'd type.  The last is where having an opaque type 
>>>> breaks down for scripts that want to make sure FILE is a real type.
>>>
>>> Oh c'mon!  we're going to revert this needed fix just because of
>>> autoconf?
>> Pretty much.  It appears that FILE has been public for so long that there is a 
>> lot of code that assumes it can use it.
> 
> I don't think that's really fair, stdio has had adequate accessors
> for a long time, if AN(*) application does the wrong thing for long enough
> it does not make it right.
> 
> (*) Important note: when considering autoconf scripts, most of the
> scripts test's come from a repository of scripts or are carbon
> copied from each other.  Saying that "all ports are broken" is not
> true, it is a single suite of configuration scripts that are broken
> and need fixing, then we will be OK.
> 
> We have precident here of hacked autoconf and ports build logic
> that automatically "seds" various things in scripts.  I think
> a few knobs can fix this for us.

The offer was a serious one.  If you're interested in evaluating the 
impact of this change on ports then just say the word.

Kris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48223918.4010001>