From 916de9ff18cf3caa29c0821b55244060b6f84f9d Mon Sep 17 00:00:00 2001 From: yujieqin Date: Mon, 25 Jan 2016 08:26:16 -0800 Subject: Add RAW decoding into Skia. TBR=reed@google.com BUG=skia: (Based on the work from ebrauer in https://codereview.chromium.org/1459473007) (Based on the work from adaubert in https://codereview.chromium.org/1494003003) GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1520403003 Committed: https://skia.googlesource.com/skia/+/6bd8639f8c142eedf543f4e5f3b02d2bf11df308 Review URL: https://codereview.chromium.org/1520403003 --- gyp/codec.gyp | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) (limited to 'gyp/codec.gyp') 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'], + }, + }], + ], }, ], } -- cgit v1.2.3