determine Poly/ML's idea of current hardware and operating system type;
authorwenzelm
Mon, 01 Aug 2005 19:20:48 +0200
changeset 16994 a69d0496a724
parent 16993 2ec0b8159e8e
child 16995 5b344d1dccd8
determine Poly/ML's idea of current hardware and operating system type;
lib/scripts/polyml-platform
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/scripts/polyml-platform	Mon Aug 01 19:20:48 2005 +0200
@@ -0,0 +1,58 @@
+#!/usr/bin/env bash
+#
+# $Id$
+#
+# polyml-platform --- determine Poly/ML's idea of current hardware and
+# operating system type
+#
+# NOTE: platform identifiers should be kept as generic as possible,
+# i.e. shared by compatible environments.
+
+PLATFORM="unknown-platform"
+
+case $(uname -s) in
+  SunOS)
+    case $(uname -r) in
+      5.*)
+        case $(uname -p) in
+          sparc)
+            PLATFORM=sparc-solaris
+            ;;
+        esac
+        ;;
+    esac
+    ;;
+  Linux)
+    case $(uname -m) in
+      i?86 | x86_64)
+        PLATFORM=x86-linux
+        ;;
+      Power* | power* | ppc)
+        PLATFORM=ppc-linux
+        ;;
+    esac
+    ;;
+  FreeBSD|NetBSD)
+    case $(uname -m) in
+      i?86)
+        PLATFORM=x86-bsd
+        ;;
+    esac
+    ;;
+  Darwin)
+    case $(uname -m) in
+      Power* | power* | ppc)
+        PLATFORM=ppc-darwin
+        ;;
+    esac
+    ;;
+  Windows_NT)
+    case $(uname -m) in
+      ?86)
+        PLATFORM=x86-win32
+        ;;
+    esac
+    ;;
+esac
+
+echo "$PLATFORM"