install_closure_deps.sh 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #!/bin/bash
  2. #
  3. # Script to install all necessary dependencies for running Closure tests,
  4. # linting, formatting and compiling.
  5. declare -r CLANG_VERSION="3.7.1"
  6. declare -r CLANG_BUILD="clang+llvm-${CLANG_VERSION}-x86_64-linux-gnu-ubuntu-14.04"
  7. declare -r CLANG_TAR="${CLANG_BUILD}.tar.xz"
  8. declare -r CLANG_URL="http://llvm.org/releases/${CLANG_VERSION}/${CLANG_TAR}"
  9. declare -r CLOSURE_COMPILER_REPO="https://oss.sonatype.org/content/repositories/snapshots/com/google/javascript/closure-compiler/1.0-SNAPSHOT/"
  10. set -ex
  11. cd ..
  12. # Install clang-format.
  13. wget --quiet $CLANG_URL
  14. tar xf $CLANG_TAR
  15. mv $CLANG_BUILD clang
  16. rm -f $CLANG_TAR
  17. # Install closure compiler and linter.
  18. CLOSURE_URL=$(
  19. curl -o - "$CLOSURE_COMPILER_REPO" |
  20. sed -n 's+.*<a href="\('"$CLOSURE_COMPILER_REPO"'closure-compiler-[-.0-9]*\.jar\)".*+\1+p' |
  21. head -n 1)
  22. [ -n $CLOSURE_URL ]
  23. wget -O closure-compiler-1.0-SNAPSHOT.jar "$CLOSURE_URL"
  24. cd closure-library
  25. # Installs node "devDependencies" found in package.json.
  26. npm install
  27. # Install Selenium.
  28. ./node_modules/protractor/bin/webdriver-manager update