/[gentoo-x86]/eclass/toolchain-funcs.eclass
Gentoo

Diff of /eclass/toolchain-funcs.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.69 Revision 1.73
1# Copyright 1999-2007 Gentoo Foundation 1# Copyright 1999-2007 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.69 2007/03/27 01:46:50 vapier Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/toolchain-funcs.eclass,v 1.73 2007/07/22 19:59:48 vapier Exp $
4# 4#
5# Maintainer: Toolchain Ninjas <toolchain@gentoo.org> 5# Maintainer: Toolchain Ninjas <toolchain@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...)
122 [[ -z ${host} ]] && host=${CTARGET:-${CHOST}} 122 [[ -z ${host} ]] && host=${CTARGET:-${CHOST}}
123 123
124 case ${host} in 124 case ${host} in
125 alpha*) echo alpha;; 125 alpha*) echo alpha;;
126 arm*) echo arm;; 126 arm*) echo arm;;
127 avr*) ninj avr32 avr;;
127 bfin*) ninj blackfin bfin;; 128 bfin*) ninj blackfin bfin;;
128 cris*) echo cris;; 129 cris*) echo cris;;
129 hppa*) ninj parisc hppa;; 130 hppa*) ninj parisc hppa;;
130 i?86*) ninj i386 x86;; 131 i?86*) ninj i386 x86;;
131 ia64*) echo ia64;; 132 ia64*) echo ia64;;
161 && ninj sparc64 sparc \ 162 && ninj sparc64 sparc \
162 || echo sparc 163 || echo sparc
163 ;; 164 ;;
164 vax*) echo vax;; 165 vax*) echo vax;;
165 x86_64*) ninj x86_64 amd64;; 166 x86_64*) ninj x86_64 amd64;;
166 *) echo ${ARCH};; 167
168 # since our usage of tc-arch is largely concerned with
169 # normalizing inputs for testing ${CTARGET}, let's filter
170 # other cross targets (mingw and such) into the unknown.
171 *) echo unknown;;
167 esac 172 esac
168} 173}
169tc-arch-kernel() { 174tc-arch-kernel() {
170 tc-ninja_magic_to_arch kern $@ 175 tc-ninja_magic_to_arch kern $@
171} 176}
172tc-arch() { 177tc-arch() {
173 tc-ninja_magic_to_arch portage $@ 178 tc-ninja_magic_to_arch portage $@
179}
180tc-endian() {
181 local host=$1
182 [[ -z ${host} ]] && host=${CTARGET:-${CHOST}}
183 host=${host%%-*}
184
185 case ${host} in
186 alpha*) echo big;;
187 arm*b*) echo big;;
188 arm*) echo little;;
189 cris*) echo little;;
190 hppa*) echo big;;
191 i?86*) echo little;;
192 ia64*) echo little;;
193 m68*) echo big;;
194 mips*l*) echo little;;
195 mips*) echo big;;
196 powerpc*) echo big;;
197 s390*) echo big;;
198 sh*b*) echo big;;
199 sh*) echo little;;
200 sparc*) echo big;;
201 x86_64*) echo little;;
202 *) echo wtf;;
203 esac
174} 204}
175 205
176# Returns the version as by `$CC -dumpversion` 206# Returns the version as by `$CC -dumpversion`
177gcc-fullversion() { 207gcc-fullversion() {
178 $(tc-getCC "$@") -dumpversion 208 $(tc-getCC "$@") -dumpversion
291# gen_usr_ldscript libfoo.so 321# gen_usr_ldscript libfoo.so
292# 322#
293# Note that you should in general use the unversioned name of 323# Note that you should in general use the unversioned name of
294# the library, as ldconfig should usually update it correctly 324# the library, as ldconfig should usually update it correctly
295# to point to the latest version of the library present. 325# to point to the latest version of the library present.
296_tc_gen_usr_ldscript() { 326gen_usr_ldscript() {
297 local lib libdir=$(get_libdir) output_format="" 327 local lib libdir=$(get_libdir) output_format=""
298 # Just make sure it exists 328 # Just make sure it exists
299 dodir /usr/${libdir} 329 dodir /usr/${libdir}
300 330
301 # OUTPUT_FORMAT gives hints to the linker as to what binary format 331 # OUTPUT_FORMAT gives hints to the linker as to what binary format
323 END_LDSCRIPT 353 END_LDSCRIPT
324 fi 354 fi
325 fperms a+x "/usr/${libdir}/${lib}" || die "could not change perms on ${lib}" 355 fperms a+x "/usr/${libdir}/${lib}" || die "could not change perms on ${lib}"
326 done 356 done
327} 357}
328gen_usr_ldscript() { _tc_gen_usr_ldscript "$@" ; }

Legend:
Removed from v.1.69  
changed lines
  Added in v.1.73

  ViewVC Help
Powered by ViewVC 1.1.20