Annotation of embedaddon/lrzsz/systype.in, revision 1.1.1.1
1.1 misho 1: #! /bin/sh
2:
3: CC="@CC@"
4: CFLAGS="@CFLAGS@"
5: GCC="@GCC@"
6:
7: srcdir=@srcdir@
8:
9: # oper-:arch-:syst-:chip-:kern-
10: # oper = operating system type; e.g., sunos-4.1.4
11: # arch = machine language; e.g., sparc
12: # syst = which binaries can run; e.g., sun4
13: # chip = chip model; e.g., micro-2-80
14: # kern = kernel version; e.g., sun4m
15: # dependence: arch --- chip
16: # \ \
17: # oper --- syst --- kern
18: # so, for example, syst is interpreted in light of oper, but chip is not.
19: # anyway, no slashes, no extra colons, no uppercase letters.
20: # the point of the extra -'s is to ease parsing: can add hierarchies later.
21: # e.g., *:i386-*:*:pentium-*:* would handle pentium-100 as well as pentium,
22: # and i386-486 (486s do have more instructions, you know) as well as i386.
23: # the idea here is to include ALL useful available information.
24:
25: sys="`uname -s 2>/dev/null | tr '/:[A-Z]' '..[a-z]'`"
26: if [ x"$sys" != x ]
27: then
28: unamer="`uname -r 2>/dev/null | tr /: ..`"
29: unamem="`uname -m 2>/dev/null | tr /: ..`"
30: unamev="`uname -v 2>/dev/null | tr /: ..`"
31:
32: case "$sys" in
33: bsd.os)
34: # in bsd 4.4, uname -v does not have useful info.
35: # in bsd 4.4, uname -m is arch, not chip.
36: oper="$sys-$unamer"
37: arch="$unamem"
38: syst=""
39: chip="`sysctl -n hw.model 2>/dev/null`"
40: kern=""
41: ;;
42: freebsd)
43: # see above about bsd 4.4
44: oper="$sys-$unamer"
45: arch="$unamem"
46: syst=""
47: chip="`sysctl -n hw.model 2>/dev/null`" # hopefully
48: kern=""
49: ;;
50: netbsd)
51: # see above about bsd 4.4
52: oper="$sys-$unamer"
53: arch="$unamem"
54: syst=""
55: chip="`sysctl -n hw.model 2>/dev/null`" # hopefully
56: kern=""
57: ;;
58: linux)
59: # i'd really like to know what distribution the user has ...
60:
61: # as in bsd 4.4, uname -v does not have useful info.
62: oper="$sys-$unamer" # not oper!
63: syst=""
64: chip="$unamem"
65: case "$chip" in
66: i386|i486|i586|i686)
67: arch="i386"
68: ;;
69: alpha)
70: arch="alpha"
71: ;;
72: esac
73: ;;
74: aix)
75: # naturally IBM has to get uname -r and uname -v backwards. dorks.
76: oper="$sys-$unamev-$unamer"
77: arch="`arch 2>/dev/null | tr /: ..`"
78: syst=""
79: chip="$unamem"
80: kern=""
81: ;;
82: sunos)
83: oper="$sys-$unamer-$unamev"
84: arch="`(uname -p 2>/dev/null || mach 2>/dev/null ) | tr /: ..`"
85: syst="`arch 2>/dev/null | tr /: ..`"
86: chip="$unamem" # this is wrong; is there any way to get the real info?
87: kern="`arch -k 2>/dev/null | tr /: ..`"
88: ;;
89: unix_sv)
90: oper="$sys-$unamer-$unamev"
91: arch="`uname -m 2>/dev/null`"
92: syst=""
93: chip="$unamem"
94: kern=""
95: ;;
96: beos)
97: oper="$sys-$unamer-$unamev"
98: case "$unamem" in
99: *BePC*)
100: arch="i386";
101: chip="";
102: if /bin/sysinfo -cpu 2>/dev/null >/dev/null ; then
103: (/bin/sysinfo -cpu 2>/dev/null |grep PentiumPro >/dev/null) && chip=ppro;
104: test "$chip" = "" && \
105: (/bin/sysinfo -cpu 2>/dev/null |grep Pentium >/dev/null) && chip=pentium;
106: fi
107: ;;
108: esac
109: ;;
110: *)
111: need_config_guess=1;
112: ;;
113: esac
114: else
115: need_config_guess=1;
116: fi
117:
118: if test "x$need_config_guess" = x1 ; then
119: cg=`$srcdir/config.guess` # cpu-company-system
120: if test "x$cg" = x ; then
121: # damned, config.guess does nothing if it doesn't support the
122: # system.
123: oper="`uname -s 2>/dev/null | tr '/:[A-Z]' '..[a-z]'`"
124: chip="`uname -m 2>/dev/null | tr /: ..`"
125: if test "x$oper" = x ; then
126: oper="unknown"
127: fi
128: else
129: # cpu-company-system
130: # chip-useless-oper+version
131: # i586-unknown-sco3.2v4.2
132: # m68k-hp-hpux9.00
133: # i486-unknown-linux
134: chip="`echo $cg | sed s/-.*//`"
135: oper="`echo $cg | sed s/.*-// | tr '[A-Z]' '[a-z]'`"
136: case "$oper" in
137: *[0-9]*)
138: # sco3.2v4.2
139: # hpux9.00
140: x="`echo $oper|sed 's/[0-9].*//'`"
141: y="`echo $oper|sed 's/^[a-z]*//'`"
142: oper="$x-$y";
143: ;;
144: *linux*)
145: oper=linux-"`uname -r`"
146: ;;
147: esac
148: fi
149: fi
150:
151:
152: case "$chip" in
153: 80486)
154: # let's try to be consistent here. (BSD/OS)
155: chip=i486
156: ;;
157: i486DX)
158: # respect the hyphen hierarchy. (FreeBSD)
159: chip=i486-dx
160: ;;
161: i486.DX2)
162: # respect the hyphen hierarchy. (FreeBSD)
163: chip=i486-dx2
164: ;;
165: Intel.586)
166: # no, you nitwits, there is no such chip. (NeXTStep)
167: chip=pentium
168: ;;
169: i586)
170: # no, you nitwits, there is no such chip. (Linux)
171: chip=pentium
172: # djb, stop bashing linux alone, bash to GNU people too ...
173: # config.guess also does this!
174: ;;
175: i686)
176: # STOP SAYING THAT! (Linux)
177: chip=ppro
178: esac
179: if test "x$arch" = x ; then
180: if test "x$chip" = i386 -o "x$chip" = i486 -o "x$chip" = "pentium" \
181: -o "x$chip" = "ppro" ; then
182: arch="i386";
183: fi
184: fi
185:
186: x=`echo "$oper-:$arch-:$syst-:$chip-:$kern-" | tr ' [A-Z]' '.[a-z]'`
187:
188: if test x"$@" = x ; then
189: echo "Future @PACKAGE@ versions will include a list of systems this version" >&2
190: echo "was compiled under (that's what you send this message for). In case" >&2
191: echo "want to see a shorthand expression of your real name in this list" >&2
192: echo "you may provide it here:" >&2
193: echo "Realname: " >&2
194: read realname
195: else
196: realname="$@"
197: fi
198:
199: echo # BeOS /bin/mail doesn't generate any header ...
200: echo ""
201: echo "SYS: $x"
202: echo "PACKAGE: @PACKAGE@ @VERSION@"
203: cc="`echo \"$CC\"|sed 's/ .*//'`"
204: x=`$CC --version </dev/null 2>/dev/null`
205: echo "CC: $cc $x"
206: echo "CFLAGS: $CFLAGS"
207: if test "x$realname" = x ; then
208: :
209: else
210: echo "REALNAME: $realname"
211: fi
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>