Home | History | Annotate | Download | only in tools
      1 #!/bin/bash
      2 # Copyright 2014 The Chromium Authors. All rights reserved.
      3 # Use of this source code is governed by a BSD-style license that can be
      4 # found in the LICENSE file.
      5 
      6 # This a simple script to make running Mojo shell easier (on Linux).
      7 
      8 DIRECTORY="$(dirname "$0")"/../../out/Debug
      9 PORT=$(($RANDOM % 8192 + 2000))
     10 
     11 do_help() {
     12   cat << EOF
     13 Usage: $(basename "$0") [-d DIRECTORY] [-|--] <mojo_shell arguments ...>
     14 
     15 DIRECTORY defaults to $DIRECTORY.
     16 
     17 Example:
     18   $(basename "$0") mojo:mojo_sample_app
     19 EOF
     20 }
     21 
     22 kill_http_server() {
     23   echo "Killing SimpleHTTPServer ..."
     24   kill $HTTP_SERVER_PID
     25   wait $HTTP_SERVER_PID
     26 }
     27 
     28 while [ $# -gt 0 ]; do
     29   case "$1" in
     30     -h|--help)
     31       do_help
     32       exit 0
     33       ;;
     34     -d)
     35       shift
     36       if [ $# -eq 0 ]; then
     37         do_help
     38         exit 1
     39       fi
     40       DIRECTORY="$1"
     41       ;;
     42     --show-bash-alias)
     43       echo alias\ mojosh\=\'\"\$\(pwd\ \|\ sed\ \'\"\'\"\'s\/\\\(\.\*\\\/src\\\
     44 \)\.\*\/\\1\/\'\"\'\"\'\)\/mojo\/tools\/mojosh\.sh\"\'
     45       exit 0
     46       ;;
     47     # Separate arguments to mojo_shell (e.g., in case you want to pass it -d).
     48     -|--)
     49       shift
     50       break
     51       ;;
     52     *)
     53       break
     54       ;;
     55   esac
     56   shift
     57 done
     58 
     59 echo "Base directory: $DIRECTORY"
     60 
     61 echo "Running SimpleHTTPServer in directory $DIRECTORY/lib on port $PORT"
     62 cd $DIRECTORY/lib || exit 1
     63 python -m SimpleHTTPServer $PORT &
     64 # Kill the HTTP server on exit (even if the user kills everything using ^C).
     65 HTTP_SERVER_PID=$!
     66 trap kill_http_server EXIT
     67 cd ..
     68 
     69 echo "Running:"
     70 echo "./mojo_shell --origin=http://127.0.0.1:$PORT --disable-cache $*"
     71 ./mojo_shell --origin=http://127.0.0.1:$PORT --disable-cache $*
     72