summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile11
-rw-r--r--common/Kconfig7
2 files changed, 18 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index d8e685ec43..5cf49da7aa 100644
--- a/Makefile
+++ b/Makefile
@@ -532,6 +532,16 @@ quiet_cmd_barebox_version = GEN .version
expr 0$$(cat .old_version) + 1 >.version; \
fi; \
+# Check size of a file
+quiet_cmd_check_file_size = CHKSIZE $@
+ cmd_check_file_size = set -e; \
+ size=`stat -c%s $@`; \
+ max_size=`printf "%d" $2`; \
+ if [ $$size -gt $$max_size ] ; \
+ then \
+ echo "$@ size $$size > of the maximum size $$max_size"; \
+ exit 1 ; \
+ fi;
# Generate System.map
quiet_cmd_sysmap = SYSMAP
@@ -659,6 +669,7 @@ OBJCOPYFLAGS_barebox.bin = -O binary
barebox.bin: barebox FORCE
$(call if_changed,objcopy)
+ $(call cmd,check_file_size,$(CONFIG_BAREBOX_MAX_IMAGE_SIZE))
ifdef CONFIG_X86
barebox.S: barebox
diff --git a/common/Kconfig b/common/Kconfig
index 382e591a7f..8089061421 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -104,6 +104,13 @@ config TEXT_BASE
help
The Address barebox gets linked at.
+config BAREBOX_MAX_IMAGE_SIZE
+ prompt "Maximum size of barebox"
+ hex
+ default 0xffffffff
+ help
+ Define the maximum size of barebox
+
config HAVE_CONFIGURABLE_MEMORY_LAYOUT
bool