aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/archs38/image
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2017-02-16 07:51:42 +0100
committerFelix Fietkau <nbd@nbd.name>2017-02-21 16:10:32 +0100
commitf66a0c93b3a49a1768efeab73553c6e8294b1443 (patch)
treee75acc40d4b64e1873f46d819dad58aea90b79c0 /target/linux/archs38/image
parentf77a1aac0b7d56085f5d169adac9b29384c69528 (diff)
downloadupstream-f66a0c93b3a49a1768efeab73553c6e8294b1443.tar.gz
upstream-f66a0c93b3a49a1768efeab73553c6e8294b1443.tar.bz2
upstream-f66a0c93b3a49a1768efeab73553c6e8294b1443.zip
archs38: only calculate entry point address when necessary
$(eval) runs even during prereq check, which can cause bogus error messages Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'target/linux/archs38/image')
-rw-r--r--target/linux/archs38/image/Makefile7
1 files changed, 2 insertions, 5 deletions
diff --git a/target/linux/archs38/image/Makefile b/target/linux/archs38/image/Makefile
index 903c1ba987..5d941bc94b 100644
--- a/target/linux/archs38/image/Makefile
+++ b/target/linux/archs38/image/Makefile
@@ -10,9 +10,7 @@ include $(INCLUDE_DIR)/image.mk
# On ARC initramfs is put before entry point and so entry point moves
# in memory from build to built. Thus we need to extract EP from vmlinux
# every time before generation of uImage.
-define Build/calculate-ep
- $(eval KERNEL_ENTRY=$(shell $(KERNEL_CROSS)readelf -h $(1) | grep "Entry point address" | grep -o 0x.*))
-endef
+kernel_ep = `$(KERNEL_CROSS)readelf -h $(1) | grep "Entry point address" | grep -o 0x.*`
define Build/patch-dtb
$(STAGING_DIR_HOST)/bin/patch-dtb $@ $(DTS_DIR)/$(DEVICE_DTS).dtb
@@ -69,9 +67,8 @@ endef
define Image/BuildKernel
# Build unified uImage
- $(call Build/calculate-ep, $(KDIR)/vmlinux.elf)
$(call Image/BuildKernel/MkuImage, \
- none, $(KERNEL_LOADADDR), $(KERNEL_ENTRY), \
+ none, $(KERNEL_LOADADDR),$(call kernel_ep,$(KDIR)/vmlinux.elf) , \
$(KDIR)/vmlinux, \
$(BIN_DIR)/$(IMG_PREFIX)-uImage \
)