diff options
author | Mike Frysinger <vapier@gentoo.org> | 2009-12-09 17:47:34 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2009-12-09 19:26:33 -0500 |
commit | 7cae558c82e46ebda5cdc56b2a6d891766a95494 (patch) | |
tree | bb00cd092828f65eecd51dc29a75d40b0d59c345 | |
parent | crossdev: add win64 targets (diff) | |
download | crossdev-7cae558c82e46ebda5cdc56b2a6d891766a95494.tar.gz crossdev-7cae558c82e46ebda5cdc56b2a6d891766a95494.tar.bz2 crossdev-7cae558c82e46ebda5cdc56b2a6d891766a95494.zip |
crossdev: let people make their own cross dirs
URL: http://bugs.gentoo.org/211386
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-rwxr-xr-x | crossdev | 26 |
1 files changed, 16 insertions, 10 deletions
@@ -542,16 +542,22 @@ set_use() { } set_links() { local cat=$1 pkg=$2 - local s srcdir=${PORTDIR} - rm -f "${PORTDIR_OVERLAY}"/cross-${CTARGET}/${pkg} - for s in ${PORTDIR_OVERLAYS} ; do - if [[ -d ${s}/${cat}/${pkg} ]] ; then - einfo "Using ${cat}/${pkg} from ${s} instead of ${PORTDIR}" - srcdir=${s} - break - fi - done - ln -s "${srcdir}"/${cat}/${pkg} "${PORTDIR_OVERLAY}"/cross-${CTARGET}/${pkg} + local s srcdir=${PORTDIR} d + + d="${PORTDIR_OVERLAY}"/cross-${CTARGET}/${pkg} + if [[ ! -L ${d} && -d ${d} ]] ; then #211386 + einfo "Leaving existing dir alone: ${d}" + else + rm -f "${d}" + for s in ${PORTDIR_OVERLAYS} ; do + if [[ -d ${s}/${cat}/${pkg} ]] ; then + einfo "Using ${cat}/${pkg} from ${s} instead of ${PORTDIR}" + srcdir=${s} + break + fi + done + ln -s "${srcdir}"/${cat}/${pkg} "${d}" + fi } set_portage() { local cat=$1 pkg=$2 ver=$3 |