|
|
1.1 root 1: CPP=/lib/cpp
2: COMP=/lib/ccom
3: OPT=/lib/c2
4: LIST=/usr/bin/alist
5: ASM=/bin/as
6: LD=/bin/ld
7: LIB=/lib
8: ULIB=/usr/lib
9: CLIB=-lc
10: START=$LIB/crt0.o
11: TMP=/tmp/cct$$
12: L=
13: P=
14: ecode=0
15: noasm=0
16: conly=0
17: names=0
18:
19: trap "rm -f $TMP.?; exit 2" 1 2 3
20:
21: for i in $*
22: do
23: case $i in
24: *.c) case $names in
25: 0) names=1 ;;
26: 1) names=2 ;;
27: esac ;;
28: esac
29: done
30: for i in $*
31: do
32: case $i in
33: -O)
34: opt=$OPT
35: ;;
36: -c)
37: conly=1
38: ;;
39: -L)
40: L=l
41: opt=
42: cflag="$cflag -Xg"
43: ;;
44: -P|-R|-d*)
45: asflg="$asflg $i"
46: ;;
47: -S)
48: noasm=1
49: conly=1
50: ;;
51: -I*|-[DU]*|-C)
52: ppopts=$ppopts\ $i
53: ;;
54: -E)
55: exflg=E
56: noasm=1
57: ;;
58: -g)
59: cflag="$cflag -Xg"
60: ;;
61: -w)
62: cflag="$cflag $i"
63: ;;
64: -p)
65: cflag="$cflag -XP"
66: START=$LIB/mcrt0.o
67: CLIB=-lc_p
68: ;;
69: *.c)
70: f=$i
71: i=`basename $i .c`
72: case $names in
73: 1) del=$i.o ;;
74: *) echo $f: 1>&2 ;;
75: esac
76: case $exflg in
77: E) $CPP $ppopts $f - ; exit 0;
78: esac
79: $CPP $ppopts $f | $COMP $cflag >$TMP.a
80: case $? in
81: 0)
82: case $L in
83: l) $LIST $f $TMP.a $TMP.b; mv $TMP.b $TMP.a;;
84: esac
85: case "$opt" in
86: $OPT)
87: $opt $TMP.a $TMP.b
88: case $? in
89: 0)
90: mv $TMP.b $TMP.a ;;
91: *)
92: rm -f $TMP.b ;;
93: esac
94: ;;
95: esac
96: case $noasm in
97: 0)
98: asflg="$asflg -o $i.o"
99: $ASM $asflg $TMP.a
100: case $? in
101: 0)
102: ldarg="$ldarg $i.o" ;;
103: *)
104: rm -f $i.o
105: ecode=3 ;;
106: esac
107: rm -f $TMP.a
108: ;;
109: 1)
110: mv $TMP.a $i.s
111: ;;
112: esac
113: ;;
114: *)
115: rm -f $TMP.a
116: ecode=2
117: ;;
118: esac
119: ;;
120: *.s)
121: case $noasm in
122: 0)
123: f=$i
124: i=`basename $i .s`
125: asflg="$asflg -o $i.o"
126: $ASM $asflg $f
127: case $? in
128: 0)
129: ldarg="$ldarg $i.o" ;;
130: *)
131: rm -f $i.o
132: ecode=4 ;;
133: esac
134: rm -f $TMP.a
135: ;;
136: esac
137: ;;
138: *)
139: ldarg="$ldarg $i"
140: ;;
141: esac
142: done
143: case $conly in
144: 0)
145: case $ecode in
146: 0)
147: $LD -X $START $ldarg $CLIB
148: case $? in
149: 0) ;;
150: *)
151: ecode=5 ;;
152: esac
153: rm -f $del
154: ;;
155: esac
156: ;;
157: esac
158: exit $ecode
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.