blob: 4b4029bdf3f411bcde4c7ea15fae9c1372d52393 [file] [log] [blame]
scroggo648ac532015-03-25 07:16:13 -07001# Copyright 2015 Google Inc.
2#
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
scroggo3e562272015-03-25 10:22:41 -07005# Copyright 2015 Google Inc.
6#
7# Use of this source code is governed by a BSD-style license that can be
8# found in the LICENSE file.
scroggo648ac532015-03-25 07:16:13 -07009
scroggof24f2242015-03-03 08:59:20 -080010# GYP file for codec project.
11{
12 'targets': [
13 {
14 'target_name': 'codec',
15 'product_name': 'skia_codec',
16 'type': 'static_library',
17 'standalone_static_library': 1,
18 'dependencies': [
19 'core.gyp:*',
msarett8c8f22a2015-04-01 06:58:48 -070020 'giflib.gyp:giflib',
msarettb747b902015-11-06 11:15:49 -080021 'libjpeg-turbo-selector.gyp:libjpeg-turbo-selector',
22 'libpng.gyp:libpng',
scroggo6f5e6192015-06-18 12:53:43 -070023 'libwebp.gyp:libwebp',
scroggof24f2242015-03-03 08:59:20 -080024 ],
25 'include_dirs': [
26 '../include/codec',
mtkleincd1f2da2015-07-28 08:55:14 -070027 '../include/private',
scroggof24f2242015-03-03 08:59:20 -080028 '../src/codec',
msarett9bde9182015-03-25 05:27:48 -070029 '../src/core',
msaretta51e7782016-01-12 06:51:11 -080030 '../src/utils',
scroggof24f2242015-03-03 08:59:20 -080031 ],
32 'sources': [
msarett3d9d7a72015-10-21 10:27:10 -070033 '../src/codec/SkAndroidCodec.cpp',
msarettb46e5e22015-07-30 11:36:40 -070034 '../src/codec/SkBmpCodec.cpp',
msarett4ab9d5f2015-08-06 15:34:42 -070035 '../src/codec/SkBmpMaskCodec.cpp',
36 '../src/codec/SkBmpRLECodec.cpp',
37 '../src/codec/SkBmpStandardCodec.cpp',
scroggof24f2242015-03-03 08:59:20 -080038 '../src/codec/SkCodec.cpp',
msarett1a464672016-01-07 13:17:19 -080039 '../src/codec/SkGifCodec.cpp',
40 '../src/codec/SkIcoCodec.cpp',
msarette16b04a2015-04-15 07:32:19 -070041 '../src/codec/SkJpegCodec.cpp',
42 '../src/codec/SkJpegDecoderMgr.cpp',
msarettc1d03122016-03-25 08:58:55 -070043 '../src/codec/SkJpegUtility.cpp',
msarett74114382015-03-16 11:55:18 -070044 '../src/codec/SkMaskSwizzler.cpp',
45 '../src/codec/SkMasks.cpp',
msarettbe1d5552016-01-21 09:05:23 -080046 '../src/codec/SkPngCodec.cpp',
msarette6dd0042015-10-09 11:07:34 -070047 '../src/codec/SkSampler.cpp',
scroggoa3f792d2015-10-28 14:06:10 -070048 '../src/codec/SkSampledCodec.cpp',
scroggof24f2242015-03-03 08:59:20 -080049 '../src/codec/SkSwizzler.cpp',
msarett1a464672016-01-07 13:17:19 -080050 '../src/codec/SkWbmpCodec.cpp',
msarett3d9d7a72015-10-21 10:27:10 -070051 '../src/codec/SkWebpAdapterCodec.cpp',
scroggo6f5e6192015-06-18 12:53:43 -070052 '../src/codec/SkWebpCodec.cpp',
msarettedd2dcf2016-01-14 13:12:26 -080053
54 '../src/codec/SkCodecImageGenerator.cpp',
msarett8715d472016-02-17 10:02:29 -080055 '../src/ports/SkImageGenerator_skia.cpp',
scroggof24f2242015-03-03 08:59:20 -080056 ],
57 'direct_dependent_settings': {
58 'include_dirs': [
59 '../include/codec',
60 ],
61 },
msarettb747b902015-11-06 11:15:49 -080062 'defines': [
msarett39b2d5a2016-02-17 08:26:31 -080063 # Turn on libjpeg-turbo optimizations since we know that the
msarett285e7c62016-02-23 05:48:01 -080064 # appropriate version of libjpeg-turbo is present.
65 'TURBO_HAS_CROP',
msarettb747b902015-11-06 11:15:49 -080066 'TURBO_HAS_SKIP',
msarett70e418b2016-02-12 12:35:48 -080067 'TURBO_HAS_565',
msarettb747b902015-11-06 11:15:49 -080068 ],
yujieqin916de9f2016-01-25 08:26:16 -080069 'conditions': [
scroggo1497f9f2016-02-02 11:56:33 -080070 ['skia_codec_decodes_raw', {
yujieqin916de9f2016-01-25 08:26:16 -080071 'dependencies': [
72 'raw_codec',
73 ],
74 },],
75 ],
76 }, {
77 # RAW codec needs exceptions. Due to that, it is a separate target. Its usage can be
scroggo1497f9f2016-02-02 11:56:33 -080078 # controlled by skia_codec_decodes_raw flag.
yujieqin916de9f2016-01-25 08:26:16 -080079 'target_name': 'raw_codec',
80 'product_name': 'raw_codec',
81 'type': 'static_library',
82 'dependencies': [
83 'core.gyp:*',
84 'dng_sdk.gyp:dng_sdk-selector',
85 'libjpeg-turbo-selector.gyp:libjpeg-turbo-selector',
86 'piex.gyp:piex-selector',
87 ],
88 'cflags':[
89 '-fexceptions',
90 ],
yujieqin076d83d2016-01-27 08:25:53 -080091 'msvs_settings': {
92 'VCCLCompilerTool': {
93 # Need this because we are handling exception in SkRawCodec, which will trigger warning
94 # C4530. Add this flag as suggested by the compiler.
95 'AdditionalOptions': ['/EHsc', ],
96 },
97 },
yujieqin916de9f2016-01-25 08:26:16 -080098 'include_dirs': [
99 '../include/codec',
100 '../include/private',
101 '../src/codec',
102 '../src/core',
103 ],
104 'sources': [
105 '../src/codec/SkRawAdapterCodec.cpp',
106 '../src/codec/SkRawCodec.cpp',
107 ],
108 'direct_dependent_settings': {
109 'include_dirs': [
110 '../include/codec',
111 ],
yujieqin916de9f2016-01-25 08:26:16 -0800112 },
yujieqin916de9f2016-01-25 08:26:16 -0800113 'conditions': [
114 ['skia_arch_type == "x86" or skia_arch_type == "arm"', {
115 'defines': [
116 'qDNGBigEndian=0',
117 ],
118 }],
119 ['skia_os == "ios" or skia_os == "mac"', {
120 'xcode_settings': {
121 'OTHER_CFLAGS': ['-fexceptions'],
122 'OTHER_CPLUSPLUSFLAGS': ['-fexceptions'],
123 },
124 }],
125 ],
scroggof24f2242015-03-03 08:59:20 -0800126 },
127 ],
128}