render_pictures: add --writeJsonSummaryPath

Known issues:
- JSON summary will be empty if --writePath not specified also
- testNames within summary do not include the config (8888, gpu, etc.)

BUG=
R=rmistry@google.com

Author: epoger@google.com

Review URL: https://codereview.chromium.org/98643007

git-svn-id: http://skia.googlecode.com/svn/trunk/gyp@12680 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/tools.gyp b/tools.gyp
index 04d4e3f..fd381b7 100644
--- a/tools.gyp
+++ b/tools.gyp
@@ -141,8 +141,8 @@
             '../tools/skhello.cpp',
           ],
           'dependencies': [
-            'pdf.gyp:pdf',
             'flags.gyp:flags',
+            'pdf.gyp:pdf',
           ],
         }],
       ],
@@ -158,10 +158,10 @@
         '../src/utils/',
       ],
       'dependencies': [
-        'skia_lib.gyp:skia_lib',
         'flags.gyp:flags',
         'gm.gyp:gm_expectations',
         'jsoncpp.gyp:jsoncpp',
+        'skia_lib.gyp:skia_lib',
         'utils.gyp:utils',
       ],
     },
@@ -174,13 +174,13 @@
         '../src/utils/SkLua.cpp',
       ],
       'dependencies': [
-        'skia_lib.gyp:skia_lib',
         'effects.gyp:effects',
-        'utils.gyp:utils',
         'images.gyp:images',
+        'lua.gyp:lua',
         'pdf.gyp:pdf',
         'ports.gyp:ports',
-        'lua.gyp:lua',
+        'skia_lib.gyp:skia_lib',
+        'utils.gyp:utils',
       ],
     },
     {
@@ -192,16 +192,16 @@
         '../src/utils/SkLua.cpp',
       ],
       'dependencies': [
-        'skia_lib.gyp:skia_lib',
         'effects.gyp:effects',
-        'utils.gyp:utils',
+        'flags.gyp:flags',
         'images.gyp:images',
+        'lua.gyp:lua',
         'tools.gyp:picture_renderer',
         'tools.gyp:picture_utils',
         'pdf.gyp:pdf',
         'ports.gyp:ports',
-        'flags.gyp:flags',
-        'lua.gyp:lua',
+        'skia_lib.gyp:skia_lib',
+        'utils.gyp:utils',
       ],
     },
     {
@@ -217,10 +217,10 @@
         '../src/pipe/utils/',
       ],
       'dependencies': [
+        'flags.gyp:flags',
         'skia_lib.gyp:skia_lib',
         'tools.gyp:picture_renderer',
         'tools.gyp:picture_utils',
-        'flags.gyp:flags',
       ],
     },
     {
@@ -240,11 +240,11 @@
         '../src/lazy/',
       ],
       'dependencies': [
+        'bench.gyp:bench_timer',
+        'flags.gyp:flags',
         'skia_lib.gyp:skia_lib',
         'tools.gyp:picture_utils',
         'tools.gyp:picture_renderer',
-        'bench.gyp:bench_timer',
-        'flags.gyp:flags',
       ],
     },
     {
@@ -268,10 +268,18 @@
         '../src/pipe/utils/',
         '../src/utils/',
       ],
+      'direct_dependent_settings': {
+        'include_dirs': [
+          # needed for JSON headers used within PictureRenderer.h
+          '../third_party/externals/jsoncpp-chromium/overrides/include/',
+          '../third_party/externals/jsoncpp/include/',
+        ],
+      },
       'dependencies': [
+        'flags.gyp:flags',
+        'jsoncpp.gyp:jsoncpp',
         'skia_lib.gyp:skia_lib',
         'tools.gyp:picture_utils',
-        'flags.gyp:flags',
       ],
       'conditions': [
         ['skia_gpu == 1',
@@ -296,8 +304,8 @@
         '../src/utils/',
       ],
       'dependencies': [
-        'skia_lib.gyp:skia_lib',
         'pdf.gyp:pdf',
+        'skia_lib.gyp:skia_lib',
         'tools.gyp:picture_utils',
       ],
       'conditions': [
@@ -359,9 +367,9 @@
         '../tools/pinspect.cpp',
       ],
       'dependencies': [
+        'flags.gyp:flags',
         'skia_lib.gyp:skia_lib',
         'tools.gyp:picture_renderer',
-        'flags.gyp:flags',
       ],
     },
     {
@@ -379,11 +387,11 @@
         '../bench/TimerData.cpp',
       ],
       'dependencies': [
-        'skia_lib.gyp:skia_lib',
         'bench.gyp:bench_timer',
-        'tools.gyp:picture_utils',
-        'tools.gyp:picture_renderer',
         'flags.gyp:flags',
+        'skia_lib.gyp:skia_lib',
+        'tools.gyp:picture_renderer',
+        'tools.gyp:picture_utils',
       ],
     },
     {