Aido.git / aido-server.in

version» Context lines:

Aido.git/aido-server.in:1: + #!/bin/sh    -  + DEFINES="" + ARGS="" + once=0 + if [ "x$PIKE" = "x" ]; then +  PIKE=pike + fi +  + if [ -f @DIR@/CVS/Entries ] ; then +  VERSION="cvs-@VERSION@" + else +  VERSION="@VERSION@" + fi +  + LOG='@DIR@/logs/server-debug' + DEFLOG="$LOG" + PIDFILE="$HOME/.aido/pid" + DEFPIDFILE="$PIDFILE" +  + while [ ! c"$1" = "c" ] ; do +  case "$1" in +  -D*|-d*|-t*) +  DEFINES="$DEFINES $1" +  ;; +  '--once') +  once=1 +  ;; +  '--kill'|'--stop') +  if [ -f $PIDFILE ]; then +  PID=`cat $PIDFILE` +  echo Killing server with PID $PID +  kill $PID && wait $PID 2>/dev/null +  fi +  exit 0 +  ;; +  '--restart') +  #FIXME: Doesn't use last sessions options. +  if [ -f $PIDFILE ]; then +  PID=`cat $PIDFILE` +  echo Restarting server with PID $PID in the background. +  kill -HUP $PID +  fi +  exit 0 +  ;; +  '--nossl'|'--no-sll') +  DEFINES="-DNOSSL $DEFINES" +  ;; +  '--debug'|'--with-debug'|'--enable-debug') +  DEBUG=1 +  DEFINES="-DVP_DEBUG $DEFINES" +  ;; +  '--version') +  echo "AIDO MediaPlayer backend server $VERSION" +  exit 0 +  ;; +  '--log=*') +  LOG=`echo $1 | sed -e 's/--log=//'` +  ;; +  '--pid-file=*') +  PIDFILE=`echo $1 | sed -e 's/--pid-file=//'` +  ;; +  '--help'|'-?') +  sed -e "s/\\.B/`tput 'bold' 2>/dev/null`/g" -e "s/B\\./`tput 'sgr0' 2>/dev/null`/g" << EOF + This command will start the AIDO MediaPlayer backend server (version $VERSION). + Installation directory: @DIR@ +  + Options: +  +  .B--versionB.: Output version information +  .B--help -?B.: This information. +  .B--offlineB.: Indicate that there is no network connection +  available. Disables metaserver access. +  .B--debugB.: Output more debug information +  .B--no-sslB.: Run without SSL-support. A normal HTTP-port will +  opened instead of a HTTPS-port. +  .B--onceB.: Run the server only once, in the foreground. +  The default behaviour is to run it in a loop in the +  background. +  .B--kill --stopB.: Kill the running server, without restarting it +  .B--restartB.: Kill the running server, restarting it afterwards +  .B--log=fileB.: Use the specified file as the debug log. +  default is $DEFLOG +  .B--pid-file=fileB.: Use the specified file as the PID file. +  default is $DEFPIDFILE +  + EOF +  tput 'rmso' 2>/dev/null +  exit 0 +  ;; +  *) +  ARGS="$ARGS $1" +  ;; +  esac +  shift + done +  + cd "@DIR@/programs/server" + ARGS="$DEFINES -M../../pike-modules main.pike $ARGS" +  + rotate_log() { +  mv -f "$LOG.old" "$LOG.older" 2>/dev/null +  mv -f "$LOG" "$LOG.old" 2>/dev/null + } +  + start_server() { +  if [ ! x$DEBUG = x ] ; then +  echo cd "@DIR@/programs/server" +  pikeversion=`$PIKE --version 2>&1 | head -1` +  echo "Pike version: $pikeversion." +  echo exec $PIKE "$ARGS" +  fi +  $PIKE $ARGS & +  AIDO_PID=$! +  wait $AIDO_PID +  AIDO_PID="" + } +  + signal_exit() { +  trap "" 2 15 +  if [ "x$AIDO_PID" != "x" ]; then +  kill $AIDO_PID && wait $AIDO_PID 2>/dev/null +  fi +  exit + } +  + signal_hup() { +  if [ "x$AIDO_PID" != "x" ]; then +  kill $AIDO_PID +  fi + } +  + AIDO_PID="" + if [ x$once = 'x0' ] ; then +  if [ -f $PIDFILE ]; then +  PID=`cat $PIDFILE` +  if kill -0 $PID 2>/dev/null ; then +  echo Server already running with PID $PID. +  exit 1 +  fi +  fi +  echo Starting server in the background. +  ( +  trap signal_exit 2 15 +  trap signal_hup 1 +  +  while : ; do +  rotate_log ; +  start_server > $LOG 2>&1 < /dev/null +  done +  ) >/dev/null 2>&1 & +  #FIXME: Check that dirname $PIDFILE exists. +  test -d $HOME/.aido || mkdir $HOME/.aido +  echo $! >$PIDFILE + else +  trap signal_exit 2 15 +  echo $$ >$PIDFILE +  start_server + fi   Newline at end of file added.