/[gentoo-x86]/eclass/eutils.eclass
Gentoo

Diff of /eclass/eutils.eclass

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

Revision 1.244 Revision 1.252
1# Copyright 1999-2006 Gentoo Foundation 1# Copyright 1999-2006 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/eutils.eclass,v 1.244 2006/07/06 23:53:57 vapier Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.252 2006/10/05 00:12:07 nyhm Exp $
4# 4#
5# This eclass is for general purpose functions that most ebuilds 5# This eclass is for general purpose functions that most ebuilds
6# have to implement themselves. 6# have to implement themselves.
7# 7#
8# NB: If you add anything, please comment it! 8# NB: If you add anything, please comment it!
17# to five seconds. If the EPAUSE_IGNORE env var is set, don't wait. If we're not 17# to five seconds. If the EPAUSE_IGNORE env var is set, don't wait. If we're not
18# outputting to a terminal, don't wait. For compatability purposes, the argument 18# outputting to a terminal, don't wait. For compatability purposes, the argument
19# must be an integer greater than zero. 19# must be an integer greater than zero.
20# Bug 62950, Ciaran McCreesh <ciaranm@gentoo.org> (05 Sep 2004) 20# Bug 62950, Ciaran McCreesh <ciaranm@gentoo.org> (05 Sep 2004)
21epause() { 21epause() {
22 if [ -z "$EPAUSE_IGNORE" ] && [ -t 1 ] ; then 22 [[ -z ${EPAUSE_IGNORE} ]] && sleep ${1:-5}
23 sleep ${1:-5}
24 fi
25} 23}
26 24
27# Beep the specified number of times (defaults to five). If our output 25# Beep the specified number of times (defaults to five). If our output
28# is not a terminal, don't beep. If the EBEEP_IGNORE env var is set, 26# is not a terminal, don't beep. If the EBEEP_IGNORE env var is set,
29# don't beep. 27# don't beep.
30# Bug 62950, Ciaran McCreesh <ciaranm@gentoo.org> (05 Sep 2004) 28# Bug 62950, Ciaran McCreesh <ciaranm@gentoo.org> (05 Sep 2004)
31ebeep() { 29ebeep() {
32 local n 30 local n
33 if [ -z "$EBEEP_IGNORE" ] && [ -t 1 ] ; then 31 if [[ -z ${EBEEP_IGNORE} ]] ; then
34 for ((n=1 ; n <= ${1:-5} ; n++)) ; do 32 for ((n=1 ; n <= ${1:-5} ; n++)) ; do
35 echo -ne "\a" 33 echo -ne "\a"
36 sleep 0.1 &>/dev/null ; sleep 0,1 &>/dev/null 34 sleep 0.1 &>/dev/null ; sleep 0,1 &>/dev/null
37 echo -ne "\a" 35 echo -ne "\a"
38 sleep 1 36 sleep 1
57# to point to the latest version of the library present. 55# to point to the latest version of the library present.
58# 56#
59# <azarah@gentoo.org> (26 Oct 2002) 57# <azarah@gentoo.org> (26 Oct 2002)
60# 58#
61gen_usr_ldscript() { 59gen_usr_ldscript() {
60 if [[ $(type -t _tc_gen_usr_ldscript) == "function" ]] ; then
61 _tc_gen_usr_ldscript "$@"
62 return $?
63 fi
64
65 ewarn "QA Notice: Please upgrade your ebuild to use toolchain-funcs"
66 ewarn "QA Notice: rather than gen_usr_ldscript() from eutils"
67
62 local lib libdir=$(get_libdir) 68 local lib libdir=$(get_libdir)
63 # Just make sure it exists 69 # Just make sure it exists
64 dodir /usr/${libdir} 70 dodir /usr/${libdir}
65 71
66 for lib in "${@}" ; do 72 for lib in "${@}" ; do
811 games) 817 games)
812 case ${catmin} in 818 case ${catmin} in
813 action) type=ActionGame;; 819 action) type=ActionGame;;
814 arcade) type=ArcadeGame;; 820 arcade) type=ArcadeGame;;
815 board) type=BoardGame;; 821 board) type=BoardGame;;
816 kid) type=KidsGame;; 822 kids) type=KidsGame;;
817 emulation) type=Emulator;; 823 emulation) type=Emulator;;
818 puzzle) type=LogicGame;; 824 puzzle) type=LogicGame;;
819 rpg) type=RolePlaying;; 825 rpg) type=RolePlaying;;
820 roguelike) type=RolePlaying;; 826 roguelike) type=RolePlaying;;
821 simulation) type=Simulation;; 827 simulation) type=Simulation;;
1583built_with_use() { 1589built_with_use() {
1584 local opt=$1 1590 local opt=$1
1585 [[ ${opt:0:1} = "-" ]] && shift || opt="-a" 1591 [[ ${opt:0:1} = "-" ]] && shift || opt="-a"
1586 1592
1587 local PKG=$(best_version $1) 1593 local PKG=$(best_version $1)
1594 [[ -z ${PKG} ]] && die "Unable to resolve $1 to an installed package"
1588 shift 1595 shift
1589 1596
1590 local USEFILE=${ROOT}/var/db/pkg/${PKG}/USE 1597 local USEFILE=${ROOT}/var/db/pkg/${PKG}/USE
1598 local IUSEFILE=${ROOT}/var/db/pkg/${PKG}/IUSE
1591 1599
1592 # if the USE file doesnt exist, assume the $PKG is either 1600 # if the USE file doesnt exist, assume the $PKG is either
1593 # injected or package.provided 1601 # injected or package.provided
1594 [[ ! -e ${USEFILE} ]] && return 0 1602 [[ ! -e ${USEFILE} ]] && die "Unable to determine what USE flags $PKG was built with"
1603
1604 local IUSE_BUILT=$(<${IUSEFILE})
1605 # Don't check USE_EXPAND #147237
1606 local expand
1607 for expand in $(echo ${USE_EXPAND} | tr '[:upper:]' '[:lower:]') ; do
1608 if [[ $1 == ${expand}_* ]] ; then
1609 expand=""
1610 break
1611 fi
1612 done
1613 if [[ -n ${expand} ]] ; then
1614 has $1 ${IUSE_BUILT} || die "$PKG does not actually support the $1 USE flag!"
1615 fi
1595 1616
1596 local USE_BUILT=$(<${USEFILE}) 1617 local USE_BUILT=$(<${USEFILE})
1597 while [[ $# -gt 0 ]] ; do 1618 while [[ $# -gt 0 ]] ; do
1598 if [[ ${opt} = "-o" ]] ; then 1619 if [[ ${opt} = "-o" ]] ; then
1599 has $1 ${USE_BUILT} && return 0 1620 has $1 ${USE_BUILT} && return 0

Legend:
Removed from v.1.244  
changed lines
  Added in v.1.252

  ViewVC Help
Powered by ViewVC 1.1.20