?RCS: $Id: shell.U 1 2006-08-24 12:32:52Z rmanfredi $
?RCS:
?RCS:  Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
?RCS:  
?RCS:  You may redistribute only under the terms of the Artistic Licence,
?RCS:  as specified in the README file that comes with the distribution.
?RCS:  You may reuse parts of this distribution only within the terms of
?RCS:  that same Artistic Licence; a copy of which may be found at the root
?RCS:  of the source tree for dist 4.0.
?RCS:
?RCS: $Log: shell.U,v $
?RCS: Revision 3.0  1993/08/18  12:10:10  ram
?RCS: Baseline for dist 3.0 netwide release.
?RCS:
?MAKE:cc: cat contains sysman +large Mcc Myread Guess Oldconfig Loc
?MAKE:	-pick add $@ %<
?DEF:cc=cc
?S:cc:
?S:	This variable holds the name of a command to execute a C compiler which
?S:	can resolve multiple global references that happen to have the same
?S:	name.  Usual values are "cc", "Mcc", "cc -M", and "gcc".
?S:.
: see if we need a special compiler
echo " "
if usg; then
	case "$cc" in
	'') case "$Mcc" in
		/*) dflt='Mcc';;
		*) case "$large" in
			-M*) dflt='cc';;
			*)	if $contains '\-M' $sysman/cc.1 >/dev/null 2>&1 ; then
					if $contains '\-M' $sysman/cpp.1 >/dev/null 2>&1; then
						dflt='cc'
					else
						dflt='cc -M'
					fi
				else
					dflt='cc'
				fi;;
			esac;;
		esac;;
	*)  dflt="$cc";;
	esac
	$cat <<'EOM'
On some systems the default C compiler will not resolve multiple global
references that happen to have the same name.  On some such systems the "Mcc"
command may be used to force these to be resolved.  On other systems a "cc -M"
command is required.  (Note that the -M flag on other systems indicates a
memory model to use!) If you have the Gnu C compiler, you might wish to use
that instead.

EOM
	rp="What command will force resolution on this system?"
	. myread
	cc="$ans"
else
	case "$cc" in
	'') dflt=cc;;
	*) dflt="$cc";;
	esac
	rp="Use which C compiler?"
	. myread
	cc="$ans"
fi
case "$cc" in
gcc*) cpp=`loc gcc-cpp $cpp $pth`;;
esac

