aboutsummaryrefslogtreecommitdiffhomepage
path: root/gyp/codec.gyp
diff options
context:
space:
mode:
authorGravatar yujieqin <yujieqin@google.com>2016-01-25 08:26:16 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2016-01-25 08:26:16 -0800
commit916de9ff18cf3caa29c0821b55244060b6f84f9d (patch)
tree2eeca150de2fe391a8498339138e135154f7bcc1 /gyp/codec.gyp
parentd03b7ae1e273e871d951c94fd9626d62acee9379 (diff)
Add RAW decoding into Skia.
Diffstat (limited to 'gyp/codec.gyp')
-rw-r--r--gyp/codec.gyp57
1 files changed, 57 insertions, 0 deletions
diff --git a/gyp/codec.gyp b/gyp/codec.gyp
index 8a35b09d6c..d7272e2a7a 100644
--- a/gyp/codec.gyp
+++ b/gyp/codec.gyp
@@ -66,6 +66,63 @@
'defines': [
'TURBO_HAS_SKIP',
],
+ 'conditions': [
+ # FIXME: fix the support for Windows. (Issue with _hypot in DNG SDK).
+ ['skia_codec_decodes_raw and skia_os != "win" and skia_os != "chromeos"', {
+ 'dependencies': [
+ 'raw_codec',
+ ],
+ },],
+ ],
+ }, {
+ # RAW codec needs exceptions. Due to that, it is a separate target. Its usage can be
+ # controlled by SK_CODEC_DECODES_RAW flag.
+ 'target_name': 'raw_codec',
+ 'product_name': 'raw_codec',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'core.gyp:*',
+ 'dng_sdk.gyp:dng_sdk-selector',
+ 'libjpeg-turbo-selector.gyp:libjpeg-turbo-selector',
+ 'piex.gyp:piex-selector',
+ ],
+ 'cflags':[
+ '-fexceptions',
+ ],
+ 'include_dirs': [
+ '../include/codec',
+ '../include/private',
+ '../src/codec',
+ '../src/core',
+ ],
+ 'sources': [
+ '../src/codec/SkRawAdapterCodec.cpp',
+ '../src/codec/SkRawCodec.cpp',
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '../include/codec',
+ ],
+ 'defines': [
+ 'SK_CODEC_DECODES_RAW',
+ ],
+ },
+ 'defines': [
+ 'SK_CODEC_DECODES_RAW',
+ ],
+ 'conditions': [
+ ['skia_arch_type == "x86" or skia_arch_type == "arm"', {
+ 'defines': [
+ 'qDNGBigEndian=0',
+ ],
+ }],
+ ['skia_os == "ios" or skia_os == "mac"', {
+ 'xcode_settings': {
+ 'OTHER_CFLAGS': ['-fexceptions'],
+ 'OTHER_CPLUSPLUSFLAGS': ['-fexceptions'],
+ },
+ }],
+ ],
},
],
}