diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-devel/icecream/files/icecream-config |
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-devel/icecream/files/icecream-config')
-rw-r--r-- | sys-devel/icecream/files/icecream-config | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/sys-devel/icecream/files/icecream-config b/sys-devel/icecream/files/icecream-config new file mode 100644 index 000000000000..6ed24c743772 --- /dev/null +++ b/sys-devel/icecream/files/icecream-config @@ -0,0 +1,69 @@ +#!/bin/sh +# +# icecream-config - helper script for icecream and its ebuild +# +# Copyright 2003-2010 Superlucidity Services, LLC +# This program licensed under the GNU GPL version 2. +# +# This script developed by Zachary T Welch at Superlucidity Services, LLC +# it was cloned from the distcc-config script to make ccache-config +# and then modified by Marcus Furlong to configure icecream too. +# +# Additional features to come; this provides a starting point + +# this should be getopt'd someday (override with ICEC_QUIET=1) +ICECC_VERBOSE=1 + +icecc_echo() { + [ -z "${ICECC_QUIET}" -a -n "${ICECC_VERBOSE}" ] && echo "$*" +} + +### +# the following functions manage the icecream symlinks +# they allow the user or other scripts (namely gcc-config) to +# automatically update icecream's links when upgrading toolchains +# +icecc_remove_link() { + local t="/usr/lib/icecc/bin/${1}" + if [ -L ${t} ]; then + icecc_echo "Removing ${t}..." + rm -f "${t}" + fi +} +icecc_install_link() { + # Search the PATH for the specified compiler + # then create shadow link in /usr/lib/icecc/bin to icecc + + if [ -n "$(type -p ${1})" ]; then + # first be sure any old link is removed + ICECC_QUIET=1 icecc_remove_link "${1}" + + # then create the new link + local t="/usr/lib/icecc/bin/${1}" + icecc_echo "Creating icecream shadow link: ${t}..." + ln -s /usr/bin/icecc "${t}" + fi +} +icecc_links() { + local a + for a in gcc cc c++ g++ ; do + [ -n "${2}" ] && a="${2}-${a}" + eval "icecc_${1}_link" "${a}" + done +} + +### +# main routine + +case "${1}" in + --install-links ) + icecc_links install "${2}" + ;; + --remove-links ) + icecc_links remove "${2}" + ;; + * ) + echo "usage: ${0} {--install-links|--remove-links} [ CHOST ]" + ;; +esac + |