diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-05-28 18:21:59 +0900 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-05-29 03:31:19 +0900 |
commit | e1cfdc0e72fc9ad7c04ad6329acb92876e062849 (patch) | |
tree | f32ea4e4715c0559bba4d8cb9014b582d76f355e /scripts | |
parent | 21c54b774744719c386fbdc829b0e7759edb8ece (diff) | |
download | linux-e1cfdc0e72fc9ad7c04ad6329acb92876e062849.tar.gz linux-e1cfdc0e72fc9ad7c04ad6329acb92876e062849.tar.bz2 linux-e1cfdc0e72fc9ad7c04ad6329acb92876e062849.zip |
kconfig: add basic helper macros to scripts/Kconfig.include
Kconfig got text processing tools like we see in Make. Add Kconfig
helper macros to scripts/Kconfig.include like we collect Makefile
macros in scripts/Kbuild.include.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Ulf Magnusson <ulfalizer@gmail.com>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/Kconfig.include | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/scripts/Kconfig.include b/scripts/Kconfig.include new file mode 100644 index 000000000000..bf7c0c9fa3a4 --- /dev/null +++ b/scripts/Kconfig.include @@ -0,0 +1,27 @@ +# Kconfig helper macros + +# Convenient variables +comma := , +quote := " +squote := ' +empty := +space := $(empty) $(empty) +dollar := $ +right_paren := ) +left_paren := ( + +# $(if-success,<command>,<then>,<else>) +# Return <then> if <command> exits with 0, <else> otherwise. +if-success = $(shell,{ $(1); } >/dev/null 2>&1 && echo "$(2)" || echo "$(3)") + +# $(success,<command>) +# Return y if <command> exits with 0, n otherwise +success = $(if-success,$(1),y,n) + +# $(cc-option,<flag>) +# Return y if the compiler supports <flag>, n otherwise +cc-option = $(success,$(CC) -Werror $(1) -E -x c /dev/null -o /dev/null) + +# $(ld-option,<flag>) +# Return y if the linker supports <flag>, n otherwise +ld-option = $(success,$(LD) -v $(1)) |