sdhci - Implement ADMA2 transfer support. Keep SDMA support for now.
[dragonfly.git] / contrib / bmake / machine.sh
blob2209eaa884bf0cddb8afe025d55d7bfedb29dc67
2 # derrived from /etc/rc_d/os.sh
4 # RCSid:
5 # $Id: machine.sh,v 1.17 2015/05/05 00:10:54 sjg Exp $
7 # @(#) Copyright (c) 1994-2002 Simon J. Gerraty
9 # This file is provided in the hope that it will
10 # be of use. There is absolutely NO WARRANTY.
11 # Permission to copy, redistribute or otherwise
12 # use this file is hereby granted provided that
13 # the above copyright notice and this notice are
14 # left intact.
16 # Please send copies of changes and bug-fixes to:
17 # sjg@crufty.net
20 OS=`uname`
21 OSREL=`uname -r`
22 OSMAJOR=`IFS=.; set $OSREL; echo $1`
23 machine=`uname -p 2>/dev/null || uname -m`
24 MACHINE=
26 # there is at least one case of `uname -p` outputting
27 # a bunch of usless drivel
28 case "$machine" in
29 unknown|*[!A-Za-z0-9_-]*)
30 machine=`uname -m`
32 esac
34 # Great! Solaris keeps moving arch(1)
35 # we need this here, and it is not always available...
36 Which() {
37 # some shells cannot correctly handle `IFS`
38 # in conjunction with the for loop.
39 _dirs=`IFS=:; echo ${2:-$PATH}`
40 for d in $_dirs
42 test -x $d/$1 && { echo $d/$1; break; }
43 done
46 case $OS in
47 OpenBSD)
48 MACHINE=$OS$OSMAJOR.$machine
49 arch=`Which arch /usr/bin:/usr/ucb:$PATH`
50 MACHINE_ARCH=`$arch -s`;
52 Bitrig)
53 MACHINE=$OS$OSMAJOR.$machine
54 MACHINE_ARCH=`uname -m`;
56 *BSD)
57 MACHINE=$OS$OSMAJOR.$machine
59 SunOS)
60 arch=`Which arch /usr/bin:/usr/ucb:$PATH`
61 test "$arch" && machine_arch=`$arch`
63 case "$OSREL" in
64 4.0*) MACHINE_ARCH=$machine_arch MACHINE=$machine_arch;;
65 4*) MACHINE_ARCH=$machine_arch;;
66 esac
68 HP-UX)
69 MACHINE_ARCH=`IFS="/-."; set $machine; echo $1`
71 Interix)
72 MACHINE=i386
73 MACHINE_ARCH=i386
75 UnixWare)
76 OSREL=`uname -v`
77 OSMAJOR=`IFS=.; set $OSREL; echo $1`
78 MACHINE_ARCH=`uname -m`
80 Linux)
81 case "$machine" in
82 i?86) MACHINE_ARCH=i386;;# does anyone really care about 686 vs 586?
83 esac
85 esac
87 MACHINE=${MACHINE:-$OS$OSMAJOR}
88 MACHINE_ARCH=${MACHINE_ARCH:-$machine}
91 case "$0" in
92 arch*) echo $MACHINE_ARCH;;
94 case "$1" in
95 "") echo $MACHINE;;
96 *) echo $MACHINE_ARCH;;
97 esac
99 esac
100 ) | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz