[U-Boot] [PATCH 1/2 for 2010.12 ] Add support PLATFORM_LDFLAGS to cmd_link_o_target
Nobuhiro Iwamatsu
iwamatsu at nigauri.org
Mon Dec 27 07:29:17 CET 2010
2010/12/27 Mike Frysinger <vapier at gentoo.org>:
> On Sunday, December 26, 2010 23:17:39 Nobuhiro Iwamatsu wrote:
>> 2010/12/27 Mike Frysinger <vapier at gentoo.org>:
>> > On Saturday, December 25, 2010 18:02:26 Nobuhiro Iwamatsu wrote:
>> >> Current cmd_link_o_target function in config.mk does not support the set
>> >> of the endian.
>> >>
>> >> Some architecture is bi-endian (e.g. mips and sh).
>> >> Therefore, there is case supporting big endian and little endian
>> >> with one toolchain.
>> >> For example, when user builds target of big endian in host of little
>> >> endian, they need set endian.
>> >>
>> >> # If the list of objects to link is empty, just create an empty
>> >> built-in.o cmd_link_o_target = $(if $(strip $1),\
>> >> - $(LD) -r -o $@ $1 ,\
>> >> + $(LD) $(ENDIANNESS) -r -o $@ $1 ,\
>> >
>> > i dont think we should start declaring random new variables with specific
>> > purposes.
>>
>> I agree. But....
>>
>> > better to split the "u-boot final" LDFLAGS out into their own
>> > variable (LDFLAGS_u-boot) and keep LDFLAGS as a "these are the flags that
>> > need to be used with $(LD)".
>>
>> cmd_link_o_target is not used in the last of u-boot (u-boot final) .
>
> this is irrelevant to what i suggested
>
>> But this is used in the middle of build.
>> For example, when we make libstubs.o in examples/standalone/Makefile.
>>
>> : examples/standalone/Makefile
>>
>> -----
>> 89
>> 90 all: $(obj).depend $(OBJS) $(LIB) $(SREC) $(BIN) $(ELF)
>> 91
>> 92
>> #########################################################################
>> 93 $(LIB): $(obj).depend $(LIBOBJS)
>> 94 $(call cmd_link_o_target, $(LIBOBJS))
>> 95
>> 96 $(ELF):
>> -----
>>
>> Therefore, I think that we have to add a new variable to this.
>
> no, we dont. do as i suggested:
> - add $(LDFLAGS_$(@F)) to Makefile:GEN_UBOOT
> - move -T/-B flags from Makefile:LDFLAGS to Makefile:LDFLAGS_u-boot
> - move --gc-sections from LDFLAGS to LDFLAGS_u-boot in arch/*/config.mk
> - add $(LDFLAGS) to cmd_link_o_target
>
> your patch doesnt scale to address all problems
OK, I understood your indication.
I will send new patch.
Thanks!
Nobuhiro
--
Nobuhiro Iwamatsu
More information about the U-Boot
mailing list