1 |
commit: 6597a608fe6462be6f7736bc0b28c4288b488779 |
2 |
Author: Austin English <wizardedit <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Jun 27 21:58:07 2016 +0000 |
4 |
Commit: Austin English <wizardedit <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Jul 1 18:42:09 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6597a608 |
7 |
|
8 |
eclass/toolchain-funcs: add clang version functions |
9 |
|
10 |
eclass/toolchain-funcs.eclass | 33 +++++++++++++++++++++++++++++++++ |
11 |
1 file changed, 33 insertions(+) |
12 |
|
13 |
diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass |
14 |
index fb8b2f9..9bb5232 100644 |
15 |
--- a/eclass/toolchain-funcs.eclass |
16 |
+++ b/eclass/toolchain-funcs.eclass |
17 |
@@ -642,6 +642,39 @@ gcc-micro-version() { |
18 |
_gcc_fullversion '$3' "$@" |
19 |
} |
20 |
|
21 |
+# Internal func. Based on _gcc_fullversion() above. |
22 |
+_clang_fullversion() { |
23 |
+ local ver="$1"; shift |
24 |
+ set -- $($(tc-getCPP "$@") -E -P - <<<"__clang_major__ __clang_minor__ __clang_patchlevel__") |
25 |
+ eval echo "$ver" |
26 |
+} |
27 |
+ |
28 |
+# @FUNCTION: clang-fullversion |
29 |
+# @RETURN: compiler version (major.minor.micro: [3.4.6]) |
30 |
+clang-fullversion() { |
31 |
+ _clang_fullversion '$1.$2.$3' "$@" |
32 |
+} |
33 |
+# @FUNCTION: clang-version |
34 |
+# @RETURN: compiler version (major.minor: [3.4].6) |
35 |
+clang-version() { |
36 |
+ _clang_fullversion '$1.$2' "$@" |
37 |
+} |
38 |
+# @FUNCTION: clang-major-version |
39 |
+# @RETURN: major compiler version (major: [3].4.6) |
40 |
+clang-major-version() { |
41 |
+ _clang_fullversion '$1' "$@" |
42 |
+} |
43 |
+# @FUNCTION: clang-minor-version |
44 |
+# @RETURN: minor compiler version (minor: 3.[4].6) |
45 |
+clang-minor-version() { |
46 |
+ _clang_fullversion '$2' "$@" |
47 |
+} |
48 |
+# @FUNCTION: clang-micro-version |
49 |
+# @RETURN: micro compiler version (micro: 3.4.[6]) |
50 |
+clang-micro-version() { |
51 |
+ _clang_fullversion '$3' "$@" |
52 |
+} |
53 |
+ |
54 |
# Returns the installation directory - internal toolchain |
55 |
# function for use by _gcc-specs-exists (for flag-o-matic). |
56 |
_gcc-install-dir() { |