Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(257)

Unified Diff: scripts/slave/recipe_modules/chromium/api.py

Issue 211473006: Add GN (the build tool) to the chromium.linux buildbots and try jobs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: update w/ review feedback Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: scripts/slave/recipe_modules/chromium/api.py
diff --git a/scripts/slave/recipe_modules/chromium/api.py b/scripts/slave/recipe_modules/chromium/api.py
index 9818de347d4f93028858f2891988c54a2d651ec6..54ce20363108f6c95172b78fd9708197ee18ac72 100644
--- a/scripts/slave/recipe_modules/chromium/api.py
+++ b/scripts/slave/recipe_modules/chromium/api.py
@@ -230,13 +230,32 @@ class ChromiumApi(recipe_api.RecipeApi):
python_mode=True,
xvfb=True)
- def runhooks(self, **kwargs):
+ def runhooks(self, run_gyp=True, **kwargs):
"""Run the build-configuration hooks for chromium."""
env = kwargs.get('env', {})
- env.update(self.c.gyp_env.as_jsonish())
+ if run_gyp:
+ env.update(self.c.gyp_env.as_jsonish())
+ else:
+ env['GYP_CHROMIUM_NO_ACTION'] = 1
kwargs['env'] = env
return self.m.gclient.runhooks(**kwargs)
+ def compile_with_ninja(self, name, output_dir, **kwargs):
+ ninja_path = self.m.path['depot_tools'].join('ninja',
+ platform_ext={'win': '.exe'})
+ return self.m.step(name=name, cmd=[ninja_path, '-C', output_dir], **kwargs)
iannucci 2014/03/28 22:40:42 Really not convinced that output_dir should be spe
Dirk Pranke 2014/03/28 23:52:06 I don't think that really works because we actuall
+
+ def run_gn(self, output_arg, **kwargs):
+ config = self.c.BUILD_CONFIG
+ gn_wrapper_script_path = self.m.path['depot_tools'].join('gn.py')
+ gn_build_config_specific_args = {
+ 'Debug': ['--args=is_debug=true'],
+ 'Release': ['--args=is_debug=false'],
+ }
+ gn_args = ['--root=' + str(self.m.path['checkout']), 'gen', output_arg]
iannucci 2014/03/28 22:40:42 is gn using a non-standard cli parser, which is wh
Dirk Pranke 2014/03/28 23:52:06 Brett believes that ['--root', path] is actually
+ gn_args += gn_build_config_specific_args[config]
+ return self.m.python('gn', gn_wrapper_script_path, args=gn_args, **kwargs)
+
def taskkill(self):
return self.m.python(
'taskkill',

Powered by Google App Engine
This is Rietveld 408576698