Chromium Code Reviews| Index: platform_tools/android/bin/android_framework_gyp.py |
| diff --git a/platform_tools/android/bin/android_framework_gyp.py b/platform_tools/android/bin/android_framework_gyp.py |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..ac1d598efa67265dd0de77edec6951c517d9d6ac |
| --- /dev/null |
| +++ b/platform_tools/android/bin/android_framework_gyp.py |
| @@ -0,0 +1,61 @@ |
| +#!/usr/bin/python |
| + |
| +# Copyright 2014 Google Inc. |
| +# |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +""" |
| +Modified version of gyp_skia, used by gyp_to_android.py to generate Android.mk |
| +""" |
| + |
| +import os |
| +import sys |
| + |
| +script_dir = os.path.dirname(__file__) |
| + |
| +# Unlike gyp_skia, this file is nested deep inside Skia. Move to Skia trunk. |
|
epoger
2014/01/23 18:57:58
I'm not sure what you mean by "Move to Skia trunk"
scroggo
2014/01/24 20:09:02
Done.
|
| +# This line depends on the fact that the script is three levels deep |
| +# (specifically, it is in platform_tools/android/bin). |
| +skia_dir = os.path.normpath(os.path.join(script_dir, os.pardir, os.pardir, |
| + os.pardir)) |
| +dir_contents = os.listdir(skia_dir) |
| +assert 'third_party' in dir_contents and 'gyp' in dir_contents |
| + |
| +# Directory within which we can find the gyp source. |
| +gyp_source_dir = os.path.join(skia_dir, 'third_party', 'externals', 'gyp') |
| + |
| +# Directory within which we can find most of Skia's gyp configuration files. |
| +gyp_config_dir = os.path.join(skia_dir, 'gyp') |
| + |
| +# Ensure we import our current gyp source's module, not any version |
| +# pre-installed in your PYTHONPATH. |
| +sys.path.insert(0, os.path.join(gyp_source_dir, 'pylib')) |
| + |
| +import gyp |
| + |
| +def main(skia_arch_type, have_neon): |
| + # Set GYP_DEFINES for building for the android framework. |
| + gyp_defines = ('skia_android_framework=1 OS=android skia_arch_type=%s ' |
| + % skia_arch_type) |
| + if skia_arch_type == 'arm': |
| + # Always use thumb and version 7 for arm |
| + gyp_defines = gyp_defines + 'arm_thumb=1 arm_version=7 ' |
|
epoger
2014/01/23 18:57:58
You can use
x += y
instead of
x = x + y
scroggo
2014/01/24 20:09:02
Done.
|
| + if have_neon: |
| + gyp_defines = gyp_defines + 'arm_neon=1 ' |
| + else: |
| + gyp_defines = gyp_defines + 'arm_neon=0 ' |
| + |
| + os.environ['GYP_DEFINES'] = gyp_defines |
| + |
| + args = [] |
| + args.extend(['--depth', '.']) |
| + # Use the android_framework_lib file instead of skia.gyp |
| + args.extend([os.path.join(gyp_config_dir, 'android_framework_lib.gyp')]) |
| + # Common conditions |
| + args.extend(['-I', 'gyp/common.gypi']) |
| + # Use the debugging format. We'll use these to create one master make file. |
| + args.extend(['-f', 'gypd']) |
| + |
| + # Off we go... |
| + return gyp.main(args) |