#!/bin/sh

# Compile a single cljs file or a directory of cljs files into a
# single JavaScript file.

if [ "$CLOJURESCRIPT_HOME" = "" ]; then
  CLOJURESCRIPT_HOME="`dirname $0`/.."
fi

if ! test "$(ls -A "$CLOJURESCRIPT_HOME/lib" 2>/dev/null)"; then
    >&2 echo lib/ folder is empty, have you run \`script/bootstrap\`?
    exit 1
fi

CLJSC_CP=''
for next in lib/*: src/main/clojure: src/main/cljs: src/test/cljs: src/test/self; do
  CLJSC_CP="${CLJSC_CP}${CLOJURESCRIPT_HOME}/${next}"
done

if test "$#" -eq 0
then
  echo 'Usage: cljsc <file-or-dir>'
  echo '       cljsc <file-or-dir> "{:optimizations :advanced}"'
else
  java -server -Xms2g -Xmx4g -cp "$CLJSC_CP" clojure.main "$CLOJURESCRIPT_HOME/bin/cljsc.clj" "$@"
fi
