#!/bin/sh

umask 0022

## Environment
## ======================================================================

## Make a clean room
eval "`env |sed -n '/^PATH=/d;s/^\([a-zA-Z0-9_]*\)=.*$/unset \1/p'`"

osstech_prefix="/opt/osstech"
sunwspro_prefix="/opt/SUNWspro"

LC_ALL="C"
PATH="$osstech_prefix/bin:$sunwspro_prefix/bin:/usr/sfw/bin:/usr/xpg6/bin:/usr/xpg4/bin:/bin:/usr/bin:/usr/ccs/bin:/usr/ucb:/sbin:/usr/sbin"
export LC_ALL PATH

CC="$sunwspro_prefix/bin/cc"
CXX="$sunwspro_prefix/bin/CC"
LDFLAGS="-L$osstech_prefix/lib -R$osstech_prefix/lib -L/usr/sfw/lib -R/usr/sfw/lib"
CFLAGS="-O -g -I$osstech_prefix/include -I/usr/sfw/include $LDFLAGS"
CPPFLAGS="$CFLAGS"
CXXFLAGS="$CFLAGS"

export CC CXX CFLAGS CPPFLAGS CXXFLAGS LDFLAGS

## Wrapper function
## ======================================================================

tar() {
    if type gtar >/dev/null 2>&1; then
	gtar ${1:+"$@"}
	return $?
    else
	tar_cmd="$1"; shift
	case "$tar_cmd" in
	xzf|xfz|zxf|zfx|fxz|fzx|-xzf|-xfz|-zxf|-zfx|-fxz|-fzx)
	    gzip -dc "$1" |command tar xf -
	    return $?
	    ;;
	czf|cfz|zcf|zfc|fcz|fzc|-czf|-cfz|-zcf|-zfc|-fcz|-fzc)
	    command tar cf - ${1:+"$@"} |gzip -dc "$2"
	    return $?
	    ;;
	*)
	    command tar "$tar_cmd" ${1:+"$@"}
	    return $?
	    ;;
	esac
    fi
}

patch() {
    if type gpatch >/dev/null 2>&1; then
	gpatch ${1:+"$@"}
	return $?
    else
	command patch ${1:+"$@"}
	return $?
    fi
}

make() {
    if type gmake >/dev/null 2>&1; then
	gmake ${1:+"$@"}
	return $?
    else
	command make ${1:+"$@"}
	return $?
    fi
}

xzcat() {
    case "$1" in
    *.bz2|*.tbz2)
	bzip2 -d <"$1"
	return $?
	;;
    *.gz|*.tgz|*.Z|*.z|*.tz)
	gzip -d <"$1"
	return $?
	;;
    *)
	cat -- "$1"
	return $?
	;;
    esac
}

