| 1 | # Copyright 1999-2004 Gentoo Foundation |
1 | # Copyright 1999-2004 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/toolchain-funcs.eclass,v 1.18 2004/12/31 03:18:42 vapier Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/toolchain-funcs.eclass,v 1.19 2005/01/10 02:41:58 vapier Exp $ |
| 4 | # |
4 | # |
| 5 | # Author: Toolchain Ninjas <ninjas@gentoo.org> |
5 | # Author: Toolchain Ninjas <ninjas@gentoo.org> |
| 6 | # |
6 | # |
| 7 | # This eclass contains (or should) functions to get common info |
7 | # This eclass contains (or should) functions to get common info |
| 8 | # about the toolchain (libc/compiler/binutils/etc...) |
8 | # about the toolchain (libc/compiler/binutils/etc...) |
| … | |
… | |
| 86 | fi |
86 | fi |
| 87 | return 1 |
87 | return 1 |
| 88 | } |
88 | } |
| 89 | |
89 | |
| 90 | |
90 | |
|
|
91 | # Translate a CBUILD/CHOST/CTARGET into the kernel/portage |
|
|
92 | # equivalent of $ARCH |
|
|
93 | ninja_magic_to_arch() { |
|
|
94 | ninj() { [[ ${type} = "kern" ]] && echo $1 || echo $2 ; } |
|
|
95 | |
|
|
96 | local type=$1 |
|
|
97 | local host=$2 |
|
|
98 | |
|
|
99 | case ${host} in |
|
|
100 | alpha*) echo alpha;; |
|
|
101 | x86_64*) ninj x86_64 amd64;; |
|
|
102 | arm*) echo arm;; |
|
|
103 | hppa*) ninj parisc hppa;; |
|
|
104 | ia64*) echo ia64;; |
|
|
105 | mips*) echo mips;; |
|
|
106 | powerpc64*) echo ppc64;; |
|
|
107 | powerpc*) echo ppc;; |
|
|
108 | sparc64*) ninj sparc64 sparc;; |
|
|
109 | sparc*) echo sparc;; |
|
|
110 | s390*) echo s390;; |
|
|
111 | sh64*) ninj sh64 sh;; |
|
|
112 | sh*) echo sh;; |
|
|
113 | i?86*) echo x86;; |
|
|
114 | *) echo wtf;; |
|
|
115 | esac |
|
|
116 | } |
|
|
117 | host_to_arch_kernel() { |
|
|
118 | ninja_magic_to_arch kern $@ |
|
|
119 | } |
|
|
120 | host_to_arch_portage() { |
|
|
121 | ninja_magic_to_arch portage $@ |
|
|
122 | } |
|
|
123 | |
|
|
124 | |
| 91 | # Returns the version as by `$CC -dumpversion` |
125 | # Returns the version as by `$CC -dumpversion` |
| 92 | gcc-fullversion() { |
126 | gcc-fullversion() { |
| 93 | echo "$($(tc-getCC) -dumpversion)" |
127 | echo "$($(tc-getCC) -dumpversion)" |
| 94 | } |
128 | } |
| 95 | # Returns the version, but only the <major>.<minor> |
129 | # Returns the version, but only the <major>.<minor> |