Merge branch 'master' of github.com:grpc/grpc into travis-speedup

Conflicts:
	.travis.yml
diff --git a/.travis.yml b/.travis.yml
index f1839ac..23cb0a0 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -14,6 +14,9 @@
   global:
     - RUBY_VERSION=2.1
     - COVERALLS_PARALLEL=true
+    - CPPFLAGS=-I/tmp/prebuilt/include
+    - LDFLAGS=-L/tmp/prebuilt/lib
+    - PATH=/tmp/prebuilt/bin:$PATH
     - NUGET="mono nuget.exe"
   matrix:
     - CONFIG=opt TEST=sanity
@@ -32,6 +35,7 @@
 script:
   - rvm use $RUBY_VERSION
   - gem install bundler
+  - ./tools/run_tests/prepare_travis.sh
   - if [ ! -z "$USE_GCC" ] ; then export CC=gcc-$USE_GCC ; export CXX=g++-$USE_GCC ; fi
   - ./tools/run_tests/run_tests.py -l $TEST -t -j 16 -c $CONFIG -s 4.0
 after_success:
diff --git a/tools/run_tests/prepare_travis.sh b/tools/run_tests/prepare_travis.sh
new file mode 100755
index 0000000..2be8627
--- /dev/null
+++ b/tools/run_tests/prepare_travis.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+cd `dirname $0`/../..
+grpc_dir=`pwd`
+
+distrib=`md5sum /etc/issue | cut -f1 -d\ `
+git submodule | while read sha path extra ; do
+  cd /tmp
+  name=`basename $path`
+  file=$name-$sha-$CONFIG-prebuilt-$distrib.tar.gz
+  echo $file
+  url=http://storage.googleapis.com/grpc-prebuilt-packages/$file
+  wget -q $url && tar xfz $file || true
+done