xref: /linux/scripts/Kconfig.include (revision e1cfdc0e72fc9ad7c04ad6329acb92876e062849)
1*e1cfdc0eSMasahiro Yamada# Kconfig helper macros
2*e1cfdc0eSMasahiro Yamada
3*e1cfdc0eSMasahiro Yamada# Convenient variables
4*e1cfdc0eSMasahiro Yamadacomma       := ,
5*e1cfdc0eSMasahiro Yamadaquote       := "
6*e1cfdc0eSMasahiro Yamadasquote      := '
7*e1cfdc0eSMasahiro Yamadaempty       :=
8*e1cfdc0eSMasahiro Yamadaspace       := $(empty) $(empty)
9*e1cfdc0eSMasahiro Yamadadollar      := $
10*e1cfdc0eSMasahiro Yamadaright_paren := )
11*e1cfdc0eSMasahiro Yamadaleft_paren  := (
12*e1cfdc0eSMasahiro Yamada
13*e1cfdc0eSMasahiro Yamada# $(if-success,<command>,<then>,<else>)
14*e1cfdc0eSMasahiro Yamada# Return <then> if <command> exits with 0, <else> otherwise.
15*e1cfdc0eSMasahiro Yamadaif-success = $(shell,{ $(1); } >/dev/null 2>&1 && echo "$(2)" || echo "$(3)")
16*e1cfdc0eSMasahiro Yamada
17*e1cfdc0eSMasahiro Yamada# $(success,<command>)
18*e1cfdc0eSMasahiro Yamada# Return y if <command> exits with 0, n otherwise
19*e1cfdc0eSMasahiro Yamadasuccess = $(if-success,$(1),y,n)
20*e1cfdc0eSMasahiro Yamada
21*e1cfdc0eSMasahiro Yamada# $(cc-option,<flag>)
22*e1cfdc0eSMasahiro Yamada# Return y if the compiler supports <flag>, n otherwise
23*e1cfdc0eSMasahiro Yamadacc-option = $(success,$(CC) -Werror $(1) -E -x c /dev/null -o /dev/null)
24*e1cfdc0eSMasahiro Yamada
25*e1cfdc0eSMasahiro Yamada# $(ld-option,<flag>)
26*e1cfdc0eSMasahiro Yamada# Return y if the linker supports <flag>, n otherwise
27*e1cfdc0eSMasahiro Yamadald-option = $(success,$(LD) -v $(1))
28