summaryrefslogtreecommitdiffstats
path: root/skia
diff options
context:
space:
mode:
authormichaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-03 22:24:46 +0000
committermichaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-03 22:24:46 +0000
commit92e04982398b395d79a53b2ae944a56e39711bfe (patch)
treec1e30a660829894e11b4664e4cf529fd9b03ec47 /skia
parent59c04a6b64aa8759ef96d07e88194703b698b161 (diff)
downloadchromium_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.gyp98
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',
+ ],
+ }],
],
},
{