GYP variables for building expat, icu, libsrtp, usrsctp

This makes the build more flexible when linking against
prebuilt external libraries.

Use existing build_* variables for libyuv and json in talk/
(already in use in webrtc/).

Also make it possible to avoid building the GTK parts of the Linux build.

BUG=4242
R=andrew@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/44179005

Cr-Commit-Position: refs/heads/master@{#9087}
diff --git a/webrtc/webrtc_examples.gyp b/webrtc/webrtc_examples.gyp
index 5d18aa6..35fc938 100644
--- a/webrtc/webrtc_examples.gyp
+++ b/webrtc/webrtc_examples.gyp
@@ -15,7 +15,6 @@
           'target_name': 'libwebrtcdemo-jni',
           'type': 'loadable_module',
           'dependencies': [
-            '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
             '<(webrtc_root)/common.gyp:webrtc_common',
             '<(webrtc_root)/modules/modules.gyp:video_render_module_internal_impl',
             '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers_default',
@@ -27,6 +26,13 @@
             'examples/android/media_demo/jni/on_load.cc',
             'examples/android/media_demo/jni/voice_engine_jni.cc',
           ],
+          'conditions': [
+            ['build_icu==1', {
+              'dependencies': [
+                '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
+              ],
+            }],
+          ],
           'variables': {
             # This library uses native JNI exports; tell GYP so that the
             # required symbols will be kept.