diff options
author | Masahiro Yamada <yamada.m@jp.panasonic.com> | 2013-12-11 20:11:34 +0900 |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2014-02-25 07:51:08 -0500 |
commit | 5b1f1f4aff912d8c8a98113d1af1fdaa2c9038a4 (patch) | |
tree | 202c35c1ac0d444fbcb6b2f04f312bd45a660c68 | |
parent | ad21fbc1186732962eafd841daa5d2795fab327a (diff) | |
download | u-boot-imx-5b1f1f4aff912d8c8a98113d1af1fdaa2c9038a4.zip u-boot-imx-5b1f1f4aff912d8c8a98113d1af1fdaa2c9038a4.tar.gz u-boot-imx-5b1f1f4aff912d8c8a98113d1af1fdaa2c9038a4.tar.bz2 |
Makefile: add a new script to check -fstack-usage support
If -fstack-usage option is given to crosstools
that do not support it, gcc displays a warning message
but still exits with status 0.
This means we can not rely on $(call cc-option,...)
to detect if -fstack-usage option is supported or not.
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | scripts/gcc-stack-usage.sh | 18 |
2 files changed, 21 insertions, 1 deletions
@@ -547,7 +547,9 @@ KBUILD_CFLAGS += -g KBUILD_AFLAGS += -g # Report stack usage if supported -KBUILD_CFLAGS += $(call cc-option,-fstack-usage) +ifeq ($(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-stack-usage.sh $(CC)),y) + KBUILD_CFLAGS += -fstack-usage +endif KBUILD_CFLAGS += $(call cc-option,-Wno-format-nonliteral) diff --git a/scripts/gcc-stack-usage.sh b/scripts/gcc-stack-usage.sh new file mode 100644 index 0000000..27ac928 --- /dev/null +++ b/scripts/gcc-stack-usage.sh @@ -0,0 +1,18 @@ +#!/bin/sh +# Test for gcc '-fstack-usage' support +# Copyright (C) 2013, Masahiro Yamada <yamada.m@jp.panasonic.com> +# +# SPDX-License-Identifier: GPL-2.0+ +# + +TMP="$$" + +cat <<END | $@ -Werror -fstack-usage -x c - -c -o $TMP >/dev/null 2>&1 \ + && echo "y" +int main(void) +{ + return 0; +} +END + +rm -f $TMP $TMP.su |