Commit 0da43893dda8be14b18b2b12dcc48a5e356a742e

Authored by Che-liang Chiou
Committed by Wolfgang Denk
1 parent ccb9ebefbe

Fix variable flavor in examples/standalone/Makefile

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>

Showing 1 changed file with 2 additions and 2 deletions Side-by-side Diff

examples/standalone/Makefile
... ... @@ -45,8 +45,8 @@
45 45 #
46 46 ELF := $(strip $(ELF-y) $(ELF-$(ARCH)) $(ELF-$(BOARD)) $(ELF-$(CPU)))
47 47  
48   -SREC = $(addsuffix .srec,$(ELF))
49   -BIN = $(addsuffix .bin,$(ELF))
  48 +SREC := $(addsuffix .srec,$(ELF))
  49 +BIN := $(addsuffix .bin,$(ELF))
50 50  
51 51 COBJS := $(ELF:=.o)
52 52