
On Sat, Nov 4, 2023 at 9:42 PM Simon Glass sjg@chromium.org wrote:
The use of single quotes in the image name causes them to appear in the image description when the uImage is created. Use double quotes, to avoid this.
Signed-off-by: Simon Glass sjg@chromium.org
Changes in v2:
- Split double-quote change out into its own patch
scripts/Makefile.lib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 68d0134bdbf9..03e79e319293 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib @@ -487,7 +487,7 @@ UIMAGE_OPTS-y ?= UIMAGE_TYPE ?= kernel UIMAGE_LOADADDR ?= arch_must_set_this UIMAGE_ENTRYADDR ?= $(UIMAGE_LOADADDR) -UIMAGE_NAME ?= 'Linux-$(KERNELRELEASE)' +UIMAGE_NAME ?= "Linux-$(KERNELRELEASE)"
quiet_cmd_uimage = UIMAGE $@ cmd_uimage = $(BASH) $(MKIMAGE) -A $(UIMAGE_ARCH) -O linux \ -- 2.42.0.869.gea05f2083d-goog
NACK.
This is because you are doing *WRONG* in 3/3.
Look at your code closely.
https://lore.kernel.org/linux-kbuild/20231104194207.3370542-4-sjg@chromium.o...
In the mainline kernel, the quotation appears only in the definition of UIMAGE_NAME.
masahiro@zoe:~/ref/linux(master)$ git grep UIMAGE_NAME scripts/Makefile.lib:UIMAGE_NAME ?= 'Linux-$(KERNELRELEASE)' scripts/Makefile.lib: -n $(UIMAGE_NAME) -d $< $@
The single quotes are consumed by shell.
This is mainline + your patch set.
masahiro@zoe:~/ref/linux(simon-v2)$ git grep UIMAGE_NAME scripts/Makefile.lib:UIMAGE_NAME ?= "Linux-$(KERNELRELEASE)" scripts/Makefile.lib: -n "$(UIMAGE_NAME)" -d $< $@ scripts/Makefile.lib: --name "$(UIMAGE_NAME)" \
You quoted the definition of UIMAGE_NAME, and also variable references.
See how it is expanded.
--name "$(UIMAGE_NAME)"
==>
--name ""Linux-$(KERNELRELEASE)""
==>
--name Linux-$(KERNELRELEASE)
You added double quotes in a row, just to cancel it.