Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37501621
en ru br
Репозитории ALT
5.1: 3.2009.05-alt2
4.1: 3.2007.09-alt3
4.0: 3.2007.09-alt2
3.0: 3.6-alt1
www.altlinux.org/Changes

Группа :: Науки/Математика
Пакет: axiom

 Главная   Изменения   Спек   Патчи   Исходники   Загрузить   Gear   Bugs and FR  Repocop 

#!/bin/sh

export AXIOM=/usr/lib/axiom/mnt/linux
export PATH=$PATH:$AXIOM/bin

# Start everything for Axiom.
#
# axiom
# [-ht |-noht] whether to use HyperDoc
# [-gr |-nogr] whether to use Graphics
# [-clef |-noclef] whether to use Clef
# [-nag |-nonag] whether to use NAG
# [-iw |-noiw] start in interpreter window
# [-ihere|-noihere] start an interpreter buffer in the original window
# [-nox] don't use X Windows
# [-go |-nogo] whether to start system
# [-ws wsname] use named workspace
# [-list] list workspaces only
# [-grprog fname] use named program for Graphics
# [-nagprog fname] use named program for Nag
# [-htprog fname] use named program for HyperDoc
# [-clefprog fname] use named program for Clef
# [-sessionprog fname] use named program for session
# [-clientprog fname] use named program for spadclient
# [-h] show usage
#
#

MALLOCTYPE=3.1
export MALLOCTYPE

# NAGMAN needs to know the hostname
HOST=`hostname`
export HOST

# 0. Basic utilities

ciao() {
echo "Goodbye."
exit 1
}

needsubopt () {
echo "The $1 option requires an argument."
ciao
}


showuse() {
echo "axiom"
echo " [-ht |-noht] whether to use HyperDoc"
echo " [-gr |-nogr] whether to use Graphics"
echo " [-clef |-noclef] whether to use Clef"
echo " [-nag |-nonag] whether to use NAG"
echo " [-iw |-noiw] start in interpreter window"
echo " [-ihere|-noihere] start an interpreter buffer in the original window."
echo " [-nox] don't use X Windows"
echo " [-go |-nogo] whether to start system"
echo " [-ws wsname] use named workspace"
echo " [-list] list workspaces only"
#echo " [-grprog fname] use named program for Graphics"
#echo " [-nagprog fname] use named program for Nag"
#echo " [-htprog fname] use named program for HyperDoc"
#echo " [-clefprog fname] use named program for Clef"
#echo " [-sessionprog fname] use named program for session"
#echo " [-clientprog fname] use named program for spadclient"
echo " [-h] show usage"
}

# 1. Ensure the environment is set.

# Just process '-h'

if [ "$*" = "-h" ] ; then
showuse
fi
SPADDEFAULT=/axiom/mnt/linux

if [ "$SPAD" = "" ] ; then
if [ "$AXIOM" = "" ] ; then
SPAD=$SPADDEFAULT
echo "AXIOM variable is not set"
echo "assuming AXIOM = /axiom/mnt/linuxglibc"
AXIOM=$SPAD
export AXIOM
else
SPAD=$AXIOM
fi
export SPAD
else
if [ "$AXIOM" = "" ] ; then
echo "AXIOM variable is not set"
echo "but SPAD = $SPAD"
echo "Using AXIOM = $SPAD"
AXIOM=$SPAD
export AXIOM
else
if [ ! "$SPAD" = "$AXIOM" ] ; then
echo "ignoring SPAD variable"
SPAD=$AXIOM
fi
fi
fi

if [ "$AXIOMXLROOT" = "" ] ; then
AXIOMXLROOT=${AXIOM}/compiler
fi
export AXIOMXLROOT
PATH=$AXIOMXLROOT/bin:${PATH}
export PATH



if [ ! -d "$SPAD" ] ; then
echo "The directory for Axiom, $SPAD, does not exist."
ciao
fi

# Name the workspace directories.
rootwsdir=$SPAD/bin

# 2. Process command line arguments.

# Defaults for command-line arguments.
list=no
go=yes
wsname=AXIOMsys

otheropts=""

while [ "$*" != "" ] ; do

case $1 in
-list) list=yes
go=no;;
-go) go=yes ;;
-nogo) go=no ;;

-ws)
if [ "$2" = "" ] ; then needsubopt "$1" ; fi
shift
wsname="$1"
;;

-nagprog|-grprog|-htprog|-clefprog|-sessionprog|-clientprog|-paste|-rm|-rv)
if [ "$2" = "" ] ; then needsubopt "$1" ; fi
otheropts="$otheropts $1 $2"
shift
;;
-clef|-noclef|-gr|-nogr|-ht|-noht|-iw|-noiw|-ihere|-noihere|-nox|-nag|-nonag)
otheropts="$otheropts $1"
;;

-h)
go=no
;;


*) echo "Unknown option: $1"
echo "To use a specific workspace use, e.g.: spad -ws $1"
ciao
;;
esac

shift
done

# 3. List the available workspaces, if asked

listwspaces()
{
echo "$1"
ls -l $2 | grep "sys$"
echo ""
}

if [ $list = yes ] ; then
listwspaces "AXIOM workspaces in \$AXIOM/bin = $rootwsdir: " $rootwsdir
fi

# 5. Try to ensure a suitable workspace on this host.

if [ `expr $wsname : '.*/.*'` = 0 ] ; then
serverws=$rootwsdir/$wsname
else
serverws=$wsname
fi

if [ ! -f $serverws ] ; then
showuse
ciao
fi

# 6. Start processes

if [ $go = no ] ; then
echo "Would now start the processes."
echo exec $SPAD/bin/sman $otheropts -ws $serverws
exit 0
fi

exec $SPAD/bin/sman $otheropts -ws $serverws
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin