diff options
Diffstat (limited to 'chrome_frame/cfinstall/build.sh')
-rwxr-xr-x | chrome_frame/cfinstall/build.sh | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/chrome_frame/cfinstall/build.sh b/chrome_frame/cfinstall/build.sh new file mode 100755 index 0000000..354262c --- /dev/null +++ b/chrome_frame/cfinstall/build.sh @@ -0,0 +1,62 @@ +#!/bin/sh +# Copyright (c) 2011 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +OPTIMIZATION_LEVEL="ADVANCED_OPTIMIZATIONS" +EXTRA_FLAGS="" + +while getopts l:d o +do case "$o" in + l) EXTRA_FLAGS="$EXTRA_FLAGS -f --define=google.cf.installer.Prompt.\ +DEFAULT_IMPLEMENTATION_URL='${OPTARG}cf-xd-install-impl.js'";; + d) OPTIMIZATION_LEVEL="SIMPLE_OPTIMIZATIONS" + EXTRA_FLAGS="$EXTRA_FLAGS -f --formatting=PRETTY_PRINT";; + [?]) echo >&2 "Usage: $0 [-l //host.com/path/to/scripts/dir/] [-p] [-d]" + echo >&2 " -l <URL> The path under which the generated" + echo >&2 " scripts will be deployed." + echo >&2 " -d Disable obfuscating optimizations." + exit 1;; + esac +done + +DEPS_DIR=deps +OUT_DIR=out +SRC_DIR=src +CLOSURE_LIBRARY_DIR=$DEPS_DIR/closure_library +CLOSURE_BUILDER=$CLOSURE_LIBRARY_DIR/closure/bin/build/closurebuilder.py +CLOSURE_COMPILER_ZIP=$DEPS_DIR/compiler-latest.zip +CLOSURE_COMPILER_JAR_ZIP_RELATIVE=compiler.jar +CLOSURE_COMPILER_JAR=$DEPS_DIR/$CLOSURE_COMPILER_JAR_ZIP_RELATIVE + +mkdir -p $DEPS_DIR && +mkdir -p $OUT_DIR && +{ [[ -e $CLOSURE_LIBRARY_DIR ]] || \ + svn checkout http://closure-library.googlecode.com/svn/trunk/ \ + $CLOSURE_LIBRARY_DIR; } && \ +{ [[ -e $CLOSURE_COMPILER_JAR ]] || + { wget http://closure-compiler.googlecode.com/files/compiler-latest.zip \ + -O $CLOSURE_COMPILER_ZIP && \ + unzip -d $DEPS_DIR $CLOSURE_COMPILER_ZIP \ + $CLOSURE_COMPILER_JAR_ZIP_RELATIVE >/dev/null; }; } && +$CLOSURE_BUILDER \ + --root=$CLOSURE_LIBRARY_DIR --root=src/common/ \ + --root=src/implementation/ \ + --namespace="google.cf.installer.CrossDomainInstall" \ + --output_mode=compiled --compiler_jar=$CLOSURE_COMPILER_JAR \ + $EXTRA_FLAGS \ + -f "--compilation_level=$OPTIMIZATION_LEVEL" \ + -f "--output_wrapper='(function (scope){ %output% })(window)'" \ + -f "--externs=src/common/cf-interactiondelegate-externs.js" \ + --output_file=out/cf-xd-install-impl.js && \ +$CLOSURE_BUILDER \ + --root=src/miniclosure/ --root=src/common/ \ + --root=src/stub/ \ + --namespace="google.cf.installer.CFInstall" \ + --output_mode=compiled --compiler_jar=$CLOSURE_COMPILER_JAR \ + $EXTRA_FLAGS \ + -f "--compilation_level=$OPTIMIZATION_LEVEL" \ + -f "--output_wrapper='(function (scope){ %output% })(window)'" \ + -f "--externs=src/stub/cf-activex-externs.js" \ + -f "--externs=src/common/cf-interactiondelegate-externs.js" \ + --output_file=out/CFInstall.min.js |