'SAN' in self.builder_name) or
'RecreateSKPs' in self.builder_name):
self._need_chromium_checkout = True
+ if 'RecreateSKPs' in self.builder_name:
+ self.gclient_env['CPPFLAGS'] = (
+ '-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1')
# Some bots also require a checkout of PDFium.
self._need_pdfium_checkout = 'PDFium' in self.builder_name
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
+ "CPPFLAGS": "-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "gclient runhooks"
},
{
"cmd": [
- "python",
- "-u",
- "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
- "runhooks"
- ],
- "cwd": "[CUSTOM_/_B_WORK]/skia",
- "env": {
- "CPPFLAGS": "-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1",
- "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]"
- },
- "name": "gclient runhooks (2)"
- },
- {
- "cmd": [
- "build/gyp_chromium"
+ "[CUSTOM_/_B_WORK]/src/buildtools/linux64/gn",
+ "gen",
+ "[CUSTOM_/_B_WORK]/src/out/Release"
],
"cwd": "[CUSTOM_/_B_WORK]/src",
"env": {
"CPPFLAGS": "-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1",
"GYP_GENERATORS": "ninja"
},
- "name": "gyp_chromium"
+ "name": "GN"
},
{
"cmd": [
"ninja",
"-C",
- "out/Release",
+ "[CUSTOM_/_B_WORK]/src/out/Release",
"chrome"
],
"cwd": "[CUSTOM_/_B_WORK]/src",
],
"cwd": "[CUSTOM_/_B_WORK]",
"env": {
+ "CPPFLAGS": "-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1",
"PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]"
},
"name": "gclient runhooks"
},
{
"cmd": [
- "python",
- "-u",
- "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py",
- "runhooks"
- ],
- "cwd": "[CUSTOM_/_B_WORK]/skia",
- "env": {
- "CPPFLAGS": "-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1",
- "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]"
- },
- "name": "gclient runhooks (2)"
- },
- {
- "cmd": [
- "build/gyp_chromium"
+ "[CUSTOM_/_B_WORK]/src/buildtools/linux64/gn",
+ "gen",
+ "[CUSTOM_/_B_WORK]/src/out/Release"
],
"cwd": "[CUSTOM_/_B_WORK]/src",
"env": {
"CPPFLAGS": "-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1",
"GYP_GENERATORS": "ninja"
},
- "name": "gyp_chromium"
+ "name": "GN"
},
{
"cmd": [
"ninja",
"-C",
- "out/Release",
+ "[CUSTOM_/_B_WORK]/src/out/Release",
"chrome"
],
"cwd": "[CUSTOM_/_B_WORK]/src",
def RunSteps(api):
# Check out Chrome.
api.skia.setup()
- api.gclient.runhooks(
- env={'CPPFLAGS': '-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1'})
src_dir = api.skia.checkout_root.join('src')
+ out_dir = src_dir.join('out', 'Release')
- # Call build/gyp_chromium
- api.step('gyp_chromium',
- ['build/gyp_chromium'],
+ # Call GN.
+ platform = 'linux64' # This bot only runs on linux; don't bother checking.
+ gn = src_dir.join('buildtools', platform, 'gn')
+ api.step('GN',
+ [gn, 'gen', out_dir],
env={'CPPFLAGS': '-DSK_ALLOW_CROSSPROCESS_PICTUREIMAGEFILTERS=1',
'GYP_GENERATORS': 'ninja'},
cwd=src_dir)
# Build Chrome.
api.step('Build Chrome',
- ['ninja', '-C', 'out/Release', 'chrome'],
+ ['ninja', '-C', out_dir, 'chrome'],
cwd=src_dir)
# Download boto file (needed by recreate_skps.py) to tmp dir.
sys.exit('Error (ret code: %s) calling "%s" in %s' % (error.returncode,
error.cmd, chrome_src_dir))
+ try:
+ subprocess.check_call([gclient, 'runhooks'], cwd=chrome_src_dir)
+ except subprocess.CalledProcessError as error:
+ sys.exit('Error (ret code: %s) calling "%s" in %s' % (
+ error.returncode, error.cmd, chrome_src_dir))
+
+ platform = 'linux64'
+ if sys.platform == 'darwin':
+ platform = 'mac'
+ elif sys.platform == 'win32':
+ platform = 'win'
+ gn = os.path.join(chrome_src_dir, 'buildtools', platform, 'gn')
+ try:
+ subprocess.check_call([gn, 'gen', chrome_target_dir_rel],
+ cwd=chrome_src_dir)
+ except subprocess.CalledProcessError as error:
+ sys.exit('Error (ret code: %s) calling "%s" in %s' % (
+ error.returncode, error.cmd, chrome_src_dir))
+
try:
subprocess.check_call(['ninja'] + shlex.split(args.extra_ninja_args) +
['-C', chrome_target_dir_rel, 'command_buffer_gles2'],