From b225de37bc223474123dd1ef21d9eba2c11ca76c Mon Sep 17 00:00:00 2001 From: John Crispin Date: Thu, 21 Apr 2016 19:47:19 +0000 Subject: [PATCH] ar71xx: fix giving extra arguments to Build/mktplinkfw The build command will always get the whole argument string in $(1), regardless of whitespace. We need to use word/wordlist to split the string after the first word. Whitespace and quotation will be given to the command verbatim (make will ignore it), so to give multiple arguments, no quotation marks may be used. Fixes: r47174 ("ar71xx/image: add options argument to mktplinkfw step") Signed-off-by: Matthias Schiffer SVN-Revision: 49216 --- target/linux/ar71xx/image/Makefile | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index e4e2fcf4413..2699b64878f 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -49,14 +49,15 @@ endef # -X reserve bytes in the firmware image (hexval prefixed with 0x) define Build/mktplinkfw -$(STAGING_DIR_HOST)/bin/mktplinkfw \ - -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) $2 \ + -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) \ -m $(TPLINK_HEADER_VERSION) \ -k $(word 1,$^) \ -r $@ \ -o $@.new \ -j -X 0x40000 \ -a $(call rootfs_align,$(FILESYSTEM)) \ - $(if $(findstring sysupgrade,$1),-s) && mv $@.new $@ || rm -f $@ + $(wordlist 2,$(words $(1)),$(1)) \ + $(if $(findstring sysupgrade,$(word 1,$(1))),-s) && mv $@.new $@ || rm -f $@ endef # mktplinkfw-initramfs @@ -64,7 +65,7 @@ endef # -c combined image define Build/mktplinkfw-initramfs $(STAGING_DIR_HOST)/bin/mktplinkfw \ - -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) $2 \ + -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) $(1) \ -m $(TPLINK_HEADER_VERSION) \ -k $@ \ -o $@.new \ @@ -75,14 +76,14 @@ endef define Build/tplink-safeloader -$(STAGING_DIR_HOST)/bin/tplink-safeloader \ - -B $(TPLINK_BOARD_NAME) \ - -V $(REVISION) \ - -k $(word 1,$^) \ - -r $@ \ - -o $@.new \ - $2 \ - -j \ - $(if $(findstring sysupgrade,$1),-S) && mv $@.new $@ || rm -f $@ + -B $(TPLINK_BOARD_NAME) \ + -V $(REVISION) \ + -k $(word 1,$^) \ + -r $@ \ + -o $@.new \ + -j \ + $(wordlist 2,$(words $(1)),$(1)) \ + $(if $(findstring sysupgrade,$(word 1,$(1))),-S) && mv $@.new $@ || rm -f $@ endef define Build/loader-common @@ -967,8 +968,8 @@ define Device/tl-wr2543-v1 BOARDNAME := TL-WR2543N DEVICE_PROFILE := TLWR2543 TPLINK_HWID := 0x25430001 - IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade "-v 3.13.99" - IMAGE/factory.bin := append-rootfs | mktplinkfw factory "-v 3.13.99" + IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade -v 3.13.99 + IMAGE/factory.bin := append-rootfs | mktplinkfw factory -v 3.13.99 endef TARGET_DEVICES += tl-wr2543-v1