Gentoo Archives: gentoo-commits

From: Austin English <wizardedit@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: eclass/
Date: Fri, 01 Jul 2016 18:42:51
Message-Id: 1467398529.6597a608fe6462be6f7736bc0b28c4288b488779.wizardedit@gentoo
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() {