diff options
author | 2016-10-17 14:36:18 -0400 | |
---|---|---|
committer | 2016-10-18 16:54:25 +0000 | |
commit | b9eb887f8baa3dcf89b0106a799aff03b5c1cbba (patch) | |
tree | bc24a9e642b34ca13eaf3728dd98111870286a98 /infra/bots/recipe_modules | |
parent | 2e68865813d6aa9442c5e9e785a217e23120abe4 (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.py | 20 | ||||
-rw-r--r-- | infra/bots/recipe_modules/flavor/cmake_flavor.py | 14 | ||||
-rw-r--r-- | infra/bots/recipe_modules/flavor/default_flavor.py | 31 | ||||
-rw-r--r-- | infra/bots/recipe_modules/flavor/gn_android_flavor.py | 3 | ||||
-rw-r--r-- | infra/bots/recipe_modules/flavor/gn_flavor.py | 23 |
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() |