You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
2.4 KiB
105 lines
2.4 KiB
#!/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
|
|
|