gclient: implement exporting variables to .gni files

Bug: 570091
Change-Id: Ib2b966b5bc967de11a295b1636c1901faabea55f
Reviewed-on: https://chromium-review.googlesource.com/525540
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
diff --git a/gclient_eval.py b/gclient_eval.py
index 81930b0..182ff9a 100644
--- a/gclient_eval.py
+++ b/gclient_eval.py
@@ -59,6 +59,12 @@
         }
     },
 
+    # Path to GN args file to write selected variables.
+    schema.Optional('gclient_gn_args_file'): basestring,
+
+    # Subset of variables to write to the GN args file (see above).
+    schema.Optional('gclient_gn_args'): [schema.Optional(basestring)],
+
     # Hooks executed after gclient sync (unless suppressed), or explicitly
     # on gclient hooks. See _GCLIENT_HOOKS_SCHEMA for details.
     # Also see 'pre_deps_hooks'.