This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [fixincludes] Fix <iso/math_c99.h> signbit on Solaris
- From: Rainer Orth <ro at CeBiTec dot Uni-Bielefeld dot DE>
- To: Bruce Korb <bkorb at gnu dot org>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, "Joseph S. Myers" <joseph at codesourcery dot com>
- Date: Wed, 28 Jan 2015 15:12:12 +0100
- Subject: Re: [fixincludes] Fix <iso/math_c99.h> signbit on Solaris
- Authentication-results: sourceware.org; auth=none
- References: <CAKRnqNLoVJ6hBKwWR9gA78mCgM+jH4eNc7L=scL9y87FCH19Wg at mail dot gmail dot com>
Hi Bruce,
this thread is more than half a year old now, but with the GCC 5 release
approaching, we should reach some conclusion.
> On Tue, Jul 1, 2014 at 4:22 AM, Rainer Orth <ro@cebitec.uni-bielefeld.de> wrote:
>>> It's not yet in autogen 5.9: I've diffed the fixincl.x generated with my
>>> original patch and the amended one and those backslashes after the
>>> leading tab are still there.
>
> 5.9 is 7 years old now. However, I just looked up the change. I did
> it 2 years ago.
> It would mean bumping the requirement to 5.17.4, from a mere 1 year ago.
>
>> I've now managed to build autogen 5.18.3 on Solaris 11, but still there
>
> Please send your "managed to build" stories.
> If they are not Guile related, I can try to clean 'em up.
> Building Guile is not for the feint of heart.
>
>> is some trouble: with the following fix
>>
>> /*
>> * Newer Solaris 10/11 GCC signbit implementations cause strict-aliasing
>> * warnings.
>> */
>> fix = {
> [...]
>> };
>>
>> the test passes (not ran a bootstrap yet). But I had to make two
>> unexpected changes:
>>
>> * In the second c_fix_arg, all \t in charsets had to be replaced by
>> literal TABs, otherwise they would occur as \\t in fixincl.x.
>
> I made the "here string" largely similar to the shell "here doc",
> excepting there is no such thing as shell expansions (${var} stuff)
> and I (now) erase that backslash-before-whitespace thingy.
>
>> * In test_text, I had to backslash-escape the trailing \, otherwise they
>> were eaten up. Whether or not I do this makes no difference for the
>> generated fixincl.x, but only with the escaping does make check pass.
>
> Right. It likely gets massaged by a shell script somewhere.
> I'd need to look up how "test-text" gets used in the template.
Did you have a chance to do that yet?
>>> I'm currently fighting to build autogen 5.18.3 and all its dependencies.
>>> Trouble is, if we do require a version newer than 5.5.4 as documented in
>>> install.texi, fixincludes make check will suddenly start to fail for
>>> those whose autogen version isn't recent enough.
>
> Every decade or so it ought to be possible to update by a few years.
>
>> This is certainly something that needs to be decided: if we go this
>> route, we should bump the autogen version requirement in install.texi
>> (to whatever is necessary to support the TAB\ magic).
>
> I think Debian stable has moved up to 5.18.2, if I am remembering
> correctly. It's a year old (last fall). I think that is old enough to
> have been spread around by now.
It's your call ultimately.
Thanks.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University