[OE-core] [PATCH] Yocto: qt4: Let qmake control some compiler/linker flags

Otavio Salvador otavio at ossystems.com.br
Tue Aug 26 01:33:59 UTC 2014


On Fri, Aug 15, 2014 at 5:53 PM, Marek Vasut <marex at denx.de> wrote:
> On Monday, August 11, 2014 at 02:49:16 AM, Otavio Salvador wrote:
>> Hello Marek,
>>
>> On Thu, Aug 7, 2014 at 12:25 PM, Marek Vasut <marex at denx.de> wrote:
>> > In the case of building an Qt application outside of the Yocto
>> > build system, we want to make sure that a "debug" configuration
>> > of the application does contain debug symbols and is has the
>> > compiler optimalization unset. On the other hand, we want to
>> > have a "release" build which does not contain the debug symbols
>> > and has the compiler optimalization turned on.
>> >
>> > The OE_QMAKE_* flags serve to pass all kinds of flags into the
>> > qmake-generated Makefile. Currently, we set OE_QMAKE_CFLAGS to
>> > be ${CFLAGS} and ditto for CXXFLAGS and LDFLAGS in the SDK
>> > toolchain environment script. This poses a problem, since the
>> > CFLAGS can contain optimization options (-O*) and even flags to
>> > produce debugging info (-g). The LDFLAGS may also contain some
>> > harmful flags.
>> >
>> > The easy way out is to let qmake's army of configuration files
>> > handle the proper configuration of CFLAGS, CXXFLAGS and LDFLAGS
>> > for the generated Makefile and don't interfere with qmake's
>> > decisions by adding arbitrary flags. This patch completely
>> > scrubs OE_QMAKE_C{,XX}FLAGS and leaves only harmless flags in
>> > OE_QMAKE_LDFLAGS. With this patch, the behavior is as it is
>> > explained in the first paragraph.
>> >
>> > Signed-off-by: Marek Vasut <marex at denx.de>
>> > Cc: Eric Bénard <eric at eukrea.com>
>>
>> I understand your problem however I don't think the solution you found
>> is optimal. It does fix the issue you refer in the commit log however
>> it also makes difficult for user to "reuse" default SDK flags to test
>> the application.
>
> What solution do you propose then?
>
> The default SDK flags effectively disallow qmake to operate correctly -- that
> is, to control the compiler/linker flags.

I understand your issue and I agree we need to address this somehow,
however we should not regret the usability we had before.

This remain unnoticed for such long time means people didn't notice
the lack of this so we need to find a way to support the debugging
without losing the use of SDK configured flags to release builds.

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750



More information about the Openembedded-core mailing list