both softp and hardfp use the actual hardware fpu, but have different calling conventions and are incompatible. So you need vars.
Op 16 mei 2011 om 16:44 heeft Richard Purdie <[email protected]> het volgende geschreven: > Hi Khem, > > I've a concern about ending up with several different variables all > doing the same thing. Why do we need both TARGET_FPU and ARM_FP_ABI? > Couldn't we just have values or "hard, sort or empty" for TARGET_FPU? > > Cheers, > > Richard > > On Sat, 2011-05-14 at 18:32 -0700, Saul Wold wrote: >> From: Khem Raj <[email protected]> >> >> pass --with-float=hard|soft depending upon ARM_FP_ABI settings >> >> Signed-off-by: Khem Raj <[email protected]> >> --- >> meta/recipes-devtools/gcc/gcc-common.inc | 13 ++++++++++--- >> 1 files changed, 10 insertions(+), 3 deletions(-) >> >> diff --git a/meta/recipes-devtools/gcc/gcc-common.inc >> b/meta/recipes-devtools/gcc/gcc-common.inc >> index a3fa234..8b7c3ad 100644 >> --- a/meta/recipes-devtools/gcc/gcc-common.inc >> +++ b/meta/recipes-devtools/gcc/gcc-common.inc >> @@ -8,10 +8,17 @@ NATIVEDEPS = "" >> inherit autotools gettext >> >> FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}" >> - >> def get_gcc_fpu_setting(bb, d): >> - if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]: >> - return "--with-float=soft" >> + if bb.data.getVar('TARGET_FPU', d, True) in [ 'soft', 'hard'] and >> bb.data.getVar('TARGET_OS', d, True).find('linux') >= 0 : >> + # ARM_FP_ABI could be either 'hardfp' or 'softfp' >> + arm_fpabi = bb.data.getVar('ARM_FP_ABI', d, True) or "" >> + if arm_fpabi != "": >> + if arm_fpabi == "hardfp": >> + # reset it to whatever gcc --with-float configure expects >> which is either 'softfp' or 'hard' >> + arm_fpabi = "hard" >> + return "--with-float=" + arm_fpabi >> + else: >> + return "--with-float=" + bb.data.getVar('TARGET_FPU', d, True) >> return "" >> >> def get_gcc_mips_plt_setting(bb, d): > > > > _______________________________________________ > Openembedded-core mailing list > [email protected] > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core _______________________________________________ Openembedded-core mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
