This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] libstdc++ testsuite cxxflags


On 11/21/13, 5:42 AM, Jonathan Wakely wrote:
> On 20 November 2013 23:57, Cesar Philippidis wrote:
>> On 11/20/13, 1:46 PM, Jonathan Wakely wrote:
>>> On 20 November 2013 21:44, Jonathan Wakely wrote:
>>>> On 29 October 2013 15:37, Cesar Philippidis wrote:
>>>>> This patch addresses two issues with the libstdc++ testsuite:
>>>>>
>>>>>   * duplicate "-g -O2" CXXFLAGS
>>>>>   * missing "-g -O2" for remote targets
>>>>>
>>>>> The duplicate "-g -O2" flags is a result of testsuite_flags.in using
>>>>> build-time CXXFLAGS and proc libstdc++_init using the environmental
>>>>> CXXFLAGS, which defaults to its build-time value. This patch prevents
>>>>> testsuite_flags.in from using build-time CXXFLAGS.
>>>>
>>>>> Certain remote targets require a minimum optimization level -O1 in order
>>>>> to pass several atomics built-in function tests. This patch ensures
>>>>> cxxflags contains "-g -O2" at minimum when no other optimization flags
>>>>> are specified. The testsuite used to set those flags prior to Benjamin's
>>>>> patch to remove duplicate cxxflags here
>>>>> <http://gcc.gnu.org/ml/gcc-patches/2012-03/msg01572.html>.
>>>>>
>>>>> Is this OK for trunk? If so, please apply (I don't have commit rights).
>>>>
>>>> I think so ... although I'm not sure I've got my head round the
>>>> effects in all cases!
>>>
>>> Sorry, I didn't realise gmail thought Ctrl-Enter meant send. I meant
>>> to ask a couple of questions about it ...
>>>
>>> Is removing EXTRA_CXX_FLAGS necessary too?
>>
>> I looked at it again, and it seems to be OK to leave it in there.
>>
>>> For remote targets, if CXXFLAGS is set in the env can -g still end up missing?
>>
>> No, but CXXFLAGS isn't necessarily set in the env. Specifically, if you
>> run the testsuite without using the makefile, the CXXFLAGS may not be set.
>>
>> I revised the patch to preserve @EXTRA_CXX_FLAGS@. I also append the
>> '-g' flag with '-O2', since the '-g' isn't as important in the testsuite
>> as '-O2'.
>>
>> Is this patch OK? Is so, please commit it because I do not have an svn
>> account.
> 
> I've been playing around with this patch and CXXFLAGS further, and I'm
> not sure about it now.
> 
> What harm do the duplicate flags do? If you want different flags to be
> used when running the testsuite you can set CXXFLAGS, which will come
> later on the command-line and so take precedence. However, if we
> remove "-g -O2" from CXXFLAGS_config and you use CXXFLAGS=-DFOO when
> running the testsuite then after this change you won't get the same
> result, you'd have to change to use CXXFLAGS="-g -O2 -DFOO"
> 
> Is that really what we want?

I see your point. Well, if you want to override CXXFLAGS during testing,
it's probably better to use different environmental variable altogether
and include '-g -O2' as part of the base CXXFLAGS. The attached patch
does that with LIBSTDCXX_CXXFLAGS.

That said, I don't have a strong opinion on the matter, so if you want
to use the libstdcxx_testsuite-b.diff patch without the Makefile.in
changes, that's fine with me.

Cesar

Attachment: libstdcxx_testsuite-c.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]