Skip to content

Commit

Permalink
eutils.eclass: Remove built_with_use().
Browse files Browse the repository at this point in the history
The function was deprecated in 2010 and is no longer used in the tree.
Use EAPI 2 use deps and has_version as replacement.

Closes: https://bugs.gentoo.org/261562
  • Loading branch information
ulm committed Jan 29, 2018
1 parent 2fb466d commit 28ef902
Showing 1 changed file with 0 additions and 92 deletions.
92 changes: 0 additions & 92 deletions eclass/eutils.eclass
Original file line number Diff line number Diff line change
Expand Up @@ -164,98 +164,6 @@ strip-linguas() {
export LINGUAS=${newls:1}
}

# @FUNCTION: built_with_use
# @USAGE: [--hidden] [--missing <action>] [-a|-o] <DEPEND ATOM> <List of USE flags>
# @DESCRIPTION:
#
# Deprecated: Use EAPI 2 use deps in DEPEND|RDEPEND and with has_version calls.
#
# A temporary hack until portage properly supports DEPENDing on USE
# flags being enabled in packages. This will check to see if the specified
# DEPEND atom was built with the specified list of USE flags. The
# --missing option controls the behavior if called on a package that does
# not actually support the defined USE flags (aka listed in IUSE).
# The default is to abort (call die). The -a and -o flags control
# the requirements of the USE flags. They correspond to "and" and "or"
# logic. So the -a flag means all listed USE flags must be enabled
# while the -o flag means at least one of the listed IUSE flags must be
# enabled. The --hidden option is really for internal use only as it
# means the USE flag we're checking is hidden expanded, so it won't be found
# in IUSE like normal USE flags.
#
# Remember that this function isn't terribly intelligent so order of optional
# flags matter.
built_with_use() {
local hidden="no"
if [[ $1 == "--hidden" ]] ; then
hidden="yes"
shift
fi

local missing_action="die"
if [[ $1 == "--missing" ]] ; then
missing_action=$2
shift ; shift
case ${missing_action} in
true|false|die) ;;
*) die "unknown action '${missing_action}'";;
esac
fi

local opt=$1
[[ ${opt:0:1} = "-" ]] && shift || opt="-a"

local PKG=$(best_version $1)
[[ -z ${PKG} ]] && die "Unable to resolve $1 to an installed package"
shift

has "${EAPI:-0}" 0 1 2 && local EROOT=${ROOT}
local USEFILE=${EROOT}/var/db/pkg/${PKG}/USE
local IUSEFILE=${EROOT}/var/db/pkg/${PKG}/IUSE

# if the IUSE file doesn't exist, the read will error out, we need to handle
# this gracefully
if [[ ! -e ${USEFILE} ]] || [[ ! -e ${IUSEFILE} && ${hidden} == "no" ]] ; then
case ${missing_action} in
true) return 0;;
false) return 1;;
die) die "Unable to determine what USE flags $PKG was built with";;
esac
fi

if [[ ${hidden} == "no" ]] ; then
local IUSE_BUILT=( $(<"${IUSEFILE}") )
# Don't check USE_EXPAND #147237
local expand
for expand in $(echo ${USE_EXPAND} | tr '[:upper:]' '[:lower:]') ; do
if [[ $1 == ${expand}_* ]] ; then
expand=""
break
fi
done
if [[ -n ${expand} ]] ; then
if ! has $1 ${IUSE_BUILT[@]#[-+]} ; then
case ${missing_action} in
true) return 0;;
false) return 1;;
die) die "$PKG does not actually support the $1 USE flag!";;
esac
fi
fi
fi

local USE_BUILT=$(<${USEFILE})
while [[ $# -gt 0 ]] ; do
if [[ ${opt} = "-o" ]] ; then
has $1 ${USE_BUILT} && return 0
else
has $1 ${USE_BUILT} || return 1
fi
shift
done
[[ ${opt} = "-a" ]]
}

# @FUNCTION: make_wrapper
# @USAGE: <wrapper> <target> [chdir] [libpaths] [installpath]
# @DESCRIPTION:
Expand Down

0 comments on commit 28ef902

Please sign in to comment.