diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-08-31 19:52:58 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-08-31 19:52:58 -0700 |
commit | ce501b36d7078db059c606d3b4f38637ad09528e (patch) | |
tree | 6b60a4a21d020516d6158bbb580ff219e4e0a2f6 /bin/ebuild.sh | |
parent | 6b8855016820fb84bac25720d99bf8e42c9e9469 (diff) | |
download | portage-ce501b36d7078db059c606d3b4f38637ad09528e.tar.gz portage-ce501b36d7078db059c606d3b4f38637ad09528e.tar.bz2 portage-ce501b36d7078db059c606d3b4f38637ad09528e.zip |
xml/metadata: implement XMLParser.doctype()
Avoid deprecation warnings again, like in commit
63035acd702ab0cdaac31e33676b5a20a91eae47.
Diffstat (limited to 'bin/ebuild.sh')
-rwxr-xr-x | bin/ebuild.sh | 88 |
1 files changed, 52 insertions, 36 deletions
diff --git a/bin/ebuild.sh b/bin/ebuild.sh index 23a12401d..ae03df7c1 100755 --- a/bin/ebuild.sh +++ b/bin/ebuild.sh @@ -325,9 +325,11 @@ declare -a PORTAGE_DOCOMPRESS_SKIP=( /usr/share/doc/${PF}/html ) keepdir() { dodir "$@" local x + local ed=${ED} + case "$EAPI" in 0|1|2) ed=${D} ;; esac if [ "$1" == "-R" ] || [ "$1" == "-r" ]; then shift - find "$@" -type d -printf "${D}%p/.keep_${CATEGORY}_${PN}-${SLOT}\n" \ + find "$@" -type d -printf "${ed}%p/.keep_${CATEGORY}_${PN}-${SLOT}\n" \ | tr "\n" "\0" | \ while read -r -d $'\0' ; do >> "$REPLY" || \ @@ -335,8 +337,8 @@ keepdir() { done else for x in "$@"; do - >> "${D}${x}/.keep_${CATEGORY}_${PN}-${SLOT}" || \ - die "Failed to create .keep in ${D}${x}" + >> "${ed}${x}/.keep_${CATEGORY}_${PN}-${SLOT}" || \ + die "Failed to create .keep in ${ed}${x}" done fi } @@ -484,6 +486,8 @@ hasg() { hasgq() { hasg "$@" >/dev/null ; } econf() { local x + local eprefix=${EPREFIX} + case "$EAPI" in 0|1|2) eprefix= ;; esac local phase_func=$(_ebuild_arg_to_phase "$EAPI" "$EBUILD_PHASE") if [[ -n $phase_func ]] ; then @@ -505,12 +509,12 @@ econf() { sed -e "1s:^#![[:space:]]*/bin/sh:#!$CONFIG_SHELL:" -i "$ECONF_SOURCE/configure" || \ die "Substition of shebang in '$ECONF_SOURCE/configure' failed" fi - if [ -e /usr/share/gnuconfig/ ]; then + if [ -e "${eprefix}"/usr/share/gnuconfig/ ]; then find "${WORKDIR}" -type f '(' \ -name config.guess -o -name config.sub ')' -print0 | \ while read -r -d $'\0' x ; do - vecho " * econf: updating ${x/${WORKDIR}\/} with /usr/share/gnuconfig/${x##*/}" - cp -f /usr/share/gnuconfig/"${x##*/}" "${x}" + vecho " * econf: updating ${x/${WORKDIR}\/} with ${eprefix}/usr/share/gnuconfig/${x##*/}" + cp -f "${eprefix}"/usr/share/gnuconfig/"${x##*/}" "${x}" done fi @@ -530,7 +534,7 @@ econf() { if [[ -n ${CONF_LIBDIR} ]] && ! hasgq --libdir=\* "$@" ; then export CONF_PREFIX=$(hasg --exec-prefix=\* "$@") [[ -z ${CONF_PREFIX} ]] && CONF_PREFIX=$(hasg --prefix=\* "$@") - : ${CONF_PREFIX:=/usr} + : ${CONF_PREFIX:=${eprefix}/usr} CONF_PREFIX=${CONF_PREFIX#*=} [[ ${CONF_PREFIX} != /* ]] && CONF_PREFIX="/${CONF_PREFIX}" [[ ${CONF_LIBDIR} != /* ]] && CONF_LIBDIR="/${CONF_LIBDIR}" @@ -538,15 +542,15 @@ econf() { fi set -- \ - --prefix=/usr \ + --prefix="${eprefix}"/usr \ ${CBUILD:+--build=${CBUILD}} \ --host=${CHOST} \ ${CTARGET:+--target=${CTARGET}} \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --datadir=/usr/share \ - --sysconfdir=/etc \ - --localstatedir=/var/lib \ + --mandir="${eprefix}"/usr/share/man \ + --infodir="${eprefix}"/usr/share/info \ + --datadir="${eprefix}"/usr/share \ + --sysconfdir="${eprefix}"/etc \ + --localstatedir="${eprefix}"/var/lib \ "$@" \ ${EXTRA_ECONF} vecho "${ECONF_SOURCE}/configure" "$@" @@ -570,6 +574,8 @@ econf() { einstall() { # CONF_PREFIX is only set if they didn't pass in libdir above. local LOCAL_EXTRA_EINSTALL="${EXTRA_EINSTALL}" + local ed=${ED} + case "$EAPI" in 0|1|2) ed=${D} ;; esac LIBDIR_VAR="LIBDIR_${ABI}" if [ -n "${ABI}" -a -n "${!LIBDIR_VAR}" ]; then CONF_LIBDIR="${!LIBDIR_VAR}" @@ -584,22 +590,22 @@ einstall() { if [ -f ./[mM]akefile -o -f ./GNUmakefile ] ; then if [ "${PORTAGE_DEBUG}" == "1" ]; then - ${MAKE:-make} -n prefix="${D}usr" \ - datadir="${D}usr/share" \ - infodir="${D}usr/share/info" \ - localstatedir="${D}var/lib" \ - mandir="${D}usr/share/man" \ - sysconfdir="${D}etc" \ + ${MAKE:-make} -n prefix="${ed}usr" \ + datadir="${ed}usr/share" \ + infodir="${ed}usr/share/info" \ + localstatedir="${ed}var/lib" \ + mandir="${ed}usr/share/man" \ + sysconfdir="${ed}etc" \ ${LOCAL_EXTRA_EINSTALL} \ ${MAKEOPTS} ${EXTRA_EMAKE} -j1 \ "$@" install fi - ${MAKE:-make} prefix="${D}usr" \ - datadir="${D}usr/share" \ - infodir="${D}usr/share/info" \ - localstatedir="${D}var/lib" \ - mandir="${D}usr/share/man" \ - sysconfdir="${D}etc" \ + ${MAKE:-make} prefix="${ed}usr" \ + datadir="${ed}usr/share" \ + infodir="${ed}usr/share/info" \ + localstatedir="${ed}var/lib" \ + mandir="${ed}usr/share/man" \ + sysconfdir="${ed}etc" \ ${LOCAL_EXTRA_EINSTALL} \ ${MAKEOPTS} ${EXTRA_EMAKE} -j1 \ "$@" install || die "einstall failed" @@ -795,8 +801,10 @@ into() { export DESTTREE="" else export DESTTREE=$1 - if [ ! -d "${D}${DESTTREE}" ]; then - install -d "${D}${DESTTREE}" + local ed=${ED} + case "$EAPI" in 0|1|2) ed=${D} ;; esac + if [ ! -d "${ed}${DESTTREE}" ]; then + install -d "${ed}${DESTTREE}" local ret=$? if [[ $ret -ne 0 ]] ; then helpers_die "${FUNCNAME[0]} failed" @@ -811,8 +819,10 @@ insinto() { export INSDESTTREE="" else export INSDESTTREE=$1 - if [ ! -d "${D}${INSDESTTREE}" ]; then - install -d "${D}${INSDESTTREE}" + local ed=${ED} + case "$EAPI" in 0|1|2) d=${D} ;; esac + if [ ! -d "${ed}${INSDESTTREE}" ]; then + install -d "${ed}${INSDESTTREE}" local ret=$? if [[ $ret -ne 0 ]] ; then helpers_die "${FUNCNAME[0]} failed" @@ -827,8 +837,10 @@ exeinto() { export _E_EXEDESTTREE_="" else export _E_EXEDESTTREE_="$1" - if [ ! -d "${D}${_E_EXEDESTTREE_}" ]; then - install -d "${D}${_E_EXEDESTTREE_}" + local ed=${ED} + case "$EAPI" in 0|1|2) d=${D} ;; esac + if [ ! -d "${ed}${_E_EXEDESTTREE_}" ]; then + install -d "${ed}${_E_EXEDESTTREE_}" local ret=$? if [[ $ret -ne 0 ]] ; then helpers_die "${FUNCNAME[0]} failed" @@ -843,8 +855,10 @@ docinto() { export _E_DOCDESTTREE_="" else export _E_DOCDESTTREE_="$1" - if [ ! -d "${D}usr/share/doc/${PF}/${_E_DOCDESTTREE_}" ]; then - install -d "${D}usr/share/doc/${PF}/${_E_DOCDESTTREE_}" + local ed=${ED} + case "$EAPI" in 0|1|2) d=${D} ;; esac + if [ ! -d "${ed}usr/share/doc/${PF}/${_E_DOCDESTTREE_}" ]; then + install -d "${ed}usr/share/doc/${PF}/${_E_DOCDESTTREE_}" local ret=$? if [[ $ret -ne 0 ]] ; then helpers_die "${FUNCNAME[0]} failed" @@ -2091,17 +2105,19 @@ if ! has "$EBUILD_PHASE" clean cleanrm ; then PATH=$_ebuild_helpers_path:$PREROOTPATH${PREROOTPATH:+:}/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin${ROOTPATH:+:}$ROOTPATH unset _ebuild_helpers_path + _eprefix=${EPREFIX} + case "$EAPI" in 0|1|2) _eprefix= ;; esac # Use default ABI libdir in accordance with bug #355283. x=LIBDIR_${DEFAULT_ABI} [[ -n $DEFAULT_ABI && -n ${!x} ]] && x=${!x} || x=lib if has distcc $FEATURES ; then - PATH="/usr/$x/distcc/bin:$PATH" + PATH="${_eprefix}/usr/$x/distcc/bin:$PATH" [[ -n $DISTCC_LOG ]] && addwrite "${DISTCC_LOG%/*}" fi if has ccache $FEATURES ; then - PATH="/usr/$x/ccache/bin:$PATH" + PATH="${_eprefix}/usr/$x/ccache/bin:$PATH" if [[ -n $CCACHE_DIR ]] ; then addread "$CCACHE_DIR" @@ -2111,7 +2127,7 @@ if ! has "$EBUILD_PHASE" clean cleanrm ; then [[ -n $CCACHE_SIZE ]] && ccache -M $CCACHE_SIZE &> /dev/null fi - unset x + unset x _eprefix if [[ -n $QA_PREBUILT ]] ; then |