summaryrefslogtreecommitdiff
path: root/src/cmd/INIT/cc.sgi.mips3
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2012-06-24 22:28:35 +0000
committerIgor Pashev <pashev.igor@gmail.com>2012-06-24 22:28:35 +0000
commit3950ffe2a485479f6561c27364d3d7df5a21d124 (patch)
tree468c6e14449d1b1e279222ec32f676b0311917d2 /src/cmd/INIT/cc.sgi.mips3
downloadksh-3950ffe2a485479f6561c27364d3d7df5a21d124.tar.gz
Imported Upstream version 93u+upstream
Diffstat (limited to 'src/cmd/INIT/cc.sgi.mips3')
-rwxr-xr-xsrc/cmd/INIT/cc.sgi.mips3110
1 files changed, 110 insertions, 0 deletions
diff --git a/src/cmd/INIT/cc.sgi.mips3 b/src/cmd/INIT/cc.sgi.mips3
new file mode 100755
index 0000000..426317a
--- /dev/null
+++ b/src/cmd/INIT/cc.sgi.mips3
@@ -0,0 +1,110 @@
+: sgi.mips3 cc wrapper that generates mips3 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