: sgi.mips3 cc wrapper that generates MIPS III binaries : 2007-04-27 :

HOSTTYPE=sgi.mips3

case " $* " in
*" -dumpmachine "*) echo $HOSTTYPE; exit ;;
esac

# ld:
#	  15
#	  84
#	  85
#	 134
# cc:
#	1685 (first!!) Invalid error number: X.
#	1035 cpp #error -- 0 exit status by default - botch botch botch
#	1048
#	1155
#	1171 The indicated expression has no effect.
#	1184 "=" is used where where "==" may have been intended.
#	1209 The controlling expression is constant.
#	1343
#	3169 X not marked as intrinsic because it is not yet declared
#	3170 X not marked as intrinsic because it is not yet declared
#	3421 expecting function name #pragma intrinsic (X)
#	3433 X not marked as intrinsic because it is not yet declared
#	3434 X not marked as intrinsic because it is not yet declared

cc=/usr/bin/cc
debug=
dynamic=-G0
flags=-OPT:Olimit=0
fatal=1035
ignore=1685,733,1048,1155,1171,1184,1209,1343,3169,3170,3421,3433,3434
ldignore=15,84,85,13
optimize=

case $_AST_cc_OPTIONS in
?*)	eval $_AST_cc_OPTIONS ;;
esac
case $fatal in
?*)	fatal="-diag_error $fatal" ;;
esac
case $ignore in
?*)	ignore="-woff $ignore" ;;
esac
case $ldignore in
?*)	ifs=$IFS
	IFS=,
	v=$ldignore
	ldignore=
	for i in $v
	do	ldignore="$ldignore -Wl,-woff,$i"
	done
	IFS=$ifs
	;;
esac
case $debug in
?*)	integer n=0
	for i
	do	case $i in
		-g*)	case $debug in
			-)	continue ;;
			esac
			i=$debug
			;;
		esac
		a[n++]=$i
	done
	set -- ${a[@]}
	;;
esac
case $optimize in
?*)	integer n=0
	for i
	do	case $i in
		-O*)	case $optimize in
			-)	continue ;;
			esac
			i=$optimize
			;;
		esac
		a[n++]=$i
	done
	set -- ${a[@]}
	;;
esac

case $1 in
-mips2)	if	test -d /usr/lib32
	then	LD_LIBRARYN32_PATH=/lib32 $cc -32 -mips2 $flags $dynamic $ldignore $ignore "$@"
	else	$cc -mips2 $flags $ignore "$@"
	fi
	;;
-mips4)	case " $* " in
	*" -ldl "*)
		integer n=0
		for i
		do	case $i in
			-ldl)	;;
			*)	a[n++]=$i ;;
			esac
		done
		set -- ${a[@]}
	esac
	$cc -64 -mips4 $flags $dynamic $fatal $ldignore $ignore "$@"
	;;
*)	$cc -n32 -mips3 $flags $dynamic $fatal $ldignore $ignore "$@"
	;;
esac
