
Thanks, Wolfgang.
On Fri, May 13, 2011 at 4:30 AM, Wolfgang Denk wd@denx.de wrote:
Dear Che-liang Chiou,
In message AANLkTimw1vLC8GM_XsdGqGKLUYyzKQoFYFb8-bJVbGBE@mail.gmail.com you wrote:
GNU Makefile have two flavors of variables, recursively expanded that is defined by using '=', and simply expanded that is defined by using ':='.
The bug is caused by using recursively expanded flavor for BIN and SREC. As you can see below, they are prepended by $(obj) twice.
We can reproduce this bug with a simplified version of this Makefile: $ cat > Makefile <<EOF obj := /path/to/obj/ ELF := hello_world
BIN_rec = $(addsuffix .bin,$(ELF)) # recursively expanded BIN_sim := $(addsuffix .bin,$(ELF)) # simply expanded
ELF := $(addprefix $(obj),$(ELF)) BIN_rec := $(addprefix $(obj),$(BIN_rec)) BIN_sim := $(addprefix $(obj),$(BIN_sim))
show: @echo BIN_rec=$(BIN_rec) @echo BIN_sim=$(BIN_sim)
.PHONY: show EOF $ make show BIN_rec=/path/to/obj//path/to/obj/hello_world.bin BIN_sim=/path/to/obj/hello_world.bin
Signed-off-by: Che-Liang Chiou clchiou@chromium.org
examples/standalone/Makefile | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
Applied, thanks.
Best regards,
Wolfgang Denk
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de It all seemed, he thought, to be rather a lot of trouble to go to just sharpen a razor blade. - Terry Pratchett, _The Light Fantastic_