ar71xx: fix mtdpartsize macro in image Makefile (#14961)

The mtdpartsize macro triggers shell errors on various Linux distributions
when the partname argument $(1) does not appear within the partmap $(2).

Change the sed pattern to only emit anything if a successful substitution
occured and only evaluate the arithmetic expression if something was printed
by the sed program.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39583 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Jo-Philipp Wich 2014-02-13 21:19:00 +00:00
parent 2aeabcb857
commit 731543f24d
1 changed files with 1 additions and 1 deletions

View File

@ -36,7 +36,7 @@ $(if $(1),board=$(1) )$(if $(2),console=$(2)$(COMMA)$(3))
endef
define mtdpartsize
$(shell echo $$((`echo '$(2)' | sed -e 's/.*[:$(COMMA)]\([0-9]*\)k[@]*[0-9a-zx]*($(1)).*/\1/'` * 1024)))
$(shell sz=`echo '$(2)' | sed -ne 's/.*[:$(COMMA)]\([0-9]*\)k[@]*[0-9a-zx]*($(1)).*/\1/p'`; [ -n "$$sz" ] && echo $$(($$sz * 1024)))
endef
SINGLE_PROFILES:=