diff mbox

configure: don't apply -O2 if extra-cflags sets -O

Message ID 877frrii83.fsf@linaro.org
State Superseded
Headers show

Commit Message

Alex Bennée May 29, 2015, 2:14 p.m. UTC
Paolo Bonzini <pbonzini@redhat.com> writes:

> On 29/05/2015 12:56, Alex Bennée wrote:
>> If your trying to debug and want to force -O0 then don't allow the
>> configure script to try and set -O2. You can use --enable-debug but that
>> enables a lot more stuff by default.
>> 
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> ---
>>  configure | 5 ++++-
>>  1 file changed, 4 insertions(+), 1 deletion(-)
>> 
>> diff --git a/configure b/configure
>> index b707429..be1f354 100755
>> --- a/configure
>> +++ b/configure
>> @@ -4240,7 +4240,10 @@ if test "$gcov" = "yes" ; then
>>    CFLAGS="-fprofile-arcs -ftest-coverage -g $CFLAGS"
>>    LDFLAGS="-fprofile-arcs -ftest-coverage $LDFLAGS"
>>  elif test "$debug" = "no" ; then
>> -  CFLAGS="-O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 $CFLAGS"
>> +    if test "${EXTRA_CFLAGS#*-O}" = "$EXTRA_CFLAGS"; then
>> +        CFLAGS="-O2 $CFLAGS"
>> +    fi
>> +    CFLAGS="-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 $CFLAGS"
>>  fi
>>  
>>  ##########################################
>> 
>
> Why aren't EXTRA_CFLAGS applied _after_ CFLAGS instead of before?

You mean just do:


>
> Paolo

I guess at the time I was trying to be clean and avoiding multiple -O
calls. But I guess that will have the same effect.

Comments

Alex Bennée June 2, 2015, 8:01 a.m. UTC | #1
Michael Tokarev <mjt@tls.msk.ru> writes:

> 29.05.2015 19:29, Paolo Bonzini wrote:
>> On 29/05/2015 16:14, Alex Bennée wrote:
>>> You mean just do:
>>>
>>> diff --git a/configure b/configure
>>> index b707429..f13831a 100755
>>> --- a/configure
>>> +++ b/configure
>>> @@ -353,7 +353,7 @@ for opt do
>>>    ;;
>>>    --cpu=*) cpu="$optarg"
>>>    ;;
>>> -  --extra-cflags=*) QEMU_CFLAGS="$optarg $QEMU_CFLAGS"
>>> +  --extra-cflags=*) QEMU_CFLAGS="$QEMU_CFLAGS $optarg"
>>>                      EXTRA_CFLAGS="$optarg"
>>>    ;;
>>>    --extra-ldflags=*) LDFLAGS="$optarg $LDFLAGS"
>>>
>>> I guess at the time I was trying to be clean and avoiding multiple -O
>>> calls. But I guess that will have the same effect.
>> 
>> Yes, that.  Most other QEMU_CFLAGS assignments add at the beginning, so
>> I guess the remaining ones (including the --extra-cflags one) should too.
>
> So, what's the final version of this patch?

I can send the second patch but I'm wary about changing all instances to
QEMU_CFLAGS to append additional flags.

>
> Thanks,
>
> /mjt
Alex Bennée June 3, 2015, 8:57 a.m. UTC | #2
Paolo Bonzini <pbonzini@redhat.com> writes:

> On 02/06/2015 10:01, Alex Bennée wrote:
>> 
>> Michael Tokarev <mjt@tls.msk.ru> writes:
>> 
>>> 29.05.2015 19:29, Paolo Bonzini wrote:
>>>> On 29/05/2015 16:14, Alex Bennée wrote:
>>>>> You mean just do:
>>>>>
>>>>> diff --git a/configure b/configure
>>>>> index b707429..f13831a 100755
>>>>> --- a/configure
>>>>> +++ b/configure
>>>>> @@ -353,7 +353,7 @@ for opt do
>>>>>    ;;
>>>>>    --cpu=*) cpu="$optarg"
>>>>>    ;;
>>>>> -  --extra-cflags=*) QEMU_CFLAGS="$optarg $QEMU_CFLAGS"
>>>>> +  --extra-cflags=*) QEMU_CFLAGS="$QEMU_CFLAGS $optarg"
>>>>>                      EXTRA_CFLAGS="$optarg"
>>>>>    ;;
>>>>>    --extra-ldflags=*) LDFLAGS="$optarg $LDFLAGS"
>>>>>
>>>>> I guess at the time I was trying to be clean and avoiding multiple -O
>>>>> calls. But I guess that will have the same effect.
>>>>
>>>> Yes, that.  Most other QEMU_CFLAGS assignments add at the beginning, so
>>>> I guess the remaining ones (including the --extra-cflags one) should too.
>>>
>>> So, what's the final version of this patch?
>> 
>> I can send the second patch but I'm wary about changing all instances to
>> QEMU_CFLAGS to append additional flags.
>
> Sure, that's a separate change.

Cool, sent to qemu-trvial: "[PATCH] configure: postfix --extra-cflags to QEMU_CFLAGS"

>
> Paolo
diff mbox

Patch

diff --git a/configure b/configure
index b707429..f13831a 100755
--- a/configure
+++ b/configure
@@ -353,7 +353,7 @@  for opt do
   ;;
   --cpu=*) cpu="$optarg"
   ;;
-  --extra-cflags=*) QEMU_CFLAGS="$optarg $QEMU_CFLAGS"
+  --extra-cflags=*) QEMU_CFLAGS="$QEMU_CFLAGS $optarg"
                     EXTRA_CFLAGS="$optarg"
   ;;
   --extra-ldflags=*) LDFLAGS="$optarg $LDFLAGS"