diff options
author | michaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-03 22:24:46 +0000 |
---|---|---|
committer | michaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-03 22:24:46 +0000 |
commit | 92e04982398b395d79a53b2ae944a56e39711bfe (patch) | |
tree | c1e30a660829894e11b4664e4cf529fd9b03ec47 /skia | |
parent | 59c04a6b64aa8759ef96d07e88194703b698b161 (diff) | |
download | chromium_src-92e04982398b395d79a53b2ae944a56e39711bfe.zip chromium_src-92e04982398b395d79a53b2ae944a56e39711bfe.tar.gz chromium_src-92e04982398b395d79a53b2ae944a56e39711bfe.tar.bz2 |
Upstream: Make Skia compiled with Android NDK.
BUG=
TEST=
Review URL: http://codereview.chromium.org/8386066
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108561 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia')
-rw-r--r-- | skia/skia.gyp | 98 |
1 files changed, 83 insertions, 15 deletions
diff --git a/skia/skia.gyp b/skia/skia.gyp index a3ae44e..4f245c3 100644 --- a/skia/skia.gyp +++ b/skia/skia.gyp @@ -467,12 +467,13 @@ '../third_party/skia/src/pdf/SkPDFTypes.cpp', '../third_party/skia/src/pdf/SkPDFUtils.cpp', + '../third_party/skia/src/ports/FontHostConfiguration_android.cpp', #'../third_party/skia/src/ports/SkFontHost_FONTPATH.cpp', '../third_party/skia/src/ports/SkFontHost_FreeType.cpp', - #'../third_party/skia/src/ports/SkFontHost_android.cpp', + '../third_party/skia/src/ports/SkFontHost_android.cpp', #'../third_party/skia/src/ports/SkFontHost_ascender.cpp', '../third_party/skia/src/ports/SkFontHost_tables.cpp', - #'../third_party/skia/src/ports/SkFontHost_gamma.cpp', + '../third_party/skia/src/ports/SkFontHost_gamma.cpp', '../third_party/skia/src/ports/SkFontHost_gamma_none.cpp', #'../third_party/skia/src/ports/SkFontHost_linux.cpp', '../third_party/skia/src/ports/SkFontHost_mac.cpp', @@ -487,7 +488,7 @@ #'../third_party/skia/src/ports/SkOSEvent_dummy.cpp', '../third_party/skia/src/ports/SkOSFile_stdio.cpp', #'../third_party/skia/src/ports/SkThread_none.cpp', - #'../third_party/skia/src/ports/SkThread_pthread.cpp', + '../third_party/skia/src/ports/SkThread_pthread.cpp', '../third_party/skia/src/ports/SkThread_win.cpp', '../third_party/skia/src/ports/SkTime_Unix.cpp', #'../third_party/skia/src/ports/SkXMLParser_empty.cpp', @@ -683,6 +684,7 @@ 'ext/SkThread_chrome.cc', 'ext/platform_canvas.cc', 'ext/platform_canvas.h', + 'ext/platform_canvas_android.cc', 'ext/platform_canvas_linux.cc', 'ext/platform_canvas_mac.cc', 'ext/platform_canvas_win.cc', @@ -732,22 +734,21 @@ '../third_party/skia/include/core/SkTypes.h', ], 'conditions': [ - [ 'OS != "mac"', { + [ 'OS != "android"', { 'sources/': [ - ['exclude', '_mac\\.(cc|cpp|mm?)$'], - ['exclude', '/mac/'] + ['exclude', '_android\\.(cc|cpp)$'], + ], + 'sources!': [ + # Below files are only used by Android + '../third_party/skia/src/ports/SkFontHost_gamma.cpp', + '../third_party/skia/src/ports/SkThread_pthread.cpp', ], }], - [ 'OS == "android"', { + [ 'OS != "mac"', { 'sources/': [ - ['include', 'ext/platform_device_linux.cc'], - ['include', 'ext/platform_canvas_linux.cc'], - ], - 'defines': [ - 'SK_BUILD_FOR_ANDROID_NDK', + ['exclude', '_mac\\.(cc|cpp|mm?)$'], + ['exclude', '/mac/'] ], - }, { # OS != "android" - 'sources/': [ ['exclude', '_android\\.(cc|cpp)$'] ], }], [ 'OS != "win"', { 'sources/': [ ['exclude', '_win\\.(cc|cpp)$'] ], @@ -802,6 +803,53 @@ }, { # toolkit_uses_gtk == 0 'sources/': [ ['exclude', '_gtk\\.(cc|cpp)$'] ], }], + [ 'OS == "android"', { + 'defines': [ + 'SK_BUILD_FOR_ANDROID_NDK', + ], + 'conditions': [ + [ '_toolset == "target"', { + 'defines': [ + 'HAVE_ENDIAN_H', + 'HAVE_PTHREADS', + 'OS_ANDROID', + 'USE_CHROMIUM_SKIA', + ], + 'dependencies': [ + '../third_party/freetype/freetype.gyp:ft2', + '../third_party/harfbuzz/harfbuzz.gyp:harfbuzz', + '../third_party/expat/expat.gyp:expat', + 'skia_opts' + ], + 'dependencies!': [ + # Android doesn't use Skia's PDF generation, which is what uses + # sfntly. + '../third_party/sfntly/sfntly.gyp:sfntly', + ], + # This exports a hard dependency because it needs to run its + # symlink action in order to expose the skia header files. + 'hard_dependency': 1, + 'include_dirs': [ + '../third_party/expat/files/lib', + ], + 'sources!': [ + 'ext/SkThread_chrome.cc', + 'ext/vector_platform_device_skia.cc', + '../third_party/skia/src/core/SkTypefaceCache.cpp', + '../third_party/skia/src/ports/SkFontHost_gamma_none.cpp', + ], + 'export_dependent_settings': [ + '../third_party/harfbuzz/harfbuzz.gyp:harfbuzz', + ], + }], + [ '_toolset=="host" and host_os=="linux"', { + 'sources': [ + 'ext/platform_device_linux.cc', + 'ext/platform_canvas_linux.cc', + ], + }], + ], + }], [ 'OS == "mac"', { 'defines': [ 'SK_BUILD_FOR_MAC', @@ -892,6 +940,18 @@ 'defines': [ 'SK_BUILD_FOR_ANDROID_NDK', ], + 'conditions': [ + [ '_toolset == "target"', { + 'defines': [ + 'HAVE_ENDIAN_H', + 'SK_RELEASE', # Assume platform has a release build. + ], + 'dependencies!': [ + 'skia_opts', + '../third_party/zlib/zlib.gyp:zlib', + ], + }], + ], }], ['OS=="mac"', { 'include_dirs': [ @@ -934,7 +994,7 @@ '../third_party/skia/src/core', ], 'conditions': [ - [ 'os_posix == 1 and OS != "mac" and target_arch != "arm"', { + [ 'os_posix == 1 and OS != "mac" and OS != "android" and target_arch != "arm"', { 'cflags': [ '-msse2', ], @@ -993,6 +1053,14 @@ '../third_party/skia/src/opts/memset32_neon.S', ], }], + [ 'target_arch == "arm" and armv7 != 1', { + 'sources': [ + '../third_party/skia/src/opts/SkBlitRow_opts_none.cpp', + ], + 'sources!': [ + '../third_party/skia/src/opts/SkBlitRow_opts_arm.cpp', + ], + }], ], }, { |