| #!/bin/bash |
| # Copyright 1999-2017 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| source "${PORTAGE_BIN_PATH}"/isolated-functions.sh || exit 1 |
| |
| if [[ $# -ne 2 ]] ; then |
| __helpers_die "${0##*/}: two arguments needed" |
| exit 1 |
| fi |
| |
| if ! ___eapi_has_prefix_variables; then |
| ED=${D} |
| fi |
| |
| if [[ ${2} == */ ]] || [[ -d ${ED}${2} && ! -L ${ED}${2} ]] ; then |
| # implicit basename not allowed by PMS (bug #379899) |
| __helpers_die "${0##*/}: dosym target omits basename: '${2}'" |
| fi |
| |
| destdir=${2%/*} |
| [[ ! -d ${ED}${destdir} ]] && dodir "${destdir}" |
| target="${1}" |
| # DEPRECATED HACK: when absolute, prefix with offset for Gentoo Prefix |
| # (but only if ${EPREFIX} is not there already) |
| # this will eventually be removed, #615594 |
| if [[ ${target:0:1} == "/" && ${target}/ != "${EPREFIX}"/* ]]; then |
| eqawarn "dosym: prepending EPREFIX to path implicitly. If this is desired," |
| eqawarn " please fix the ebuild to use \${EPREFIX} explicitly." |
| target="${EPREFIX}${target}" |
| fi |
| ln -snf "${target}" "${ED}${2}" |
| |
| ret=$? |
| [[ $ret -ne 0 ]] && __helpers_die "${0##*/} failed" |
| exit $ret |