blob: 0bc8a769820889828b4aaa0f5f9ff536c372a759 [file] [log] [blame]
scroggo@google.com2341c092013-05-20 22:15:32 +00001# GYP file for images project.
scroggo@google.com05efd1c2013-04-17 21:07:55 +00002{
epoger@google.com4211f852011-05-31 13:50:51 +00003 'targets': [
4 {
5 'target_name': 'images',
borenet@google.com0dcb15d2012-10-10 19:45:51 +00006 'product_name': 'skia_images',
epoger@google.com4211f852011-05-31 13:50:51 +00007 'type': 'static_library',
borenet@google.com0dcb15d2012-10-10 19:45:51 +00008 'standalone_static_library': 1,
bungeman@google.com4f1876b2011-06-23 21:43:52 +00009 'dependencies': [
bungeman@google.comfe0c9022013-07-22 14:39:45 +000010 'core.gyp:*',
robertphillips@google.com1e57a142012-04-05 14:52:01 +000011 'libjpeg.gyp:*',
commit-bot@chromium.orgabfba022013-03-14 14:42:18 +000012 'libwebp.gyp:libwebp',
bungeman@google.com4f1876b2011-06-23 21:43:52 +000013 'utils.gyp:utils',
14 ],
robertphillips@google.com1e57a142012-04-05 14:52:01 +000015 'export_dependent_settings': [
16 'libjpeg.gyp:*',
17 ],
epoger@google.com4211f852011-05-31 13:50:51 +000018 'include_dirs': [
epoger@google.com4211f852011-05-31 13:50:51 +000019 '../include/images',
scroggo@google.comc7206742013-02-22 21:38:35 +000020 '../include/lazy',
scroggo@google.com75a895e2013-04-25 17:33:51 +000021 # for access to SkErrorInternals.h
22 '../src/core/',
scroggo@google.comc7206742013-02-22 21:38:35 +000023 # for access to SkImagePriv.h
24 '../src/image/',
epoger@google.com4211f852011-05-31 13:50:51 +000025 ],
26 'sources': [
scroggo@google.com3702c9f2013-05-31 14:00:10 +000027 '../include/images/SkForceLinking.h',
epoger@google.com4211f852011-05-31 13:50:51 +000028 '../include/images/SkImageRef.h',
29 '../include/images/SkImageRef_GlobalPool.h',
robertphillips@google.com2b8cbdf2013-03-22 16:44:14 +000030 '../src/images/SkJpegUtility.h',
epoger@google.com4211f852011-05-31 13:50:51 +000031 '../include/images/SkMovie.h',
32 '../include/images/SkPageFlipper.h',
33
34 '../src/images/bmpdecoderhelper.cpp',
35 '../src/images/bmpdecoderhelper.h',
commit-bot@chromium.orgabfba022013-03-14 14:42:18 +000036
scroggo@google.com3702c9f2013-05-31 14:00:10 +000037 '../src/images/SkForceLinking.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000038 '../src/images/SkImageDecoder.cpp',
scroggo@google.com05efd1c2013-04-17 21:07:55 +000039 '../src/images/SkImageDecoder_FactoryDefault.cpp',
40 '../src/images/SkImageDecoder_FactoryRegistrar.cpp',
scroggo@google.com69bd56b2013-05-01 21:17:27 +000041 # If decoders are added/removed to/from (all/individual)
scroggo@google.com3702c9f2013-05-31 14:00:10 +000042 # platform(s), be sure to update SkForceLinking.cpp
scroggo@google.com69bd56b2013-05-01 21:17:27 +000043 # so the right decoders will be forced to link.
epoger@google.com4211f852011-05-31 13:50:51 +000044 '../src/images/SkImageDecoder_libbmp.cpp',
45 '../src/images/SkImageDecoder_libgif.cpp',
46 '../src/images/SkImageDecoder_libico.cpp',
commit-bot@chromium.orgabfba022013-03-14 14:42:18 +000047 '../src/images/SkImageDecoder_libjpeg.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000048 '../src/images/SkImageDecoder_libpng.cpp',
commit-bot@chromium.orgabfba022013-03-14 14:42:18 +000049 '../src/images/SkImageDecoder_libwebp.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000050 '../src/images/SkImageDecoder_wbmp.cpp',
51 '../src/images/SkImageEncoder.cpp',
52 '../src/images/SkImageEncoder_Factory.cpp',
bungeman@google.comed9f52c2013-04-23 18:06:23 +000053 '../src/images/SkImageEncoder_argb.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000054 '../src/images/SkImageRef.cpp',
55 '../src/images/SkImageRefPool.cpp',
56 '../src/images/SkImageRefPool.h',
djsollen@google.comae5359b2013-02-01 15:57:13 +000057 '../src/images/SkImageRef_ashmem.h',
58 '../src/images/SkImageRef_ashmem.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000059 '../src/images/SkImageRef_GlobalPool.cpp',
scroggo@google.come9483702012-10-04 21:46:08 +000060 '../src/images/SkImages.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000061 '../src/images/SkJpegUtility.cpp',
62 '../src/images/SkMovie.cpp',
63 '../src/images/SkMovie_gif.cpp',
64 '../src/images/SkPageFlipper.cpp',
65 '../src/images/SkScaledBitmapSampler.cpp',
66 '../src/images/SkScaledBitmapSampler.h',
bungeman@google.com49e667d2011-06-22 20:42:34 +000067
68 '../src/ports/SkImageDecoder_CG.cpp',
69 '../src/ports/SkImageDecoder_WIC.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000070 ],
71 'conditions': [
epoger@google.com95185842011-07-01 20:20:07 +000072 [ 'skia_os == "win"', {
epoger@google.com4211f852011-05-31 13:50:51 +000073 'sources!': [
scroggo@google.com05efd1c2013-04-17 21:07:55 +000074 '../src/images/SkImageDecoder_FactoryDefault.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000075 '../src/images/SkImageDecoder_libgif.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000076 '../src/images/SkImageDecoder_libpng.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000077 '../src/images/SkMovie_gif.cpp',
78 ],
bsalomon@google.combee3c452011-11-21 21:04:06 +000079 'link_settings': {
80 'libraries': [
81 'windowscodecs.lib',
82 ],
83 },
epoger@google.com95185842011-07-01 20:20:07 +000084 },{ #else if skia_os != win
bungeman@google.com49e667d2011-06-22 20:42:34 +000085 'sources!': [
86 '../src/ports/SkImageDecoder_WIC.cpp',
87 ],
epoger@google.com4211f852011-05-31 13:50:51 +000088 }],
caryclark@google.com71515772012-09-18 15:41:18 +000089 [ 'skia_os in ["mac", "ios"]', {
epoger@google.com4211f852011-05-31 13:50:51 +000090 'sources!': [
scroggo@google.com05efd1c2013-04-17 21:07:55 +000091 '../src/images/SkImageDecoder_FactoryDefault.cpp',
reed@google.com6559b6a2011-06-15 17:33:29 +000092 '../src/images/SkImageDecoder_libpng.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000093 '../src/images/SkImageDecoder_libgif.cpp',
epoger@google.com4211f852011-05-31 13:50:51 +000094 '../src/images/SkMovie_gif.cpp',
95 ],
epoger@google.com95185842011-07-01 20:20:07 +000096 },{ #else if skia_os != mac
bungeman@google.com49e667d2011-06-22 20:42:34 +000097 'sources!': [
98 '../src/ports/SkImageDecoder_CG.cpp',
99 ],
epoger@google.com4211f852011-05-31 13:50:51 +0000100 }],
scroggo@google.com366056a2013-04-11 22:24:35 +0000101 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', {
scroggo@google.comc257cd92013-04-11 18:32:01 +0000102 # Any targets that depend on this target should link in libpng, libgif, and
epoger@google.com77ed1562011-06-15 13:45:10 +0000103 # our code that calls it.
104 # See http://code.google.com/p/gyp/wiki/InputFormatReference#Dependent_Settings
epoger@google.comce8a1f32011-06-02 14:38:23 +0000105 'link_settings': {
epoger@google.com184de292011-06-16 12:27:14 +0000106 'libraries': [
scroggo@google.comc257cd92013-04-11 18:32:01 +0000107 '-lgif',
epoger@google.com184de292011-06-16 12:27:14 +0000108 '-lpng',
borenet@google.com789cb052013-03-07 15:33:28 +0000109 '-lz',
epoger@google.com184de292011-06-16 12:27:14 +0000110 ],
epoger@google.comce8a1f32011-06-02 14:38:23 +0000111 },
scroggo@google.comc257cd92013-04-11 18:32:01 +0000112 # end libpng/libgif stuff
epoger@google.com4211f852011-05-31 13:50:51 +0000113 }],
scroggo@google.com366056a2013-04-11 22:24:35 +0000114 # FIXME: NaCl should be just like linux, etc, above, but it currently is separated out
115 # to remove gif. Once gif is supported by naclports, this can be merged into the above
116 # condition.
117 [ 'skia_os == "nacl"', {
118 'sources!': [
119 '../src/images/SkImageDecoder_libgif.cpp',
120 '../src/images/SkMovie_gif.cpp',
121 ],
122 'link_settings': {
scroggo@google.com366056a2013-04-11 22:24:35 +0000123 'libraries': [
124 '-lpng',
125 '-lz',
126 ],
127 },
128 }],
djsollen@google.comd2e84482011-11-03 13:08:29 +0000129 [ 'skia_os == "android"', {
djsollen@google.comae5359b2013-02-01 15:57:13 +0000130 'include_dirs': [
131 '../src/utils',
djsollen@google.comd2e84482011-11-03 13:08:29 +0000132 ],
133 'dependencies': [
borenet@google.com4c3aa2f2012-08-09 15:54:28 +0000134 'android_deps.gyp:gif',
135 'android_deps.gyp:png',
djsollen@google.comd2e84482011-11-03 13:08:29 +0000136 ],
djsollen@google.comd5471802013-07-23 15:51:12 +0000137 'export_dependent_settings': [
138 'android_deps.gyp:png'
139 ],
djsollen@google.comae5359b2013-02-01 15:57:13 +0000140 },{ #else if skia_os != android
141 'sources!': [
142 '../src/images/SkImageRef_ashmem.h',
143 '../src/images/SkImageRef_ashmem.cpp',
144 ],
djsollen@google.comd2e84482011-11-03 13:08:29 +0000145 }],
borenet@google.com881ed1e2013-06-11 15:52:19 +0000146 [ 'skia_os == "chromeos"', {
147 'dependencies': [
148 'chromeos_deps.gyp:gif',
149 ],
150 'link_settings': {
151 'libraries': [
152 '-lpng',
153 ],
154 },
155 }],
caryclark@google.com71515772012-09-18 15:41:18 +0000156 [ 'skia_os == "ios"', {
157 'include_dirs': [
158 '../include/utils/mac',
159 ],
160 }],
epoger@google.com4211f852011-05-31 13:50:51 +0000161 ],
162 'direct_dependent_settings': {
163 'include_dirs': [
164 '../include/images',
scroggo@google.comc7206742013-02-22 21:38:35 +0000165 '../include/lazy',
epoger@google.com4211f852011-05-31 13:50:51 +0000166 ],
167 },
168 },
169 ],
170}
171
172# Local Variables:
173# tab-width:2
174# indent-tabs-mode:nil
175# End:
176# vim: set expandtab tabstop=2 shiftwidth=2: