On Thursday 23 February 2012 12:28:36 Aneesh V wrote: > On Thursday 23 February 2012 08:27 PM, Mike Frysinger wrote: > > On Thursday 23 February 2012 08:39:43 Aneesh V wrote: > >> --- a/arch/arm/config.mk > >> +++ b/arch/arm/config.mk > >> > >> -# Explicitly specifiy 32-bit ARM ISA since toolchain default can be > >> -mthumb: +# Choose between ARM/Thumb instruction sets > >> +ifeq ($(CONFIG_SYS_THUMB_BUILD),y) > >> +PF_CPPFLAGS_ARM := $(call cc-option, -mthumb -mthumb-interwork,\ > >> + $(call cc-option,-marm,)\ > >> + $(call cc-option,-mno-thumb-interwork,)\ > >> + ) > >> +else > >> > >> PF_CPPFLAGS_ARM := $(call cc-option,-marm,) > >> > >> +PF_CPPFLAGS_ARM += $(call cc-option,-mno-thumb-interwork,) > > > > this 2nd part is no good. "+=" is not the same thing as ":=". > > I don't understand the difference. '+=' is done after ':=' right? > > > might be simpler to do: > > PF_CPPFLAGS_MARM := $(call cc-option,-marm) > > PF_CPPFLAGS_THUMB := $(call cc-option,-mthumb -mthumb-interwork) > > PF_CPPFLAGS_NO_THUMB := $(call cc-option,-mno-thumb-interwork) > > > > ifeq ($(CONFIG_SYS_THUMB_BUILD),y) > > PF_CPPFLAGS_ARM = $(PF_CPPFLAGS_THUMB) > > else > > PF_CPPFLAGS_ARM = $(PF_CPPFLAGS_MARM) $(PF_CPPFLAGS_NO_THUMB) > > endif > > Are you trying to avoid all '+='. If so, why?
"+=" does delayed evaluation and is the whole reason we started using ":=" in makefiles for *computed* values when you do: FOO := $(call cc-option,-marm) you're storing the result of the computation in $(FOO) if you do: FOO += $(call cc-option,-marm) you're appending "$(call cc-option,-marm)" to $(FOO) and that won't actually get computed until $(FOO) gets used so if you append $(call ...) to $(CPPFLAGS), then you end up doing the cc- option computation every time you compile a file that uses $(CPPFLAGS) -mike
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot