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

Diff of /eclass/eutils.eclass

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

Revision 1.294 Revision 1.297
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/eutils.eclass,v 1.294 2008/01/14 04:52:35 vapier Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/eutils.eclass,v 1.297 2008/02/15 07:43:45 vapier Exp $
4 4
5# @ECLASS: eutils.eclass 5# @ECLASS: eutils.eclass
6# @MAINTAINER: 6# @MAINTAINER:
7# base-system@gentoo.org 7# base-system@gentoo.org
8# @BLURB: many extra (but common) functions that are used in ebuilds 8# @BLURB: many extra (but common) functions that are used in ebuilds
1454# displayed and we'll hang out here until: 1454# displayed and we'll hang out here until:
1455# (1) the file is found on a mounted cdrom 1455# (1) the file is found on a mounted cdrom
1456# (2) the user hits CTRL+C 1456# (2) the user hits CTRL+C
1457_cdrom_locate_file_on_cd() { 1457_cdrom_locate_file_on_cd() {
1458 local mline="" 1458 local mline=""
1459 local showedmsg=0 1459 local showedmsg=0 showjolietmsg=0
1460 1460
1461 while [[ -z ${CDROM_ROOT} ]] ; do 1461 while [[ -z ${CDROM_ROOT} ]] ; do
1462 local i=0 1462 local i=0
1463 local -a cdset=(${*//:/ }) 1463 local -a cdset=(${*//:/ })
1464 if [[ -n ${CDROM_SET} ]] ; then 1464 if [[ -n ${CDROM_SET} ]] ; then
1505 showedmsg=1 1505 showedmsg=1
1506 fi 1506 fi
1507 einfo "Press return to scan for the cd again" 1507 einfo "Press return to scan for the cd again"
1508 einfo "or hit CTRL+C to abort the emerge." 1508 einfo "or hit CTRL+C to abort the emerge."
1509 echo 1509 echo
1510 if [[ ${showjolietmsg} -eq 0 ]] ; then
1511 showjolietmsg=1
1512 else
1510 einfo "If you are having trouble with the detection" 1513 ewarn "If you are having trouble with the detection"
1511 einfo "of your CD, it is possible that you do not have" 1514 ewarn "of your CD, it is possible that you do not have"
1512 einfo "Joliet support enabled in your kernel. Please" 1515 ewarn "Joliet support enabled in your kernel. Please"
1513 einfo "check that CONFIG_JOLIET is enabled in your kernel." 1516 ewarn "check that CONFIG_JOLIET is enabled in your kernel."
1517 ebeep 5
1518 fi
1514 read || die "something is screwed with your system" 1519 read || die "something is screwed with your system"
1515 done 1520 done
1516} 1521}
1517 1522
1518# @FUNCTION: strip-linguas 1523# @FUNCTION: strip-linguas
1578 eerror "preserve_old_lib() must be called from pkg_preinst() only" 1583 eerror "preserve_old_lib() must be called from pkg_preinst() only"
1579 die "Invalid preserve_old_lib() usage" 1584 die "Invalid preserve_old_lib() usage"
1580 fi 1585 fi
1581 [[ -z $1 ]] && die "Usage: preserve_old_lib <library to preserve> [more libraries to preserve]" 1586 [[ -z $1 ]] && die "Usage: preserve_old_lib <library to preserve> [more libraries to preserve]"
1582 1587
1588 # let portage worry about it
1589 has preserve-libs ${FEATURES} && return 0
1590
1583 local lib dir 1591 local lib dir
1584 for lib in "$@" ; do 1592 for lib in "$@" ; do
1585 [[ -e ${ROOT}/${lib} ]] || continue 1593 [[ -e ${ROOT}/${lib} ]] || continue
1586 dir=${lib%/*} 1594 dir=${lib%/*}
1587 dodir ${dir} || die "dodir ${dir} failed" 1595 dodir ${dir} || die "dodir ${dir} failed"
1597preserve_old_lib_notify() { 1605preserve_old_lib_notify() {
1598 if [[ ${EBUILD_PHASE} != "postinst" ]] ; then 1606 if [[ ${EBUILD_PHASE} != "postinst" ]] ; then
1599 eerror "preserve_old_lib_notify() must be called from pkg_postinst() only" 1607 eerror "preserve_old_lib_notify() must be called from pkg_postinst() only"
1600 die "Invalid preserve_old_lib_notify() usage" 1608 die "Invalid preserve_old_lib_notify() usage"
1601 fi 1609 fi
1610
1611 # let portage worry about it
1612 has preserve-libs ${FEATURES} && return 0
1602 1613
1603 local lib notice=0 1614 local lib notice=0
1604 for lib in "$@" ; do 1615 for lib in "$@" ; do
1605 [[ -e ${ROOT}/${lib} ]] || continue 1616 [[ -e ${ROOT}/${lib} ]] || continue
1606 if [[ ${notice} -eq 0 ]] ; then 1617 if [[ ${notice} -eq 0 ]] ; then
1726 done 1737 done
1727 eend 0 1738 eend 0
1728} 1739}
1729 1740
1730# @FUNCTION: make_wrapper 1741# @FUNCTION: make_wrapper
1731# @USAGE: <wrapper> <target> <chdir> [libpaths] [installpath] 1742# @USAGE: <wrapper> <target> [chdir] [libpaths] [installpath]
1732# @DESCRIPTION: 1743# @DESCRIPTION:
1733# Create a shell wrapper script named wrapper in installpath 1744# Create a shell wrapper script named wrapper in installpath
1734# (defaults to the bindir) to execute target (default of wrapper) by 1745# (defaults to the bindir) to execute target (default of wrapper) by
1735# first optionally setting LD_LIBRARY_PATH to the colon-delimited 1746# first optionally setting LD_LIBRARY_PATH to the colon-delimited
1736# libpaths followed by optionally changing directory to chdir. 1747# libpaths followed by optionally changing directory to chdir.

Legend:
Removed from v.1.294  
changed lines
  Added in v.1.297

  ViewVC Help
Powered by ViewVC 1.1.20