WIP: Added support for giflib, updated jpeg and png
BUG=skia:3257 Committed: https://skia.googlesource.com/skia/+/255dcd11992ebe74eb54202c48cf5394d33a8ce6 Review URL: https://codereview.chromium.org/1038863003
This commit is contained in:
parent
44b80228a4
commit
6d0e7b2031
8
DEPS
8
DEPS
@ -6,7 +6,6 @@ deps = {
|
|||||||
"common": "https://skia.googlesource.com/common.git@d7c2e2b9464e70e0f3847a330b930d008dc8c8db",
|
"common": "https://skia.googlesource.com/common.git@d7c2e2b9464e70e0f3847a330b930d008dc8c8db",
|
||||||
|
|
||||||
# There is some duplication here that might be worth cleaning up:
|
# There is some duplication here that might be worth cleaning up:
|
||||||
# - both Android and ChromeOS pull the same giflib;
|
|
||||||
# - can use use our existing t_p/e/libjpeg instead of pulling it for Android?
|
# - can use use our existing t_p/e/libjpeg instead of pulling it for Android?
|
||||||
|
|
||||||
"third_party/externals/angle2" : "https://chromium.googlesource.com/angle/angle.git@c415283b2bcd786e1a8c55c19ef3511eb2b3928c",
|
"third_party/externals/angle2" : "https://chromium.googlesource.com/angle/angle.git@c415283b2bcd786e1a8c55c19ef3511eb2b3928c",
|
||||||
@ -20,13 +19,12 @@ deps = {
|
|||||||
"third_party/externals/zlib" : "https://chromium.googlesource.com/chromium/src/third_party/zlib@4ba7cdd0e7bf49d671645264f839838fc56e1492",
|
"third_party/externals/zlib" : "https://chromium.googlesource.com/chromium/src/third_party/zlib@4ba7cdd0e7bf49d671645264f839838fc56e1492",
|
||||||
# NOTE: If we update libpng, we may need to update the generated file at third_party/libpng/pnglibconf.h
|
# NOTE: If we update libpng, we may need to update the generated file at third_party/libpng/pnglibconf.h
|
||||||
"third_party/externals/libpng" : "git://git.code.sf.net/p/libpng/code@070a616b8275277e18ef8ee91e2ca23f7bdc67d5",
|
"third_party/externals/libpng" : "git://git.code.sf.net/p/libpng/code@070a616b8275277e18ef8ee91e2ca23f7bdc67d5",
|
||||||
|
"third_party/externals/giflib" : "https://android.googlesource.com/platform/external/giflib.git@android-5.1.0_r3",
|
||||||
|
|
||||||
"platform_tools/android/third_party/externals/expat" : "https://android.googlesource.com/platform/external/expat.git@android-4.2.2_r1.2",
|
"platform_tools/android/third_party/externals/expat" : "https://android.googlesource.com/platform/external/expat.git@android-5.1.0_r3",
|
||||||
"platform_tools/android/third_party/externals/gif" : "https://android.googlesource.com/platform/external/giflib.git@android-4.2.2_r1.2",
|
"platform_tools/android/third_party/externals/jpeg" : "https://android.googlesource.com/platform/external/jpeg.git@android-5.1.0_r3",
|
||||||
"platform_tools/android/third_party/externals/jpeg" : "https://android.googlesource.com/platform/external/jpeg.git@ef1b83013e7814622a9d11579878d342e84580b7",
|
|
||||||
"platform_tools/android/third_party/externals/png" : "https://android.googlesource.com/platform/external/libpng.git@android-4.2.2_r1.2",
|
"platform_tools/android/third_party/externals/png" : "https://android.googlesource.com/platform/external/libpng.git@android-4.2.2_r1.2",
|
||||||
|
|
||||||
"platform_tools/chromeos/third_party/externals/gif" : "https://android.googlesource.com/platform/external/giflib.git@android-4.2.2_r1.2",
|
|
||||||
"platform_tools/chromeos/toolchain/src/third_party/chromite": "https://chromium.googlesource.com/chromiumos/chromite.git@d6a4c7e0ee4d53ddc5238dbddfc0417796a70e54",
|
"platform_tools/chromeos/toolchain/src/third_party/chromite": "https://chromium.googlesource.com/chromiumos/chromite.git@d6a4c7e0ee4d53ddc5238dbddfc0417796a70e54",
|
||||||
"platform_tools/chromeos/toolchain/src/third_party/pyelftools": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git@bdc1d380acd88d4bfaf47265008091483b0d614e",
|
"platform_tools/chromeos/toolchain/src/third_party/pyelftools": "https://chromium.googlesource.com/chromiumos/third_party/pyelftools.git@bdc1d380acd88d4bfaf47265008091483b0d614e",
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Use of this source code is governed by a BSD-style license that can be
|
# Use of this source code is governed by a BSD-style license that can be
|
||||||
# found in the LICENSE file.
|
# found in the LICENSE file.
|
||||||
|
|
||||||
# This GYP file stores the dependencies necessary to build Skia on the Android
|
# This GYP file stores the dependencies necessary to build Skia on the Android
|
||||||
# platform. The OS doesn't provide many stable libraries as part of the
|
# platform. The OS doesn't provide many stable libraries as part of the
|
||||||
# distribution so we have to build a few of them ourselves.
|
# distribution so we have to build a few of them ourselves.
|
||||||
@ -38,18 +39,6 @@
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
|
||||||
'target_name': 'gif',
|
|
||||||
'type': 'none',
|
|
||||||
'direct_dependent_settings': {
|
|
||||||
'libraries' : [
|
|
||||||
'libgif.a',
|
|
||||||
],
|
|
||||||
'include_dirs': [
|
|
||||||
'external/giflib',
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
'target_name': 'png',
|
'target_name': 'png',
|
||||||
'type': 'none',
|
'type': 'none',
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
# Copyright 2015 Google Inc.
|
|
||||||
#
|
|
||||||
# Use of this source code is governed by a BSD-style license that can be
|
|
||||||
# found in the LICENSE file.
|
|
||||||
# This GYP file stores the dependencies necessary to build Skia on the Chrome OS
|
|
||||||
# platform. The OS doesn't provide many stable libraries as part of the
|
|
||||||
# distribution so we have to build a few of them ourselves.
|
|
||||||
|
|
||||||
{
|
|
||||||
'includes': [
|
|
||||||
'../platform_tools/chromeos/gyp/dependencies.gypi',
|
|
||||||
],
|
|
||||||
}
|
|
@ -118,13 +118,6 @@
|
|||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
# skia_giflib_static - on OS variants that normally would link giflib
|
|
||||||
# with '-lgif' and include the headers from '/usr/include/gif_lib.h',
|
|
||||||
# don't do that; instead compile and staticlly link the version of
|
|
||||||
# giflib in third_party/externals/giflib.
|
|
||||||
'skia_giflib_static%': '0',
|
|
||||||
|
|
||||||
|
|
||||||
# skia_no_fontconfig - On POSIX systems that would normally use the
|
# skia_no_fontconfig - On POSIX systems that would normally use the
|
||||||
# SkFontHost_fontconfig interface; use the SkFontHost_linux
|
# SkFontHost_fontconfig interface; use the SkFontHost_linux
|
||||||
# version instead.
|
# version instead.
|
||||||
@ -206,7 +199,6 @@
|
|||||||
'os_posix%': '<(os_posix)',
|
'os_posix%': '<(os_posix)',
|
||||||
|
|
||||||
'skia_freetype_static%': '<(skia_freetype_static)',
|
'skia_freetype_static%': '<(skia_freetype_static)',
|
||||||
'skia_giflib_static%': '<(skia_giflib_static)',
|
|
||||||
'skia_no_fontconfig%': '<(skia_no_fontconfig)',
|
'skia_no_fontconfig%': '<(skia_no_fontconfig)',
|
||||||
'skia_sanitizer%': '<(skia_sanitizer)',
|
'skia_sanitizer%': '<(skia_sanitizer)',
|
||||||
'skia_scalar%': '<(skia_scalar)',
|
'skia_scalar%': '<(skia_scalar)',
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
{
|
{
|
||||||
'target_name': 'giflib',
|
'target_name': 'giflib',
|
||||||
'conditions': [
|
'conditions': [
|
||||||
[ 'skia_giflib_static',
|
[ 'skia_android_framework == 0',
|
||||||
{
|
{
|
||||||
'type': 'static_library',
|
'type': 'static_library',
|
||||||
'defines': [
|
'defines': [
|
||||||
@ -35,17 +35,18 @@
|
|||||||
'../third_party/externals/giflib/gifalloc.c',
|
'../third_party/externals/giflib/gifalloc.c',
|
||||||
'../third_party/externals/giflib/gif_err.c',
|
'../third_party/externals/giflib/gif_err.c',
|
||||||
],
|
],
|
||||||
}, { # not skia_giflib_static
|
}, { # skia_android_framework
|
||||||
'type': 'none',
|
'type': 'none',
|
||||||
'direct_dependent_settings': {
|
'direct_dependent_settings': {
|
||||||
'link_settings': {
|
'libraries' : [
|
||||||
'libraries': [
|
'libgif.a',
|
||||||
'-lgif',
|
],
|
||||||
],
|
'include_dirs': [
|
||||||
},
|
'external/giflib',
|
||||||
},
|
]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
],
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
#
|
#
|
||||||
# Use of this source code is governed by a BSD-style license that can be
|
# Use of this source code is governed by a BSD-style license that can be
|
||||||
# found in the LICENSE file.
|
# found in the LICENSE file.
|
||||||
|
|
||||||
# GYP file for images project.
|
# GYP file for images project.
|
||||||
{
|
{
|
||||||
'targets': [
|
'targets': [
|
||||||
@ -12,6 +13,7 @@
|
|||||||
'standalone_static_library': 1,
|
'standalone_static_library': 1,
|
||||||
'dependencies': [
|
'dependencies': [
|
||||||
'core.gyp:*',
|
'core.gyp:*',
|
||||||
|
'giflib.gyp:giflib',
|
||||||
'libjpeg.gyp:*',
|
'libjpeg.gyp:*',
|
||||||
'etc1.gyp:libetc1',
|
'etc1.gyp:libetc1',
|
||||||
'ktx.gyp:libSkKTX',
|
'ktx.gyp:libSkKTX',
|
||||||
@ -87,6 +89,9 @@
|
|||||||
'../src/images/SkImageDecoder_libpng.cpp',
|
'../src/images/SkImageDecoder_libpng.cpp',
|
||||||
'../src/images/SkMovie_gif.cpp',
|
'../src/images/SkMovie_gif.cpp',
|
||||||
],
|
],
|
||||||
|
'dependencies!': [
|
||||||
|
'giflib.gyp:giflib'
|
||||||
|
],
|
||||||
'link_settings': {
|
'link_settings': {
|
||||||
'libraries': [
|
'libraries': [
|
||||||
'-lwindowscodecs.lib',
|
'-lwindowscodecs.lib',
|
||||||
@ -112,13 +117,11 @@
|
|||||||
[ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', {
|
[ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', {
|
||||||
'export_dependent_settings': [
|
'export_dependent_settings': [
|
||||||
'libpng.gyp:libpng',
|
'libpng.gyp:libpng',
|
||||||
'giflib.gyp:giflib'
|
|
||||||
],
|
],
|
||||||
'dependencies': [
|
'dependencies': [
|
||||||
'libpng.gyp:libpng',
|
'libpng.gyp:libpng',
|
||||||
'giflib.gyp:giflib'
|
|
||||||
],
|
],
|
||||||
# end libpng/libgif stuff
|
# end libpng stuff
|
||||||
}],
|
}],
|
||||||
# FIXME: NaCl should be just like linux, etc, above, but it currently is separated out
|
# FIXME: NaCl should be just like linux, etc, above, but it currently is separated out
|
||||||
# to remove gif. Once gif is supported by naclports, this can be merged into the above
|
# to remove gif. Once gif is supported by naclports, this can be merged into the above
|
||||||
@ -128,13 +131,15 @@
|
|||||||
'../src/images/SkImageDecoder_libgif.cpp',
|
'../src/images/SkImageDecoder_libgif.cpp',
|
||||||
'../src/images/SkMovie_gif.cpp',
|
'../src/images/SkMovie_gif.cpp',
|
||||||
],
|
],
|
||||||
|
'dependencies!': [
|
||||||
|
'giflib.gyp:giflib'
|
||||||
|
],
|
||||||
}],
|
}],
|
||||||
[ 'skia_os == "android"', {
|
[ 'skia_os == "android"', {
|
||||||
'include_dirs': [
|
'include_dirs': [
|
||||||
'../src/utils',
|
'../src/utils',
|
||||||
],
|
],
|
||||||
'dependencies': [
|
'dependencies': [
|
||||||
'android_deps.gyp:gif',
|
|
||||||
'android_deps.gyp:png',
|
'android_deps.gyp:png',
|
||||||
],
|
],
|
||||||
'conditions': [
|
'conditions': [
|
||||||
@ -156,8 +161,7 @@
|
|||||||
}],
|
}],
|
||||||
[ 'skia_os == "chromeos"', {
|
[ 'skia_os == "chromeos"', {
|
||||||
'dependencies': [
|
'dependencies': [
|
||||||
'chromeos_deps.gyp:gif',
|
'libpng.gyp:libpng',
|
||||||
'libpng.gyp:libpng',
|
|
||||||
],
|
],
|
||||||
}],
|
}],
|
||||||
[ 'skia_os == "ios"', {
|
[ 'skia_os == "ios"', {
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
# Copyright 2015 Google Inc.
|
||||||
|
#
|
||||||
|
# Use of this source code is governed by a BSD-style license that can be
|
||||||
|
# found in the LICENSE file.
|
||||||
|
|
||||||
# This GYP file stores the dependencies necessary to build Skia on the Android
|
# This GYP file stores the dependencies necessary to build Skia on the Android
|
||||||
# platform. The OS doesn't provide many stable libraries as part of the
|
# platform. The OS doesn't provide many stable libraries as part of the
|
||||||
# distribution so we have to build a few of them ourselves.
|
# distribution so we have to build a few of them ourselves.
|
||||||
@ -54,27 +59,6 @@
|
|||||||
],
|
],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
|
||||||
'target_name': 'gif',
|
|
||||||
'type': 'static_library',
|
|
||||||
'sources': [
|
|
||||||
'../third_party/externals/gif/dgif_lib.c',
|
|
||||||
'../third_party/externals/gif/gifalloc.c',
|
|
||||||
'../third_party/externals/gif/gif_err.c',
|
|
||||||
],
|
|
||||||
'include_dirs': [
|
|
||||||
'../third_party/externals/gif',
|
|
||||||
],
|
|
||||||
'cflags': [
|
|
||||||
'-w',
|
|
||||||
'-DHAVE_CONFIG_H',
|
|
||||||
],
|
|
||||||
'direct_dependent_settings': {
|
|
||||||
'include_dirs': [
|
|
||||||
'../third_party/externals/gif',
|
|
||||||
],
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
'target_name': 'png',
|
'target_name': 'png',
|
||||||
'type': 'static_library',
|
'type': 'static_library',
|
||||||
@ -160,11 +144,46 @@
|
|||||||
'../third_party/externals/jpeg/jidctfst.c',
|
'../third_party/externals/jpeg/jidctfst.c',
|
||||||
'../third_party/externals/jpeg/jidctint.c',
|
'../third_party/externals/jpeg/jidctint.c',
|
||||||
'../third_party/externals/jpeg/jidctred.c',
|
'../third_party/externals/jpeg/jidctred.c',
|
||||||
|
'../third_party/externals/jpeg/jmem-android.c',
|
||||||
|
'../third_party/externals/jpeg/jmemmgr.c',
|
||||||
'../third_party/externals/jpeg/jquant1.c',
|
'../third_party/externals/jpeg/jquant1.c',
|
||||||
'../third_party/externals/jpeg/jquant2.c',
|
'../third_party/externals/jpeg/jquant2.c',
|
||||||
'../third_party/externals/jpeg/jutils.c',
|
'../third_party/externals/jpeg/jutils.c',
|
||||||
'../third_party/externals/jpeg/jmemmgr.c',
|
],
|
||||||
'../third_party/externals/jpeg/jmem-android.c', # ashmem is also available
|
'conditions': [
|
||||||
|
[ 'arm_neon == 1',
|
||||||
|
{
|
||||||
|
'sources' : [
|
||||||
|
'../third_party/externals/jpeg/armv6_idct.S',
|
||||||
|
'../third_party/externals/jpeg/jsimd_arm_neon.S',
|
||||||
|
'../third_party/externals/jpeg/jsimd_neon.c',
|
||||||
|
],
|
||||||
|
'defines' : [
|
||||||
|
'NV_ARM_NEON',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[ 'skia_arch_type == "mips" and mips_dsp == 2',
|
||||||
|
{
|
||||||
|
'sources' : [
|
||||||
|
'../third_party/externals/jpeg/mips_jidctfst.c',
|
||||||
|
'../third_party/externals/jpeg/mips_idct_le.S',
|
||||||
|
],
|
||||||
|
'defines' : [
|
||||||
|
'ANDROID_MIPS_IDCT',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
[ '"x86" in skia_arch_type',
|
||||||
|
{
|
||||||
|
'sources' : [
|
||||||
|
'../third_party/externals/jpeg/jidctintelsse.c',
|
||||||
|
],
|
||||||
|
'defines' : [
|
||||||
|
'ANDROID_INTELSSE2_IDCT',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
],
|
],
|
||||||
'include_dirs': [
|
'include_dirs': [
|
||||||
'../third_party/externals/jpeg',
|
'../third_party/externals/jpeg',
|
||||||
|
@ -1,35 +0,0 @@
|
|||||||
# This GYP file stores the dependencies necessary to build Skia on the Chrome OS
|
|
||||||
# platform. The OS doesn't provide many stable libraries as part of the
|
|
||||||
# distribution so we have to build a few of them ourselves.
|
|
||||||
|
|
||||||
{
|
|
||||||
'variables': {
|
|
||||||
'skia_warnings_as_errors': 0,
|
|
||||||
},
|
|
||||||
'targets': [
|
|
||||||
{
|
|
||||||
'target_name': 'gif',
|
|
||||||
'type': 'static_library',
|
|
||||||
'sources': [
|
|
||||||
'../third_party/externals/gif/dgif_lib.c',
|
|
||||||
'../third_party/externals/gif/gifalloc.c',
|
|
||||||
'../third_party/externals/gif/gif_err.c',
|
|
||||||
],
|
|
||||||
'include_dirs': [
|
|
||||||
'../third_party/externals/gif',
|
|
||||||
],
|
|
||||||
'cflags': [
|
|
||||||
'-Wno-format',
|
|
||||||
'-DHAVE_CONFIG_H',
|
|
||||||
],
|
|
||||||
'cflags!': [
|
|
||||||
'-Wall',
|
|
||||||
],
|
|
||||||
'direct_dependent_settings': {
|
|
||||||
'include_dirs': [
|
|
||||||
'../third_party/externals/gif',
|
|
||||||
],
|
|
||||||
}
|
|
||||||
},
|
|
||||||
]
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user