improved;
authorwenzelm
Mon, 05 Feb 2001 21:33:47 +0100
changeset 11074 100637226ff5
parent 11073 e45b136716f5
child 11075 b996b1857028
improved;
Admin/polyml/bin/polyml
Admin/polyml/bin/polyml-platform
--- a/Admin/polyml/bin/polyml	Mon Feb 05 20:44:51 2001 +0100
+++ b/Admin/polyml/bin/polyml	Mon Feb 05 21:33:47 2001 +0100
@@ -1,131 +1,20 @@
-#!/bin/sh
+#!/bin/sh -x
 #
 # Poly/ML wrapper script
 
 
 ## self references
 
-PRG=`basename "$0"`
-
 if [ -h "$0" ]; then
-  THIS=`cd \`dirname "$0"\`; cd \`dirname \\\`find "$PRG" -ls | cut -d ">" -f 2\\\`\`; pwd`
+  THIS="`cd "\`dirname "$0"\`"; cd "\`dirname "\\\`find "$PRG" -ls | cut -d ">" -f 2\\\`"\`"; pwd`"
 else
-  THIS=`cd \`dirname "$0"\`; pwd`
+  THIS="`cd "\`dirname "$0"\`"; pwd`"
 fi
 
-SUPER=`cd "$THIS/.."; pwd`
-
-
-## diagnostics
-
-usage()
-{
-  echo
-  echo "Usage: $PRG [OPTIONS] [DATABASE]"
-  echo
-  echo "  Options are:"
-  echo "    -H SIZE      heap size in MB"
-  echo "    -c           compress DATABASE"
-  echo "    -p ARGS      pass ARGS to poly"
-  echo "    -r           open DATABASE read-only"
-  echo
-  exit 1
-}
-
-fail()
-{
-  echo "$1" >&2
-  exit 2
-}
+SUPER="`cd "$THIS/.."; pwd`"
 
 
-## process command line
-
-# options
-
-COMPRESS=""
-PASS_ARGS=""
-READONLY=""
-
-while getopts "H:cp:r" OPT
-do
-  case "$OPT" in
-    H)
-      PASS_ARGS="$PASS_ARGS -H $OPTARG"
-      ;;
-    c)
-      COMPRESS=true
-      ;;
-    p)
-      PASS_ARGS="$PASS_ARGS $OPTARG"
-      ;;
-    r)
-      READONLY=true
-      ;;
-    \?)
-      usage
-      ;;
-  esac
-done
-
-shift `expr $OPTIND - 1`
-
-
-# arguments
-
-DATABASE=""
-[ $# -ge 1 ] && { DATABASE="$1"; shift; }
-
-[ $# -ne 0 ] && { echo "Bad arguments: $*"; usage; }
-
-
-## main
+## run poly
 
 PLATFORM=`"$THIS/polyml-platform"`
-POLY="$SUPER/$PLATFORM/poly"
-
-
-# prepare database
-
-if [ -z "$DATABASE" ]; then
-  DB="$SUPER/$PLATFORM/ML_dbase"
-  READONLY=true
-elif [ -f "$DATABASE.$PLATFORM" ]; then
-  DB="$DATABASE.$PLATFORM"
-  [ ! -w "$DB" ] && READONLY=true
-elif [ -f "$DATABASE" ]; then
-  DB="$DATABASE"
-  [ ! -w "$DB" ] && READONLY=true
-else
-  if [ `basename "$DATABASE"` = `basename "$DATABASE" "$PLATFORM"` ]; then
-    DB="$DATABASE.$PLATFORM"
-  else
-    DB="$DATABASE"
-  fi
-  [ -n "$READONLY" ] && fail "Bad database: \"$DB\""
-  echo "PolyML.make_database \"$DB\"; PolyML.quit();" | \
-    "$POLY" -r "$SUPER/$PLATFORM/ML_dbase"
-  [ -f "$DB" ] || fail "Failed to prepare database: \"$DB\""
-fi
-
-DB_BASE=`basename "$DB"`
-DB_DIR=`dirname "$DB"`; DB_DIR=`cd "$DB_DIR"; pwd`
-FULL_DB="$DB_DIR/$DB_BASE"
-
-
-# run Poly/ML session
-
-POLY_OPTIONS="$PASS_ARGS"
-[ -n "$READONLY" ] && POLY_OPTIONS="-r $POLY_OPTIONS"
-
-INFO=`ls -l "$DB"`
-
-"$POLY" $POLY_OPTIONS "$FULL_DB"
-RC="$?"
-
-NEW_INFO=`ls -l "$DB"`
-
-[ -z "$READONLY" -a -f "$DB" -a "$INFO" != "$NEW_INFO" -a -n "$COMPRESS" ] \
-  && "$POLY" -d -c "$DB"
-
-exit "$RC"
+exec "$SUPER/$PLATFORM/poly" $*
--- a/Admin/polyml/bin/polyml-platform	Mon Feb 05 20:44:51 2001 +0100
+++ b/Admin/polyml/bin/polyml-platform	Mon Feb 05 21:33:47 2001 +0100
@@ -25,6 +25,9 @@
       i?86)
         PLATFORM=x86-linux
         ;;
+      Power* | power* | ppc)
+        PLATFORM=ppc-linux
+        ;;
     esac
     ;;
   FreeBSD|NetBSD)
@@ -34,6 +37,13 @@
         ;;
     esac
     ;;
+  Darwin)
+    case `uname -m` in
+      Power* | power* | ppc)
+        PLATFORM=ppc-bsd
+        ;;
+    esac
+    ;;
   Windows_NT)
     case `uname -m` in
       ?86)