lib/scripts/polyml-platform
author paulson
Wed, 04 Apr 2007 18:05:05 +0200
changeset 22593 de39593f2948
parent 21446 3d57db34633b
child 24474 33da394f0888
permissions -rwxr-xr-x
find_first is just an alias
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
16994
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     1
#!/usr/bin/env bash
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     2
#
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     3
# $Id$
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     4
#
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     5
# polyml-platform --- determine Poly/ML's idea of current hardware and
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     6
# operating system type
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     7
#
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     8
# NOTE: platform identifiers should be kept as generic as possible,
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
     9
# i.e. shared by compatible environments.
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    10
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    11
PLATFORM="unknown-platform"
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    12
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    13
case $(uname -s) in
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    14
  SunOS)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    15
    case $(uname -r) in
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    16
      5.*)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    17
        case $(uname -p) in
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    18
          sparc)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    19
            PLATFORM=sparc-solaris
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    20
            ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    21
        esac
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    22
        ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    23
    esac
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    24
    ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    25
  Linux)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    26
    case $(uname -m) in
21446
3d57db34633b activated x86_64-linux;
wenzelm
parents: 21279
diff changeset
    27
      i?86)
16994
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    28
        PLATFORM=x86-linux
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    29
        ;;
21446
3d57db34633b activated x86_64-linux;
wenzelm
parents: 21279
diff changeset
    30
      x86_64)
3d57db34633b activated x86_64-linux;
wenzelm
parents: 21279
diff changeset
    31
        PLATFORM=x86_64-linux
3d57db34633b activated x86_64-linux;
wenzelm
parents: 21279
diff changeset
    32
        ;;
16994
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    33
      Power* | power* | ppc)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    34
        PLATFORM=ppc-linux
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    35
        ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    36
    esac
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    37
    ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    38
  FreeBSD|NetBSD)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    39
    case $(uname -m) in
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    40
      i?86)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    41
        PLATFORM=x86-bsd
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    42
        ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    43
    esac
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    44
    ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    45
  Darwin)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    46
    case $(uname -m) in
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    47
      Power* | power* | ppc)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    48
        PLATFORM=ppc-darwin
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    49
        ;;
20991
bb6f570512b5 added x86-darwin;
wenzelm
parents: 16994
diff changeset
    50
      i?86)
bb6f570512b5 added x86-darwin;
wenzelm
parents: 16994
diff changeset
    51
        PLATFORM=x86-darwin
bb6f570512b5 added x86-darwin;
wenzelm
parents: 16994
diff changeset
    52
        ;;
16994
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    53
    esac
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    54
    ;;
21279
2cb5f1621bcf added x86-cygwin;
wenzelm
parents: 20991
diff changeset
    55
  CYGWIN_NT*)
2cb5f1621bcf added x86-cygwin;
wenzelm
parents: 20991
diff changeset
    56
    case $(uname -m) in
2cb5f1621bcf added x86-cygwin;
wenzelm
parents: 20991
diff changeset
    57
      i?86)
2cb5f1621bcf added x86-cygwin;
wenzelm
parents: 20991
diff changeset
    58
        PLATFORM=x86-cygwin
2cb5f1621bcf added x86-cygwin;
wenzelm
parents: 20991
diff changeset
    59
        ;;
2cb5f1621bcf added x86-cygwin;
wenzelm
parents: 20991
diff changeset
    60
    esac
2cb5f1621bcf added x86-cygwin;
wenzelm
parents: 20991
diff changeset
    61
    ;;
16994
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    62
  Windows_NT)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    63
    case $(uname -m) in
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    64
      ?86)
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    65
        PLATFORM=x86-win32
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    66
        ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    67
    esac
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    68
    ;;
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    69
esac
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    70
a69d0496a724 determine Poly/ML's idea of current hardware and operating system type;
wenzelm
parents:
diff changeset
    71
echo "$PLATFORM"