#!/bin/sh
#
# Update compiler links to ccache (in /usr/local/bin)
#
# The idea is that /usr/local/bin is ahead of /usr/bin in your PATH, so adding
# the link /usr/local/bin/cc -> /usr/bin/ccache means that it is run instead of
# /usr/bin/cc
#
# Written by: Behan Webster <behanw@websterwood.com>
#

DIRECTORY=/usr/local/bin
CCACHE=/usr/bin/ccache
CCDIR=/usr/lib/ccache

usage() {
    echo "Usage: `basename $0` [--directory <dir>] [--remove]"
    exit 0
}

while [ $# -gt 0 ] ; do
    case "$1" in
        -d*|--d*|--directory) DIRECTORY=$2; shift; shift;;
        -h*|--h*|--help) usage;;
        -r*|--r*|--remove) REMOVE=1; shift;;
        -t*|--t*|--test) TEST=echo; shift;;
    esac
done

for FILE in `cd $CCDIR; ls` ; do
    LINK=$DIRECTORY/$FILE
    if [ -z "$REMOVE" ] ; then
        # Add link
        $TEST ln -fs $CCACHE $LINK
    else
        # Remove link
        if [ -L "$LINK" ] ; then
            $TEST rm -f $LINK
        fi
    fi
done

# vim: sw=4 ts=4
