summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/prefix-chain-utils/files/prefix-chain-wrapper.in')
-rw-r--r--sys-apps/prefix-chain-utils/files/prefix-chain-wrapper.in83
1 files changed, 0 insertions, 83 deletions
diff --git a/sys-apps/prefix-chain-utils/files/prefix-chain-wrapper.in b/sys-apps/prefix-chain-utils/files/prefix-chain-wrapper.in
deleted file mode 100644
index d612cc46bb28..000000000000
--- a/sys-apps/prefix-chain-utils/files/prefix-chain-wrapper.in
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/usr/bin/env bash
-
-if [ -r /cygdrive/. ]; then
- winpath2unix() { cygpath -u "$1"; }
- unixpath2win() { cygpath -w "$1"; }
-fi
-
-link_dirs=()
-opts=()
-chost="@GENTOO_PORTAGE_CHOST@"
-prefix="@GENTOO_PORTAGE_EPREFIX@"
-absprefix=${prefix}
-if [[ ${CHOST} == *"-winnt"* ]]; then
- # we may get called from windows binary, like pkgdata in dev-libs/icu
- # in this case, PATH elements get the "/dev/fs/C/WINDOWS/SUA" prefix
- absprefix=$(winpath2unix "$(unixpath2win "${absprefix}")")
-fi
-[[ $0 == *windres* ]] && mode=compile || mode=link
-orig_args=("$@")
-
-for opt in "$@"; do
- case "$opt" in
- -L) link_dirs=("${link_dirs[@]}" "-L$1"); shift ;;
- -L*) link_dirs=("${link_dirs[@]}" "${opt}") ;;
- *)
- case "${opt}" in
- -v)
- # -v done right: only use mode version if -v is the _only_
- # argument on the command line.
- [[ ${#orig_args[@]} -gt 1 ]] || mode=version
- ;;
- --version) mode=version ;;
- -c|-E|-S) mode=compile ;;
- -print-search-dirs) mode=dirs ;;
- esac
- opts=("${opts[@]}" "${opt}")
- ;;
- esac
-done
-
-save_ifs=$IFS
-IFS=':'
-new_path=
-for p in $PATH; do
- IFS=$save_ifs
- [[ "${p#${absprefix}}" != "${p}" ]] && continue
- if [[ -z "${new_path}" ]]; then
- new_path="${p}"
- else
- new_path="${new_path}:${p}"
- fi
-done
-IFS=$save_ifs
-
-PATH=${new_path}
-
-# toolchain-prefix-wrapper's ld-wrapper understands '-R' for aix and hpux too.
-# parity (winnt) understands -rpath only ...
-case "${chost}" in
-*-winnt*) rpath_opt="-Wl,-rpath," ;;
-*) rpath_opt="-Wl,-R," ;;
-esac
-
-pfx_link=("-L${prefix}/usr/lib" "-L${prefix}/lib")
-pfx_link_r=("${rpath_opt}${prefix}/lib" "${rpath_opt}${prefix}/usr/lib")
-pfx_comp=("-I${prefix}/include" "-I${prefix}/usr/include")
-
-case "$mode" in
-link) exec "$(basename $0)" "${link_dirs[@]}" "${pfx_link[@]}" "${opts[@]}" "${pfx_comp[@]}" "${pfx_link_r[@]}" ;;
-compile) exec "$(basename $0)" "${link_dirs[@]}" "${opts[@]}" "${pfx_comp[@]}" ;;
-version) exec "$(basename $0)" "${orig_args[@]}" ;;
-dirs)
- "$(basename $0)" "${orig_args[@]}" | while read line; do
- if [[ "${line}" == "libraries: ="* ]]; then
- echo "libraries: =${prefix}/usr/lib:${prefix}/lib:${line#"libraries: ="}"
- else
- echo "${line}"
- fi
- done
- ;;
-*) echo "cannot infer $0's mode from comamnd line arguments"; exit 1 ;;
-esac
-