gclient: add support for native boolean variables

Bug: 570091
Change-Id: I195f5f798d9869f385437db4e0bc5f4c5d4853ae
Reviewed-on: https://chromium-review.googlesource.com/687496
Commit-Queue: Paweł Hajdan Jr. <phajdan.jr@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
diff --git a/gclient.py b/gclient.py
index ea58e96..c2f4040 100755
--- a/gclient.py
+++ b/gclient.py
@@ -965,7 +965,9 @@
     lines = ['# Generated from %r' % self.deps_file]
     variables = self.get_vars()
     for arg in self._gn_args:
-      value = gclient_eval.EvaluateCondition(variables[arg], variables)
+      value = variables[arg]
+      if isinstance(value, basestring):
+        value = gclient_eval.EvaluateCondition(value, variables)
       lines.append('%s = %s' % (arg, ToGNString(value)))
     with open(os.path.join(self.root.root_dir, self._gn_args_file), 'w') as f:
       f.write('\n'.join(lines))