aboutsummaryrefslogtreecommitdiffhomepage
path: root/infra/bots/recipe_modules
diff options
context:
space:
mode:
authorGravatar Mike Klein <mtklein@chromium.org>2016-10-17 14:36:18 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2016-10-18 16:54:25 +0000
commitb9eb887f8baa3dcf89b0106a799aff03b5c1cbba (patch)
treebc24a9e642b34ca13eaf3728dd98111870286a98 /infra/bots/recipe_modules
parent2e68865813d6aa9442c5e9e785a217e23120abe4 (diff)
Some GN-related recipe cleanup.
All our bots but the iOS ones are on GN now. This cleans up a bunch of GYP and other obsolete stuff. - Nothing's using default_flavor.py any more except as a base class. - There are no -CMake, -Shared or -VisualBench bots anymore. - Only the iOS bots care about GYP_DEFINES. You'll see the PDFium bot's GYP_DEFINES change, but that doesn't matter... it's using PDFium's own (GN) build system, and it ignores GYP_DEFINES. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3567 Change-Id: I699e10f013ea77df4dcaa1cb559c51c5bf55dfdb Reviewed-on: https://skia-review.googlesource.com/3567 Commit-Queue: Mike Klein <mtklein@google.com> Reviewed-by: Eric Boren <borenet@google.com>
Diffstat (limited to 'infra/bots/recipe_modules')
-rw-r--r--infra/bots/recipe_modules/flavor/api.py20
-rw-r--r--infra/bots/recipe_modules/flavor/cmake_flavor.py14
-rw-r--r--infra/bots/recipe_modules/flavor/default_flavor.py31
-rw-r--r--infra/bots/recipe_modules/flavor/gn_android_flavor.py3
-rw-r--r--infra/bots/recipe_modules/flavor/gn_flavor.py23
5 files changed, 5 insertions, 86 deletions
diff --git a/infra/bots/recipe_modules/flavor/api.py b/infra/bots/recipe_modules/flavor/api.py
index 7fe14c84a4..08b9972dc8 100644
--- a/infra/bots/recipe_modules/flavor/api.py
+++ b/infra/bots/recipe_modules/flavor/api.py
@@ -8,7 +8,6 @@
from recipe_engine import recipe_api
-from . import cmake_flavor
from . import default_flavor
from . import gn_android_flavor
from . import gn_flavor
@@ -27,9 +26,8 @@ VERSION_FILE_SVG = 'SVG_VERSION'
VERSION_NONE = -1
-
-def is_cmake(builder_cfg):
- return 'CMake' in builder_cfg.get('extra_config', '')
+def is_android(builder_cfg):
+ return 'Android' in builder_cfg.get('extra_config', '')
def is_ios(builder_cfg):
@@ -48,16 +46,8 @@ def is_valgrind(builder_cfg):
class SkiaFlavorApi(recipe_api.RecipeApi):
def get_flavor(self, builder_cfg):
"""Return a flavor utils object specific to the given builder."""
- gn_android = gn_android_flavor.GNAndroidFlavorUtils(self.m)
- if gn_android.supported():
- return gn_android
-
- gn = gn_flavor.GNFlavorUtils(self.m)
- if gn.supported():
- return gn
-
- if is_cmake(builder_cfg):
- return cmake_flavor.CMakeFlavorUtils(self.m)
+ if is_android(builder_cfg):
+ return gn_android_flavor.GNAndroidFlavorUtils(self.m)
elif is_ios(builder_cfg):
return ios_flavor.iOSFlavorUtils(self.m)
elif is_pdfium(builder_cfg):
@@ -65,7 +55,7 @@ class SkiaFlavorApi(recipe_api.RecipeApi):
elif is_valgrind(builder_cfg):
return valgrind_flavor.ValgrindFlavorUtils(self.m)
else:
- return default_flavor.DefaultFlavorUtils(self.m)
+ return gn_flavor.GNFlavorUtils(self.m)
def setup(self):
self._f = self.get_flavor(self.m.vars.builder_cfg)
diff --git a/infra/bots/recipe_modules/flavor/cmake_flavor.py b/infra/bots/recipe_modules/flavor/cmake_flavor.py
deleted file mode 100644
index 5a127dff52..0000000000
--- a/infra/bots/recipe_modules/flavor/cmake_flavor.py
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 2015 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-import default_flavor
-
-"""CMake flavor utils, used for building Skia with CMake."""
-
-class CMakeFlavorUtils(default_flavor.DefaultFlavorUtils):
- def compile(self, target, **kwargs):
- """Build Skia with CMake. Ignores `target`."""
- cmake_build = self.m.vars.skia_dir.join('cmake', 'cmake_build')
- self.m.run(self.m.step, 'cmake_build', cmd=[cmake_build],
- cwd=self.m.path['checkout'], **kwargs)
diff --git a/infra/bots/recipe_modules/flavor/default_flavor.py b/infra/bots/recipe_modules/flavor/default_flavor.py
index 9b148f4daf..dacb0fd056 100644
--- a/infra/bots/recipe_modules/flavor/default_flavor.py
+++ b/infra/bots/recipe_modules/flavor/default_flavor.py
@@ -84,37 +84,6 @@ class DefaultFlavorUtils(object):
if not self.m.path.exists(win_toolchain_asset_path):
self._win_toolchain_dir = self.m.vars.slave_dir
-
- def step(self, name, cmd, **kwargs):
- """Wrapper for the Step API; runs a step as appropriate for this flavor."""
- path_to_app = self.m.vars.skia_out.join(
- self.m.vars.configuration, cmd[0])
- if (self.m.platform.is_linux and
- 'x86_64' in self.m.vars.builder_name and
- not 'TSAN' in self.m.vars.builder_name):
- new_cmd = ['catchsegv', path_to_app]
- else:
- new_cmd = [path_to_app]
- new_cmd.extend(cmd[1:])
- return self.m.run(self.m.step,
- name, cmd=new_cmd, **kwargs)
-
- @property
- def chrome_path(self):
- """Path to a checkout of Chrome on this machine."""
- return self._win_toolchain_dir.join('src')
-
- def compile(self, target, **kwargs):
- """Build the given target."""
- env = kwargs.pop('env', {})
- # The CHROME_PATH environment variable is needed for builders that use
- # toolchains downloaded by Chrome.
- env['CHROME_PATH'] = self.chrome_path
- make_cmd = ['make']
- cmd = make_cmd + [target]
- self.m.run(self.m.step, 'build %s' % target, cmd=cmd,
- env=env, cwd=self.m.path['checkout'], **kwargs)
-
def copy_extra_build_products(self, swarming_out_dir):
pass
diff --git a/infra/bots/recipe_modules/flavor/gn_android_flavor.py b/infra/bots/recipe_modules/flavor/gn_android_flavor.py
index 92afee5dcf..1fc7230ebd 100644
--- a/infra/bots/recipe_modules/flavor/gn_android_flavor.py
+++ b/infra/bots/recipe_modules/flavor/gn_android_flavor.py
@@ -25,9 +25,6 @@ class GNAndroidFlavorUtils(default_flavor.DefaultFlavorUtils):
svg_dir = _data_dir + 'svgs',
tmp_dir = _data_dir)
- def supported(self):
- return 'GN_Android' in self.m.vars.builder_cfg.get('extra_config', '')
-
def _run(self, title, *cmd, **kwargs):
self.m.vars.default_env = {k: v for (k,v)
in self.m.vars.default_env.iteritems()
diff --git a/infra/bots/recipe_modules/flavor/gn_flavor.py b/infra/bots/recipe_modules/flavor/gn_flavor.py
index b7ef1dd643..6e01dee1c2 100644
--- a/infra/bots/recipe_modules/flavor/gn_flavor.py
+++ b/infra/bots/recipe_modules/flavor/gn_flavor.py
@@ -6,29 +6,6 @@ import default_flavor
"""GN flavor utils, used for building Skia with GN."""
class GNFlavorUtils(default_flavor.DefaultFlavorUtils):
- def supported(self):
- # TODO: simplify!
- extra_config = self.m.vars.builder_cfg.get('extra_config', '')
- os = self.m.vars.builder_cfg.get('os', '')
- target_arch = self.m.vars.builder_cfg.get('target_arch', '')
-
- return any([
- 'CT' in extra_config,
- 'SAN' in extra_config,
- extra_config == 'ANGLE',
- extra_config == 'CommandBuffer',
- extra_config == 'Exceptions',
- extra_config == 'Fast',
- extra_config == 'GDI',
- extra_config == 'GN',
- extra_config == 'Mesa',
- extra_config == 'NoGPU',
- extra_config.startswith('SK'),
- extra_config == 'Vulkan',
- os == 'Ubuntu' and target_arch == 'x86',
- 'Win' in os,
- ])
-
def _strip_environment(self):
self.m.vars.default_env = {k: v for (k,v)
in self.m.vars.default_env.iteritems()