summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMasahiro Yamada <yamada.m@jp.panasonic.com>2014-12-25 08:31:27 +0300
committerMichal Marek <mmarek@suse.cz>2015-01-09 19:25:44 +0300
commit6dcb4e5edf39e3b65a75ca76f087b2fdbee8a808 (patch)
tree1a876190fd070812f7bfe2b446d02f074e5075e1
parent3df8094727bd1972eb8e231e56ecdbd6e8fb2210 (diff)
downloadlinux-6dcb4e5edf39e3b65a75ca76f087b2fdbee8a808.tar.xz
kbuild: allow cc-ifversion to have the argument for false condition
The macro "try-run" can have an argument for each of true and false cases. Having an argument for the false case of cc-ifversion (and ld-ifversion) would be useful too. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Signed-off-by: Michal Marek <mmarek@suse.cz>
-rw-r--r--Documentation/kbuild/makefiles.txt5
-rw-r--r--scripts/Kbuild.include4
2 files changed, 5 insertions, 4 deletions
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt
index 7b3487a67476..a64f3c6e2012 100644
--- a/Documentation/kbuild/makefiles.txt
+++ b/Documentation/kbuild/makefiles.txt
@@ -531,8 +531,9 @@ more details, with real examples.
than or equal to gcc 3.0.
cc-ifversion
- cc-ifversion tests the version of $(CC) and equals last argument if
- version expression is true.
+ cc-ifversion tests the version of $(CC) and equals the fourth parameter
+ if version expression is true, or the fifth (if given) if the version
+ expression is false.
Example:
#fs/reiserfs/Makefile
diff --git a/scripts/Kbuild.include b/scripts/Kbuild.include
index ddf0ebdc2ca8..d3437b82ac25 100644
--- a/scripts/Kbuild.include
+++ b/scripts/Kbuild.include
@@ -137,7 +137,7 @@ cc-fullversion = $(shell $(CONFIG_SHELL) \
# cc-ifversion
# Usage: EXTRA_CFLAGS += $(call cc-ifversion, -lt, 0402, -O1)
-cc-ifversion = $(shell [ $(cc-version) $(1) $(2) ] && echo $(3))
+cc-ifversion = $(shell [ $(cc-version) $(1) $(2) ] && echo $(3) || echo $(4))
# cc-ldoption
# Usage: ldflags += $(call cc-ldoption, -Wl$(comma)--hash-style=both)
@@ -160,7 +160,7 @@ ld-version = $(shell $(LD) --version | $(srctree)/scripts/ld-version.sh)
# ld-ifversion
# Usage: $(call ld-ifversion, -ge, 22252, y)
-ld-ifversion = $(shell [ $(ld-version) $(1) $(2) ] && echo $(3))
+ld-ifversion = $(shell [ $(ld-version) $(1) $(2) ] && echo $(3) || echo $(4))
######