Index: tools/build_command_buffer.py |
diff --git a/tools/build_command_buffer.py b/tools/build_command_buffer.py |
index 9edc4229a386cf2aa3fff1415674b52b27ee9f2c..4c8460b7193ec5346ebf8796822f922ca5545469 100755 |
--- a/tools/build_command_buffer.py |
+++ b/tools/build_command_buffer.py |
@@ -86,7 +86,6 @@ def main(): |
'to create).') |
chrome_target_dir_rel = os.path.join('out', args.chrome_build_type) |
- chrome_target_dir = os.path.join(chrome_src_dir, chrome_target_dir_rel) |
if not args.no_sync: |
try: |
@@ -104,7 +103,9 @@ def main(): |
if not args.no_sync: |
try: |
- subprocess.check_call(['gclient', 'sync'], cwd=chrome_src_dir) |
+ os.environ['GYP_GENERATORS'] = 'ninja' |
+ subprocess.check_call(['gclient', 'sync', '--reset', '--force'], |
+ 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) |
@@ -117,9 +118,33 @@ def main(): |
sys.exit('Error (ret code: %s) calling "%s" in %s' % error.returncode, |
error.cmd, chrome_src_dir) |
- shared_lib_src = os.path.join(chrome_target_dir, 'lib', |
- 'libcommand_buffer_gles2.so') |
- shared_lib_dst = os.path.join(args.output_dir, 'libcommand_buffer_gles2.so') |
+ # The command buffer shared library will have a different extension on Linux, |
+ # Mac, and Windows. Also, on Linux it will be in a 'lib' subdirectory and |
+ # needs to be placed in a 'lib' subdirectory of the directory containing the |
+ # Skia executable. |
+ platform = sys.platform |
+ if platform == 'cygwin': |
+ platform = 'win32' |
+ |
+ shared_lib_ext = '.so' |
+ shared_lib_subdir = 'lib' |
+ if platform == 'darwin': |
+ shared_lib_ext = '.dylib' |
+ shared_lib_subdir = '' |
+ elif platform == 'win32': |
+ shared_lib_ext = '.dll' |
+ shared_lib_subdir = '' |
+ |
+ shared_lib_src_dir = os.path.join(chrome_src_dir, chrome_target_dir_rel, |
+ shared_lib_subdir) |
+ shared_lib_dst_dir = os.path.join(args.output_dir, shared_lib_subdir) |
+ # Make the subdir for the dst if does not exist |
+ if shared_lib_subdir and not os.path.isdir(shared_lib_dst_dir): |
+ os.mkdir(shared_lib_dst_dir) |
+ |
+ shared_lib_name = 'libcommand_buffer_gles2' + shared_lib_ext |
+ shared_lib_src = os.path.join(shared_lib_src_dir, shared_lib_name) |
+ shared_lib_dst = os.path.join(shared_lib_dst_dir, shared_lib_name) |
if not os.path.isfile(shared_lib_src): |
sys.exit('Command buffer shared library not at expected location: ' + |