bump_compiler_version revision 1320f92c476a1ad9d19dba2a48c72b75566198e9
11320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#!/bin/bash
21320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci# Copyright 2014 The Chromium Authors. All rights reserved.
31320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci# Use of this source code is governed by a BSD-style license that can be
41320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci# found in the LICENSE file.
51320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#
61320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci# Download the newest version of Closure Compiler, build it and put into Chrome
71320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci# source tree. Also update externs/chrome_extensions.js.
81320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
91320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccireadonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
101320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccireadonly TEMP_DIR=$(mktemp -d)
111320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
121320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicleanup() {
131320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  rm -rf "${TEMP_DIR}"
141320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci}
151320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
161320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccitrap cleanup SIGINT SIGHUP SIGTERM
171320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
181320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicd "${TEMP_DIR}"
191320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciecho "Cloning Closure Compiler repo"
201320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccigit clone https://github.com/google/closure-compiler.git
211320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
221320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicd closure-compiler
231320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciecho "Building Closure Compiler"
241320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciant jar
251320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
261320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciif [[ "$?" -ne 0 ]]; then
271320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  echo "Failed to build jar, copying nothing" >&2
281320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  cleanup
291320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  exit 1
301320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccifi
311320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
321320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciecho "Copying compiler.jar and chrome_extensions.js"
331320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicp build/compiler.jar "${SCRIPT_DIR}/compiler/"
341320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicp contrib/externs/chrome_extensions.js "${SCRIPT_DIR}/externs/"
351320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciecho "Done"
361320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccicleanup
37