From: Masahiro Yamada Date: Fri, 22 Aug 2014 10:42:29 +0000 (+0900) Subject: kconfig: add CONFIG_CC_OPTIMIZE_FOR_SIZE X-Git-Tag: v2014.10-rc2~66 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=4a8ed8e24886adf47086125f81307eaa8c358437;p=u-boot kconfig: add CONFIG_CC_OPTIMIZE_FOR_SIZE Copy the Kconfig option from "init/Kconfig" of Linux v3.16 tag and adjust the help document. Signed-off-by: Masahiro Yamada --- diff --git a/Kconfig b/Kconfig index ea2c836115..cbb691e160 100644 --- a/Kconfig +++ b/Kconfig @@ -46,6 +46,16 @@ config LOCALVERSION_AUTO which is done within the script "scripts/setlocalversion".) +config CC_OPTIMIZE_FOR_SIZE + bool "Optimize for size" + depends on !SPL_BUILD + default y + help + Enabling this option will pass "-Os" instead of "-O2" to gcc + resulting in a smaller U-Boot image. + + This option is enabled by default for U-Boot. + endmenu # General setup menu "Boot images" diff --git a/Makefile b/Makefile index 0fea5c2681..9646859083 100644 --- a/Makefile +++ b/Makefile @@ -529,7 +529,11 @@ else include/config/auto.conf: ; endif # $(dot-config) -KBUILD_CFLAGS += -Os #-fomit-frame-pointer +ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE +KBUILD_CFLAGS += -Os +else +KBUILD_CFLAGS += -O2 +endif ifdef BUILD_TAG KBUILD_CFLAGS += -DBUILD_TAG='"$(BUILD_TAG)"'