Re: [PATCH 1/3] rt-tests: Support user supplied CFLAGS and LDFLAGS
From: Darren Hart <hidden>
Date: 2012-03-21 19:12:45
On 03/21/2012 12:10 PM, Denys Dmytriyenko wrote:
On Tue, Mar 20, 2012 at 05:10:48PM -0700, Darren Hart wrote:quoted
On 03/20/2012 04:58 PM, John Kacur wrote:quoted
On Tue, Mar 20, 2012 at 8:05 PM, Darren Hart [off-list ref] wrote:quoted
Accept user supplied CFLAGS and LDFLAGS, overwriting the Makefile supplied versions. This can cause the build to fail if the user does not provide at least what the Makefile defines, but so be it. Signed-off-by: Darren Hart <redacted> CC: Clark Williams <redacted> CC: John Kacur <jkacur@redhat.com> CC: Denys Dmytriyenko <redacted> ---I was just wondering what you need LDFLAGS for? Chatting with Darren on IRC, it seems like you're using -Wl to pass options via gcc to the linker, and we don't have loadable libs either. Maybe you could resend the patch with just the CFLAGS change until we have a real world reason for LDFLAGSDenys, Am I missing a reason why we need LDFLAGS? With the current Makefile. we could just add anything we want to CFLAGS in a pinch anyway...Darren, From OE-Core config files: LINKER_HASH_STYLE ??= "gnu" TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][d.getVar('LINKER_HASH_STYLE', True) != 'gnu']}" export TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE}" ASNEEDED = "-Wl,--as-needed" TARGET_LDFLAGS += "${ASNEEDED}" export LDFLAGS = "${TARGET_LDFLAGS}" So, those are still linker flags (altough passed through -Wl to gcc), hence they belong to LDFLAGS, not CFLAGS. Arguably, you only need to pass CFLAGS during compile stage and LDFLAGS during link stage. On the other hand, as a workaround, I was passing them to TARGET_CC_ARCH, which gets embedded into CC and won't distinguish between compile/link stages... So rt-tests just gets away not using LDFLAGS and re-using CFLAGS for the link stage. :) But the current Makefile as it is now won't honor CFLAGS being set from outside, unless you pass them explicitly on the command line to make, or call make with -e flag.
Right, at the very least I'll resubmit the patch allowing override of CFLAGS. But I wanted to know if you felt there was any need to support overriding of LDFLAGS for rt-tests which doesn't build any shared libs. -- Darren Hart Intel Open Source Technology Center Yocto Project - Linux Kernel