diff mbox

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

Message ID 877frrii83.fsf@linaro.org
State New
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

Paolo Bonzini May 29, 2015, 4:29 p.m. UTC | #1
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.

Paolo
Michael Tokarev June 2, 2015, 5:48 a.m. UTC | #2
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?

Thanks,

/mjt
Alex Bennée June 2, 2015, 8:01 a.m. UTC | #3
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
Paolo Bonzini June 2, 2015, 2:08 p.m. UTC | #4
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.

Paolo
Alex Bennée June 3, 2015, 8:57 a.m. UTC | #5
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"