diff options
author | Benda Xu <heroxbd@gentoo.org> | 2016-03-03 21:52:43 +0900 |
---|---|---|
committer | Benda Xu <heroxbd@gentoo.org> | 2016-03-03 21:52:43 +0900 |
commit | 5a554f1daefea0a57917fd7a7fd76cc5c6ca9b29 (patch) | |
tree | 25d732728365150aff16a7bb22347ed4ade569b8 | |
parent | dev-util/cmake: import from gx86. (diff) | |
download | heroxbd-5a554f1daefea0a57917fd7a7fd76cc5c6ca9b29.tar.gz heroxbd-5a554f1daefea0a57917fd7a7fd76cc5c6ca9b29.tar.bz2 heroxbd-5a554f1daefea0a57917fd7a7fd76cc5c6ca9b29.zip |
prefix.eclass: import from gx86.
-rw-r--r-- | eclass/prefix.eclass | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/eclass/prefix.eclass b/eclass/prefix.eclass new file mode 100644 index 0000000..1f3c4b0 --- /dev/null +++ b/eclass/prefix.eclass @@ -0,0 +1,52 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# @ECLASS: prefix.eclass +# @MAINTAINER: +# Feel free to contact the Prefix team through <prefix@gentoo.org> if +# you have problems, suggestions or questions. +# @BLURB: Eclass to provide Prefix functionality +# @DESCRIPTION: +# Gentoo Prefix allows users to install into a self defined offset +# located somewhere in the filesystem. Prefix ebuilds require +# additional functions and variables which are defined by this eclass. + +# @ECLASS-VARIABLE: EPREFIX +# @DESCRIPTION: +# The offset prefix of a Gentoo Prefix installation. When Gentoo Prefix +# is not used, ${EPREFIX} should be "". Prefix Portage sets EPREFIX, +# hence this eclass has nothing to do here in that case. +# Note that setting EPREFIX in the environment with Prefix Portage sets +# Portage into cross-prefix mode. +if [[ ! ${EPREFIX+set} ]]; then + export EPREFIX='' +fi + + +# @FUNCTION: eprefixify +# @USAGE: <list of to be eprefixified files> +# @DESCRIPTION: +# replaces @GENTOO_PORTAGE_EPREFIX@ with ${EPREFIX} for the given files, +# dies if no arguments are given, a file does not exist, or changing a +# file failed. +eprefixify() { + [[ $# -lt 1 ]] && die "at least one argument required" + + einfo "Adjusting to prefix ${EPREFIX:-/}" + local x + for x in "$@" ; do + if [[ -e ${x} ]] ; then + ebegin " ${x##*/}" + sed -i -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}|g" "${x}" + eend $? || die "failed to eprefixify ${x}" + else + die "${x} does not exist" + fi + done + + return 0 +} + + +# vim: tw=72: |