control-freak-ide/server/nodejs/util/buildscripts/build.sh
plastic-hub-dev-node-saturn 538369cff7 latest
2021-05-12 18:35:18 +02:00

106 lines
2.4 KiB
Bash

#!/bin/sh
usage() {
cat <<-__EOF__;
NAME
build.sh - a convenience wrapper around the Dojo Build Application
SYNOPSIS
path/to/build.sh [--help] [--bin environment] [build system options]
DESCRIPTION
build.sh is a shell script that wraps the Dojo Build Application located at /util/build/main.js
to simplify executing the application in various, selectable, Javascript environments. Currently
both node.js and Java are supported.
OPTIONS
--help print the help message
--bin environment
Specifies the Javascript environment to use. Defaults to node, if available, java otherwise.
node use node.js, if available, automatic downgrade to java
node-debug same as node, with the --debug argument
node-debug-brk same as node with the --debug-brk argument
java use java
Note: the alternative syntax bin=option is supported but deprecated.
__EOF__
}
if [ "$#" = "0" ]; then
usage
fi
while [ -n "$1" ]
do
arg="$1"
case $arg in
--help)
usage
ba="$ba $arg"
;;
bin=node)
use_node=0
;;
bin=node-debug)
use_node=0
debug_node="--debug"
;;
bin=node-debug-brk)
use_node=0
debug_node="--debug-brk"
;;
bin=java)
use_node=1
;;
bin=*)
echo "Invalid bin= option: only node/java is supported"
exit 1
;;
*)
if [ "$arg" = "--bin" ]; then
case $2 in
node)
use_node=0
;;
node-debug)
use_node=0
debug_node="--debug"
;;
node-debug-brk)
use_node=0
debug_node="--debug-brk"
;;
java)
use_node=1
;;
*)
echo "Invalid --bin option: only node/java is supported"
exit 1
;;
esac
shift
else
ba="$ba $arg"
fi
;;
esac
shift
done
if [ -z "$use_node" ]; then
which node > /dev/null 2>&1
use_node=$?
fi
if [ "$use_node" = "0" ]; then
cmd="node $debug_node"
cmdflags="`dirname $0`/../../dojo/dojo.js"
else
cmd="java"
cmdflags="-Xms256m -Xmx256m -cp `dirname $0`/../shrinksafe/js.jar:`dirname $0`/../closureCompiler/compiler.jar:`dirname $0`/../shrinksafe/shrinksafe.jar org.mozilla.javascript.tools.shell.Main `dirname $0`/../../dojo/dojo.js baseUrl=`dirname $0`/../../dojo"
fi
$cmd $cmdflags load=build $ba