diff options
Diffstat (limited to 'app-admin/eselect-ecj/files/ecj-0.5.eselect')
-rw-r--r-- | app-admin/eselect-ecj/files/ecj-0.5.eselect | 175 |
1 files changed, 0 insertions, 175 deletions
diff --git a/app-admin/eselect-ecj/files/ecj-0.5.eselect b/app-admin/eselect-ecj/files/ecj-0.5.eselect deleted file mode 100644 index 6a627e9f0629..000000000000 --- a/app-admin/eselect-ecj/files/ecj-0.5.eselect +++ /dev/null @@ -1,175 +0,0 @@ -# -*-eselect-*- vim: ft=eselect -# Copyright 1999-2010 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Id: ecj-0.5.eselect,v 1.2 2010/02/28 19:24:35 ulm Exp $ - -DESCRIPTION="Manage ECJ targets" -MAINTAINER="java@gentoo.org" -VERSION="0.5" - -ECJ="${EROOT}/usr/bin/ecj" - -# find a list of ecj symlink targets, best first. -find_targets() { - for f in $(ls -r "${ECJ}"-[0-9]* 2> /dev/null) ; do - if [[ -f "${f}" ]] ; then - echo $(basename "${f}") - fi - done -} - -# get a named or numbered target. -find_target() { - local target=${1} - - if is_number "${target}" && [[ ${target} -ge 1 ]] ; then - targets=( $(find_targets ) ) - [[ -z "${targets}" ]] && die -q "No targets found!" - target=${targets[target-1]} - fi - - if [[ "${target}" = ecj-[0-9]* ]] && [[ -f "${EROOT}/usr/bin/${target}" ]] ; then - echo ${target} - else - die -q "Target \"${1}\" doesn't appear to be valid!" - fi -} - -# try to remove the ecj symlink. -remove_symlink() { - rm "${ECJ}" &>/dev/null -} - -# determine the current target. -get_target() { - local canonicalised=$(canonicalise "${ECJ}") - echo $(basename "${canonicalised}") -} - -# set the ecj symlink. -set_symlink() { - local target=$(find_target "${1}") - remove_symlink - ln -s "${target}" "${ECJ}" || die "Couldn't set ${target} symlink." -} - -### show action ### - -describe_show() { - echo "Show current ECJ target" -} - -do_show() { - if [[ ${#} -gt 0 ]]; then - die -q "No parameters allowed." - fi - - if [[ -L "${ECJ}" ]] ; then - get_target - return 0 - elif [[ -e "${ECJ}" ]] ; then - echo "(not a symlink)" >&2 - return 1 - else - echo "(unset)" >&2 - return 1 - fi -} - -### list action ### - -describe_list() { - echo "List available ECJ targets" -} - -do_list() { - if [[ ${#} -gt 0 ]]; then - die -q "Usage error: no parameters allowed." - fi - - local i targets - targets=( $(find_targets) ) - - for (( i = 0; i < ${#targets[@]}; i++ )); do - [[ ${targets[i]} = $(basename "$(canonicalise "${ECJ}")") ]] \ - && targets[i]=$(highlight_marker "${targets[i]}") - done - - write_list_start "Available ECJ targets:" - write_numbered_list -m "(none found)" "${targets[@]}" -} - -### set action ### - -describe_set() { - echo "Set a new ECJ target" -} - -describe_set_options() { - echo "target : Target name or number (from 'list' action)" -} - -describe_set_parameters() { - echo "<target>" -} - -do_set() { - if [[ $# -gt 1 ]]; then - die -q "Too many parameters. Expected only one." - fi - - local target=${1} - - if [[ -z "${target}" ]] ; then - die -q "You didn't give me a target name or number." - elif [[ -L "${ECJ}" ]] ; then - if ! remove_symlink ; then - die -q "Can't remove existing ecj provider." - elif ! set_symlink "${1}" ; then - die -q "Can't set new ecj provider." - fi - elif [[ -e "${ECJ}" ]] ; then - write_warning_msg "Can't set a new ecj provider. There's a file in the way at ${ECJ}. You can try removing it manually, and then re-running this command." - else - set_symlink "${target}" || die -q "Wasn't able to set a new provider." - fi -} - -### update action ### - -describe_update() { - echo "Set the ECJ target to the latest if the current target is invalid or if the given target is the latest" -} - -describe_update_options() { - echo "target (optional) : Target name (from 'list' action)" -} - -describe_update_parameters() { - echo "<target>" -} - -do_update() { - if [[ $# -gt 1 ]] ; then - die -q "Too many parameters. Expected only one." - fi - - # For pkg_postrm - if [[ ! $(find_targets) ]]; then - remove_symlink - return - fi - - local canonicalised=$(canonicalise "${ECJ}") - - if [[ ! -L "${ECJ}" ]] || [[ ! -f "${canonicalised}" ]] ; then - do_set 1 - elif [[ -n "${1}" ]] ; then - # Check whether target name is valid. - find_target "${1}" > /dev/null - - if [[ "${1}" == "$(find_target 1)" ]] ; then - do_set 1 - fi - fi -} |