Check-in Number:
|
3769 | |
Date: |
2000-Oct-11 18:06:57 (local)
2000-Oct-11 16:06:57 (UTC) |
User: | rse |
Branch: | |
Comment: |
*** empty log message *** |
Tickets: |
|
Inspections: |
|
Files: |
|
ossp-pkg/shtool/sh.guessos -> 1.20
*** /dev/null Sat Nov 23 02:07:38 2024
--- - Sat Nov 23 02:07:43 2024
***************
*** 0 ****
--- 1,252 ----
+ ##
+ ## guessos -- Simple operating system guesser
+ ## Copyright (c) 1996-1999 The Apache Group, http://www.apache.org/
+ ## The Apache license applies (see http://www.apache.org/docs/LICENSE)
+ ## Originally written for Apache
+ ##
+
+ str_tool="guessos"
+ str_usage=""
+ arg_spec="0="
+ opt_spec=""
+
+ . ./sh.common
+
+ MACHINE=`(uname -m) 2>/dev/null` || MACHINE=`(uname -p) 2>/dev/null` || MACHINE="unknown"
+ RELEASE=`(uname -r) 2>/dev/null` || RELEASE="unknown"
+ SYSTEM=`(uname -s) 2>/dev/null` || SYSTEM="unknown"
+ VERSION=`(uname -v) 2>/dev/null` || VERSION="unknown"
+
+ XREL=`(uname -X) 2>/dev/null | grep "^Release" | awk '{print $3}'`
+ if [ "x$XREL" != "x" ]; then
+ if [ -f /etc/kconfig ]; then
+ case "$XREL" in
+ 4.0|4.1) echo "${MACHINE}-whatever-isc4"; exit 0 ;;
+ esac
+ else
+ case "$XREL" in
+ 3.2v4.2)
+ echo "whatever-whatever-sco3"; exit 0
+ ;;
+ 3.2v5.0*)
+ echo "whatever-whatever-sco5"; exit 0
+ ;;
+ 4.2MP)
+ if [ "x$VERSION" = "x2.1.1" ]; then
+ echo "${MACHINE}-whatever-unixware211"; exit 0
+ elif [ "x$VERSION" = "x2.1.2" ]; then
+ echo "${MACHINE}-whatever-unixware212"; exit 0
+ else
+ echo "${MACHINE}-whatever-unixware2"; exit 0
+ fi
+ ;;
+ 4.2)
+ echo "whatever-whatever-unixware1"; exit 0
+ ;;
+ 5)
+ case "$VERSION" in
+ 7*) echo "${MACHINE}-whatever-unixware7"; exit 0 ;;
+ esac
+ ;;
+ esac
+ fi
+ fi
+ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
+ MiNT:*)
+ echo "m68k-atari-mint"; exit 0
+ ;;
+ A/UX:*)
+ echo "m68k-apple-aux3"; exit 0
+ ;;
+ AIX:*)
+ MACH=`echo $MACHINE | sed -e 's;[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F];;'`
+ echo "${MACH}-ibm-aix${VERSION}.${RELEASE}"; exit 0
+ ;;
+ dgux:*)
+ echo "${MACHINE}-dg-dgux"; exit 0
+ ;;
+ HI-UX:*)
+ echo "${MACHINE}-hi-hiux"; exit 0
+ ;;
+ HP-UX:*)
+ HPUXVER=`echo ${RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ MACHINE=`echo ${MACHINE}|sed -e 's:/:_:'`
+ echo "${MACHINE}-hp-hpux${HPUXVER}"; exit 0
+ ;;
+ IRIX:*)
+ if [ -f /usr/lib32/mips4/libm.so ]; then
+ echo "${MACHINE}/32-sgi-irix${RELEASE}"; exit 0
+ else
+ echo "${MACHINE}-sgi-irix${RELEASE}"; exit 0
+ fi
+ ;;
+ IRIX64:*)
+ echo "${MACHINE}/64-sgi-irix${RELEASE}"; exit 0
+ ;;
+ Linux:*)
+ V='whatever'
+ case "$MACHINE" in
+ i?86) V='pc' ;;
+ esac
+ R=''
+ case "$RELEASE" in
+ [1-9].*) R=`echo $RELEASE | cut -c1` ;;
+ esac
+ echo "${MACHINE}-${V}-linux-gnu${R}"; exit 0
+ ;;
+ LynxOS:*)
+ echo "${MACHINE}-lynx-lynxos"; exit 0
+ ;;
+ BSD/386|BSD/OS:3.*)
+ echo "${MACHINE}-whatever-bsdi3"; exit 0
+ ;;
+ BSD/386:*:*:*486*|BSD/OS:*:*:*:*486*)
+ echo "i486-whatever-bsdi"; exit 0
+ ;;
+ BSD/386:*|BSD/OS:*)
+ echo "${MACHINE}-whatever-bsdi"; exit 0
+ ;;
+ FreeBSD:*)
+ VERS=`echo ${RELEASE} | sed -e 's/[-(].*//'`
+ MACH=`/sbin/sysctl -n hw.model`
+ ARCH='whatever'
+ case ${MACH} in
+ *386* ) MACH="i386" ;;
+ *486* ) MACH="i486" ;;
+ Pentium\ II*) MACH="i686" ;;
+ Pentium* ) MACH="i586" ;;
+ Alpha* ) MACH="alpha" ;;
+ * ) MACH="$MACHINE" ;;
+ esac
+ case ${MACH} in
+ i[0-9]86 ) ARCH="pc" ;;
+ esac
+ echo "${MACH}-${ARCH}-freebsd${VERS}"; exit 0
+ ;;
+ NetBSD:*:*:*486*)
+ echo "i486-whatever-netbsd${RELEASE}"; exit 0
+ ;;
+ NetBSD:*)
+ echo "${MACHINE}-whatever-netbsd${RELEASE}"; exit 0
+ ;;
+ OpenBSD:*)
+ echo "${MACHINE}-whatever-openbsd"; exit 0
+ ;;
+ OSF1:*:*:*alpha*)
+ VERS=`echo $RELEASE | sed -e 's;^V;;'`
+ echo "${MACHINE}-dec-osf${VERS}"; exit 0
+ ;;
+ QNX:*)
+ if [ "$VERSION" -gt 422 ]; then
+ echo "${MACHINE}-qssl-qnx32"
+ else
+ echo "${MACHINE}-qssl-qnx"
+ fi
+ exit 0
+ ;;
+ Paragon*:*:*:*)
+ echo "i860-intel-osf1"; exit 0
+ ;;
+ SunOS:5.*)
+ VERSION=`echo $RELEASE | sed -e 's;^5\.;;'`
+ echo "${MACHINE}-sun-solaris2.${VERSION}"; exit 0
+ ;;
+ SunOS:*)
+ echo "${MACHINE}-sun-sunos4"; exit 0
+ ;;
+ UNIX_System_V:4.*:*)
+ echo "${MACHINE}-whatever-sysv4"; exit 0
+ ;;
+ unix:3.0.9*:*:88k)
+ echo "${MACHINE}-encore-sysv4"; exit 0
+ ;;
+ *:4*:R4*:m88k)
+ echo "${MACHINE}-whatever-sysv4"; exit 0
+ ;;
+ UnixWare:5:99*:*)
+ # Gemini, beta release of next rev of unixware
+ echo "${MACHINE}-whatever-unixware212"; exit 0
+ ;;
+ DYNIX/ptx:4*:*)
+ echo "${MACHINE}-whatever-sysv4"; exit 0
+ ;;
+ *:4.0:3.0:[345][0-9]?? | *:4.0:3.0:3[34]??[/,]* | library:*)
+ echo "x86-ncr-sysv4"; exit 0
+ ;;
+ ULTRIX:*)
+ echo "${MACHINE}-unknown-ultrix"; exit 0
+ ;;
+ SINIX-?:* | ReliantUNIX-?:*)
+ echo "${MACHINE}-siemens-sysv4"; exit 0
+ ;;
+ POSIX*BS2000)
+ echo "${MACHINE}-siemens-sysv4"; exit 0
+ ;;
+ machten:*)
+ echo "${MACHINE}-tenon-${SYSTEM}"; exit 0;
+ ;;
+ ConvexOS:*:11.*:*)
+ echo "${MACHINE}-v11-${SYSTEM}"; exit 0;
+ ;;
+ UNIX_SV:*:*:maxion)
+ echo "${MACHINE}-ccur-sysv4"; exit 0;
+ ;;
+ PowerMAX_OS:*:*:Night_Hawk)
+ MACHINE=`uname -p`
+ echo "${MACHINE}-concurrent-powermax"; exit 0;
+ ;;
+ UNIX_SV:*)
+ if [ -d /usr/nec ];then
+ echo "mips-nec-sysv4"; exit 0;
+ fi
+ ;;
+ NonStop-UX:4.[02]*:[BC]*:*)
+ echo "${MACHINE}-tandem-sysv4"; exit 0;
+ ;;
+ Rhapsody:*:*:*)
+ case "${MACHINE}" in
+ "Power Macintosh") MACHINE=powerpc ;;
+ esac
+ echo "${MACHINE}-apple-rhapsody${RELEASE}"; exit 0
+ ;;
+ "Mac OS":*:*:*)
+ MACHINE=`uname -p`
+ echo "${MACHINE}-apple-macos${RELEASE}"; exit 0
+ ;;
+ "RISC iX":*)
+ echo "arm-whatever-riscix"; exit 0;
+ ;;
+ *:4.0:2:*)
+ echo "whatever-unisys-sysv4"; exit 0;
+ ;;
+ *:*:dcosx:NILE*)
+ echo "pyramid-pyramid-svr4"; exit 0;
+ ;;
+ *:*:*:"DRS 6000")
+ echo "drs6000-whatever-whatever"; exit 0;
+ ;;
+ AmigaOS:*:*:* )
+ echo "${MACHINE}-whatever-${SYSTEM}${RELEASE}"; exit 0
+ ;;
+ esac
+
+ # Now NeXT
+ ISNEXT=`(hostinfo) 2>/dev/null`
+ case "$ISNEXT" in
+ *NeXT*)
+ # Swiped from a friendly uname clone for NEXT/OPEN Step.
+ NEXTOSVER="`hostinfo | sed -n 's/.*NeXT Mach \([0-9\.]*\).*/\1/p'`"
+ if [ "$NEXTOSVER" -gt 3.3 ]; then
+ NEXTOS="openstep"
+ else
+ NEXTOS="nextstep"
+ fi
+ NEXTREL="`hostinfo | sed -n 's/.*NeXT Mach \([0-9\.]*\).*/\1/p'`"
+ NEXTARCH=`arch`
+ echo "${NEXTARCH}-next-${NEXTOS}${NEXTREL}" ; exit 0
+ ;;
+ esac
+
+ # Fallback
+ echo "${MACHINE}-unknown-${SYSTEM}/${RELEASE}/${VERSION}"
+
|
|