Mercurial > hg > early-roguelike
comparison rogue5/config.guess @ 33:f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
| author | elwin |
|---|---|
| date | Mon, 24 May 2010 20:10:59 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 32:2dcd75e6a736 | 33:f502bf60e6e4 |
|---|---|
| 1 #! /bin/sh | |
| 2 # Attempt to guess a canonical system name. | |
| 3 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, | |
| 4 # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, | |
| 5 # Inc. | |
| 6 | |
| 7 timestamp='2006-07-02' | |
| 8 | |
| 9 # This file is free software; you can redistribute it and/or modify it | |
| 10 # under the terms of the GNU General Public License as published by | |
| 11 # the Free Software Foundation; either version 2 of the License, or | |
| 12 # (at your option) any later version. | |
| 13 # | |
| 14 # This program is distributed in the hope that it will be useful, but | |
| 15 # WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
| 17 # General Public License for more details. | |
| 18 # | |
| 19 # You should have received a copy of the GNU General Public License | |
| 20 # along with this program; if not, write to the Free Software | |
| 21 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA | |
| 22 # 02110-1301, USA. | |
| 23 # | |
| 24 # As a special exception to the GNU General Public License, if you | |
| 25 # distribute this file as part of a program that contains a | |
| 26 # configuration script generated by Autoconf, you may include it under | |
| 27 # the same distribution terms that you use for the rest of that program. | |
| 28 | |
| 29 | |
| 30 # Originally written by Per Bothner <per@bothner.com>. | |
| 31 # Please send patches to <config-patches@gnu.org>. Submit a context | |
| 32 # diff and a properly formatted ChangeLog entry. | |
| 33 # | |
| 34 # This script attempts to guess a canonical system name similar to | |
| 35 # config.sub. If it succeeds, it prints the system name on stdout, and | |
| 36 # exits with 0. Otherwise, it exits with 1. | |
| 37 # | |
| 38 # The plan is that this can be called by configure scripts if you | |
| 39 # don't specify an explicit build system type. | |
| 40 | |
| 41 me=`echo "$0" | sed -e 's,.*/,,'` | |
| 42 | |
| 43 usage="\ | |
| 44 Usage: $0 [OPTION] | |
| 45 | |
| 46 Output the configuration name of the system \`$me' is run on. | |
| 47 | |
| 48 Operation modes: | |
| 49 -h, --help print this help, then exit | |
| 50 -t, --time-stamp print date of last modification, then exit | |
| 51 -v, --version print version number, then exit | |
| 52 | |
| 53 Report bugs and patches to <config-patches@gnu.org>." | |
| 54 | |
| 55 version="\ | |
| 56 GNU config.guess ($timestamp) | |
| 57 | |
| 58 Originally written by Per Bothner. | |
| 59 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 | |
| 60 Free Software Foundation, Inc. | |
| 61 | |
| 62 This is free software; see the source for copying conditions. There is NO | |
| 63 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." | |
| 64 | |
| 65 help=" | |
| 66 Try \`$me --help' for more information." | |
| 67 | |
| 68 # Parse command line | |
| 69 while test $# -gt 0 ; do | |
| 70 case $1 in | |
| 71 --time-stamp | --time* | -t ) | |
| 72 echo "$timestamp" ; exit ;; | |
| 73 --version | -v ) | |
| 74 echo "$version" ; exit ;; | |
| 75 --help | --h* | -h ) | |
| 76 echo "$usage"; exit ;; | |
| 77 -- ) # Stop option processing | |
| 78 shift; break ;; | |
| 79 - ) # Use stdin as input. | |
| 80 break ;; | |
| 81 -* ) | |
| 82 echo "$me: invalid option $1$help" >&2 | |
| 83 exit 1 ;; | |
| 84 * ) | |
| 85 break ;; | |
| 86 esac | |
| 87 done | |
| 88 | |
| 89 if test $# != 0; then | |
| 90 echo "$me: too many arguments$help" >&2 | |
| 91 exit 1 | |
| 92 fi | |
| 93 | |
| 94 trap 'exit 1' 1 2 15 | |
| 95 | |
| 96 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a | |
| 97 # compiler to aid in system detection is discouraged as it requires | |
| 98 # temporary files to be created and, as you can see below, it is a | |
| 99 # headache to deal with in a portable fashion. | |
| 100 | |
| 101 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still | |
| 102 # use `HOST_CC' if defined, but it is deprecated. | |
| 103 | |
| 104 # Portable tmp directory creation inspired by the Autoconf team. | |
| 105 | |
| 106 set_cc_for_build=' | |
| 107 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; | |
| 108 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; | |
| 109 : ${TMPDIR=/tmp} ; | |
| 110 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || | |
| 111 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || | |
| 112 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || | |
| 113 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; | |
| 114 dummy=$tmp/dummy ; | |
| 115 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; | |
| 116 case $CC_FOR_BUILD,$HOST_CC,$CC in | |
| 117 ,,) echo "int x;" > $dummy.c ; | |
| 118 for c in cc gcc c89 c99 ; do | |
| 119 if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then | |
| 120 CC_FOR_BUILD="$c"; break ; | |
| 121 fi ; | |
| 122 done ; | |
| 123 if test x"$CC_FOR_BUILD" = x ; then | |
| 124 CC_FOR_BUILD=no_compiler_found ; | |
| 125 fi | |
| 126 ;; | |
| 127 ,,*) CC_FOR_BUILD=$CC ;; | |
| 128 ,*,*) CC_FOR_BUILD=$HOST_CC ;; | |
| 129 esac ; set_cc_for_build= ;' | |
| 130 | |
| 131 # This is needed to find uname on a Pyramid OSx when run in the BSD universe. | |
| 132 # (ghazi@noc.rutgers.edu 1994-08-24) | |
| 133 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then | |
| 134 PATH=$PATH:/.attbin ; export PATH | |
| 135 fi | |
| 136 | |
| 137 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown | |
| 138 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown | |
| 139 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown | |
| 140 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown | |
| 141 | |
| 142 # Note: order is significant - the case branches are not exclusive. | |
| 143 | |
| 144 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |
| 145 *:NetBSD:*:*) | |
| 146 # NetBSD (nbsd) targets should (where applicable) match one or | |
| 147 # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, | |
| 148 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently | |
| 149 # switched to ELF, *-*-netbsd* would select the old | |
| 150 # object file format. This provides both forward | |
| 151 # compatibility and a consistent mechanism for selecting the | |
| 152 # object file format. | |
| 153 # | |
| 154 # Note: NetBSD doesn't particularly care about the vendor | |
| 155 # portion of the name. We always set it to "unknown". | |
| 156 sysctl="sysctl -n hw.machine_arch" | |
| 157 UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ | |
| 158 /usr/sbin/$sysctl 2>/dev/null || echo unknown)` | |
| 159 case "${UNAME_MACHINE_ARCH}" in | |
| 160 armeb) machine=armeb-unknown ;; | |
| 161 arm*) machine=arm-unknown ;; | |
| 162 sh3el) machine=shl-unknown ;; | |
| 163 sh3eb) machine=sh-unknown ;; | |
| 164 *) machine=${UNAME_MACHINE_ARCH}-unknown ;; | |
| 165 esac | |
| 166 # The Operating System including object format, if it has switched | |
| 167 # to ELF recently, or will in the future. | |
| 168 case "${UNAME_MACHINE_ARCH}" in | |
| 169 arm*|i386|m68k|ns32k|sh3*|sparc|vax) | |
| 170 eval $set_cc_for_build | |
| 171 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | |
| 172 | grep __ELF__ >/dev/null | |
| 173 then | |
| 174 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). | |
| 175 # Return netbsd for either. FIX? | |
| 176 os=netbsd | |
| 177 else | |
| 178 os=netbsdelf | |
| 179 fi | |
| 180 ;; | |
| 181 *) | |
| 182 os=netbsd | |
| 183 ;; | |
| 184 esac | |
| 185 # The OS release | |
| 186 # Debian GNU/NetBSD machines have a different userland, and | |
| 187 # thus, need a distinct triplet. However, they do not need | |
| 188 # kernel version information, so it can be replaced with a | |
| 189 # suitable tag, in the style of linux-gnu. | |
| 190 case "${UNAME_VERSION}" in | |
| 191 Debian*) | |
| 192 release='-gnu' | |
| 193 ;; | |
| 194 *) | |
| 195 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` | |
| 196 ;; | |
| 197 esac | |
| 198 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: | |
| 199 # contains redundant information, the shorter form: | |
| 200 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. | |
| 201 echo "${machine}-${os}${release}" | |
| 202 exit ;; | |
| 203 *:OpenBSD:*:*) | |
| 204 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` | |
| 205 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} | |
| 206 exit ;; | |
| 207 *:ekkoBSD:*:*) | |
| 208 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} | |
| 209 exit ;; | |
| 210 *:SolidBSD:*:*) | |
| 211 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} | |
| 212 exit ;; | |
| 213 macppc:MirBSD:*:*) | |
| 214 echo powerpc-unknown-mirbsd${UNAME_RELEASE} | |
| 215 exit ;; | |
| 216 *:MirBSD:*:*) | |
| 217 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} | |
| 218 exit ;; | |
| 219 alpha:OSF1:*:*) | |
| 220 case $UNAME_RELEASE in | |
| 221 *4.0) | |
| 222 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` | |
| 223 ;; | |
| 224 *5.*) | |
| 225 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` | |
| 226 ;; | |
| 227 esac | |
| 228 # According to Compaq, /usr/sbin/psrinfo has been available on | |
| 229 # OSF/1 and Tru64 systems produced since 1995. I hope that | |
| 230 # covers most systems running today. This code pipes the CPU | |
| 231 # types through head -n 1, so we only detect the type of CPU 0. | |
| 232 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` | |
| 233 case "$ALPHA_CPU_TYPE" in | |
| 234 "EV4 (21064)") | |
| 235 UNAME_MACHINE="alpha" ;; | |
| 236 "EV4.5 (21064)") | |
| 237 UNAME_MACHINE="alpha" ;; | |
| 238 "LCA4 (21066/21068)") | |
| 239 UNAME_MACHINE="alpha" ;; | |
| 240 "EV5 (21164)") | |
| 241 UNAME_MACHINE="alphaev5" ;; | |
| 242 "EV5.6 (21164A)") | |
| 243 UNAME_MACHINE="alphaev56" ;; | |
| 244 "EV5.6 (21164PC)") | |
| 245 UNAME_MACHINE="alphapca56" ;; | |
| 246 "EV5.7 (21164PC)") | |
| 247 UNAME_MACHINE="alphapca57" ;; | |
| 248 "EV6 (21264)") | |
| 249 UNAME_MACHINE="alphaev6" ;; | |
| 250 "EV6.7 (21264A)") | |
| 251 UNAME_MACHINE="alphaev67" ;; | |
| 252 "EV6.8CB (21264C)") | |
| 253 UNAME_MACHINE="alphaev68" ;; | |
| 254 "EV6.8AL (21264B)") | |
| 255 UNAME_MACHINE="alphaev68" ;; | |
| 256 "EV6.8CX (21264D)") | |
| 257 UNAME_MACHINE="alphaev68" ;; | |
| 258 "EV6.9A (21264/EV69A)") | |
| 259 UNAME_MACHINE="alphaev69" ;; | |
| 260 "EV7 (21364)") | |
| 261 UNAME_MACHINE="alphaev7" ;; | |
| 262 "EV7.9 (21364A)") | |
| 263 UNAME_MACHINE="alphaev79" ;; | |
| 264 esac | |
| 265 # A Pn.n version is a patched version. | |
| 266 # A Vn.n version is a released version. | |
| 267 # A Tn.n version is a released field test version. | |
| 268 # A Xn.n version is an unreleased experimental baselevel. | |
| 269 # 1.2 uses "1.2" for uname -r. | |
| 270 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` | |
| 271 exit ;; | |
| 272 Alpha\ *:Windows_NT*:*) | |
| 273 # How do we know it's Interix rather than the generic POSIX subsystem? | |
| 274 # Should we change UNAME_MACHINE based on the output of uname instead | |
| 275 # of the specific Alpha model? | |
| 276 echo alpha-pc-interix | |
| 277 exit ;; | |
| 278 21064:Windows_NT:50:3) | |
| 279 echo alpha-dec-winnt3.5 | |
| 280 exit ;; | |
| 281 Amiga*:UNIX_System_V:4.0:*) | |
| 282 echo m68k-unknown-sysv4 | |
| 283 exit ;; | |
| 284 *:[Aa]miga[Oo][Ss]:*:*) | |
| 285 echo ${UNAME_MACHINE}-unknown-amigaos | |
| 286 exit ;; | |
| 287 *:[Mm]orph[Oo][Ss]:*:*) | |
| 288 echo ${UNAME_MACHINE}-unknown-morphos | |
| 289 exit ;; | |
| 290 *:OS/390:*:*) | |
| 291 echo i370-ibm-openedition | |
| 292 exit ;; | |
| 293 *:z/VM:*:*) | |
| 294 echo s390-ibm-zvmoe | |
| 295 exit ;; | |
| 296 *:OS400:*:*) | |
| 297 echo powerpc-ibm-os400 | |
| 298 exit ;; | |
| 299 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) | |
| 300 echo arm-acorn-riscix${UNAME_RELEASE} | |
| 301 exit ;; | |
| 302 arm:riscos:*:*|arm:RISCOS:*:*) | |
| 303 echo arm-unknown-riscos | |
| 304 exit ;; | |
| 305 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) | |
| 306 echo hppa1.1-hitachi-hiuxmpp | |
| 307 exit ;; | |
| 308 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) | |
| 309 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. | |
| 310 if test "`(/bin/universe) 2>/dev/null`" = att ; then | |
| 311 echo pyramid-pyramid-sysv3 | |
| 312 else | |
| 313 echo pyramid-pyramid-bsd | |
| 314 fi | |
| 315 exit ;; | |
| 316 NILE*:*:*:dcosx) | |
| 317 echo pyramid-pyramid-svr4 | |
| 318 exit ;; | |
| 319 DRS?6000:unix:4.0:6*) | |
| 320 echo sparc-icl-nx6 | |
| 321 exit ;; | |
| 322 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) | |
| 323 case `/usr/bin/uname -p` in | |
| 324 sparc) echo sparc-icl-nx7; exit ;; | |
| 325 esac ;; | |
| 326 sun4H:SunOS:5.*:*) | |
| 327 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | |
| 328 exit ;; | |
| 329 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) | |
| 330 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | |
| 331 exit ;; | |
| 332 i86pc:SunOS:5.*:*) | |
| 333 echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | |
| 334 exit ;; | |
| 335 sun4*:SunOS:6*:*) | |
| 336 # According to config.sub, this is the proper way to canonicalize | |
| 337 # SunOS6. Hard to guess exactly what SunOS6 will be like, but | |
| 338 # it's likely to be more like Solaris than SunOS4. | |
| 339 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | |
| 340 exit ;; | |
| 341 sun4*:SunOS:*:*) | |
| 342 case "`/usr/bin/arch -k`" in | |
| 343 Series*|S4*) | |
| 344 UNAME_RELEASE=`uname -v` | |
| 345 ;; | |
| 346 esac | |
| 347 # Japanese Language versions have a version number like `4.1.3-JL'. | |
| 348 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` | |
| 349 exit ;; | |
| 350 sun3*:SunOS:*:*) | |
| 351 echo m68k-sun-sunos${UNAME_RELEASE} | |
| 352 exit ;; | |
| 353 sun*:*:4.2BSD:*) | |
| 354 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` | |
| 355 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 | |
